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

#include "components/enterprise/common/proto/synced/browser_events.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 chrome {
namespace cros {
namespace reporting {
namespace proto {
class UrlInfo_NavigationInitiator::_Internal {
 public:
  using HasBits = decltype(::std::declval<UrlInfo_NavigationInitiator>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_._has_bits_);
};

constexpr UrlInfo_NavigationInitiator::ParseTableT_ UrlInfo_NavigationInitiator::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo_NavigationInitiator>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string entity = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_.entity_)}},
      // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator.InitiatorType initiator_type = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_.initiator_type_)}},
    }}, {{
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator.InitiatorType initiator_type = 1;
      {PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_.initiator_type_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string entity = 2;
      {PROTOBUF_FIELD_OFFSET(UrlInfo_NavigationInitiator, _impl_.entity_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\67\0\6\0\0\0\0\0"
      "chrome.cros.reporting.proto.UrlInfo.NavigationInitiator"
      "entity"
    }},
  };
}


inline constexpr UrlInfo_NavigationInitiator::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        entity_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        initiator_type_{static_cast< ::chrome::cros::reporting::proto::UrlInfo_NavigationInitiator_InitiatorType >(0)} {}

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

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

constexpr TelomereEvent_TelomereLog::ParseTableT_ TelomereEvent_TelomereLog::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(TelomereEvent_TelomereLog, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TelomereEvent_TelomereLog>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string log_data = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(TelomereEvent_TelomereLog, _impl_.log_data_)}},
      // string log_type = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(TelomereEvent_TelomereLog, _impl_.log_type_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string log_type = 1;
      {PROTOBUF_FIELD_OFFSET(TelomereEvent_TelomereLog, _impl_.log_type_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string log_data = 2;
      {PROTOBUF_FIELD_OFFSET(TelomereEvent_TelomereLog, _impl_.log_data_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\65\10\10\0\0\0\0\0"
      "chrome.cros.reporting.proto.TelomereEvent.TelomereLog"
      "log_type"
      "log_data"
    }},
  };
}


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

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

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

constexpr Snippet_RecordLocation::ParseTableT_ Snippet_RecordLocation::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Snippet_RecordLocation, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::Snippet_RecordLocation>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string field_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(Snippet_RecordLocation, _impl_.field_name_)}},
      // int64 row_index = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(Snippet_RecordLocation, _impl_.row_index_)}},
    }}, {{
      65535, 65535
    }}, {{
      // int64 row_index = 1;
      {PROTOBUF_FIELD_OFFSET(Snippet_RecordLocation, _impl_.row_index_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // string field_name = 2;
      {PROTOBUF_FIELD_OFFSET(Snippet_RecordLocation, _impl_.field_name_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\62\0\12\0\0\0\0\0"
      "chrome.cros.reporting.proto.Snippet.RecordLocation"
      "field_name"
    }},
  };
}


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

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

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

constexpr Snippet_Range::ParseTableT_ Snippet_Range::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Snippet_Range, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::Snippet_Range>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // int32 end = 2;
      {::_pbi::TcParser::FastV32S1,
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(Snippet_Range, _impl_.end_)}},
      // int32 start = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(Snippet_Range, _impl_.start_)}},
    }}, {{
      65535, 65535
    }}, {{
      // int32 start = 1;
      {PROTOBUF_FIELD_OFFSET(Snippet_Range, _impl_.start_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // int32 end = 2;
      {PROTOBUF_FIELD_OFFSET(Snippet_Range, _impl_.end_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

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

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST Snippet_RangeGlobalsTypeInternal Snippet_Range_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Snippet_Range_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Snippet_Range_globals_.GetClassData();
#else
  return Snippet_Range_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class RiskInfo_RiskIndicator::_Internal {
 public:
  using HasBits = decltype(::std::declval<RiskInfo_RiskIndicator>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_._has_bits_);
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo_RiskIndicator, _impl_._oneof_case_);
};

constexpr RiskInfo_RiskIndicator::ParseTableT_ RiskInfo_RiskIndicator::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_._has_bits_),
      0, // no _extensions_
      5, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967264,  // skipmap
      offsetof(ParseTableT_, field_entries),
      5,  // 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<::chrome::cros::reporting::proto::RiskInfo_RiskIndicator>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string key = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.key_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string key = 1;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.key_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // int32 int_value = 2;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.value_.int_value_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kInt32)},
      // bool bool_value = 3;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.value_.bool_value_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kBool)},
      // string string_value = 4;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.value_.string_value_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // float float_value = 5;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskIndicator, _impl_.value_.float_value_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kFloat)},
    }},
    // no aux_entries
    {{
      "\62\3\0\0\14\0\0\0"
      "chrome.cros.reporting.proto.RiskInfo.RiskIndicator"
      "key"
      "string_value"
    }},
  };
}


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

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

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

constexpr RiskInfo_RiskCategory::ParseTableT_ RiskInfo_RiskCategory::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(RiskInfo_RiskCategory, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo_RiskCategory>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string value = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo_RiskCategory, _impl_.value_)}},
      // string key = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo_RiskCategory, _impl_.key_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string key = 1;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskCategory, _impl_.key_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string value = 2;
      {PROTOBUF_FIELD_OFFSET(RiskInfo_RiskCategory, _impl_.value_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\61\3\5\0\0\0\0\0"
      "chrome.cros.reporting.proto.RiskInfo.RiskCategory"
      "key"
      "value"
    }},
  };
}


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

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

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

constexpr PasswordBreachEvent_Identity::ParseTableT_ PasswordBreachEvent_Identity::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(PasswordBreachEvent_Identity, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::PasswordBreachEvent_Identity>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string username = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent_Identity, _impl_.username_)}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent_Identity, _impl_.url_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent_Identity, _impl_.url_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string username = 2;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent_Identity, _impl_.username_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\70\3\10\0\0\0\0\0"
      "chrome.cros.reporting.proto.PasswordBreachEvent.Identity"
      "url"
      "username"
    }},
  };
}


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

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

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

constexpr NotificationConfiguration::ParseTableT_ NotificationConfiguration::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::NotificationConfiguration>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated string recipient_emails = 4;
      {::_pbi::TcParser::FastUR1,
       {34, 1, 0,
        PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.recipient_emails_)}},
      // repeated .chrome.cros.reporting.proto.NotificationConfiguration.Channel channels = 1;
      {::_pbi::TcParser::FastV32P1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.channels_)}},
      // bool send_to_super_admins = 2;
      {::_pbi::TcParser::FastV8S1,
       {16, 2, 0,
        PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.send_to_super_admins_)}},
      // bool send_to_primary_admins = 3;
      {::_pbi::TcParser::FastV8S1,
       {24, 3, 0,
        PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.send_to_primary_admins_)}},
    }}, {{
      65535, 65535
    }}, {{
      // repeated .chrome.cros.reporting.proto.NotificationConfiguration.Channel channels = 1;
      {PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.channels_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kPackedOpenEnum)},
      // bool send_to_super_admins = 2;
      {PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.send_to_super_admins_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // bool send_to_primary_admins = 3;
      {PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.send_to_primary_admins_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // repeated string recipient_emails = 4;
      {PROTOBUF_FIELD_OFFSET(NotificationConfiguration, _impl_.recipient_emails_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
    }},
    // no aux_entries
    {{
      "\65\0\0\0\20\0\0\0"
      "chrome.cros.reporting.proto.NotificationConfiguration"
      "recipient_emails"
    }},
  };
}


inline constexpr NotificationConfiguration::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        channels_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::NotificationConfiguration,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.channels_)>()
         }
        ,
        _channels_cached_byte_size_{0},
        recipient_emails_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::NotificationConfiguration,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.recipient_emails_)>()
         }
        ,
        send_to_super_admins_{false},
        send_to_primary_admins_{false} {}

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

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

constexpr MatchedDetector::ParseTableT_ MatchedDetector::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::MatchedDetector>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // .chrome.cros.reporting.proto.MatchedDetector.MaskType mask_type = 4;
      {::_pbi::TcParser::FastV32S1,
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.mask_type_)}},
      // string detector_id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.detector_id_)}},
      // string display_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.display_name_)}},
      // .chrome.cros.reporting.proto.MatchedDetector.DetectorType detector_type = 3;
      {::_pbi::TcParser::FastV32S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.detector_type_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string detector_id = 1;
      {PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.detector_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string display_name = 2;
      {PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.display_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.MatchedDetector.DetectorType detector_type = 3;
      {PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.detector_type_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.MatchedDetector.MaskType mask_type = 4;
      {PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.mask_type_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
    }},
    // no aux_entries
    {{
      "\53\13\14\0\0\0\0\0"
      "chrome.cros.reporting.proto.MatchedDetector"
      "detector_id"
      "display_name"
    }},
  };
}


inline constexpr MatchedDetector::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        detector_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        display_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        detector_type_{static_cast< ::chrome::cros::reporting::proto::MatchedDetector_DetectorType >(0)},
        mask_type_{static_cast< ::chrome::cros::reporting::proto::MatchedDetector_MaskType >(0)} {}

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

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

constexpr CrowdstrikeAgent::ParseTableT_ CrowdstrikeAgent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CrowdstrikeAgent, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::CrowdstrikeAgent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string customer_id = 2 [json_name = "customer_id"];
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(CrowdstrikeAgent, _impl_.customer_id_)}},
      // string agent_id = 1 [json_name = "agent_id"];
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CrowdstrikeAgent, _impl_.agent_id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string agent_id = 1 [json_name = "agent_id"];
      {PROTOBUF_FIELD_OFFSET(CrowdstrikeAgent, _impl_.agent_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string customer_id = 2 [json_name = "customer_id"];
      {PROTOBUF_FIELD_OFFSET(CrowdstrikeAgent, _impl_.customer_id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\54\10\13\0\0\0\0\0"
      "chrome.cros.reporting.proto.CrowdstrikeAgent"
      "agent_id"
      "customer_id"
    }},
  };
}


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

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

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

constexpr BrowserLaunchEvent::ParseTableT_ BrowserLaunchEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(BrowserLaunchEvent, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::BrowserLaunchEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated string command_line_switch_keys = 2;
      {::_pbi::TcParser::FastUR1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(BrowserLaunchEvent, _impl_.command_line_switch_keys_)}},
      // int64 launch_time_millis = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(BrowserLaunchEvent, _impl_.launch_time_millis_)}},
    }}, {{
      65535, 65535
    }}, {{
      // int64 launch_time_millis = 1;
      {PROTOBUF_FIELD_OFFSET(BrowserLaunchEvent, _impl_.launch_time_millis_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // repeated string command_line_switch_keys = 2;
      {PROTOBUF_FIELD_OFFSET(BrowserLaunchEvent, _impl_.command_line_switch_keys_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
    }},
    // no aux_entries
    {{
      "\56\0\30\0\0\0\0\0"
      "chrome.cros.reporting.proto.BrowserLaunchEvent"
      "command_line_switch_keys"
    }},
  };
}


inline constexpr BrowserLaunchEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        command_line_switch_keys_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserLaunchEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserLaunchEvent, _impl_.command_line_switch_keys_)>()
         }
        ,
        launch_time_millis_{::int64_t{0}} {}

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

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

constexpr TelomereEvent::ParseTableT_ TelomereEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(TelomereEvent, _impl_._has_bits_),
      0, // no _extensions_
      1, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TelomereEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .chrome.cros.reporting.proto.TelomereEvent.TelomereLog logs = 1;
      {::_pbi::TcParser::FastMtR1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(TelomereEvent, _impl_.logs_)}},
    }}, {{
      65535, 65535
    }}, {{
      // repeated .chrome.cros.reporting.proto.TelomereEvent.TelomereLog logs = 1;
      {PROTOBUF_FIELD_OFFSET(TelomereEvent, _impl_.logs_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TelomereEvent_TelomereLog>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::TelomereEvent_TelomereLog_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr TelomereEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        logs_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TelomereEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TelomereEvent, _impl_.logs_)>()
         }
     {}

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

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

constexpr Snippet::ParseTableT_ Snippet::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Snippet, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::Snippet>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // .chrome.cros.reporting.proto.Snippet.RecordLocation record_location = 4;
      {::_pbi::TcParser::FastMtS1,
       {34, 3, 1,
        PROTOBUF_FIELD_OFFSET(Snippet, _impl_.record_location_)}},
      // string content = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(Snippet, _impl_.content_)}},
      // .chrome.cros.reporting.proto.Snippet.Range match_codepoint_range = 2;
      {::_pbi::TcParser::FastMtS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(Snippet, _impl_.match_codepoint_range_)}},
      // string detector_id = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 1, 0,
        PROTOBUF_FIELD_OFFSET(Snippet, _impl_.detector_id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string content = 1;
      {PROTOBUF_FIELD_OFFSET(Snippet, _impl_.content_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.Snippet.Range match_codepoint_range = 2;
      {PROTOBUF_FIELD_OFFSET(Snippet, _impl_.match_codepoint_range_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string detector_id = 3;
      {PROTOBUF_FIELD_OFFSET(Snippet, _impl_.detector_id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.Snippet.RecordLocation record_location = 4;
      {PROTOBUF_FIELD_OFFSET(Snippet, _impl_.record_location_), _Internal::kHasBitsOffset + 3, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::Snippet_Range>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::Snippet_Range_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::Snippet_RecordLocation>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::Snippet_RecordLocation_globals_},
        #endif
    }},
    {{
      "\43\7\0\13\0\0\0\0"
      "chrome.cros.reporting.proto.Snippet"
      "content"
      "detector_id"
    }},
  };
}


inline constexpr Snippet::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        content_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        detector_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        match_codepoint_range_{nullptr},
        record_location_{nullptr} {}

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

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST SnippetGlobalsTypeInternal Snippet_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Snippet_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Snippet_globals_.GetClassData();
#else
  return Snippet_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class SecurityAgent::_Internal {
 public:
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SecurityAgent, _impl_._oneof_case_);
};

constexpr SecurityAgent::ParseTableT_ SecurityAgent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SecurityAgent,
                            _impl_._cached_size_),  // no hasbits
      0, // no _extensions_
      100, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967295,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      100, 0, 1,
      65534, 0,
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.CrowdstrikeAgent crowdstrike = 100;
      {PROTOBUF_FIELD_OFFSET(SecurityAgent, _impl_.agent_.crowdstrike_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::CrowdstrikeAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::CrowdstrikeAgent_globals_},
        #endif
    }},
    {{
    }},
  };
}


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

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

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

constexpr RiskInfo::ParseTableT_ RiskInfo::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_._has_bits_),
      0, // no _extensions_
      6, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967232,  // skipmap
      offsetof(ParseTableT_, field_entries),
      6,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::RiskInfo>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // .chrome.cros.reporting.proto.RiskInfo.ThreatType threat_type = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 3, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.threat_type_)}},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 2;
      {::_pbi::TcParser::FastV32S1,
       {16, 4, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_level_)}},
      // repeated .chrome.cros.reporting.proto.RiskInfo.RiskCategory risk_categories = 3;
      {::_pbi::TcParser::FastMtR1,
       {26, 0, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_categories_)}},
      // repeated string risk_reasons = 4;
      {::_pbi::TcParser::FastUR1,
       {34, 1, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_reasons_)}},
      // repeated .chrome.cros.reporting.proto.RiskInfo.RiskIndicator risk_indicators = 5;
      {::_pbi::TcParser::FastMtR1,
       {42, 2, 1,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_indicators_)}},
      // .chrome.cros.reporting.proto.RiskInfo.RiskSource risk_source = 6;
      {::_pbi::TcParser::FastV32S1,
       {48, 5, 0,
        PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_source_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.RiskInfo.ThreatType threat_type = 1;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.threat_type_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 2;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_level_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated .chrome.cros.reporting.proto.RiskInfo.RiskCategory risk_categories = 3;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_categories_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated string risk_reasons = 4;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_reasons_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // repeated .chrome.cros.reporting.proto.RiskInfo.RiskIndicator risk_indicators = 5;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_indicators_), _Internal::kHasBitsOffset + 2, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.RiskInfo.RiskSource risk_source = 6;
      {PROTOBUF_FIELD_OFFSET(RiskInfo, _impl_.risk_source_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo_RiskCategory>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::RiskInfo_RiskCategory_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo_RiskIndicator>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::RiskInfo_RiskIndicator_globals_},
        #endif
    }},
    {{
      "\44\0\0\0\14\0\0\0"
      "chrome.cros.reporting.proto.RiskInfo"
      "risk_reasons"
    }},
  };
}


inline constexpr RiskInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        risk_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_categories_)>()
         }
        ,
        risk_reasons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_reasons_)>()
         }
        ,
        risk_indicators_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_indicators_)>()
         }
        ,
        threat_type_{static_cast< ::chrome::cros::reporting::proto::RiskInfo_ThreatType >(0)},
        risk_level_{static_cast< ::chrome::cros::reporting::proto::RiskLevel >(0)},
        risk_source_{static_cast< ::chrome::cros::reporting::proto::RiskInfo_RiskSource >(0)} {}

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

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

constexpr UrlInfo::ParseTableT_ UrlInfo::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_._has_bits_),
      0, // no _extensions_
      8, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967040,  // skipmap
      offsetof(ParseTableT_, field_entries),
      8,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::UrlInfo>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string request_http_method = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 4, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.request_http_method_)}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.url_)}},
      // repeated string url_categories = 2;
      {::_pbi::TcParser::FastUR1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.url_categories_)}},
      // string ip = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.ip_)}},
      // .chrome.cros.reporting.proto.UrlInfo.URLType type = 4;
      {::_pbi::TcParser::FastV32S1,
       {32, 6, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.type_)}},
      // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 5;
      {::_pbi::TcParser::FastMtR1,
       {42, 1, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.risk_infos_)}},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 6;
      {::_pbi::TcParser::FastV32S1,
       {48, 7, 0,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.risk_level_)}},
      // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator navigation_initiator = 7;
      {::_pbi::TcParser::FastMtS1,
       {58, 5, 1,
        PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.navigation_initiator_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.url_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated string url_categories = 2;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.url_categories_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // string ip = 3;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.ip_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.UrlInfo.URLType type = 4;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.type_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 5;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.risk_infos_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 6;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.risk_level_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator navigation_initiator = 7;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.navigation_initiator_), _Internal::kHasBitsOffset + 5, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string request_http_method = 8;
      {PROTOBUF_FIELD_OFFSET(UrlInfo, _impl_.request_http_method_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::RiskInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo_NavigationInitiator>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_NavigationInitiator_globals_},
        #endif
    }},
    {{
      "\43\3\16\2\0\0\0\0\23\0\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.UrlInfo"
      "url"
      "url_categories"
      "ip"
      "request_http_method"
    }},
  };
}


inline constexpr UrlInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        url_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.url_categories_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.risk_infos_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        ip_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        request_http_method_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        navigation_initiator_{nullptr},
        type_{static_cast< ::chrome::cros::reporting::proto::UrlInfo_URLType >(0)},
        risk_level_{static_cast< ::chrome::cros::reporting::proto::RiskLevel >(0)} {}

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

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

constexpr TriggeredRuleInfo::ParseTableT_ TriggeredRuleInfo::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_._has_bits_),
      0, // no _extensions_
      14, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294950912,  // skipmap
      offsetof(ParseTableT_, field_entries),
      14,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TriggeredRuleInfo>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // int64 rule_id = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 8, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_id_)}},
      // string rule_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 5, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_name_)}},
      // string rule_resource_name = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 6, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_resource_name_)}},
      // .chrome.cros.reporting.proto.TriggeredRuleInfo.RuleSeverity severity = 4;
      {::_pbi::TcParser::FastV32S1,
       {32, 9, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.severity_)}},
      // .chrome.cros.reporting.proto.TriggeredRuleInfo.Action action = 5;
      {::_pbi::TcParser::FastV32S1,
       {40, 10, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.action_)}},
      // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 6;
      {::_pbi::TcParser::FastMtR1,
       {50, 0, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.matched_detectors_)}},
      // bool has_alert = 7;
      {::_pbi::TcParser::FastV8S1,
       {56, 11, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_alert_)}},
      // repeated .chrome.cros.reporting.proto.NotificationConfiguration notification_configurations = 8;
      {::_pbi::TcParser::FastMtR1,
       {66, 1, 1,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.notification_configurations_)}},
      // repeated string access_level = 9;
      {::_pbi::TcParser::FastUR1,
       {74, 2, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.access_level_)}},
      // string url_category = 10;
      {::_pbi::TcParser::FastUS1,
       {82, 7, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.url_category_)}},
      // repeated .chrome.cros.reporting.proto.Snippet snippets = 11;
      {::_pbi::TcParser::FastMtR1,
       {90, 3, 2,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.snippets_)}},
      // bool has_watermarking = 12;
      {::_pbi::TcParser::FastV8S1,
       {96, 12, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_watermarking_)}},
      // bool has_screenshot_protection = 13;
      {::_pbi::TcParser::FastV8S1,
       {104, 13, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_screenshot_protection_)}},
      // repeated string iframe_url_categories = 14;
      {::_pbi::TcParser::FastUR1,
       {114, 4, 0,
        PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.iframe_url_categories_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // int64 rule_id = 1;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_id_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // string rule_name = 2;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string rule_resource_name = 3;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_resource_name_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.TriggeredRuleInfo.RuleSeverity severity = 4;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.severity_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.TriggeredRuleInfo.Action action = 5;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.action_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 6;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.matched_detectors_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // bool has_alert = 7;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_alert_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // repeated .chrome.cros.reporting.proto.NotificationConfiguration notification_configurations = 8;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.notification_configurations_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated string access_level = 9;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.access_level_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // string url_category = 10;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.url_category_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.Snippet snippets = 11;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.snippets_), _Internal::kHasBitsOffset + 3, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // bool has_watermarking = 12;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_watermarking_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // bool has_screenshot_protection = 13;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_screenshot_protection_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // repeated string iframe_url_categories = 14;
      {PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.iframe_url_categories_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::MatchedDetector>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::MatchedDetector_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::NotificationConfiguration>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::NotificationConfiguration_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::Snippet>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::Snippet_globals_},
        #endif
    }},
    {{
      "\55\0\11\22\0\0\0\0\0\14\14\0\0\0\25\0"
      "chrome.cros.reporting.proto.TriggeredRuleInfo"
      "rule_name"
      "rule_resource_name"
      "access_level"
      "url_category"
      "iframe_url_categories"
    }},
  };
}


inline constexpr TriggeredRuleInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        matched_detectors_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.matched_detectors_)>()
         }
        ,
        notification_configurations_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.notification_configurations_)>()
         }
        ,
        access_level_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.access_level_)>()
         }
        ,
        snippets_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.snippets_)>()
         }
        ,
        iframe_url_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.iframe_url_categories_)>()
         }
        ,
        rule_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        rule_resource_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_category_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        rule_id_{::int64_t{0}},
        severity_{static_cast< ::chrome::cros::reporting::proto::TriggeredRuleInfo_RuleSeverity >(0)},
        action_{static_cast< ::chrome::cros::reporting::proto::TriggeredRuleInfo_Action >(0)},
        has_alert_{false},
        has_watermarking_{false},
        has_screenshot_protection_{false} {}

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

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

constexpr SafeBrowsingPasswordChangedEvent::ParseTableT_ SafeBrowsingPasswordChangedEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
      {::_pbi::TcParser::FastMtR1,
       {34, 0, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.security_agents_)}},
      // string user_name = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.user_name_)}},
      // string profile_user_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.profile_user_name_)}},
      // string profile_identifier = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.profile_identifier_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string user_name = 1;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.user_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 2;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 3;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordChangedEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
    }},
    {{
      "\74\11\21\22\0\0\0\0"
      "chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent"
      "user_name"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr SafeBrowsingPasswordChangedEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent, _impl_.security_agents_)>()
         }
        ,
        user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr PasswordBreachEvent::ParseTableT_ PasswordBreachEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_._has_bits_),
      0, // no _extensions_
      5, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967264,  // skipmap
      offsetof(ParseTableT_, field_entries),
      5,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::PasswordBreachEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // .chrome.cros.reporting.proto.PasswordBreachEvent.TriggerType trigger = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 4, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.trigger_)}},
      // repeated .chrome.cros.reporting.proto.PasswordBreachEvent.Identity identities = 2;
      {::_pbi::TcParser::FastMtR1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.identities_)}},
      // string profile_user_name = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 2, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.profile_user_name_)}},
      // string profile_identifier = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 3, 0,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 5;
      {::_pbi::TcParser::FastMtR1,
       {42, 1, 1,
        PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.security_agents_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.PasswordBreachEvent.TriggerType trigger = 1;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.trigger_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated .chrome.cros.reporting.proto.PasswordBreachEvent.Identity identities = 2;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.identities_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string profile_user_name = 3;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 4;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 5;
      {PROTOBUF_FIELD_OFFSET(PasswordBreachEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::PasswordBreachEvent_Identity>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::PasswordBreachEvent_Identity_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
    }},
    {{
      "\57\0\0\21\22\0\0\0"
      "chrome.cros.reporting.proto.PasswordBreachEvent"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr PasswordBreachEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        identities_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::PasswordBreachEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.identities_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::PasswordBreachEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.security_agents_)>()
         }
        ,
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        trigger_{static_cast< ::chrome::cros::reporting::proto::PasswordBreachEvent_TriggerType >(0)} {}

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

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

constexpr BrowserExtensionInstallEvent::ParseTableT_ BrowserExtensionInstallEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_._has_bits_),
      0, // no _extensions_
      10, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294966272,  // skipmap
      offsetof(ParseTableT_, field_entries),
      10,  // 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<::chrome::cros::reporting::proto::BrowserExtensionInstallEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.id_)}},
      // string name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.name_)}},
      // string description = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.description_)}},
      // string profile_user_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 4, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.profile_user_name_)}},
      // string profile_identifier = 5;
      {::_pbi::TcParser::FastUS1,
       {42, 5, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 6;
      {::_pbi::TcParser::FastMtR1,
       {50, 0, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.security_agents_)}},
      // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionAction extension_action_type = 7;
      {::_pbi::TcParser::FastV32S1,
       {56, 7, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_action_type_)}},
      // string extension_version = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 6, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_version_)}},
      // bool from_webstore = 9 [deprecated = true];
      {::_pbi::TcParser::FastV8S1,
       {72, 8, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.from_webstore_)}},
      // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionSource extension_source = 10;
      {::_pbi::TcParser::FastV32S1,
       {80, 9, 0,
        PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_source_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string id = 1;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string name = 2;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string description = 3;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.description_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 4;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 5;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 6;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionAction extension_action_type = 7;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_action_type_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string extension_version = 8;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_version_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool from_webstore = 9 [deprecated = true];
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.from_webstore_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionSource extension_source = 10;
      {PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_source_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
    }},
    {{
      "\70\2\4\13\21\22\0\0\21\0\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.BrowserExtensionInstallEvent"
      "id"
      "name"
      "description"
      "profile_user_name"
      "profile_identifier"
      "extension_version"
    }},
  };
}


inline constexpr BrowserExtensionInstallEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserExtensionInstallEvent, _impl_.security_agents_)>()
         }
        ,
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        description_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        extension_version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        extension_action_type_{static_cast< ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent_ExtensionAction >(0)},
        from_webstore_{false},
        extension_source_{static_cast< ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent_ExtensionSource >(0)} {}

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

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

constexpr BrowserCrashEvent::ParseTableT_ BrowserCrashEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_._has_bits_),
      0, // no _extensions_
      7, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967168,  // skipmap
      offsetof(ParseTableT_, field_entries),
      7,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::BrowserCrashEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string channel = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.channel_)}},
      // string version = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.version_)}},
      // string report_id = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.report_id_)}},
      // string platform = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 4, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.platform_)}},
      // string profile_user_name = 5;
      {::_pbi::TcParser::FastUS1,
       {42, 5, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.profile_user_name_)}},
      // string profile_identifier = 6;
      {::_pbi::TcParser::FastUS1,
       {50, 6, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
      {::_pbi::TcParser::FastMtR1,
       {58, 0, 0,
        PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.security_agents_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string channel = 1;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.channel_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string version = 2;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.version_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string report_id = 3;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.report_id_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string platform = 4;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.platform_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 5;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 6;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
      {PROTOBUF_FIELD_OFFSET(BrowserCrashEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
    }},
    {{
      "\55\7\7\11\10\21\22\0"
      "chrome.cros.reporting.proto.BrowserCrashEvent"
      "channel"
      "version"
      "report_id"
      "platform"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr BrowserCrashEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserCrashEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserCrashEvent, _impl_.security_agents_)>()
         }
        ,
        channel_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        report_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        platform_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr UrlNavigationEvent::ParseTableT_ UrlNavigationEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::UrlNavigationEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string profile_identifier = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 2, 0,
        PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.profile_identifier_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
      {::_pbi::TcParser::FastMtR1,
       {18, 0, 1,
        PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.referrers_)}},
      // string profile_user_name = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 1, 0,
        PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.profile_user_name_)}},
    }}, {{
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
      {PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
      {PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string profile_user_name = 3;
      {PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 4;
      {PROTOBUF_FIELD_OFFSET(UrlNavigationEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\56\0\0\21\22\0\0\0"
      "chrome.cros.reporting.proto.UrlNavigationEvent"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr UrlNavigationEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlNavigationEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlNavigationEvent, _impl_.referrers_)>()
         }
        ,
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr} {}

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

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

constexpr UrlFilteringInterstitialEvent::ParseTableT_ UrlFilteringInterstitialEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_._has_bits_),
      0, // no _extensions_
      15, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294934528,  // skipmap
      offsetof(ParseTableT_, field_entries),
      15,  // num_field_entries
      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<::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 4, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.url_)}},
      // string profile_user_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 5, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.profile_user_name_)}},
      // bool clicked_through = 3;
      {::_pbi::TcParser::FastV8S1,
       {24, 10, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.clicked_through_)}},
      // .chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.InterstitialThreatType threat_type = 4;
      {::_pbi::TcParser::FastV32S1,
       {32, 11, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.threat_type_)}},
      // repeated string referrer_urls = 5;
      {::_pbi::TcParser::FastUR1,
       {42, 0, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.referrer_urls_)}},
      // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 6;
      {::_pbi::TcParser::FastMtR1,
       {50, 1, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.triggered_rule_info_)}},
      // .chrome.cros.reporting.proto.EventResult event_result = 7;
      {::_pbi::TcParser::FastV32S1,
       {56, 12, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.event_result_)}},
      // string profile_identifier = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 6, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 9;
      {::_pbi::TcParser::FastMtR1,
       {74, 2, 1,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.security_agents_)}},
      // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 10;
      {::_pbi::TcParser::FastV32S1,
       {80, 13, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.reporting_target_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 11;
      {::_pbi::TcParser::FastMtS1,
       {90, 9, 2,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 12;
      {::_pbi::TcParser::FastMtR1,
       {98, 3, 3,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.referrers_)}},
      // string web_app_signed_in_account = 13;
      {::_pbi::TcParser::FastUS1,
       {106, 7, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.web_app_signed_in_account_)}},
      // int64 server_scan_latency_millis = 14;
      {::_pbi::TcParser::FastV64S1,
       {112, 14, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.server_scan_latency_millis_)}},
      // string tab_title = 15;
      {::_pbi::TcParser::FastUS1,
       {122, 8, 0,
        PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.tab_title_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.url_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 2;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool clicked_through = 3;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.InterstitialThreatType threat_type = 4;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.threat_type_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated string referrer_urls = 5;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.referrer_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 6;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.triggered_rule_info_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.EventResult event_result = 7;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string profile_identifier = 8;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 9;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 2, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 10;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.reporting_target_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 11;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 9, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 12;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 3, 3, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string web_app_signed_in_account = 13;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.web_app_signed_in_account_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // int64 server_scan_latency_millis = 14;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.server_scan_latency_millis_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // string tab_title = 15;
      {PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.tab_title_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TriggeredRuleInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::TriggeredRuleInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\71\3\21\0\0\15\0\0\22\0\0\0\0\31\0\11"
      "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent"
      "url"
      "profile_user_name"
      "referrer_urls"
      "profile_identifier"
      "web_app_signed_in_account"
      "tab_title"
    }},
  };
}


inline constexpr UrlFilteringInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referrer_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrer_urls_)>()
         }
        ,
        triggered_rule_info_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.triggered_rule_info_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrers_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        web_app_signed_in_account_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_title_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        clicked_through_{false},
        threat_type_{static_cast< ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent_InterstitialThreatType >(0)},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        reporting_target_{static_cast< ::chrome::cros::reporting::proto::ReportingTarget >(0)},
        server_scan_latency_millis_{::int64_t{0}} {}

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

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

constexpr UnscannedFileEvent::ParseTableT_ UnscannedFileEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_._has_bits_),
      0, // no _extensions_
      28, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4026543904,  // skipmap
      offsetof(ParseTableT_, field_entries),
      22,  // 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<::chrome::cros::reporting::proto::UnscannedFileEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string file_name = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.file_name_)}},
      // string content_type = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 4, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_type_)}},
      // uint64 content_size = 3;
      {::_pbi::TcParser::FastV64S1,
       {24, 16, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_size_)}},
      // string download_digest_sha_256 = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 5, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.download_digest_sha_256_)}},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
      {::_pbi::TcParser::FastV32S1,
       {40, 17, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.trigger_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // string url = 7;
      {::_pbi::TcParser::FastUS1,
       {58, 6, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.url_)}},
      // string reason = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 7, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.reason_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // string profile_user_name = 13;
      {::_pbi::TcParser::FastUS1,
       {106, 8, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.profile_user_name_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated string referral_urls = 15;
      {::_pbi::TcParser::FastUR1,
       {122, 0, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.referral_urls_)}},
      // bool clicked_through = 16;
      {::_pbi::TcParser::FastV8S2,
       {384, 18, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.clicked_through_)}},
      // .chrome.cros.reporting.proto.EventResult event_result = 17;
      {::_pbi::TcParser::FastV32S2,
       {392, 19, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.event_result_)}},
      // .chrome.cros.reporting.proto.UnscannedFileEvent.UnscannedReason unscanned_reason = 18;
      {::_pbi::TcParser::FastV32S2,
       {400, 20, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.unscanned_reason_)}},
      // string source = 19;
      {::_pbi::TcParser::FastUS2,
       {410, 9, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.source_)}},
      // string destination = 20;
      {::_pbi::TcParser::FastUS2,
       {418, 10, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.destination_)}},
      // string profile_identifier = 21;
      {::_pbi::TcParser::FastUS2,
       {426, 11, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 22;
      {::_pbi::TcParser::FastMtR2,
       {434, 1, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.security_agents_)}},
      // string tab_url = 23;
      {::_pbi::TcParser::FastUS2,
       {442, 12, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.tab_url_)}},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 24;
      {::_pbi::TcParser::FastV32S2,
       {448, 21, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_transfer_method_)}},
      // string scan_id = 25;
      {::_pbi::TcParser::FastUS2,
       {458, 13, 0,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.scan_id_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 26;
      {::_pbi::TcParser::FastMtS2,
       {466, 14, 1,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 27;
      {::_pbi::TcParser::FastMtR2,
       {474, 2, 2,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.referrers_)}},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 28;
      {::_pbi::TcParser::FastMtS2,
       {482, 15, 3,
        PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.tab_url_info_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string file_name = 1;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.file_name_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string content_type = 2;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_type_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // uint64 content_size = 3;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_size_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // string download_digest_sha_256 = 4;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.download_digest_sha_256_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.trigger_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string url = 7;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.url_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string reason = 8;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.reason_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 13;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated string referral_urls = 15;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.referral_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // bool clicked_through = 16;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 18, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.EventResult event_result = 17;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 19, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.UnscannedFileEvent.UnscannedReason unscanned_reason = 18;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.unscanned_reason_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string source = 19;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.source_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string destination = 20;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.destination_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 21;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 22;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string tab_url = 23;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.tab_url_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 24;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_transfer_method_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string scan_id = 25;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.scan_id_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 26;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 14, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 27;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 2, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 28;
      {PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.tab_url_info_), _Internal::kHasBitsOffset + 15, 3, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\56\11\14\0\27\0\3\6\21\15\0\0\0\6\13\22\0\7\0\7\0\0\0\0"
      "chrome.cros.reporting.proto.UnscannedFileEvent"
      "file_name"
      "content_type"
      "download_digest_sha_256"
      "url"
      "reason"
      "profile_user_name"
      "referral_urls"
      "source"
      "destination"
      "profile_identifier"
      "tab_url"
      "scan_id"
    }},
  };
}


inline constexpr UnscannedFileEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referrers_)>()
         }
        ,
        file_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        content_type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        download_digest_sha_256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        reason_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        destination_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        scan_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        tab_url_info_{nullptr},
        content_size_{::uint64_t{0u}},
        trigger_{static_cast< ::chrome::cros::reporting::proto::DataTransferEventTrigger >(0)},
        clicked_through_{false},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        unscanned_reason_{static_cast< ::chrome::cros::reporting::proto::UnscannedFileEvent_UnscannedReason >(0)},
        content_transfer_method_{static_cast< ::chrome::cros::reporting::proto::ContentTransferMethod >(0)} {}

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

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

constexpr SuspiciousURLEvent::ParseTableT_ SuspiciousURLEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::SuspiciousURLEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string profile_identifier = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 2, 0,
        PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.profile_identifier_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
      {::_pbi::TcParser::FastMtR1,
       {18, 0, 1,
        PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.referrers_)}},
      // string profile_user_name = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 1, 0,
        PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.profile_user_name_)}},
    }}, {{
      65535, 65535
    }}, {{
      // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
      {PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
      {PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string profile_user_name = 3;
      {PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 4;
      {PROTOBUF_FIELD_OFFSET(SuspiciousURLEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\56\0\0\21\22\0\0\0"
      "chrome.cros.reporting.proto.SuspiciousURLEvent"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr SuspiciousURLEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SuspiciousURLEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SuspiciousURLEvent, _impl_.referrers_)>()
         }
        ,
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr} {}

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

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

constexpr SafeBrowsingPasswordReuseEvent::ParseTableT_ SafeBrowsingPasswordReuseEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_._has_bits_),
      0, // no _extensions_
      17, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294837232,  // skipmap
      offsetof(ParseTableT_, field_entries),
      11,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // .chrome.cros.reporting.proto.UrlInfo url_info = 16;
      {::_pbi::TcParser::FastMtS2,
       {386, 6, 1,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.url_info_)}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.url_)}},
      // string user_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 3, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.user_name_)}},
      // bool is_phishing_url = 3;
      {::_pbi::TcParser::FastV8S1,
       {24, 7, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.is_phishing_url_)}},
      // string profile_user_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 4, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.profile_user_name_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated string referral_urls = 11;
      {::_pbi::TcParser::FastUR1,
       {90, 0, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.referral_urls_)}},
      // bool clicked_through = 12;
      {::_pbi::TcParser::FastV8S1,
       {96, 8, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.clicked_through_)}},
      // .chrome.cros.reporting.proto.EventResult event_result = 13;
      {::_pbi::TcParser::FastV32S1,
       {104, 9, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.event_result_)}},
      // string profile_identifier = 14;
      {::_pbi::TcParser::FastUS1,
       {114, 5, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 15;
      {::_pbi::TcParser::FastMtR1,
       {122, 1, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.security_agents_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.url_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string user_name = 2;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.user_name_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool is_phishing_url = 3;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.is_phishing_url_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // string profile_user_name = 4;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated string referral_urls = 11;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.referral_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // bool clicked_through = 12;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.EventResult event_result = 13;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string profile_identifier = 14;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 15;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 16;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 6, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 17;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 10, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\72\3\11\0\21\15\0\0\22\0\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent"
      "url"
      "user_name"
      "profile_user_name"
      "referral_urls"
      "profile_identifier"
    }},
  };
}


inline constexpr SafeBrowsingPasswordReuseEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.security_agents_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        is_phishing_url_{false},
        clicked_through_{false},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referrers_)>()
         }
     {}

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

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

constexpr SafeBrowsingInterstitialEvent::ParseTableT_ SafeBrowsingInterstitialEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_._has_bits_),
      0, // no _extensions_
      22, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4290797474,  // skipmap
      offsetof(ParseTableT_, field_entries),
      13,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialReason reason = 16;
      {::_pbi::TcParser::FastV32S2,
       {384, 9, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.reason_)}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.url_)}},
      // string profile_identifier = 18;
      {::_pbi::TcParser::FastUS2,
       {402, 3, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.profile_identifier_)}},
      // int32 net_error_code = 3;
      {::_pbi::TcParser::FastV32S1,
       {24, 6, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.net_error_code_)}},
      // string profile_user_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 2, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.profile_user_name_)}},
      // bool clicked_through = 5;
      {::_pbi::TcParser::FastV8S1,
       {40, 7, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.clicked_through_)}},
      // string tab_title = 22;
      {::_pbi::TcParser::FastUS2,
       {434, 4, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.tab_title_)}},
      // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialThreatType threat_type = 7;
      {::_pbi::TcParser::FastV32S1,
       {56, 8, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.threat_type_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated string referral_urls = 14;
      {::_pbi::TcParser::FastUR1,
       {114, 0, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.referral_urls_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.url_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // int32 net_error_code = 3;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.net_error_code_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // string profile_user_name = 4;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool clicked_through = 5;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialThreatType threat_type = 7;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.threat_type_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated string referral_urls = 14;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.referral_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialReason reason = 16;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.reason_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.EventResult event_result = 17;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string profile_identifier = 18;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 19;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 20;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 5, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 21;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 12, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string tab_title = 22;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.tab_title_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\71\3\0\21\0\0\15\0\0\22\0\0\0\11\0\0"
      "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent"
      "url"
      "profile_user_name"
      "referral_urls"
      "profile_identifier"
      "tab_title"
    }},
  };
}


inline constexpr SafeBrowsingInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referral_urls_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_title_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        net_error_code_{0},
        clicked_through_{false},
        threat_type_{static_cast< ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent_InterstitialThreatType >(0)},
        reason_{static_cast< ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent_InterstitialReason >(0)},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referrers_)>()
         }
     {}

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

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

constexpr SafeBrowsingDangerousDownloadEvent::ParseTableT_ SafeBrowsingDangerousDownloadEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_._has_bits_),
      0, // no _extensions_
      40, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      64528,  // skipmap
      offsetof(ParseTableT_, field_entries),
      33,  // num_field_entries
      5,  // 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<::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.url_)}},
      // string file_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 3, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.file_name_)}},
      // string download_digest_sha256 = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 4, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.download_digest_sha256_)}},
      // string profile_user_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 5, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.profile_user_name_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // .chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.DangerousDownloadThreatType threat_type = 6;
      {::_pbi::TcParser::FastV32S1,
       {48, 20, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.threat_type_)}},
      // string content_name = 7;
      {::_pbi::TcParser::FastUS1,
       {58, 6, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_name_)}},
      // string content_type = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 7, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_type_)}},
      // uint64 content_size = 9;
      {::_pbi::TcParser::FastV64S1,
       {72, 22, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_size_)}},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 10;
      {::_pbi::TcParser::FastV32S1,
       {80, 21, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.trigger_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // int64 server_scan_latency_millis = 32;
      {::_pbi::TcParser::FastV64S2,
       {640, 27, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.server_scan_latency_millis_)}},
      // repeated string referral_urls = 17;
      {::_pbi::TcParser::FastUR2,
       {394, 0, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.referral_urls_)}},
      // bool clicked_through = 18;
      {::_pbi::TcParser::FastV8S2,
       {400, 23, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.clicked_through_)}},
      // .chrome.cros.reporting.proto.EventResult event_result = 19;
      {::_pbi::TcParser::FastV32S2,
       {408, 24, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.event_result_)}},
      // string user_justification = 20;
      {::_pbi::TcParser::FastUS2,
       {418, 8, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.user_justification_)}},
      // string malware_category = 21;
      {::_pbi::TcParser::FastUS2,
       {426, 9, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.malware_category_)}},
      // string malware_family = 22;
      {::_pbi::TcParser::FastUS2,
       {434, 10, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.malware_family_)}},
      // string evidence_locker_filepath = 23;
      {::_pbi::TcParser::FastUS2,
       {442, 11, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.evidence_locker_filepath_)}},
      // string scan_id = 24;
      {::_pbi::TcParser::FastUS2,
       {450, 12, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.scan_id_)}},
      // string source = 25;
      {::_pbi::TcParser::FastUS2,
       {458, 13, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.source_)}},
      // string destination = 26;
      {::_pbi::TcParser::FastUS2,
       {466, 14, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.destination_)}},
      // string profile_identifier = 27;
      {::_pbi::TcParser::FastUS2,
       {474, 15, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 28;
      {::_pbi::TcParser::FastMtR2,
       {482, 1, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.security_agents_)}},
      // string tab_url = 29;
      {::_pbi::TcParser::FastUS2,
       {490, 16, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.tab_url_)}},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 30;
      {::_pbi::TcParser::FastV32S2,
       {496, 25, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_transfer_method_)}},
      // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 31;
      {::_pbi::TcParser::FastV32S2,
       {504, 26, 0,
        PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.server_scan_status_)}},
    }}, {{
      33, 0, 1,
      65280, 25,
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.url_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string file_name = 2;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.file_name_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string download_digest_sha256 = 3;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.download_digest_sha256_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 4;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.DangerousDownloadThreatType threat_type = 6;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.threat_type_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string content_name = 7;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_name_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string content_type = 8;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_type_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // uint64 content_size = 9;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_size_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 10;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.trigger_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // repeated string referral_urls = 17;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.referral_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // bool clicked_through = 18;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // .chrome.cros.reporting.proto.EventResult event_result = 19;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string user_justification = 20;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.user_justification_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string malware_category = 21;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.malware_category_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string malware_family = 22;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.malware_family_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string evidence_locker_filepath = 23;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.evidence_locker_filepath_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string scan_id = 24;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.scan_id_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string source = 25;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.source_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string destination = 26;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.destination_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 27;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 28;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string tab_url = 29;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.tab_url_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 30;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.content_transfer_method_), _Internal::kHasBitsOffset + 25, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 31;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.server_scan_status_), _Internal::kHasBitsOffset + 26, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // int64 server_scan_latency_millis = 32;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.server_scan_latency_millis_), _Internal::kHasBitsOffset + 27, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 33;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 18, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 34;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 30, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 35;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.risk_infos_), _Internal::kHasBitsOffset + 31, 3, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 36;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.risk_level_), _Internal::kHasBitsOffset + 28, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.tab_url_info_), _Internal::kHasBitsOffset + 19, 4, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string pehash_sha256 = 38;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.pehash_sha256_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool is_encrypted = 39;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.is_encrypted_), _Internal::kHasBitsOffset + 29, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // repeated string iframe_urls = 40;
      {PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.iframe_urls_), _Internal::kHasBitsOffset + 32, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::RiskInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\76\3\11\26\21\0\14\14\0\0\15\0\0\22\20\16\30\7\6\13\22\0\7\0\0\0\0\0\0\0\0\15\0\13\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent"
      "url"
      "file_name"
      "download_digest_sha256"
      "profile_user_name"
      "content_name"
      "content_type"
      "referral_urls"
      "user_justification"
      "malware_category"
      "malware_family"
      "evidence_locker_filepath"
      "scan_id"
      "source"
      "destination"
      "profile_identifier"
      "tab_url"
      "pehash_sha256"
      "iframe_urls"
    }},
  };
}


inline constexpr SafeBrowsingDangerousDownloadEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.security_agents_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        file_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        download_digest_sha256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        content_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        content_type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        user_justification_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        malware_category_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        malware_family_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        evidence_locker_filepath_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        scan_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        destination_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        pehash_sha256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        tab_url_info_{nullptr},
        threat_type_{static_cast< ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType >(0)},
        trigger_{static_cast< ::chrome::cros::reporting::proto::DataTransferEventTrigger >(0)},
        content_size_{::uint64_t{0u}},
        clicked_through_{false},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        content_transfer_method_{static_cast< ::chrome::cros::reporting::proto::ContentTransferMethod >(0)},
        server_scan_status_{static_cast< ::chrome::cros::reporting::proto::ServerScanStatus >(0)},
        server_scan_latency_millis_{::int64_t{0}},
        risk_level_{static_cast< ::chrome::cros::reporting::proto::RiskLevel >(0)},
        is_encrypted_{false},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referrers_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.risk_infos_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.iframe_urls_)>()
         }
     {}

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

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

constexpr LoginEvent::ParseTableT_ LoginEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_._has_bits_),
      0, // no _extensions_
      9, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294966784,  // skipmap
      offsetof(ParseTableT_, field_entries),
      9,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::LoginEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string url = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.url_)}},
      // bool is_federated = 2;
      {::_pbi::TcParser::FastV8S1,
       {16, 8, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.is_federated_)}},
      // string federated_origin = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.federated_origin_)}},
      // string profile_user_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 4, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.profile_user_name_)}},
      // string login_user_name = 5;
      {::_pbi::TcParser::FastUS1,
       {42, 5, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.login_user_name_)}},
      // string profile_identifier = 6;
      {::_pbi::TcParser::FastUS1,
       {50, 6, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
      {::_pbi::TcParser::FastMtR1,
       {58, 0, 0,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.security_agents_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 8;
      {::_pbi::TcParser::FastMtS1,
       {66, 7, 1,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 9;
      {::_pbi::TcParser::FastMtR1,
       {74, 1, 2,
        PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.referrers_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string url = 1;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.url_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool is_federated = 2;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.is_federated_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // string federated_origin = 3;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.federated_origin_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 4;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string login_user_name = 5;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.login_user_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 6;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 8;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 7, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 9;
      {PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 1, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\46\3\0\20\21\17\22\0\0\0\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.LoginEvent"
      "url"
      "federated_origin"
      "profile_user_name"
      "login_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr LoginEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::LoginEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::LoginEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.referrers_)>()
         }
        ,
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        federated_origin_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        login_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        is_federated_{false} {}

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

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

constexpr DlpSensitiveDataEvent::ParseTableT_ DlpSensitiveDataEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_._has_bits_),
      0, // no _extensions_
      39, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      16801568,  // skipmap
      offsetof(ParseTableT_, field_entries),
      31,  // num_field_entries
      5,  // 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<::chrome::cros::reporting::proto::DlpSensitiveDataEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string file_name = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.file_name_)}},
      // string content_type = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 4, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_type_)}},
      // uint64 content_size = 3;
      {::_pbi::TcParser::FastV64S1,
       {24, 21, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_size_)}},
      // string download_digest_sha_256 = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 5, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.download_digest_sha_256_)}},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
      {::_pbi::TcParser::FastV32S1,
       {40, 22, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.trigger_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // bool clicked_through = 7;
      {::_pbi::TcParser::FastV8S1,
       {56, 23, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.clicked_through_)}},
      // string url = 8;
      {::_pbi::TcParser::FastUS1,
       {66, 6, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.url_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // string profile_user_name = 14;
      {::_pbi::TcParser::FastUS1,
       {114, 7, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.profile_user_name_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated string referral_urls = 16;
      {::_pbi::TcParser::FastUR2,
       {386, 0, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.referral_urls_)}},
      // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 17;
      {::_pbi::TcParser::FastMtR2,
       {394, 1, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.triggered_rule_info_)}},
      // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 18;
      {::_pbi::TcParser::FastV32S2,
       {400, 24, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.reporting_target_)}},
      // .chrome.cros.reporting.proto.EventResult event_result = 19;
      {::_pbi::TcParser::FastV32S2,
       {408, 25, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.event_result_)}},
      // string user_justification = 20;
      {::_pbi::TcParser::FastUS2,
       {418, 8, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.user_justification_)}},
      // string evidence_locker_filepath = 21;
      {::_pbi::TcParser::FastUS2,
       {426, 9, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.evidence_locker_filepath_)}},
      // string scan_id = 22;
      {::_pbi::TcParser::FastUS2,
       {434, 10, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.scan_id_)}},
      // string source = 23;
      {::_pbi::TcParser::FastUS2,
       {442, 11, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.source_)}},
      // string destination = 24;
      {::_pbi::TcParser::FastUS2,
       {450, 12, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.destination_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // string profile_identifier = 26;
      {::_pbi::TcParser::FastUS2,
       {466, 13, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.profile_identifier_)}},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 27;
      {::_pbi::TcParser::FastMtR2,
       {474, 2, 1,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.security_agents_)}},
      // string tab_url = 28;
      {::_pbi::TcParser::FastUS2,
       {482, 14, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.tab_url_)}},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 29;
      {::_pbi::TcParser::FastV32S2,
       {488, 26, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_transfer_method_)}},
      // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 30;
      {::_pbi::TcParser::FastV32S2,
       {496, 27, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.server_scan_status_)}},
      // int64 server_scan_latency_millis = 31;
      {::_pbi::TcParser::FastV64S2,
       {504, 28, 0,
        PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.server_scan_latency_millis_)}},
    }}, {{
      33, 0, 1,
      65408, 24,
      65535, 65535
    }}, {{
      // string file_name = 1;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.file_name_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string content_type = 2;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_type_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // uint64 content_size = 3;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_size_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // string download_digest_sha_256 = 4;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.download_digest_sha_256_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.trigger_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // bool clicked_through = 7;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.clicked_through_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // string url = 8;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.url_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 14;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated string referral_urls = 16;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.referral_urls_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 17;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.triggered_rule_info_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 18;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.reporting_target_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.EventResult event_result = 19;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.event_result_), _Internal::kHasBitsOffset + 25, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string user_justification = 20;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.user_justification_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string evidence_locker_filepath = 21;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.evidence_locker_filepath_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string scan_id = 22;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.scan_id_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string source = 23;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.source_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string destination = 24;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.destination_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 26;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 27;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 2, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string tab_url = 28;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.tab_url_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 29;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.content_transfer_method_), _Internal::kHasBitsOffset + 26, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 30;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.server_scan_status_), _Internal::kHasBitsOffset + 27, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // int64 server_scan_latency_millis = 31;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.server_scan_latency_millis_), _Internal::kHasBitsOffset + 28, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 32;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 19, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 33;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 29, 3, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated string iframe_urls = 34;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.iframe_urls_), _Internal::kHasBitsOffset + 30, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // string web_app_signed_in_account = 35;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.web_app_signed_in_account_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string source_web_app_signed_in_account = 36;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.source_web_app_signed_in_account_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.tab_url_info_), _Internal::kHasBitsOffset + 20, 4, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string microsoft_sensitivity_label_name = 38;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.microsoft_sensitivity_label_name_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string source_microsoft_sensitivity_label_name = 39;
      {PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.source_microsoft_sensitivity_label_name_), _Internal::kHasBitsOffset + 18, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::TriggeredRuleInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::TriggeredRuleInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\61\11\14\0\27\0\0\3\21\15\0\0\0\22\30\7\6\13\22\0\7\0\0\0\0\0\13\31\40\0\40\47"
      "chrome.cros.reporting.proto.DlpSensitiveDataEvent"
      "file_name"
      "content_type"
      "download_digest_sha_256"
      "url"
      "profile_user_name"
      "referral_urls"
      "user_justification"
      "evidence_locker_filepath"
      "scan_id"
      "source"
      "destination"
      "profile_identifier"
      "tab_url"
      "iframe_urls"
      "web_app_signed_in_account"
      "source_web_app_signed_in_account"
      "microsoft_sensitivity_label_name"
      "source_microsoft_sensitivity_label_name"
    }},
  };
}


inline constexpr DlpSensitiveDataEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referral_urls_)>()
         }
        ,
        triggered_rule_info_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.triggered_rule_info_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.security_agents_)>()
         }
        ,
        file_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        content_type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        download_digest_sha_256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        user_justification_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        evidence_locker_filepath_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        scan_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        destination_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        web_app_signed_in_account_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_web_app_signed_in_account_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        microsoft_sensitivity_label_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_microsoft_sensitivity_label_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        tab_url_info_{nullptr},
        content_size_{::uint64_t{0u}},
        trigger_{static_cast< ::chrome::cros::reporting::proto::DataTransferEventTrigger >(0)},
        clicked_through_{false},
        reporting_target_{static_cast< ::chrome::cros::reporting::proto::ReportingTarget >(0)},
        event_result_{static_cast< ::chrome::cros::reporting::proto::EventResult >(0)},
        content_transfer_method_{static_cast< ::chrome::cros::reporting::proto::ContentTransferMethod >(0)},
        server_scan_status_{static_cast< ::chrome::cros::reporting::proto::ServerScanStatus >(0)},
        server_scan_latency_millis_{::int64_t{0}},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referrers_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.iframe_urls_)>()
         }
     {}

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

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

constexpr ContentTransferEvent::ParseTableT_ ContentTransferEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_._has_bits_),
      0, // no _extensions_
      25, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4261412864,  // skipmap
      offsetof(ParseTableT_, field_entries),
      25,  // num_field_entries
      5,  // 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<::chrome::cros::reporting::proto::ContentTransferEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string scan_id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 4, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.scan_id_)}},
      // string profile_user_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 5, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.profile_user_name_)}},
      // string url = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 6, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.url_)}},
      // string file_name = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 7, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.file_name_)}},
      // uint64 content_size = 5;
      {::_pbi::TcParser::FastV64S1,
       {40, 19, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_size_)}},
      // string content_type = 6;
      {::_pbi::TcParser::FastUS1,
       {50, 8, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_type_)}},
      // string digest_sha256 = 7;
      {::_pbi::TcParser::FastUS1,
       {58, 9, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.digest_sha256_)}},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 8;
      {::_pbi::TcParser::FastV32S1,
       {64, 20, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.trigger_)}},
      // string source = 9;
      {::_pbi::TcParser::FastUS1,
       {74, 10, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.source_)}},
      // string destination = 10;
      {::_pbi::TcParser::FastUS1,
       {82, 11, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.destination_)}},
      // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 11;
      {::_pbi::TcParser::FastMtR1,
       {90, 0, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.matched_detectors_)}},
      // string tab_url = 12;
      {::_pbi::TcParser::FastUS1,
       {98, 12, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.tab_url_)}},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 13;
      {::_pbi::TcParser::FastV32S1,
       {104, 21, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_transfer_method_)}},
      // int64 server_scan_latency_millis = 14;
      {::_pbi::TcParser::FastV64S1,
       {112, 22, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.server_scan_latency_millis_)}},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 15;
      {::_pbi::TcParser::FastMtS1,
       {122, 17, 1,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.url_info_)}},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 16;
      {::_pbi::TcParser::FastMtR2,
       {386, 1, 2,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.referrers_)}},
      // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 17;
      {::_pbi::TcParser::FastMtR2,
       {394, 2, 3,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.risk_infos_)}},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 18;
      {::_pbi::TcParser::FastV32S2,
       {400, 23, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.risk_level_)}},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 19;
      {::_pbi::TcParser::FastMtS2,
       {410, 18, 4,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.tab_url_info_)}},
      // string pehash_sha256 = 20;
      {::_pbi::TcParser::FastUS2,
       {418, 13, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.pehash_sha256_)}},
      // bool is_encrypted = 21;
      {::_pbi::TcParser::FastV8S2,
       {424, 24, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.is_encrypted_)}},
      // string evidence_locker_filepath = 22;
      {::_pbi::TcParser::FastUS2,
       {434, 14, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.evidence_locker_filepath_)}},
      // repeated string iframe_urls = 23;
      {::_pbi::TcParser::FastUR2,
       {442, 3, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.iframe_urls_)}},
      // string web_app_signed_in_account = 24;
      {::_pbi::TcParser::FastUS2,
       {450, 15, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.web_app_signed_in_account_)}},
      // string source_web_app_signed_in_account = 25;
      {::_pbi::TcParser::FastUS2,
       {458, 16, 0,
        PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.source_web_app_signed_in_account_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string scan_id = 1;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.scan_id_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_user_name = 2;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string url = 3;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.url_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string file_name = 4;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.file_name_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // uint64 content_size = 5;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_size_), _Internal::kHasBitsOffset + 19, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // string content_type = 6;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_type_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string digest_sha256 = 7;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.digest_sha256_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 8;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.trigger_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // string source = 9;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.source_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string destination = 10;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.destination_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 11;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.matched_detectors_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // string tab_url = 12;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.tab_url_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 13;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.content_transfer_method_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // int64 server_scan_latency_millis = 14;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.server_scan_latency_millis_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // .chrome.cros.reporting.proto.UrlInfo url_info = 15;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.url_info_), _Internal::kHasBitsOffset + 17, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 16;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.referrers_), _Internal::kHasBitsOffset + 1, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 17;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.risk_infos_), _Internal::kHasBitsOffset + 2, 3, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // .chrome.cros.reporting.proto.RiskLevel risk_level = 18;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.risk_level_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
      // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 19;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.tab_url_info_), _Internal::kHasBitsOffset + 18, 4, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string pehash_sha256 = 20;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.pehash_sha256_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bool is_encrypted = 21;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.is_encrypted_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // string evidence_locker_filepath = 22;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.evidence_locker_filepath_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated string iframe_urls = 23;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.iframe_urls_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUtf8String | ::_fl::kRepSString)},
      // string web_app_signed_in_account = 24;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.web_app_signed_in_account_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string source_web_app_signed_in_account = 25;
      {PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.source_web_app_signed_in_account_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::MatchedDetector>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::MatchedDetector_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::RiskInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::RiskInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::UrlInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::UrlInfo_globals_},
        #endif
    }},
    {{
      "\60\7\21\3\11\0\14\15\0\6\13\0\7\0\0\0\0\0\0\0\15\0\30\13\31\40\0\0\0\0\0\0"
      "chrome.cros.reporting.proto.ContentTransferEvent"
      "scan_id"
      "profile_user_name"
      "url"
      "file_name"
      "content_type"
      "digest_sha256"
      "source"
      "destination"
      "tab_url"
      "pehash_sha256"
      "evidence_locker_filepath"
      "iframe_urls"
      "web_app_signed_in_account"
      "source_web_app_signed_in_account"
    }},
  };
}


inline constexpr ContentTransferEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        matched_detectors_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.matched_detectors_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.referrers_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.risk_infos_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.iframe_urls_)>()
         }
        ,
        scan_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        file_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        content_type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        digest_sha256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        destination_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        tab_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        pehash_sha256_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        evidence_locker_filepath_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        web_app_signed_in_account_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        source_web_app_signed_in_account_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_info_{nullptr},
        tab_url_info_{nullptr},
        content_size_{::uint64_t{0u}},
        trigger_{static_cast< ::chrome::cros::reporting::proto::DataTransferEventTrigger >(0)},
        content_transfer_method_{static_cast< ::chrome::cros::reporting::proto::ContentTransferMethod >(0)},
        server_scan_latency_millis_{::int64_t{0}},
        risk_level_{static_cast< ::chrome::cros::reporting::proto::RiskLevel >(0)},
        is_encrypted_{false} {}

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

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

constexpr ExtensionTelemetryEvent::ParseTableT_ ExtensionTelemetryEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      2,  // 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<::chrome::cros::reporting::proto::ExtensionTelemetryEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
      {::_pbi::TcParser::FastMtR1,
       {34, 0, 1,
        PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.security_agents_)}},
      // .safe_browsing.ExtensionTelemetryReportRequest extension_telemetry_report = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.extension_telemetry_report_)}},
      // string profile_user_name = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.profile_user_name_)}},
      // string profile_identifier = 3;
      {::_pbi::TcParser::FastUS1,
       {26, 2, 0,
        PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.profile_identifier_)}},
    }}, {{
      65535, 65535
    }}, {{
      // .safe_browsing.ExtensionTelemetryReportRequest extension_telemetry_report = 1;
      {PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.extension_telemetry_report_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // string profile_user_name = 2;
      {PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.profile_user_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string profile_identifier = 3;
      {PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.profile_identifier_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
      {PROTOBUF_FIELD_OFFSET(ExtensionTelemetryEvent, _impl_.security_agents_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::safe_browsing::ExtensionTelemetryReportRequest>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::safe_browsing::ExtensionTelemetryReportRequest_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::chrome::cros::reporting::proto::SecurityAgent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::chrome::cros::reporting::proto::SecurityAgent_globals_},
        #endif
    }},
    {{
      "\63\0\21\22\0\0\0\0"
      "chrome.cros.reporting.proto.ExtensionTelemetryEvent"
      "profile_user_name"
      "profile_identifier"
    }},
  };
}


inline constexpr ExtensionTelemetryEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ExtensionTelemetryEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ExtensionTelemetryEvent, _impl_.security_agents_)>()
         }
        ,
        profile_user_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        profile_identifier_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        extension_telemetry_report_{nullptr} {}

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

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST ExtensionTelemetryEventGlobalsTypeInternal ExtensionTelemetryEvent_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* ExtensionTelemetryEvent_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return ExtensionTelemetryEvent_globals_.GetClassData();
#else
  return ExtensionTelemetryEvent_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
}  // namespace proto
}  // namespace reporting
}  // namespace cros
}  // namespace chrome
namespace chrome {
namespace cros {
namespace reporting {
namespace proto {
PROTOBUF_CONSTINIT const uint32_t MatchedDetector_DetectorType_internal_data_[] = {
    196608u, 0u, };
static const char MatchedDetector_DetectorType_names[] = {
    "DETECTOR_TYPE_UNSPECIFIED"
    "PREDEFINED_DLP"
    "USER_DEFINED"
};

static const ::google::protobuf::internal::EnumEntry MatchedDetector_DetectorType_entries[] = {
    {{&MatchedDetector_DetectorType_names[0], 25}, 0},
    {{&MatchedDetector_DetectorType_names[25], 14}, 1},
    {{&MatchedDetector_DetectorType_names[39], 12}, 2},
};

static const int MatchedDetector_DetectorType_entries_by_number[] = {
    0,  // 0 -> DETECTOR_TYPE_UNSPECIFIED
    1,  // 1 -> PREDEFINED_DLP
    2,  // 2 -> USER_DEFINED
};

bool MatchedDetector_DetectorType_Parse(::absl::string_view name,
                                  MatchedDetector_DetectorType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      MatchedDetector_DetectorType_entries, 3, name, &int_value);
  if (success) {
    *value = static_cast<MatchedDetector_DetectorType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    MatchedDetector_DetectorType_strings[3] = {};

const ::std::string& MatchedDetector_DetectorType_Name(MatchedDetector_DetectorType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      MatchedDetector_DetectorType_entries, MatchedDetector_DetectorType_entries_by_number, 3,
      MatchedDetector_DetectorType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(MatchedDetector_DetectorType_entries,
                                  MatchedDetector_DetectorType_entries_by_number,
                                  3, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : MatchedDetector_DetectorType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t MatchedDetector_MaskType_internal_data_[] = {
    262144u, 0u, };
static const char MatchedDetector_MaskType_names[] = {
    "HARD_OBFUSCATION"
    "LIGHT_OBFUSCATION"
    "MASK_TYPE_UNSPECIFIED"
    "REDACT"
};

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

static const int MatchedDetector_MaskType_entries_by_number[] = {
    2,  // 0 -> MASK_TYPE_UNSPECIFIED
    1,  // 1 -> LIGHT_OBFUSCATION
    0,  // 2 -> HARD_OBFUSCATION
    3,  // 3 -> REDACT
};

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

const ::std::string& MatchedDetector_MaskType_Name(MatchedDetector_MaskType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      MatchedDetector_MaskType_entries, MatchedDetector_MaskType_entries_by_number, 4,
      MatchedDetector_MaskType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(MatchedDetector_MaskType_entries,
                                  MatchedDetector_MaskType_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : MatchedDetector_MaskType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t NotificationConfiguration_Channel_internal_data_[] = {
    131072u, 0u, };
static const char NotificationConfiguration_Channel_names[] = {
    "CHANNEL_UNKNOWN"
    "EMAIL"
};

static const ::google::protobuf::internal::EnumEntry NotificationConfiguration_Channel_entries[] = {
    {{&NotificationConfiguration_Channel_names[0], 15}, 0},
    {{&NotificationConfiguration_Channel_names[15], 5}, 1},
};

static const int NotificationConfiguration_Channel_entries_by_number[] = {
    0,  // 0 -> CHANNEL_UNKNOWN
    1,  // 1 -> EMAIL
};

bool NotificationConfiguration_Channel_Parse(::absl::string_view name,
                                  NotificationConfiguration_Channel* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      NotificationConfiguration_Channel_entries, 2, name, &int_value);
  if (success) {
    *value = static_cast<NotificationConfiguration_Channel>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    NotificationConfiguration_Channel_strings[2] = {};

const ::std::string& NotificationConfiguration_Channel_Name(NotificationConfiguration_Channel value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      NotificationConfiguration_Channel_entries, NotificationConfiguration_Channel_entries_by_number, 2,
      NotificationConfiguration_Channel_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(NotificationConfiguration_Channel_entries,
                                  NotificationConfiguration_Channel_entries_by_number,
                                  2, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : NotificationConfiguration_Channel_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t TriggeredRuleInfo_RuleSeverity_internal_data_[] = {
    262144u, 0u, };
static const char TriggeredRuleInfo_RuleSeverity_names[] = {
    "HIGH"
    "LOW"
    "MEDIUM"
    "RULE_SEVERITY_UNSPECIFIED"
};

static const ::google::protobuf::internal::EnumEntry TriggeredRuleInfo_RuleSeverity_entries[] = {
    {{&TriggeredRuleInfo_RuleSeverity_names[0], 4}, 3},
    {{&TriggeredRuleInfo_RuleSeverity_names[4], 3}, 1},
    {{&TriggeredRuleInfo_RuleSeverity_names[7], 6}, 2},
    {{&TriggeredRuleInfo_RuleSeverity_names[13], 25}, 0},
};

static const int TriggeredRuleInfo_RuleSeverity_entries_by_number[] = {
    3,  // 0 -> RULE_SEVERITY_UNSPECIFIED
    1,  // 1 -> LOW
    2,  // 2 -> MEDIUM
    0,  // 3 -> HIGH
};

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

const ::std::string& TriggeredRuleInfo_RuleSeverity_Name(TriggeredRuleInfo_RuleSeverity value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      TriggeredRuleInfo_RuleSeverity_entries, TriggeredRuleInfo_RuleSeverity_entries_by_number, 4,
      TriggeredRuleInfo_RuleSeverity_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(TriggeredRuleInfo_RuleSeverity_entries,
                                  TriggeredRuleInfo_RuleSeverity_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : TriggeredRuleInfo_RuleSeverity_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t TriggeredRuleInfo_Action_internal_data_[] = {
    458752u, 0u, };
static const char TriggeredRuleInfo_Action_names[] = {
    "ACTION_UNKNOWN"
    "BLOCK"
    "FORCE_SAVE_TO_CLOUD"
    "JUSTIFICATION_REQUIRED"
    "KEEP_IN_MANAGED_CHROME"
    "REPORT_ONLY"
    "WARN"
};

static const ::google::protobuf::internal::EnumEntry TriggeredRuleInfo_Action_entries[] = {
    {{&TriggeredRuleInfo_Action_names[0], 14}, 0},
    {{&TriggeredRuleInfo_Action_names[14], 5}, 3},
    {{&TriggeredRuleInfo_Action_names[19], 19}, 4},
    {{&TriggeredRuleInfo_Action_names[38], 22}, 5},
    {{&TriggeredRuleInfo_Action_names[60], 22}, 6},
    {{&TriggeredRuleInfo_Action_names[82], 11}, 1},
    {{&TriggeredRuleInfo_Action_names[93], 4}, 2},
};

static const int TriggeredRuleInfo_Action_entries_by_number[] = {
    0,  // 0 -> ACTION_UNKNOWN
    5,  // 1 -> REPORT_ONLY
    6,  // 2 -> WARN
    1,  // 3 -> BLOCK
    2,  // 4 -> FORCE_SAVE_TO_CLOUD
    3,  // 5 -> JUSTIFICATION_REQUIRED
    4,  // 6 -> KEEP_IN_MANAGED_CHROME
};

bool TriggeredRuleInfo_Action_Parse(::absl::string_view name,
                                  TriggeredRuleInfo_Action* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      TriggeredRuleInfo_Action_entries, 7, name, &int_value);
  if (success) {
    *value = static_cast<TriggeredRuleInfo_Action>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    TriggeredRuleInfo_Action_strings[7] = {};

const ::std::string& TriggeredRuleInfo_Action_Name(TriggeredRuleInfo_Action value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      TriggeredRuleInfo_Action_entries, TriggeredRuleInfo_Action_entries_by_number, 7,
      TriggeredRuleInfo_Action_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(TriggeredRuleInfo_Action_entries,
                                  TriggeredRuleInfo_Action_entries_by_number,
                                  7, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : TriggeredRuleInfo_Action_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t RiskInfo_ThreatType_internal_data_[] = {
    458752u, 0u, };
static const char RiskInfo_ThreatType_names[] = {
    "DATA_LOSS"
    "ENTERPRISE_BRAND_ABUSE"
    "MALWARE"
    "SOCIAL_ENGINEERING"
    "THREAT_TYPE_UNSPECIFIED"
    "UNWANTED_SOFTWARE"
    "URL_FILTERING"
};

static const ::google::protobuf::internal::EnumEntry RiskInfo_ThreatType_entries[] = {
    {{&RiskInfo_ThreatType_names[0], 9}, 4},
    {{&RiskInfo_ThreatType_names[9], 22}, 6},
    {{&RiskInfo_ThreatType_names[31], 7}, 1},
    {{&RiskInfo_ThreatType_names[38], 18}, 3},
    {{&RiskInfo_ThreatType_names[56], 23}, 0},
    {{&RiskInfo_ThreatType_names[79], 17}, 2},
    {{&RiskInfo_ThreatType_names[96], 13}, 5},
};

static const int RiskInfo_ThreatType_entries_by_number[] = {
    4,  // 0 -> THREAT_TYPE_UNSPECIFIED
    2,  // 1 -> MALWARE
    5,  // 2 -> UNWANTED_SOFTWARE
    3,  // 3 -> SOCIAL_ENGINEERING
    0,  // 4 -> DATA_LOSS
    6,  // 5 -> URL_FILTERING
    1,  // 6 -> ENTERPRISE_BRAND_ABUSE
};

bool RiskInfo_ThreatType_Parse(::absl::string_view name,
                                  RiskInfo_ThreatType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      RiskInfo_ThreatType_entries, 7, name, &int_value);
  if (success) {
    *value = static_cast<RiskInfo_ThreatType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    RiskInfo_ThreatType_strings[7] = {};

const ::std::string& RiskInfo_ThreatType_Name(RiskInfo_ThreatType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      RiskInfo_ThreatType_entries, RiskInfo_ThreatType_entries_by_number, 7,
      RiskInfo_ThreatType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(RiskInfo_ThreatType_entries,
                                  RiskInfo_ThreatType_entries_by_number,
                                  7, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : RiskInfo_ThreatType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t RiskInfo_RiskSource_internal_data_[] = {
    327680u, 0u, };
static const char RiskInfo_RiskSource_names[] = {
    "FILE_CONTENT_SCANNING"
    "FILE_REPUTATION"
    "RISK_SOURCE_UNSPECIFIED"
    "URL_CONTENT_SCANNING"
    "URL_REPUTATION"
};

static const ::google::protobuf::internal::EnumEntry RiskInfo_RiskSource_entries[] = {
    {{&RiskInfo_RiskSource_names[0], 21}, 2},
    {{&RiskInfo_RiskSource_names[21], 15}, 1},
    {{&RiskInfo_RiskSource_names[36], 23}, 0},
    {{&RiskInfo_RiskSource_names[59], 20}, 4},
    {{&RiskInfo_RiskSource_names[79], 14}, 3},
};

static const int RiskInfo_RiskSource_entries_by_number[] = {
    2,  // 0 -> RISK_SOURCE_UNSPECIFIED
    1,  // 1 -> FILE_REPUTATION
    0,  // 2 -> FILE_CONTENT_SCANNING
    4,  // 3 -> URL_REPUTATION
    3,  // 4 -> URL_CONTENT_SCANNING
};

bool RiskInfo_RiskSource_Parse(::absl::string_view name,
                                  RiskInfo_RiskSource* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      RiskInfo_RiskSource_entries, 5, name, &int_value);
  if (success) {
    *value = static_cast<RiskInfo_RiskSource>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    RiskInfo_RiskSource_strings[5] = {};

const ::std::string& RiskInfo_RiskSource_Name(RiskInfo_RiskSource value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      RiskInfo_RiskSource_entries, RiskInfo_RiskSource_entries_by_number, 5,
      RiskInfo_RiskSource_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(RiskInfo_RiskSource_entries,
                                  RiskInfo_RiskSource_entries_by_number,
                                  5, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : RiskInfo_RiskSource_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t UrlInfo_NavigationInitiator_InitiatorType_internal_data_[] = {
    262144u, 0u, };
static const char UrlInfo_NavigationInitiator_InitiatorType_names[] = {
    "BROWSER_INITIATED_NAVIGATION_OR_REDIRECT"
    "CHROME_NOTIFICATION"
    "INITIATOR_TYPE_UNSPECIFIED"
    "USER_INITIATIATED_NAVIGATION_OR_CLICK"
};

static const ::google::protobuf::internal::EnumEntry UrlInfo_NavigationInitiator_InitiatorType_entries[] = {
    {{&UrlInfo_NavigationInitiator_InitiatorType_names[0], 40}, 2},
    {{&UrlInfo_NavigationInitiator_InitiatorType_names[40], 19}, 3},
    {{&UrlInfo_NavigationInitiator_InitiatorType_names[59], 26}, 0},
    {{&UrlInfo_NavigationInitiator_InitiatorType_names[85], 37}, 1},
};

static const int UrlInfo_NavigationInitiator_InitiatorType_entries_by_number[] = {
    2,  // 0 -> INITIATOR_TYPE_UNSPECIFIED
    3,  // 1 -> USER_INITIATIATED_NAVIGATION_OR_CLICK
    0,  // 2 -> BROWSER_INITIATED_NAVIGATION_OR_REDIRECT
    1,  // 3 -> CHROME_NOTIFICATION
};

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

const ::std::string& UrlInfo_NavigationInitiator_InitiatorType_Name(UrlInfo_NavigationInitiator_InitiatorType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      UrlInfo_NavigationInitiator_InitiatorType_entries, UrlInfo_NavigationInitiator_InitiatorType_entries_by_number, 4,
      UrlInfo_NavigationInitiator_InitiatorType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(UrlInfo_NavigationInitiator_InitiatorType_entries,
                                  UrlInfo_NavigationInitiator_InitiatorType_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : UrlInfo_NavigationInitiator_InitiatorType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t UrlInfo_URLType_internal_data_[] = {
    327680u, 0u, };
static const char UrlInfo_URLType_names[] = {
    "DOWNLOAD_REDIRECT"
    "DOWNLOAD_URL"
    "TAB_REDIRECT"
    "TAB_URL"
    "URL_TYPE_UNSPECIFIED"
};

static const ::google::protobuf::internal::EnumEntry UrlInfo_URLType_entries[] = {
    {{&UrlInfo_URLType_names[0], 17}, 2},
    {{&UrlInfo_URLType_names[17], 12}, 1},
    {{&UrlInfo_URLType_names[29], 12}, 4},
    {{&UrlInfo_URLType_names[41], 7}, 3},
    {{&UrlInfo_URLType_names[48], 20}, 0},
};

static const int UrlInfo_URLType_entries_by_number[] = {
    4,  // 0 -> URL_TYPE_UNSPECIFIED
    1,  // 1 -> DOWNLOAD_URL
    0,  // 2 -> DOWNLOAD_REDIRECT
    3,  // 3 -> TAB_URL
    2,  // 4 -> TAB_REDIRECT
};

bool UrlInfo_URLType_Parse(::absl::string_view name,
                                  UrlInfo_URLType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      UrlInfo_URLType_entries, 5, name, &int_value);
  if (success) {
    *value = static_cast<UrlInfo_URLType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    UrlInfo_URLType_strings[5] = {};

const ::std::string& UrlInfo_URLType_Name(UrlInfo_URLType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      UrlInfo_URLType_entries, UrlInfo_URLType_entries_by_number, 5,
      UrlInfo_URLType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(UrlInfo_URLType_entries,
                                  UrlInfo_URLType_entries_by_number,
                                  5, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : UrlInfo_URLType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_internal_data_[] = {
    589824u, 0u, };
static const char SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[] = {
    "DANGEROUS"
    "DANGEROUS_ACCOUNT_COMPROMISE"
    "DANGEROUS_DOWNLOAD_THREAT_TYPE_UNSPECIFIED"
    "DANGEROUS_FILE_TYPE"
    "DANGEROUS_HOST"
    "DANGEROUS_URL"
    "POTENTIALLY_UNWANTED"
    "UNCOMMON"
    "UNKNOWN"
};

static const ::google::protobuf::internal::EnumEntry SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries[] = {
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[0], 9}, 1},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[9], 28}, 8},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[37], 42}, 0},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[79], 19}, 6},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[98], 14}, 2},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[112], 13}, 7},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[125], 20}, 3},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[145], 8}, 4},
    {{&SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_names[153], 7}, 5},
};

static const int SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries_by_number[] = {
    2,  // 0 -> DANGEROUS_DOWNLOAD_THREAT_TYPE_UNSPECIFIED
    0,  // 1 -> DANGEROUS
    4,  // 2 -> DANGEROUS_HOST
    6,  // 3 -> POTENTIALLY_UNWANTED
    7,  // 4 -> UNCOMMON
    8,  // 5 -> UNKNOWN
    3,  // 6 -> DANGEROUS_FILE_TYPE
    5,  // 7 -> DANGEROUS_URL
    1,  // 8 -> DANGEROUS_ACCOUNT_COMPROMISE
};

bool SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_Parse(::absl::string_view name,
                                  SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries, 9, name, &int_value);
  if (success) {
    *value = static_cast<SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_strings[9] = {};

const ::std::string& SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_Name(SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries, SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries_by_number, 9,
      SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries,
                                  SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_entries_by_number,
                                  9, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : SafeBrowsingDangerousDownloadEvent_DangerousDownloadThreatType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t SafeBrowsingInterstitialEvent_InterstitialThreatType_internal_data_[] = {
    458752u, 0u, };
static const char SafeBrowsingInterstitialEvent_InterstitialThreatType_names[] = {
    "DANGEROUS_DOWNLOAD_OPENED"
    "DANGEROUS_DOWNLOAD_SEEN"
    "INTERSTITIAL_THREAT_TYPE_UNSPECIFIED"
    "INVALID_SSL_BYPASSED"
    "INVALID_SSL_SEEN"
    "UNSAFE_SITE_BYPASSED"
    "UNSAFE_SITE_SEEN"
};

static const ::google::protobuf::internal::EnumEntry SafeBrowsingInterstitialEvent_InterstitialThreatType_entries[] = {
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[0], 25}, 2},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[25], 23}, 1},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[48], 36}, 0},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[84], 20}, 6},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[104], 16}, 5},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[120], 20}, 4},
    {{&SafeBrowsingInterstitialEvent_InterstitialThreatType_names[140], 16}, 3},
};

static const int SafeBrowsingInterstitialEvent_InterstitialThreatType_entries_by_number[] = {
    2,  // 0 -> INTERSTITIAL_THREAT_TYPE_UNSPECIFIED
    1,  // 1 -> DANGEROUS_DOWNLOAD_SEEN
    0,  // 2 -> DANGEROUS_DOWNLOAD_OPENED
    6,  // 3 -> UNSAFE_SITE_SEEN
    5,  // 4 -> UNSAFE_SITE_BYPASSED
    4,  // 5 -> INVALID_SSL_SEEN
    3,  // 6 -> INVALID_SSL_BYPASSED
};

bool SafeBrowsingInterstitialEvent_InterstitialThreatType_Parse(::absl::string_view name,
                                  SafeBrowsingInterstitialEvent_InterstitialThreatType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      SafeBrowsingInterstitialEvent_InterstitialThreatType_entries, 7, name, &int_value);
  if (success) {
    *value = static_cast<SafeBrowsingInterstitialEvent_InterstitialThreatType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    SafeBrowsingInterstitialEvent_InterstitialThreatType_strings[7] = {};

const ::std::string& SafeBrowsingInterstitialEvent_InterstitialThreatType_Name(SafeBrowsingInterstitialEvent_InterstitialThreatType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      SafeBrowsingInterstitialEvent_InterstitialThreatType_entries, SafeBrowsingInterstitialEvent_InterstitialThreatType_entries_by_number, 7,
      SafeBrowsingInterstitialEvent_InterstitialThreatType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(SafeBrowsingInterstitialEvent_InterstitialThreatType_entries,
                                  SafeBrowsingInterstitialEvent_InterstitialThreatType_entries_by_number,
                                  7, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : SafeBrowsingInterstitialEvent_InterstitialThreatType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t SafeBrowsingInterstitialEvent_InterstitialReason_internal_data_[] = {
    458752u, 0u, };
static const char SafeBrowsingInterstitialEvent_InterstitialReason_names[] = {
    "HARMFUL"
    "MALWARE"
    "PHISHING"
    "SOCIAL_ENGINEERING"
    "SSL_ERROR"
    "THREAT_TYPE_UNSPECIFIED"
    "UNWANTED_SOFTWARE"
};

static const ::google::protobuf::internal::EnumEntry SafeBrowsingInterstitialEvent_InterstitialReason_entries[] = {
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[0], 7}, 6},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[7], 7}, 2},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[14], 8}, 5},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[22], 18}, 3},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[40], 9}, 1},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[49], 23}, 0},
    {{&SafeBrowsingInterstitialEvent_InterstitialReason_names[72], 17}, 4},
};

static const int SafeBrowsingInterstitialEvent_InterstitialReason_entries_by_number[] = {
    5,  // 0 -> THREAT_TYPE_UNSPECIFIED
    4,  // 1 -> SSL_ERROR
    1,  // 2 -> MALWARE
    3,  // 3 -> SOCIAL_ENGINEERING
    6,  // 4 -> UNWANTED_SOFTWARE
    2,  // 5 -> PHISHING
    0,  // 6 -> HARMFUL
};

bool SafeBrowsingInterstitialEvent_InterstitialReason_Parse(::absl::string_view name,
                                  SafeBrowsingInterstitialEvent_InterstitialReason* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      SafeBrowsingInterstitialEvent_InterstitialReason_entries, 7, name, &int_value);
  if (success) {
    *value = static_cast<SafeBrowsingInterstitialEvent_InterstitialReason>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    SafeBrowsingInterstitialEvent_InterstitialReason_strings[7] = {};

const ::std::string& SafeBrowsingInterstitialEvent_InterstitialReason_Name(SafeBrowsingInterstitialEvent_InterstitialReason value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      SafeBrowsingInterstitialEvent_InterstitialReason_entries, SafeBrowsingInterstitialEvent_InterstitialReason_entries_by_number, 7,
      SafeBrowsingInterstitialEvent_InterstitialReason_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(SafeBrowsingInterstitialEvent_InterstitialReason_entries,
                                  SafeBrowsingInterstitialEvent_InterstitialReason_entries_by_number,
                                  7, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : SafeBrowsingInterstitialEvent_InterstitialReason_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t UnscannedFileEvent_UnscannedReason_internal_data_[] = {
    720896u, 0u, };
static const char UnscannedFileEvent_UnscannedReason_names[] = {
    "DLP_SCAN_FAILED"
    "DLP_SCAN_UNSUPPORTED_FILE_TYPE"
    "FILE_PASSWORD_PROTECTED"
    "FILE_TOO_LARGE"
    "MALWARE_SCAN_FAILED"
    "MALWARE_SCAN_UNSUPPORTED_FILE_TYPE"
    "SERVICE_UNAVAILABLE"
    "TIMEOUT"
    "TOO_MANY_REQUESTS"
    "UNSCANNED_REASON_UNKNOWN"
    "USER_CANCELLED"
};

static const ::google::protobuf::internal::EnumEntry UnscannedFileEvent_UnscannedReason_entries[] = {
    {{&UnscannedFileEvent_UnscannedReason_names[0], 15}, 3},
    {{&UnscannedFileEvent_UnscannedReason_names[15], 30}, 5},
    {{&UnscannedFileEvent_UnscannedReason_names[45], 23}, 1},
    {{&UnscannedFileEvent_UnscannedReason_names[68], 14}, 2},
    {{&UnscannedFileEvent_UnscannedReason_names[82], 19}, 4},
    {{&UnscannedFileEvent_UnscannedReason_names[101], 34}, 6},
    {{&UnscannedFileEvent_UnscannedReason_names[135], 19}, 7},
    {{&UnscannedFileEvent_UnscannedReason_names[154], 7}, 9},
    {{&UnscannedFileEvent_UnscannedReason_names[161], 17}, 8},
    {{&UnscannedFileEvent_UnscannedReason_names[178], 24}, 0},
    {{&UnscannedFileEvent_UnscannedReason_names[202], 14}, 10},
};

static const int UnscannedFileEvent_UnscannedReason_entries_by_number[] = {
    9,  // 0 -> UNSCANNED_REASON_UNKNOWN
    2,  // 1 -> FILE_PASSWORD_PROTECTED
    3,  // 2 -> FILE_TOO_LARGE
    0,  // 3 -> DLP_SCAN_FAILED
    4,  // 4 -> MALWARE_SCAN_FAILED
    1,  // 5 -> DLP_SCAN_UNSUPPORTED_FILE_TYPE
    5,  // 6 -> MALWARE_SCAN_UNSUPPORTED_FILE_TYPE
    6,  // 7 -> SERVICE_UNAVAILABLE
    8,  // 8 -> TOO_MANY_REQUESTS
    7,  // 9 -> TIMEOUT
    10,  // 10 -> USER_CANCELLED
};

bool UnscannedFileEvent_UnscannedReason_Parse(::absl::string_view name,
                                  UnscannedFileEvent_UnscannedReason* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      UnscannedFileEvent_UnscannedReason_entries, 11, name, &int_value);
  if (success) {
    *value = static_cast<UnscannedFileEvent_UnscannedReason>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    UnscannedFileEvent_UnscannedReason_strings[11] = {};

const ::std::string& UnscannedFileEvent_UnscannedReason_Name(UnscannedFileEvent_UnscannedReason value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      UnscannedFileEvent_UnscannedReason_entries, UnscannedFileEvent_UnscannedReason_entries_by_number, 11,
      UnscannedFileEvent_UnscannedReason_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(UnscannedFileEvent_UnscannedReason_entries,
                                  UnscannedFileEvent_UnscannedReason_entries_by_number,
                                  11, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : UnscannedFileEvent_UnscannedReason_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t PasswordBreachEvent_TriggerType_internal_data_[] = {
    196608u, 0u, };
static const char PasswordBreachEvent_TriggerType_names[] = {
    "PASSWORD_ENTRY"
    "SAFETY_CHECK"
    "TRIGGER_TYPE_UNSPECIFIED"
};

static const ::google::protobuf::internal::EnumEntry PasswordBreachEvent_TriggerType_entries[] = {
    {{&PasswordBreachEvent_TriggerType_names[0], 14}, 2},
    {{&PasswordBreachEvent_TriggerType_names[14], 12}, 1},
    {{&PasswordBreachEvent_TriggerType_names[26], 24}, 0},
};

static const int PasswordBreachEvent_TriggerType_entries_by_number[] = {
    2,  // 0 -> TRIGGER_TYPE_UNSPECIFIED
    1,  // 1 -> SAFETY_CHECK
    0,  // 2 -> PASSWORD_ENTRY
};

bool PasswordBreachEvent_TriggerType_Parse(::absl::string_view name,
                                  PasswordBreachEvent_TriggerType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      PasswordBreachEvent_TriggerType_entries, 3, name, &int_value);
  if (success) {
    *value = static_cast<PasswordBreachEvent_TriggerType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    PasswordBreachEvent_TriggerType_strings[3] = {};

const ::std::string& PasswordBreachEvent_TriggerType_Name(PasswordBreachEvent_TriggerType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      PasswordBreachEvent_TriggerType_entries, PasswordBreachEvent_TriggerType_entries_by_number, 3,
      PasswordBreachEvent_TriggerType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(PasswordBreachEvent_TriggerType_entries,
                                  PasswordBreachEvent_TriggerType_entries_by_number,
                                  3, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : PasswordBreachEvent_TriggerType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t BrowserExtensionInstallEvent_ExtensionAction_internal_data_[] = {
    262144u, 0u, };
static const char BrowserExtensionInstallEvent_ExtensionAction_names[] = {
    "INSTALL"
    "UNINSTALL"
    "UNKNOWN"
    "UPDATE"
};

static const ::google::protobuf::internal::EnumEntry BrowserExtensionInstallEvent_ExtensionAction_entries[] = {
    {{&BrowserExtensionInstallEvent_ExtensionAction_names[0], 7}, 1},
    {{&BrowserExtensionInstallEvent_ExtensionAction_names[7], 9}, 3},
    {{&BrowserExtensionInstallEvent_ExtensionAction_names[16], 7}, 0},
    {{&BrowserExtensionInstallEvent_ExtensionAction_names[23], 6}, 2},
};

static const int BrowserExtensionInstallEvent_ExtensionAction_entries_by_number[] = {
    2,  // 0 -> UNKNOWN
    0,  // 1 -> INSTALL
    3,  // 2 -> UPDATE
    1,  // 3 -> UNINSTALL
};

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

const ::std::string& BrowserExtensionInstallEvent_ExtensionAction_Name(BrowserExtensionInstallEvent_ExtensionAction value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      BrowserExtensionInstallEvent_ExtensionAction_entries, BrowserExtensionInstallEvent_ExtensionAction_entries_by_number, 4,
      BrowserExtensionInstallEvent_ExtensionAction_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(BrowserExtensionInstallEvent_ExtensionAction_entries,
                                  BrowserExtensionInstallEvent_ExtensionAction_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : BrowserExtensionInstallEvent_ExtensionAction_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t BrowserExtensionInstallEvent_ExtensionSource_internal_data_[] = {
    262144u, 0u, };
static const char BrowserExtensionInstallEvent_ExtensionSource_names[] = {
    "CHROME_WEBSTORE"
    "COMPONENT"
    "EXTENSION_SOURCE_UNSPECIFIED"
    "EXTERNAL"
};

static const ::google::protobuf::internal::EnumEntry BrowserExtensionInstallEvent_ExtensionSource_entries[] = {
    {{&BrowserExtensionInstallEvent_ExtensionSource_names[0], 15}, 1},
    {{&BrowserExtensionInstallEvent_ExtensionSource_names[15], 9}, 3},
    {{&BrowserExtensionInstallEvent_ExtensionSource_names[24], 28}, 0},
    {{&BrowserExtensionInstallEvent_ExtensionSource_names[52], 8}, 2},
};

static const int BrowserExtensionInstallEvent_ExtensionSource_entries_by_number[] = {
    2,  // 0 -> EXTENSION_SOURCE_UNSPECIFIED
    0,  // 1 -> CHROME_WEBSTORE
    3,  // 2 -> EXTERNAL
    1,  // 3 -> COMPONENT
};

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

const ::std::string& BrowserExtensionInstallEvent_ExtensionSource_Name(BrowserExtensionInstallEvent_ExtensionSource value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      BrowserExtensionInstallEvent_ExtensionSource_entries, BrowserExtensionInstallEvent_ExtensionSource_entries_by_number, 4,
      BrowserExtensionInstallEvent_ExtensionSource_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(BrowserExtensionInstallEvent_ExtensionSource_entries,
                                  BrowserExtensionInstallEvent_ExtensionSource_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : BrowserExtensionInstallEvent_ExtensionSource_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t UrlFilteringInterstitialEvent_InterstitialThreatType_internal_data_[] = {
    262144u, 0u, };
static const char UrlFilteringInterstitialEvent_InterstitialThreatType_names[] = {
    "ENTERPRISE_BLOCKED_SEEN"
    "ENTERPRISE_WARNED_BYPASS"
    "ENTERPRISE_WARNED_SEEN"
    "UNKNOWN_INTERSTITIAL_THREAT_TYPE"
};

static const ::google::protobuf::internal::EnumEntry UrlFilteringInterstitialEvent_InterstitialThreatType_entries[] = {
    {{&UrlFilteringInterstitialEvent_InterstitialThreatType_names[0], 23}, 1},
    {{&UrlFilteringInterstitialEvent_InterstitialThreatType_names[23], 24}, 3},
    {{&UrlFilteringInterstitialEvent_InterstitialThreatType_names[47], 22}, 2},
    {{&UrlFilteringInterstitialEvent_InterstitialThreatType_names[69], 32}, 0},
};

static const int UrlFilteringInterstitialEvent_InterstitialThreatType_entries_by_number[] = {
    3,  // 0 -> UNKNOWN_INTERSTITIAL_THREAT_TYPE
    0,  // 1 -> ENTERPRISE_BLOCKED_SEEN
    2,  // 2 -> ENTERPRISE_WARNED_SEEN
    1,  // 3 -> ENTERPRISE_WARNED_BYPASS
};

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

const ::std::string& UrlFilteringInterstitialEvent_InterstitialThreatType_Name(UrlFilteringInterstitialEvent_InterstitialThreatType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      UrlFilteringInterstitialEvent_InterstitialThreatType_entries, UrlFilteringInterstitialEvent_InterstitialThreatType_entries_by_number, 4,
      UrlFilteringInterstitialEvent_InterstitialThreatType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(UrlFilteringInterstitialEvent_InterstitialThreatType_entries,
                                  UrlFilteringInterstitialEvent_InterstitialThreatType_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : UrlFilteringInterstitialEvent_InterstitialThreatType_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t EventResult_internal_data_[] = {
    655360u, 0u, };
static const char EventResult_names[] = {
    "EVENT_RESULT_ALLOWED"
    "EVENT_RESULT_BLOCKED"
    "EVENT_RESULT_BYPASSED"
    "EVENT_RESULT_CANCELLED_BY_USER"
    "EVENT_RESULT_DATA_MASKED"
    "EVENT_RESULT_DATA_UNMASKED"
    "EVENT_RESULT_DETECTED"
    "EVENT_RESULT_FORCED_SAVE_TO_CLOUD"
    "EVENT_RESULT_UNSPECIFIED"
    "EVENT_RESULT_WARNED"
};

static const ::google::protobuf::internal::EnumEntry EventResult_entries[] = {
    {{&EventResult_names[0], 20}, 1},
    {{&EventResult_names[20], 20}, 3},
    {{&EventResult_names[40], 21}, 4},
    {{&EventResult_names[61], 30}, 9},
    {{&EventResult_names[91], 24}, 6},
    {{&EventResult_names[115], 26}, 7},
    {{&EventResult_names[141], 21}, 5},
    {{&EventResult_names[162], 33}, 8},
    {{&EventResult_names[195], 24}, 0},
    {{&EventResult_names[219], 19}, 2},
};

static const int EventResult_entries_by_number[] = {
    8,  // 0 -> EVENT_RESULT_UNSPECIFIED
    0,  // 1 -> EVENT_RESULT_ALLOWED
    9,  // 2 -> EVENT_RESULT_WARNED
    1,  // 3 -> EVENT_RESULT_BLOCKED
    2,  // 4 -> EVENT_RESULT_BYPASSED
    6,  // 5 -> EVENT_RESULT_DETECTED
    4,  // 6 -> EVENT_RESULT_DATA_MASKED
    5,  // 7 -> EVENT_RESULT_DATA_UNMASKED
    7,  // 8 -> EVENT_RESULT_FORCED_SAVE_TO_CLOUD
    3,  // 9 -> EVENT_RESULT_CANCELLED_BY_USER
};

bool EventResult_Parse(::absl::string_view name,
                                  EventResult* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      EventResult_entries, 10, name, &int_value);
  if (success) {
    *value = static_cast<EventResult>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    EventResult_strings[10] = {};

const ::std::string& EventResult_Name(EventResult value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      EventResult_entries, EventResult_entries_by_number, 10,
      EventResult_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(EventResult_entries,
                                  EventResult_entries_by_number,
                                  10, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : EventResult_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t ReportingTarget_internal_data_[] = {
    196608u, 0u, };
static const char ReportingTarget_names[] = {
    "REPORTING_TARGET_CHROME"
    "REPORTING_TARGET_RULES"
    "REPORTING_TARGET_UNKNOWN"
};

static const ::google::protobuf::internal::EnumEntry ReportingTarget_entries[] = {
    {{&ReportingTarget_names[0], 23}, 1},
    {{&ReportingTarget_names[23], 22}, 2},
    {{&ReportingTarget_names[45], 24}, 0},
};

static const int ReportingTarget_entries_by_number[] = {
    2,  // 0 -> REPORTING_TARGET_UNKNOWN
    0,  // 1 -> REPORTING_TARGET_CHROME
    1,  // 2 -> REPORTING_TARGET_RULES
};

bool ReportingTarget_Parse(::absl::string_view name,
                                  ReportingTarget* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      ReportingTarget_entries, 3, name, &int_value);
  if (success) {
    *value = static_cast<ReportingTarget>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    ReportingTarget_strings[3] = {};

const ::std::string& ReportingTarget_Name(ReportingTarget value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      ReportingTarget_entries, ReportingTarget_entries_by_number, 3,
      ReportingTarget_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(ReportingTarget_entries,
                                  ReportingTarget_entries_by_number,
                                  3, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : ReportingTarget_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t ContentTransferMethod_internal_data_[] = {
    327680u, 0u, };
static const char ContentTransferMethod_names[] = {
    "CONTENT_TRANSFER_METHOD_CLIPBOARD_COPY"
    "CONTENT_TRANSFER_METHOD_DRAG_AND_DROP"
    "CONTENT_TRANSFER_METHOD_FILE_PASTE"
    "CONTENT_TRANSFER_METHOD_FILE_PICKER"
    "CONTENT_TRANSFER_METHOD_UNKNOWN"
};

static const ::google::protobuf::internal::EnumEntry ContentTransferMethod_entries[] = {
    {{&ContentTransferMethod_names[0], 38}, 4},
    {{&ContentTransferMethod_names[38], 37}, 2},
    {{&ContentTransferMethod_names[75], 34}, 3},
    {{&ContentTransferMethod_names[109], 35}, 1},
    {{&ContentTransferMethod_names[144], 31}, 0},
};

static const int ContentTransferMethod_entries_by_number[] = {
    4,  // 0 -> CONTENT_TRANSFER_METHOD_UNKNOWN
    3,  // 1 -> CONTENT_TRANSFER_METHOD_FILE_PICKER
    1,  // 2 -> CONTENT_TRANSFER_METHOD_DRAG_AND_DROP
    2,  // 3 -> CONTENT_TRANSFER_METHOD_FILE_PASTE
    0,  // 4 -> CONTENT_TRANSFER_METHOD_CLIPBOARD_COPY
};

bool ContentTransferMethod_Parse(::absl::string_view name,
                                  ContentTransferMethod* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      ContentTransferMethod_entries, 5, name, &int_value);
  if (success) {
    *value = static_cast<ContentTransferMethod>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    ContentTransferMethod_strings[5] = {};

const ::std::string& ContentTransferMethod_Name(ContentTransferMethod value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      ContentTransferMethod_entries, ContentTransferMethod_entries_by_number, 5,
      ContentTransferMethod_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(ContentTransferMethod_entries,
                                  ContentTransferMethod_entries_by_number,
                                  5, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : ContentTransferMethod_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t ServerScanStatus_internal_data_[] = {
    262144u, 0u, };
static const char ServerScanStatus_names[] = {
    "SERVER_SCAN_STATUS_AUDIT_DUE_TO_CONFIG"
    "SERVER_SCAN_STATUS_AUDIT_DUE_TO_DEADLINE_EXCEEDED"
    "SERVER_SCAN_STATUS_COMPLETED"
    "SERVER_SCAN_STATUS_UNKNOWN"
};

static const ::google::protobuf::internal::EnumEntry ServerScanStatus_entries[] = {
    {{&ServerScanStatus_names[0], 38}, 2},
    {{&ServerScanStatus_names[38], 49}, 3},
    {{&ServerScanStatus_names[87], 28}, 1},
    {{&ServerScanStatus_names[115], 26}, 0},
};

static const int ServerScanStatus_entries_by_number[] = {
    3,  // 0 -> SERVER_SCAN_STATUS_UNKNOWN
    2,  // 1 -> SERVER_SCAN_STATUS_COMPLETED
    0,  // 2 -> SERVER_SCAN_STATUS_AUDIT_DUE_TO_CONFIG
    1,  // 3 -> SERVER_SCAN_STATUS_AUDIT_DUE_TO_DEADLINE_EXCEEDED
};

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

const ::std::string& ServerScanStatus_Name(ServerScanStatus value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      ServerScanStatus_entries, ServerScanStatus_entries_by_number, 4,
      ServerScanStatus_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(ServerScanStatus_entries,
                                  ServerScanStatus_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : ServerScanStatus_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t RiskLevel_internal_data_[] = {
    65536u, 64u, 537395200u, 128u, };
static const char RiskLevel_names[] = {
    "HIGH"
    "LOW"
    "MEDIUM"
    "RISK_LEVEL_UNSPECIFIED"
};

static const ::google::protobuf::internal::EnumEntry RiskLevel_entries[] = {
    {{&RiskLevel_names[0], 4}, 40},
    {{&RiskLevel_names[4], 3}, 20},
    {{&RiskLevel_names[7], 6}, 30},
    {{&RiskLevel_names[13], 22}, 0},
};

static const int RiskLevel_entries_by_number[] = {
    3,  // 0 -> RISK_LEVEL_UNSPECIFIED
    1,  // 20 -> LOW
    2,  // 30 -> MEDIUM
    0,  // 40 -> HIGH
};

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

const ::std::string& RiskLevel_Name(RiskLevel value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      RiskLevel_entries, RiskLevel_entries_by_number, 4,
      RiskLevel_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(RiskLevel_entries,
                                  RiskLevel_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : RiskLevel_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t DataTransferEventTrigger_internal_data_[] = {
    786432u, 0u, };
static const char DataTransferEventTrigger_names[] = {
    "CLIPBOARD_COPY"
    "DATA_TRANSFER_EVENT_TRIGGER_TYPE_UNSPECIFIED"
    "FILE_DOWNLOAD"
    "FILE_TRANSFER"
    "FILE_UPLOAD"
    "MOUSE_ACTION"
    "MUTATION"
    "NETWORK_REQUEST"
    "PAGE_LOAD"
    "PAGE_PRINT"
    "URL_VISITED"
    "WEB_CONTENT_UPLOAD"
};

static const ::google::protobuf::internal::EnumEntry DataTransferEventTrigger_entries[] = {
    {{&DataTransferEventTrigger_names[0], 14}, 7},
    {{&DataTransferEventTrigger_names[14], 44}, 0},
    {{&DataTransferEventTrigger_names[58], 13}, 1},
    {{&DataTransferEventTrigger_names[71], 13}, 5},
    {{&DataTransferEventTrigger_names[84], 11}, 2},
    {{&DataTransferEventTrigger_names[95], 12}, 10},
    {{&DataTransferEventTrigger_names[107], 8}, 9},
    {{&DataTransferEventTrigger_names[115], 15}, 11},
    {{&DataTransferEventTrigger_names[130], 9}, 8},
    {{&DataTransferEventTrigger_names[139], 10}, 4},
    {{&DataTransferEventTrigger_names[149], 11}, 6},
    {{&DataTransferEventTrigger_names[160], 18}, 3},
};

static const int DataTransferEventTrigger_entries_by_number[] = {
    1,  // 0 -> DATA_TRANSFER_EVENT_TRIGGER_TYPE_UNSPECIFIED
    2,  // 1 -> FILE_DOWNLOAD
    4,  // 2 -> FILE_UPLOAD
    11,  // 3 -> WEB_CONTENT_UPLOAD
    9,  // 4 -> PAGE_PRINT
    3,  // 5 -> FILE_TRANSFER
    10,  // 6 -> URL_VISITED
    0,  // 7 -> CLIPBOARD_COPY
    8,  // 8 -> PAGE_LOAD
    6,  // 9 -> MUTATION
    5,  // 10 -> MOUSE_ACTION
    7,  // 11 -> NETWORK_REQUEST
};

bool DataTransferEventTrigger_Parse(::absl::string_view name,
                                  DataTransferEventTrigger* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      DataTransferEventTrigger_entries, 12, name, &int_value);
  if (success) {
    *value = static_cast<DataTransferEventTrigger>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    DataTransferEventTrigger_strings[12] = {};

const ::std::string& DataTransferEventTrigger_Name(DataTransferEventTrigger value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      DataTransferEventTrigger_entries, DataTransferEventTrigger_entries_by_number, 12,
      DataTransferEventTrigger_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(DataTransferEventTrigger_entries,
                                  DataTransferEventTrigger_entries_by_number,
                                  12, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : DataTransferEventTrigger_strings[idx].get();
}
// ===================================================================

CrowdstrikeAgent::CrowdstrikeAgent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, CrowdstrikeAgent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.CrowdstrikeAgent)
}
PROTOBUF_NDEBUG_INLINE CrowdstrikeAgent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::CrowdstrikeAgent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        agent_id_(arena, from.agent_id_),
        customer_id_(arena, from.customer_id_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CrowdstrikeAgent* 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:chrome.cros.reporting.proto.CrowdstrikeAgent)
}
PROTOBUF_NDEBUG_INLINE CrowdstrikeAgent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        agent_id_(arena),
        customer_id_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite CrowdstrikeAgent_class_data_ =
    CrowdstrikeAgent::InternalGenerateClassData_(CrowdstrikeAgent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CrowdstrikeAgent::GetClassData() const {
  return CrowdstrikeAgent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CrowdstrikeAgent::GetClassData() const {
  return CrowdstrikeAgent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CrowdstrikeAgent::ParseTableT_
    CrowdstrikeAgent::_table_ =
        CrowdstrikeAgent::InternalGenerateParseTable_(CrowdstrikeAgent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CrowdstrikeAgent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.CrowdstrikeAgent)
  ::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_.agent_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.customer_id_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string agent_id = 1 [json_name = "agent_id"];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_agent_id().empty()) {
      const ::std::string& _s = this_._internal_agent_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.CrowdstrikeAgent.agent_id");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string customer_id = 2 [json_name = "customer_id"];
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_customer_id().empty()) {
      const ::std::string& _s = this_._internal_customer_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.CrowdstrikeAgent.customer_id");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CrowdstrikeAgent::ByteSizeLong(const MessageLite& base) {
  const CrowdstrikeAgent& this_ = static_cast<const CrowdstrikeAgent&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CrowdstrikeAgent::ByteSizeLong() const {
  const CrowdstrikeAgent& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.CrowdstrikeAgent)
  ::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 agent_id = 1 [json_name = "agent_id"];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_agent_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_agent_id());
      }
    }
    // string customer_id = 2 [json_name = "customer_id"];
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_customer_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_customer_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 CrowdstrikeAgent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CrowdstrikeAgent*>(&to_msg);
  auto& from = static_cast<const CrowdstrikeAgent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.CrowdstrikeAgent)
  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_agent_id().empty()) {
        _this->_internal_set_agent_id(from._internal_agent_id());
      } else {
        if (_this->_impl_.agent_id_.IsDefault()) {
          _this->_internal_set_agent_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_customer_id().empty()) {
        _this->_internal_set_customer_id(from._internal_customer_id());
      } else {
        if (_this->_impl_.customer_id_.IsDefault()) {
          _this->_internal_set_customer_id("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void CrowdstrikeAgent::CopyFrom(const CrowdstrikeAgent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.CrowdstrikeAgent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void CrowdstrikeAgent::InternalSwap(CrowdstrikeAgent* 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_.agent_id_, &other->_impl_.agent_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.customer_id_, &other->_impl_.customer_id_, arena);
}

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

void SecurityAgent::set_allocated_crowdstrike(::chrome::cros::reporting::proto::CrowdstrikeAgent* PROTOBUF_NULLABLE crowdstrike) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_agent();
  if (crowdstrike) {
    ::google::protobuf::Arena* submessage_arena = crowdstrike->GetArena();
    if (message_arena != submessage_arena) {
      crowdstrike = ::google::protobuf::internal::GetOwnedMessage(message_arena, crowdstrike, submessage_arena);
    }
    set_has_crowdstrike();
    _impl_.agent_.crowdstrike_ = crowdstrike;
  }
  // @@protoc_insertion_point(field_set_allocated:chrome.cros.reporting.proto.SecurityAgent.crowdstrike)
}
SecurityAgent::SecurityAgent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SecurityAgent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SecurityAgent)
}
PROTOBUF_NDEBUG_INLINE SecurityAgent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SecurityAgent& from_msg)
      : agent_{},
        _cached_size_{0},
        _oneof_case_{from._oneof_case_[0]} {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SecurityAgent* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  switch (agent_case()) {
    case AGENT_NOT_SET:
      break;
      case kCrowdstrike:
        _impl_.agent_.crowdstrike_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.agent_.crowdstrike_);
        break;
  }

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.SecurityAgent)
}
PROTOBUF_NDEBUG_INLINE SecurityAgent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : agent_{},
        _cached_size_{0},
        _oneof_case_{} {}

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

void SecurityAgent::clear_agent() {
// @@protoc_insertion_point(one_of_clear_start:chrome.cros.reporting.proto.SecurityAgent)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (agent_case()) {
    case kCrowdstrike: {
      if (GetArena() == nullptr) {
        delete _impl_.agent_.crowdstrike_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.agent_.crowdstrike_ != nullptr) {
          _impl_.agent_.crowdstrike_->Clear();
        }
      }
      break;
    }
    case AGENT_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = AGENT_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SecurityAgent_class_data_ =
    SecurityAgent::InternalGenerateClassData_(SecurityAgent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SecurityAgent::GetClassData() const {
  return SecurityAgent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SecurityAgent::GetClassData() const {
  return SecurityAgent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const SecurityAgent::ParseTableT_
    SecurityAgent::_table_ =
        SecurityAgent::InternalGenerateParseTable_(SecurityAgent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void SecurityAgent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.SecurityAgent)
  ::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_agent();
  _internal_metadata_.Clear<::std::string>();
}

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

  // .chrome.cros.reporting.proto.CrowdstrikeAgent crowdstrike = 100;
  if (this_.agent_case() == kCrowdstrike) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        100, *this_._impl_.agent_.crowdstrike_, this_._impl_.agent_.crowdstrike_->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:chrome.cros.reporting.proto.SecurityAgent)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t SecurityAgent::ByteSizeLong(const MessageLite& base) {
  const SecurityAgent& this_ = static_cast<const SecurityAgent&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t SecurityAgent::ByteSizeLong() const {
  const SecurityAgent& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.SecurityAgent)
  ::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_.agent_case()) {
    // .chrome.cros.reporting.proto.CrowdstrikeAgent crowdstrike = 100;
    case kCrowdstrike: {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.agent_.crowdstrike_);
      break;
    }
    case AGENT_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 SecurityAgent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SecurityAgent*>(&to_msg);
  auto& from = static_cast<const SecurityAgent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.SecurityAgent)
  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_agent();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kCrowdstrike: {
        if (oneof_needs_init) {
          _this->_impl_.agent_.crowdstrike_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.agent_.crowdstrike_);
        } else {
          _this->_impl_.agent_.crowdstrike_->MergeFrom(*from._impl_.agent_.crowdstrike_);
        }
        break;
      }
      case AGENT_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SecurityAgent::CopyFrom(const SecurityAgent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SecurityAgent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

MatchedDetector::MatchedDetector(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, MatchedDetector_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.MatchedDetector)
}
PROTOBUF_NDEBUG_INLINE MatchedDetector::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::MatchedDetector& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        detector_id_(arena, from.detector_id_),
        display_name_(arena, from.display_name_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.MatchedDetector)
}
PROTOBUF_NDEBUG_INLINE MatchedDetector::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        detector_id_(arena),
        display_name_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite MatchedDetector_class_data_ =
    MatchedDetector::InternalGenerateClassData_(MatchedDetector_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
MatchedDetector::GetClassData() const {
  return MatchedDetector_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
MatchedDetector::GetClassData() const {
  return MatchedDetector_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const MatchedDetector::ParseTableT_
    MatchedDetector::_table_ =
        MatchedDetector::InternalGenerateParseTable_(MatchedDetector_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void MatchedDetector::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.MatchedDetector)
  ::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_.detector_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.display_name_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000000cU)) {
    ::memset(&_impl_.detector_type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.mask_type_) -
        reinterpret_cast<char*>(&_impl_.detector_type_)) + sizeof(_impl_.mask_type_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // string display_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_display_name().empty()) {
      const ::std::string& _s = this_._internal_display_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.MatchedDetector.display_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.MatchedDetector.DetectorType detector_type = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (this_._internal_detector_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          3, this_._internal_detector_type(), target);
    }
  }

  // .chrome.cros.reporting.proto.MatchedDetector.MaskType mask_type = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (this_._internal_mask_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          4, this_._internal_mask_type(), 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:chrome.cros.reporting.proto.MatchedDetector)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // string detector_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_detector_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_detector_id());
      }
    }
    // string display_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_display_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_display_name());
      }
    }
    // .chrome.cros.reporting.proto.MatchedDetector.DetectorType detector_type = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (this_._internal_detector_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_detector_type());
      }
    }
    // .chrome.cros.reporting.proto.MatchedDetector.MaskType mask_type = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (this_._internal_mask_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_mask_type());
      }
    }
  }
  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 MatchedDetector::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<MatchedDetector*>(&to_msg);
  auto& from = static_cast<const MatchedDetector&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.MatchedDetector)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!from._internal_detector_id().empty()) {
        _this->_internal_set_detector_id(from._internal_detector_id());
      } else {
        if (_this->_impl_.detector_id_.IsDefault()) {
          _this->_internal_set_detector_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_display_name().empty()) {
        _this->_internal_set_display_name(from._internal_display_name());
      } else {
        if (_this->_impl_.display_name_.IsDefault()) {
          _this->_internal_set_display_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (from._internal_detector_type() != 0) {
        _this->_impl_.detector_type_ = from._impl_.detector_type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (from._internal_mask_type() != 0) {
        _this->_impl_.mask_type_ = from._impl_.mask_type_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void MatchedDetector::CopyFrom(const MatchedDetector& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.MatchedDetector)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void MatchedDetector::InternalSwap(MatchedDetector* 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_.detector_id_, &other->_impl_.detector_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.display_name_, &other->_impl_.display_name_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.mask_type_)
      + sizeof(MatchedDetector::_impl_.mask_type_)
      - PROTOBUF_FIELD_OFFSET(MatchedDetector, _impl_.detector_type_)>(
          reinterpret_cast<char*>(&_impl_.detector_type_),
          reinterpret_cast<char*>(&other->_impl_.detector_type_));
}

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

NotificationConfiguration::NotificationConfiguration(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, NotificationConfiguration_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.NotificationConfiguration)
}
PROTOBUF_NDEBUG_INLINE NotificationConfiguration::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::NotificationConfiguration& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        channels_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::NotificationConfiguration,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.channels_)>()
          , from.channels_
        }
        ,
        _channels_cached_byte_size_{0},
        recipient_emails_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::NotificationConfiguration,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.recipient_emails_)>()
          , from.recipient_emails_
        }
     {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.NotificationConfiguration)
}
PROTOBUF_NDEBUG_INLINE NotificationConfiguration::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        channels_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::NotificationConfiguration,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.channels_)>()
         }
        ,
        _channels_cached_byte_size_{0},
        recipient_emails_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::NotificationConfiguration,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::NotificationConfiguration, _impl_.recipient_emails_)>()
         }
     {}

inline void NotificationConfiguration::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, send_to_super_admins_),
           0,
           offsetof(Impl_, send_to_primary_admins_) -
               offsetof(Impl_, send_to_super_admins_) +
               sizeof(Impl_::send_to_primary_admins_));
}
NotificationConfiguration::~NotificationConfiguration() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.NotificationConfiguration)
  SharedDtor(*this);
}
inline void NotificationConfiguration::SharedDtor(MessageLite& self) {
  NotificationConfiguration& this_ = static_cast<NotificationConfiguration&>(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 NotificationConfiguration_class_data_ =
    NotificationConfiguration::InternalGenerateClassData_(NotificationConfiguration_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
NotificationConfiguration::GetClassData() const {
  return NotificationConfiguration_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
NotificationConfiguration::GetClassData() const {
  return NotificationConfiguration_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const NotificationConfiguration::ParseTableT_
    NotificationConfiguration::_table_ =
        NotificationConfiguration::InternalGenerateParseTable_(NotificationConfiguration_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void NotificationConfiguration::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.NotificationConfiguration)
  ::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_.channels_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.recipient_emails_.Clear();
    }
  }
  ::memset(&_impl_.send_to_super_admins_, 0, static_cast<::size_t>(
      reinterpret_cast<char*>(&_impl_.send_to_primary_admins_) -
      reinterpret_cast<char*>(&_impl_.send_to_super_admins_)) + sizeof(_impl_.send_to_primary_admins_));
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // repeated .chrome.cros.reporting.proto.NotificationConfiguration.Channel channels = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    {
      ::size_t byte_size = this_._impl_._channels_cached_byte_size_.Get();
      if (byte_size > 0) {
        target = stream->WriteEnumPacked(
            1, this_._internal_channels(), byte_size, target);
      }
    }
  }

  // bool send_to_super_admins = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (this_._internal_send_to_super_admins() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          2, this_._internal_send_to_super_admins(), target);
    }
  }

  // bool send_to_primary_admins = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (this_._internal_send_to_primary_admins() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          3, this_._internal_send_to_primary_admins(), target);
    }
  }

  // repeated string recipient_emails = 4;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (int i = 0, n = this_._internal_recipient_emails_size(); i < n; ++i) {
      const auto& s = this_._internal_recipient_emails().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.NotificationConfiguration.recipient_emails");
      target = stream->WriteString(4, 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:chrome.cros.reporting.proto.NotificationConfiguration)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .chrome.cros.reporting.proto.NotificationConfiguration.Channel channels = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::EnumSizeWithPackedTagSize(
          this_._internal_channels(), 1, this_._impl_._channels_cached_byte_size_);
    }
    // repeated string recipient_emails = 4;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_recipient_emails().size());
      for (int i = 0, n = this_._internal_recipient_emails().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_recipient_emails().Get(i));
      }
    }
    // bool send_to_super_admins = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (this_._internal_send_to_super_admins() != 0) {
        total_size += 2;
      }
    }
    // bool send_to_primary_admins = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (this_._internal_send_to_primary_admins() != 0) {
        total_size += 2;
      }
    }
  }
  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 NotificationConfiguration::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<NotificationConfiguration*>(&to_msg);
  auto& from = static_cast<const NotificationConfiguration&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.NotificationConfiguration)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_channels()->MergeFrom(from._internal_channels());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_recipient_emails()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_recipient_emails());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (from._internal_send_to_super_admins() != 0) {
        _this->_impl_.send_to_super_admins_ = from._impl_.send_to_super_admins_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (from._internal_send_to_primary_admins() != 0) {
        _this->_impl_.send_to_primary_admins_ = from._impl_.send_to_primary_admins_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void NotificationConfiguration::CopyFrom(const NotificationConfiguration& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.NotificationConfiguration)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

Snippet_Range::Snippet_Range(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Snippet_Range_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.Snippet.Range)
}
Snippet_Range::Snippet_Range(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Snippet_Range& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Snippet_Range_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 Snippet_Range::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void Snippet_Range::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, start_),
           0,
           offsetof(Impl_, end_) -
               offsetof(Impl_, start_) +
               sizeof(Impl_::end_));
}
Snippet_Range::~Snippet_Range() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.Snippet.Range)
  SharedDtor(*this);
}
inline void Snippet_Range::SharedDtor(MessageLite& self) {
  Snippet_Range& this_ = static_cast<Snippet_Range&>(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 Snippet_Range_class_data_ =
    Snippet_Range::InternalGenerateClassData_(Snippet_Range_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet_Range::GetClassData() const {
  return Snippet_Range_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet_Range::GetClassData() const {
  return Snippet_Range_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Snippet_Range::ParseTableT_
    Snippet_Range::_table_ =
        Snippet_Range::InternalGenerateParseTable_(Snippet_Range_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Snippet_Range::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.Snippet.Range)
  ::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)) {
    ::memset(&_impl_.start_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.end_) -
        reinterpret_cast<char*>(&_impl_.start_)) + sizeof(_impl_.end_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // int32 end = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (this_._internal_end() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
              stream, this_._internal_end(), 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:chrome.cros.reporting.proto.Snippet.Range)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Snippet_Range::ByteSizeLong(const MessageLite& base) {
  const Snippet_Range& this_ = static_cast<const Snippet_Range&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Snippet_Range::ByteSizeLong() const {
  const Snippet_Range& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.Snippet.Range)
  ::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)) {
    // int32 start = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (this_._internal_start() != 0) {
        total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
            this_._internal_start());
      }
    }
    // int32 end = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (this_._internal_end() != 0) {
        total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
            this_._internal_end());
      }
    }
  }
  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 Snippet_Range::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Snippet_Range*>(&to_msg);
  auto& from = static_cast<const Snippet_Range&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.Snippet.Range)
  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_start() != 0) {
        _this->_impl_.start_ = from._impl_.start_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (from._internal_end() != 0) {
        _this->_impl_.end_ = from._impl_.end_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Snippet_Range::CopyFrom(const Snippet_Range& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.Snippet.Range)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

Snippet_RecordLocation::Snippet_RecordLocation(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Snippet_RecordLocation_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.Snippet.RecordLocation)
}
PROTOBUF_NDEBUG_INLINE Snippet_RecordLocation::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::Snippet_RecordLocation& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        field_name_(arena, from.field_name_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.Snippet.RecordLocation)
}
PROTOBUF_NDEBUG_INLINE Snippet_RecordLocation::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        field_name_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Snippet_RecordLocation_class_data_ =
    Snippet_RecordLocation::InternalGenerateClassData_(Snippet_RecordLocation_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet_RecordLocation::GetClassData() const {
  return Snippet_RecordLocation_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet_RecordLocation::GetClassData() const {
  return Snippet_RecordLocation_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Snippet_RecordLocation::ParseTableT_
    Snippet_RecordLocation::_table_ =
        Snippet_RecordLocation::InternalGenerateParseTable_(Snippet_RecordLocation_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Snippet_RecordLocation::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.Snippet.RecordLocation)
  ::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_.field_name_.ClearNonDefaultToEmpty();
  }
  _impl_.row_index_ = ::int64_t{0};
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // int64 row_index = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (this_._internal_row_index() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
              stream, this_._internal_row_index(), target);
    }
  }

  // string field_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_field_name().empty()) {
      const ::std::string& _s = this_._internal_field_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.Snippet.RecordLocation.field_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Snippet_RecordLocation::ByteSizeLong(const MessageLite& base) {
  const Snippet_RecordLocation& this_ = static_cast<const Snippet_RecordLocation&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Snippet_RecordLocation::ByteSizeLong() const {
  const Snippet_RecordLocation& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.Snippet.RecordLocation)
  ::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 field_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_field_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_field_name());
      }
    }
    // int64 row_index = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (this_._internal_row_index() != 0) {
        total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
            this_._internal_row_index());
      }
    }
  }
  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 Snippet_RecordLocation::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Snippet_RecordLocation*>(&to_msg);
  auto& from = static_cast<const Snippet_RecordLocation&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.Snippet.RecordLocation)
  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_field_name().empty()) {
        _this->_internal_set_field_name(from._internal_field_name());
      } else {
        if (_this->_impl_.field_name_.IsDefault()) {
          _this->_internal_set_field_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (from._internal_row_index() != 0) {
        _this->_impl_.row_index_ = from._impl_.row_index_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Snippet_RecordLocation::CopyFrom(const Snippet_RecordLocation& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.Snippet.RecordLocation)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

Snippet::Snippet(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Snippet_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.Snippet)
}
PROTOBUF_NDEBUG_INLINE Snippet::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::Snippet& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        content_(arena, from.content_),
        detector_id_(arena, from.detector_id_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.Snippet)
}
PROTOBUF_NDEBUG_INLINE Snippet::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        content_(arena),
        detector_id_(arena) {}

inline void Snippet::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, match_codepoint_range_),
           0,
           offsetof(Impl_, record_location_) -
               offsetof(Impl_, match_codepoint_range_) +
               sizeof(Impl_::record_location_));
}
Snippet::~Snippet() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.Snippet)
  SharedDtor(*this);
}
inline void Snippet::SharedDtor(MessageLite& self) {
  Snippet& this_ = static_cast<Snippet&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.content_.Destroy();
  this_._impl_.detector_id_.Destroy();
  delete this_._impl_.match_codepoint_range_;
  delete this_._impl_.record_location_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Snippet_class_data_ =
    Snippet::InternalGenerateClassData_(Snippet_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet::GetClassData() const {
  return Snippet_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Snippet::GetClassData() const {
  return Snippet_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Snippet::ParseTableT_
    Snippet::_table_ =
        Snippet::InternalGenerateParseTable_(Snippet_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Snippet::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.Snippet)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.content_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.detector_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(_impl_.match_codepoint_range_ != nullptr);
      _impl_.match_codepoint_range_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.record_location_ != nullptr);
      _impl_.record_location_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // .chrome.cros.reporting.proto.Snippet.Range match_codepoint_range = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        2, *this_._impl_.match_codepoint_range_, this_._impl_.match_codepoint_range_->GetCachedSize(), target,
        stream);
  }

  // string detector_id = 3;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_detector_id().empty()) {
      const ::std::string& _s = this_._internal_detector_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.Snippet.detector_id");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.Snippet.RecordLocation record_location = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        4, *this_._impl_.record_location_, this_._impl_.record_location_->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:chrome.cros.reporting.proto.Snippet)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // string content = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_content().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content());
      }
    }
    // string detector_id = 3;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_detector_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_detector_id());
      }
    }
    // .chrome.cros.reporting.proto.Snippet.Range match_codepoint_range = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.match_codepoint_range_);
    }
    // .chrome.cros.reporting.proto.Snippet.RecordLocation record_location = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.record_location_);
    }
  }
  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 Snippet::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Snippet*>(&to_msg);
  auto& from = static_cast<const Snippet&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.Snippet)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!from._internal_content().empty()) {
        _this->_internal_set_content(from._internal_content());
      } else {
        if (_this->_impl_.content_.IsDefault()) {
          _this->_internal_set_content("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_detector_id().empty()) {
        _this->_internal_set_detector_id(from._internal_detector_id());
      } else {
        if (_this->_impl_.detector_id_.IsDefault()) {
          _this->_internal_set_detector_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(from._impl_.match_codepoint_range_ != nullptr);
      if (_this->_impl_.match_codepoint_range_ == nullptr) {
        _this->_impl_.match_codepoint_range_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.match_codepoint_range_);
      } else {
        _this->_impl_.match_codepoint_range_->MergeFrom(*from._impl_.match_codepoint_range_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.record_location_ != nullptr);
      if (_this->_impl_.record_location_ == nullptr) {
        _this->_impl_.record_location_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.record_location_);
      } else {
        _this->_impl_.record_location_->MergeFrom(*from._impl_.record_location_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Snippet::CopyFrom(const Snippet& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.Snippet)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void Snippet::InternalSwap(Snippet* 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_.content_, &other->_impl_.content_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.detector_id_, &other->_impl_.detector_id_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(Snippet, _impl_.record_location_)
      + sizeof(Snippet::_impl_.record_location_)
      - PROTOBUF_FIELD_OFFSET(Snippet, _impl_.match_codepoint_range_)>(
          reinterpret_cast<char*>(&_impl_.match_codepoint_range_),
          reinterpret_cast<char*>(&other->_impl_.match_codepoint_range_));
}

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

TriggeredRuleInfo::TriggeredRuleInfo(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, TriggeredRuleInfo_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.TriggeredRuleInfo)
}
PROTOBUF_NDEBUG_INLINE TriggeredRuleInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::TriggeredRuleInfo& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        matched_detectors_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::TriggeredRuleInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.matched_detectors_)>()
          , from.matched_detectors_
        }
        ,
        notification_configurations_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::TriggeredRuleInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.notification_configurations_)>()
          , from.notification_configurations_
        }
        ,
        access_level_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::TriggeredRuleInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.access_level_)>()
          , from.access_level_
        }
        ,
        snippets_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::TriggeredRuleInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.snippets_)>()
          , from.snippets_
        }
        ,
        iframe_url_categories_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::TriggeredRuleInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.iframe_url_categories_)>()
          , from.iframe_url_categories_
        }
        ,
        rule_name_(arena, from.rule_name_),
        rule_resource_name_(arena, from.rule_resource_name_),
        url_category_(arena, from.url_category_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.TriggeredRuleInfo)
}
PROTOBUF_NDEBUG_INLINE TriggeredRuleInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        matched_detectors_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.matched_detectors_)>()
         }
        ,
        notification_configurations_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.notification_configurations_)>()
         }
        ,
        access_level_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.access_level_)>()
         }
        ,
        snippets_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.snippets_)>()
         }
        ,
        iframe_url_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TriggeredRuleInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TriggeredRuleInfo, _impl_.iframe_url_categories_)>()
         }
        ,
        rule_name_(arena),
        rule_resource_name_(arena),
        url_category_(arena) {}

inline void TriggeredRuleInfo::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, rule_id_),
           0,
           offsetof(Impl_, has_screenshot_protection_) -
               offsetof(Impl_, rule_id_) +
               sizeof(Impl_::has_screenshot_protection_));
}
TriggeredRuleInfo::~TriggeredRuleInfo() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.TriggeredRuleInfo)
  SharedDtor(*this);
}
inline void TriggeredRuleInfo::SharedDtor(MessageLite& self) {
  TriggeredRuleInfo& this_ = static_cast<TriggeredRuleInfo&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.rule_name_.Destroy();
  this_._impl_.rule_resource_name_.Destroy();
  this_._impl_.url_category_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite TriggeredRuleInfo_class_data_ =
    TriggeredRuleInfo::InternalGenerateClassData_(TriggeredRuleInfo_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.matched_detectors_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.notification_configurations_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.access_level_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.snippets_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.iframe_url_categories_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.rule_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.rule_resource_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.url_category_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00003f00U)) {
    ::memset(&_impl_.rule_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.has_screenshot_protection_) -
        reinterpret_cast<char*>(&_impl_.rule_id_)) + sizeof(_impl_.has_screenshot_protection_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // int64 rule_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (this_._internal_rule_id() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
              stream, this_._internal_rule_id(), target);
    }
  }

  // string rule_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_rule_name().empty()) {
      const ::std::string& _s = this_._internal_rule_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TriggeredRuleInfo.rule_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string rule_resource_name = 3;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_rule_resource_name().empty()) {
      const ::std::string& _s = this_._internal_rule_resource_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TriggeredRuleInfo.rule_resource_name");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.TriggeredRuleInfo.RuleSeverity severity = 4;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (this_._internal_severity() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          4, this_._internal_severity(), target);
    }
  }

  // .chrome.cros.reporting.proto.TriggeredRuleInfo.Action action = 5;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (this_._internal_action() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          5, this_._internal_action(), target);
    }
  }

  // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 6;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_matched_detectors_size());
         i < n; i++) {
      const auto& repfield = this_._internal_matched_detectors().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              6, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

  // repeated .chrome.cros.reporting.proto.NotificationConfiguration notification_configurations = 8;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_notification_configurations_size());
         i < n; i++) {
      const auto& repfield = this_._internal_notification_configurations().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              8, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated string access_level = 9;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (int i = 0, n = this_._internal_access_level_size(); i < n; ++i) {
      const auto& s = this_._internal_access_level().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TriggeredRuleInfo.access_level");
      target = stream->WriteString(9, s, target);
    }
  }

  // string url_category = 10;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_url_category().empty()) {
      const ::std::string& _s = this_._internal_url_category();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TriggeredRuleInfo.url_category");
      target = stream->WriteStringMaybeAliased(10, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.Snippet snippets = 11;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_snippets_size());
         i < n; i++) {
      const auto& repfield = this_._internal_snippets().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              11, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // bool has_watermarking = 12;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (this_._internal_has_watermarking() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          12, this_._internal_has_watermarking(), target);
    }
  }

  // bool has_screenshot_protection = 13;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (this_._internal_has_screenshot_protection() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          13, this_._internal_has_screenshot_protection(), target);
    }
  }

  // repeated string iframe_url_categories = 14;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    for (int i = 0, n = this_._internal_iframe_url_categories_size(); i < n; ++i) {
      const auto& s = this_._internal_iframe_url_categories().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TriggeredRuleInfo.iframe_url_categories");
      target = stream->WriteString(14, 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:chrome.cros.reporting.proto.TriggeredRuleInfo)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 6;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_matched_detectors_size();
      for (const auto& msg : this_._internal_matched_detectors()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.NotificationConfiguration notification_configurations = 8;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_notification_configurations_size();
      for (const auto& msg : this_._internal_notification_configurations()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string access_level = 9;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_access_level().size());
      for (int i = 0, n = this_._internal_access_level().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_access_level().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.Snippet snippets = 11;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1UL * this_._internal_snippets_size();
      for (const auto& msg : this_._internal_snippets()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string iframe_url_categories = 14;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_iframe_url_categories().size());
      for (int i = 0, n = this_._internal_iframe_url_categories().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_iframe_url_categories().Get(i));
      }
    }
    // string rule_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_rule_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_rule_name());
      }
    }
    // string rule_resource_name = 3;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_rule_resource_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_rule_resource_name());
      }
    }
    // string url_category = 10;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_url_category().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url_category());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00003f00U)) {
    // int64 rule_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (this_._internal_rule_id() != 0) {
        total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
            this_._internal_rule_id());
      }
    }
    // .chrome.cros.reporting.proto.TriggeredRuleInfo.RuleSeverity severity = 4;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (this_._internal_severity() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_severity());
      }
    }
    // .chrome.cros.reporting.proto.TriggeredRuleInfo.Action action = 5;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (this_._internal_action() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_action());
      }
    }
    // bool has_alert = 7;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (this_._internal_has_alert() != 0) {
        total_size += 2;
      }
    }
    // bool has_watermarking = 12;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (this_._internal_has_watermarking() != 0) {
        total_size += 2;
      }
    }
    // bool has_screenshot_protection = 13;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (this_._internal_has_screenshot_protection() != 0) {
        total_size += 2;
      }
    }
  }
  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 TriggeredRuleInfo::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<TriggeredRuleInfo*>(&to_msg);
  auto& from = static_cast<const TriggeredRuleInfo&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.TriggeredRuleInfo)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_matched_detectors()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_matched_detectors());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_notification_configurations()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_notification_configurations());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_access_level()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_access_level());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_mutable_snippets()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_snippets());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_mutable_iframe_url_categories()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_iframe_url_categories());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_rule_name().empty()) {
        _this->_internal_set_rule_name(from._internal_rule_name());
      } else {
        if (_this->_impl_.rule_name_.IsDefault()) {
          _this->_internal_set_rule_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_rule_resource_name().empty()) {
        _this->_internal_set_rule_resource_name(from._internal_rule_resource_name());
      } else {
        if (_this->_impl_.rule_resource_name_.IsDefault()) {
          _this->_internal_set_rule_resource_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_url_category().empty()) {
        _this->_internal_set_url_category(from._internal_url_category());
      } else {
        if (_this->_impl_.url_category_.IsDefault()) {
          _this->_internal_set_url_category("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00003f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (from._internal_rule_id() != 0) {
        _this->_impl_.rule_id_ = from._impl_.rule_id_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (from._internal_severity() != 0) {
        _this->_impl_.severity_ = from._impl_.severity_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (from._internal_action() != 0) {
        _this->_impl_.action_ = from._impl_.action_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (from._internal_has_alert() != 0) {
        _this->_impl_.has_alert_ = from._impl_.has_alert_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (from._internal_has_watermarking() != 0) {
        _this->_impl_.has_watermarking_ = from._impl_.has_watermarking_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (from._internal_has_screenshot_protection() != 0) {
        _this->_impl_.has_screenshot_protection_ = from._impl_.has_screenshot_protection_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void TriggeredRuleInfo::CopyFrom(const TriggeredRuleInfo& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.TriggeredRuleInfo)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void TriggeredRuleInfo::InternalSwap(TriggeredRuleInfo* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.matched_detectors_.InternalSwap(&other->_impl_.matched_detectors_);
  _impl_.notification_configurations_.InternalSwap(&other->_impl_.notification_configurations_);
  _impl_.access_level_.InternalSwap(&other->_impl_.access_level_);
  _impl_.snippets_.InternalSwap(&other->_impl_.snippets_);
  _impl_.iframe_url_categories_.InternalSwap(&other->_impl_.iframe_url_categories_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.rule_name_, &other->_impl_.rule_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.rule_resource_name_, &other->_impl_.rule_resource_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_category_, &other->_impl_.url_category_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.has_screenshot_protection_)
      + sizeof(TriggeredRuleInfo::_impl_.has_screenshot_protection_)
      - PROTOBUF_FIELD_OFFSET(TriggeredRuleInfo, _impl_.rule_id_)>(
          reinterpret_cast<char*>(&_impl_.rule_id_),
          reinterpret_cast<char*>(&other->_impl_.rule_id_));
}

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

RiskInfo_RiskCategory::RiskInfo_RiskCategory(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, RiskInfo_RiskCategory_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
}
PROTOBUF_NDEBUG_INLINE RiskInfo_RiskCategory::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::RiskInfo_RiskCategory& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        key_(arena, from.key_),
        value_(arena, from.value_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  RiskInfo_RiskCategory* 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:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
}
PROTOBUF_NDEBUG_INLINE RiskInfo_RiskCategory::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        key_(arena),
        value_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite RiskInfo_RiskCategory_class_data_ =
    RiskInfo_RiskCategory::InternalGenerateClassData_(RiskInfo_RiskCategory_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo_RiskCategory::GetClassData() const {
  return RiskInfo_RiskCategory_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo_RiskCategory::GetClassData() const {
  return RiskInfo_RiskCategory_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const RiskInfo_RiskCategory::ParseTableT_
    RiskInfo_RiskCategory::_table_ =
        RiskInfo_RiskCategory::InternalGenerateParseTable_(RiskInfo_RiskCategory_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void RiskInfo_RiskCategory::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string key = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_key().empty()) {
      const ::std::string& _s = this_._internal_key();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.RiskInfo.RiskCategory.key");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string value = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_value().empty()) {
      const ::std::string& _s = this_._internal_value();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.RiskInfo.RiskCategory.value");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t RiskInfo_RiskCategory::ByteSizeLong(const MessageLite& base) {
  const RiskInfo_RiskCategory& this_ = static_cast<const RiskInfo_RiskCategory&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t RiskInfo_RiskCategory::ByteSizeLong() const {
  const RiskInfo_RiskCategory& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
  ::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 key = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_key().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_key());
      }
    }
    // string value = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_value().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_value());
      }
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void RiskInfo_RiskCategory::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<RiskInfo_RiskCategory*>(&to_msg);
  auto& from = static_cast<const RiskInfo_RiskCategory&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
  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_key().empty()) {
        _this->_internal_set_key(from._internal_key());
      } else {
        if (_this->_impl_.key_.IsDefault()) {
          _this->_internal_set_key("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_value().empty()) {
        _this->_internal_set_value(from._internal_value());
      } else {
        if (_this->_impl_.value_.IsDefault()) {
          _this->_internal_set_value("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void RiskInfo_RiskCategory::CopyFrom(const RiskInfo_RiskCategory& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.RiskInfo.RiskCategory)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

RiskInfo_RiskIndicator::RiskInfo_RiskIndicator(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, RiskInfo_RiskIndicator_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
}
PROTOBUF_NDEBUG_INLINE RiskInfo_RiskIndicator::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::RiskInfo_RiskIndicator& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        key_(arena, from.key_),
        value_{},
        _oneof_case_{from._oneof_case_[0]} {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  RiskInfo_RiskIndicator* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  switch (value_case()) {
    case VALUE_NOT_SET:
      break;
      case kIntValue:
        _impl_.value_.int_value_ = from._impl_.value_.int_value_;
        break;
      case kBoolValue:
        _impl_.value_.bool_value_ = from._impl_.value_.bool_value_;
        break;
      case kStringValue:
        new (&_impl_.value_.string_value_) decltype(_impl_.value_.string_value_){arena, from._impl_.value_.string_value_};
        break;
      case kFloatValue:
        _impl_.value_.float_value_ = from._impl_.value_.float_value_;
        break;
  }

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
}
PROTOBUF_NDEBUG_INLINE RiskInfo_RiskIndicator::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        key_(arena),
        value_{},
        _oneof_case_{} {}

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

void RiskInfo_RiskIndicator::clear_value() {
// @@protoc_insertion_point(one_of_clear_start:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (value_case()) {
    case kIntValue: {
      // No need to clear
      break;
    }
    case kBoolValue: {
      // No need to clear
      break;
    }
    case kStringValue: {
      _impl_.value_.string_value_.Destroy();
      break;
    }
    case kFloatValue: {
      // No need to clear
      break;
    }
    case VALUE_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = VALUE_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite RiskInfo_RiskIndicator_class_data_ =
    RiskInfo_RiskIndicator::InternalGenerateClassData_(RiskInfo_RiskIndicator_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo_RiskIndicator::GetClassData() const {
  return RiskInfo_RiskIndicator_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo_RiskIndicator::GetClassData() const {
  return RiskInfo_RiskIndicator_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const RiskInfo_RiskIndicator::ParseTableT_
    RiskInfo_RiskIndicator::_table_ =
        RiskInfo_RiskIndicator::InternalGenerateParseTable_(RiskInfo_RiskIndicator_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void RiskInfo_RiskIndicator::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  ::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_.key_.ClearNonDefaultToEmpty();
  }
  clear_value();
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string key = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_key().empty()) {
      const ::std::string& _s = this_._internal_key();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.RiskInfo.RiskIndicator.key");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  switch (this_.value_case()) {
    case kIntValue: {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
              stream, this_._internal_int_value(), target);
      break;
    }
    case kBoolValue: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          3, this_._internal_bool_value(), target);
      break;
    }
    case kStringValue: {
      const ::std::string& _s = this_._internal_string_value();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.RiskInfo.RiskIndicator.string_value");
      target = stream->WriteStringMaybeAliased(4, _s, target);
      break;
    }
    case kFloatValue: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteFloatToArray(
          5, this_._internal_float_value(), target);
      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:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t RiskInfo_RiskIndicator::ByteSizeLong(const MessageLite& base) {
  const RiskInfo_RiskIndicator& this_ = static_cast<const RiskInfo_RiskIndicator&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t RiskInfo_RiskIndicator::ByteSizeLong() const {
  const RiskInfo_RiskIndicator& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  ::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 key = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_key().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_key());
      }
    }
  }
  switch (this_.value_case()) {
    // int32 int_value = 2;
    case kIntValue: {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_int_value());
      break;
    }
    // bool bool_value = 3;
    case kBoolValue: {
      total_size += 2;
      break;
    }
    // string string_value = 4;
    case kStringValue: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_string_value());
      break;
    }
    // float float_value = 5;
    case kFloatValue: {
      total_size += 5;
      break;
    }
    case VALUE_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 RiskInfo_RiskIndicator::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<RiskInfo_RiskIndicator*>(&to_msg);
  auto& from = static_cast<const RiskInfo_RiskIndicator&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  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_key().empty()) {
      _this->_internal_set_key(from._internal_key());
    } else {
      if (_this->_impl_.key_.IsDefault()) {
        _this->_internal_set_key("");
      }
    }
  }
  _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_value();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kIntValue: {
        _this->_impl_.value_.int_value_ = from._impl_.value_.int_value_;
        break;
      }
      case kBoolValue: {
        _this->_impl_.value_.bool_value_ = from._impl_.value_.bool_value_;
        break;
      }
      case kStringValue: {
        if (oneof_needs_init) {
          _this->_impl_.value_.string_value_.InitDefault();
        }
        _this->_impl_.value_.string_value_.Set(from._internal_string_value(), arena);
        break;
      }
      case kFloatValue: {
        _this->_impl_.value_.float_value_ = from._impl_.value_.float_value_;
        break;
      }
      case VALUE_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void RiskInfo_RiskIndicator::CopyFrom(const RiskInfo_RiskIndicator& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.RiskInfo.RiskIndicator)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

RiskInfo::RiskInfo(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, RiskInfo_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.RiskInfo)
}
PROTOBUF_NDEBUG_INLINE RiskInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::RiskInfo& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        risk_categories_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::RiskInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_categories_)>()
          , from.risk_categories_
        }
        ,
        risk_reasons_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::RiskInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_reasons_)>()
          , from.risk_reasons_
        }
        ,
        risk_indicators_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::RiskInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_indicators_)>()
          , from.risk_indicators_
        }
     {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.RiskInfo)
}
PROTOBUF_NDEBUG_INLINE RiskInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        risk_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_categories_)>()
         }
        ,
        risk_reasons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_reasons_)>()
         }
        ,
        risk_indicators_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::RiskInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::RiskInfo, _impl_.risk_indicators_)>()
         }
     {}

inline void RiskInfo::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, threat_type_),
           0,
           offsetof(Impl_, risk_source_) -
               offsetof(Impl_, threat_type_) +
               sizeof(Impl_::risk_source_));
}
RiskInfo::~RiskInfo() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.RiskInfo)
  SharedDtor(*this);
}
inline void RiskInfo::SharedDtor(MessageLite& self) {
  RiskInfo& this_ = static_cast<RiskInfo&>(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 RiskInfo_class_data_ =
    RiskInfo::InternalGenerateClassData_(RiskInfo_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo::GetClassData() const {
  return RiskInfo_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
RiskInfo::GetClassData() const {
  return RiskInfo_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const RiskInfo::ParseTableT_
    RiskInfo::_table_ =
        RiskInfo::InternalGenerateParseTable_(RiskInfo_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void RiskInfo::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.RiskInfo)
  ::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_.risk_categories_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.risk_reasons_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.risk_indicators_.Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000038U)) {
    ::memset(&_impl_.threat_type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.risk_source_) -
        reinterpret_cast<char*>(&_impl_.threat_type_)) + sizeof(_impl_.risk_source_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .chrome.cros.reporting.proto.RiskInfo.ThreatType threat_type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (this_._internal_threat_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          1, this_._internal_threat_type(), target);
    }
  }

  // .chrome.cros.reporting.proto.RiskLevel risk_level = 2;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (this_._internal_risk_level() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          2, this_._internal_risk_level(), target);
    }
  }

  // repeated .chrome.cros.reporting.proto.RiskInfo.RiskCategory risk_categories = 3;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_risk_categories_size());
         i < n; i++) {
      const auto& repfield = this_._internal_risk_categories().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              3, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated string risk_reasons = 4;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (int i = 0, n = this_._internal_risk_reasons_size(); i < n; ++i) {
      const auto& s = this_._internal_risk_reasons().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.RiskInfo.risk_reasons");
      target = stream->WriteString(4, s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.RiskInfo.RiskIndicator risk_indicators = 5;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_risk_indicators_size());
         i < n; i++) {
      const auto& repfield = this_._internal_risk_indicators().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              5, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.RiskInfo.RiskSource risk_source = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (this_._internal_risk_source() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          6, this_._internal_risk_source(), 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:chrome.cros.reporting.proto.RiskInfo)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t RiskInfo::ByteSizeLong(const MessageLite& base) {
  const RiskInfo& this_ = static_cast<const RiskInfo&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t RiskInfo::ByteSizeLong() const {
  const RiskInfo& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.RiskInfo)
  ::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, 0x0000003fU)) {
    // repeated .chrome.cros.reporting.proto.RiskInfo.RiskCategory risk_categories = 3;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_risk_categories_size();
      for (const auto& msg : this_._internal_risk_categories()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string risk_reasons = 4;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_risk_reasons().size());
      for (int i = 0, n = this_._internal_risk_reasons().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_risk_reasons().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.RiskInfo.RiskIndicator risk_indicators = 5;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1UL * this_._internal_risk_indicators_size();
      for (const auto& msg : this_._internal_risk_indicators()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // .chrome.cros.reporting.proto.RiskInfo.ThreatType threat_type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (this_._internal_threat_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_threat_type());
      }
    }
    // .chrome.cros.reporting.proto.RiskLevel risk_level = 2;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (this_._internal_risk_level() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_risk_level());
      }
    }
    // .chrome.cros.reporting.proto.RiskInfo.RiskSource risk_source = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (this_._internal_risk_source() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_risk_source());
      }
    }
  }
  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 RiskInfo::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<RiskInfo*>(&to_msg);
  auto& from = static_cast<const RiskInfo&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.RiskInfo)
  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, 0x0000003fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_risk_categories()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_categories());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_risk_reasons()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_reasons());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_risk_indicators()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_indicators());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (from._internal_threat_type() != 0) {
        _this->_impl_.threat_type_ = from._impl_.threat_type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (from._internal_risk_level() != 0) {
        _this->_impl_.risk_level_ = from._impl_.risk_level_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (from._internal_risk_source() != 0) {
        _this->_impl_.risk_source_ = from._impl_.risk_source_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void RiskInfo::CopyFrom(const RiskInfo& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.RiskInfo)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

UrlInfo_NavigationInitiator::UrlInfo_NavigationInitiator(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, UrlInfo_NavigationInitiator_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
}
PROTOBUF_NDEBUG_INLINE UrlInfo_NavigationInitiator::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::UrlInfo_NavigationInitiator& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        entity_(arena, from.entity_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
}
PROTOBUF_NDEBUG_INLINE UrlInfo_NavigationInitiator::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        entity_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite UrlInfo_NavigationInitiator_class_data_ =
    UrlInfo_NavigationInitiator::InternalGenerateClassData_(UrlInfo_NavigationInitiator_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
UrlInfo_NavigationInitiator::GetClassData() const {
  return UrlInfo_NavigationInitiator_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
UrlInfo_NavigationInitiator::GetClassData() const {
  return UrlInfo_NavigationInitiator_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const UrlInfo_NavigationInitiator::ParseTableT_
    UrlInfo_NavigationInitiator::_table_ =
        UrlInfo_NavigationInitiator::InternalGenerateParseTable_(UrlInfo_NavigationInitiator_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void UrlInfo_NavigationInitiator::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
  ::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_.entity_.ClearNonDefaultToEmpty();
  }
  _impl_.initiator_type_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator.InitiatorType initiator_type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (this_._internal_initiator_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          1, this_._internal_initiator_type(), target);
    }
  }

  // string entity = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_entity().empty()) {
      const ::std::string& _s = this_._internal_entity();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlInfo.NavigationInitiator.entity");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t UrlInfo_NavigationInitiator::ByteSizeLong(const MessageLite& base) {
  const UrlInfo_NavigationInitiator& this_ = static_cast<const UrlInfo_NavigationInitiator&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t UrlInfo_NavigationInitiator::ByteSizeLong() const {
  const UrlInfo_NavigationInitiator& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
  ::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 entity = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_entity().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_entity());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator.InitiatorType initiator_type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (this_._internal_initiator_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_initiator_type());
      }
    }
  }
  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 UrlInfo_NavigationInitiator::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<UrlInfo_NavigationInitiator*>(&to_msg);
  auto& from = static_cast<const UrlInfo_NavigationInitiator&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
  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_entity().empty()) {
        _this->_internal_set_entity(from._internal_entity());
      } else {
        if (_this->_impl_.entity_.IsDefault()) {
          _this->_internal_set_entity("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (from._internal_initiator_type() != 0) {
        _this->_impl_.initiator_type_ = from._impl_.initiator_type_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void UrlInfo_NavigationInitiator::CopyFrom(const UrlInfo_NavigationInitiator& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.UrlInfo.NavigationInitiator)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

UrlInfo::UrlInfo(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, UrlInfo_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.UrlInfo)
}
PROTOBUF_NDEBUG_INLINE UrlInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::UrlInfo& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        url_categories_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.url_categories_)>()
          , from.url_categories_
        }
        ,
        risk_infos_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlInfo,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.risk_infos_)>()
          , from.risk_infos_
        }
        ,
        url_(arena, from.url_),
        ip_(arena, from.ip_),
        request_http_method_(arena, from.request_http_method_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  UrlInfo* 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_.navigation_initiator_ = (CheckHasBit(cached_has_bits, 0x00000020U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.navigation_initiator_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, type_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, type_),
           offsetof(Impl_, risk_level_) -
               offsetof(Impl_, type_) +
               sizeof(Impl_::risk_level_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.UrlInfo)
}
PROTOBUF_NDEBUG_INLINE UrlInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        url_categories_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.url_categories_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlInfo,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlInfo, _impl_.risk_infos_)>()
         }
        ,
        url_(arena),
        ip_(arena),
        request_http_method_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite UrlInfo_class_data_ =
    UrlInfo::InternalGenerateClassData_(UrlInfo_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.url_categories_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.risk_infos_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.ip_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.request_http_method_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(_impl_.navigation_initiator_ != nullptr);
      _impl_.navigation_initiator_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000c0U)) {
    ::memset(&_impl_.type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.risk_level_) -
        reinterpret_cast<char*>(&_impl_.type_)) + sizeof(_impl_.risk_level_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlInfo.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // repeated string url_categories = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_url_categories_size(); i < n; ++i) {
      const auto& s = this_._internal_url_categories().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlInfo.url_categories");
      target = stream->WriteString(2, s, target);
    }
  }

  // string ip = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_ip().empty()) {
      const ::std::string& _s = this_._internal_ip();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlInfo.ip");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo.URLType type = 4;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (this_._internal_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          4, this_._internal_type(), target);
    }
  }

  // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 5;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_risk_infos_size());
         i < n; i++) {
      const auto& repfield = this_._internal_risk_infos().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              5, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.RiskLevel risk_level = 6;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (this_._internal_risk_level() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          6, this_._internal_risk_level(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator navigation_initiator = 7;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        7, *this_._impl_.navigation_initiator_, this_._impl_.navigation_initiator_->GetCachedSize(), target,
        stream);
  }

  // string request_http_method = 8;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_request_http_method().empty()) {
      const ::std::string& _s = this_._internal_request_http_method();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlInfo.request_http_method");
      target = stream->WriteStringMaybeAliased(8, _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:chrome.cros.reporting.proto.UrlInfo)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string url_categories = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_url_categories().size());
      for (int i = 0, n = this_._internal_url_categories().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_url_categories().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 5;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_risk_infos_size();
      for (const auto& msg : this_._internal_risk_infos()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string ip = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_ip().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_ip());
      }
    }
    // string request_http_method = 8;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_request_http_method().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_request_http_method());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo.NavigationInitiator navigation_initiator = 7;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.navigation_initiator_);
    }
    // .chrome.cros.reporting.proto.UrlInfo.URLType type = 4;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (this_._internal_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_type());
      }
    }
    // .chrome.cros.reporting.proto.RiskLevel risk_level = 6;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (this_._internal_risk_level() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_risk_level());
      }
    }
  }
  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 UrlInfo::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<UrlInfo*>(&to_msg);
  auto& from = static_cast<const UrlInfo&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.UrlInfo)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_url_categories()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_url_categories());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_risk_infos()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_infos());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_ip().empty()) {
        _this->_internal_set_ip(from._internal_ip());
      } else {
        if (_this->_impl_.ip_.IsDefault()) {
          _this->_internal_set_ip("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_request_http_method().empty()) {
        _this->_internal_set_request_http_method(from._internal_request_http_method());
      } else {
        if (_this->_impl_.request_http_method_.IsDefault()) {
          _this->_internal_set_request_http_method("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(from._impl_.navigation_initiator_ != nullptr);
      if (_this->_impl_.navigation_initiator_ == nullptr) {
        _this->_impl_.navigation_initiator_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.navigation_initiator_);
      } else {
        _this->_impl_.navigation_initiator_->MergeFrom(*from._impl_.navigation_initiator_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (from._internal_type() != 0) {
        _this->_impl_.type_ = from._impl_.type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (from._internal_risk_level() != 0) {
        _this->_impl_.risk_level_ = from._impl_.risk_level_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void UrlInfo::CopyFrom(const UrlInfo& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.UrlInfo)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

SafeBrowsingPasswordReuseEvent::SafeBrowsingPasswordReuseEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SafeBrowsingPasswordReuseEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingPasswordReuseEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referral_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referral_urls_)>()
          , from.referral_urls_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        url_(arena, from.url_),
        user_name_(arena, from.user_name_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_),
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referrers_)>()
          , from.referrers_
        }
     {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SafeBrowsingPasswordReuseEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00000040U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, is_phishing_url_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, is_phishing_url_),
           offsetof(Impl_, event_result_) -
               offsetof(Impl_, is_phishing_url_) +
               sizeof(Impl_::event_result_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingPasswordReuseEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.security_agents_)>()
         }
        ,
        url_(arena),
        user_name_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena),
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordReuseEvent, _impl_.referrers_)>()
         }
     {}

inline void SafeBrowsingPasswordReuseEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, event_result_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::event_result_));
}
SafeBrowsingPasswordReuseEvent::~SafeBrowsingPasswordReuseEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent)
  SharedDtor(*this);
}
inline void SafeBrowsingPasswordReuseEvent::SharedDtor(MessageLite& self) {
  SafeBrowsingPasswordReuseEvent& this_ = static_cast<SafeBrowsingPasswordReuseEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.url_.Destroy();
  this_._impl_.user_name_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  delete this_._impl_.url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SafeBrowsingPasswordReuseEvent_class_data_ =
    SafeBrowsingPasswordReuseEvent::InternalGenerateClassData_(SafeBrowsingPasswordReuseEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referral_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  _impl_.is_phishing_url_ = false;
  if (BatchCheckHasBit(cached_has_bits, 0x00000700U)) {
    ::memset(&_impl_.clicked_through_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.event_result_) -
        reinterpret_cast<char*>(&_impl_.clicked_through_)) + sizeof(_impl_.event_result_));
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.referrers_.Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string user_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_user_name().empty()) {
      const ::std::string& _s = this_._internal_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent.user_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // bool is_phishing_url = 3;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (this_._internal_is_phishing_url() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          3, this_._internal_is_phishing_url(), target);
    }
  }

  // string profile_user_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // repeated string referral_urls = 11;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referral_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referral_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent.referral_urls");
      target = stream->WriteString(11, s, target);
    }
  }

  // bool clicked_through = 12;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          12, this_._internal_clicked_through(), target);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 13;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          13, this_._internal_event_result(), target);
    }
  }

  // string profile_identifier = 14;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(14, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 15;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              15, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 16;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        16, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 17;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              17, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referral_urls = 11;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_referral_urls().size());
      for (int i = 0, n = this_._internal_referral_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referral_urls().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 15;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string user_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_user_name());
      }
    }
    // string profile_user_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 14;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 16;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // bool is_phishing_url = 3;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (this_._internal_is_phishing_url() != 0) {
        total_size += 2;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000700U)) {
    // bool clicked_through = 12;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 2;
      }
    }
    // .chrome.cros.reporting.proto.EventResult event_result = 13;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 17;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
  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 SafeBrowsingPasswordReuseEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SafeBrowsingPasswordReuseEvent*>(&to_msg);
  auto& from = static_cast<const SafeBrowsingPasswordReuseEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referral_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referral_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_user_name().empty()) {
        _this->_internal_set_user_name(from._internal_user_name());
      } else {
        if (_this->_impl_.user_name_.IsDefault()) {
          _this->_internal_set_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (from._internal_is_phishing_url() != 0) {
        _this->_impl_.is_phishing_url_ = from._impl_.is_phishing_url_;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000700U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SafeBrowsingPasswordReuseEvent::CopyFrom(const SafeBrowsingPasswordReuseEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SafeBrowsingPasswordReuseEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void SafeBrowsingPasswordReuseEvent::InternalSwap(SafeBrowsingPasswordReuseEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.referral_urls_.InternalSwap(&other->_impl_.referral_urls_);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.user_name_, &other->_impl_.user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.event_result_)
      + sizeof(SafeBrowsingPasswordReuseEvent::_impl_.event_result_)
      - PROTOBUF_FIELD_OFFSET(SafeBrowsingPasswordReuseEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
}

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

SafeBrowsingPasswordChangedEvent::SafeBrowsingPasswordChangedEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SafeBrowsingPasswordChangedEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingPasswordChangedEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        user_name_(arena, from.user_name_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SafeBrowsingPasswordChangedEvent* 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:chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingPasswordChangedEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingPasswordChangedEvent, _impl_.security_agents_)>()
         }
        ,
        user_name_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SafeBrowsingPasswordChangedEvent_class_data_ =
    SafeBrowsingPasswordChangedEvent::InternalGenerateClassData_(SafeBrowsingPasswordChangedEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SafeBrowsingPasswordChangedEvent::GetClassData() const {
  return SafeBrowsingPasswordChangedEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SafeBrowsingPasswordChangedEvent::GetClassData() const {
  return SafeBrowsingPasswordChangedEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const SafeBrowsingPasswordChangedEvent::ParseTableT_
    SafeBrowsingPasswordChangedEvent::_table_ =
        SafeBrowsingPasswordChangedEvent::InternalGenerateParseTable_(SafeBrowsingPasswordChangedEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void SafeBrowsingPasswordChangedEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string user_name = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_user_name().empty()) {
      const ::std::string& _s = this_._internal_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent.user_name");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string profile_user_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string profile_identifier = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              4, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string user_name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_user_name());
      }
    }
    // string profile_user_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
  }
  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 SafeBrowsingPasswordChangedEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SafeBrowsingPasswordChangedEvent*>(&to_msg);
  auto& from = static_cast<const SafeBrowsingPasswordChangedEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_user_name().empty()) {
        _this->_internal_set_user_name(from._internal_user_name());
      } else {
        if (_this->_impl_.user_name_.IsDefault()) {
          _this->_internal_set_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SafeBrowsingPasswordChangedEvent::CopyFrom(const SafeBrowsingPasswordChangedEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SafeBrowsingPasswordChangedEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

SafeBrowsingDangerousDownloadEvent::SafeBrowsingDangerousDownloadEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SafeBrowsingDangerousDownloadEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingDangerousDownloadEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referral_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referral_urls_)>()
          , from.referral_urls_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        url_(arena, from.url_),
        file_name_(arena, from.file_name_),
        download_digest_sha256_(arena, from.download_digest_sha256_),
        profile_user_name_(arena, from.profile_user_name_),
        content_name_(arena, from.content_name_),
        content_type_(arena, from.content_type_),
        user_justification_(arena, from.user_justification_),
        malware_category_(arena, from.malware_category_),
        malware_family_(arena, from.malware_family_),
        evidence_locker_filepath_(arena, from.evidence_locker_filepath_),
        scan_id_(arena, from.scan_id_),
        source_(arena, from.source_),
        destination_(arena, from.destination_),
        profile_identifier_(arena, from.profile_identifier_),
        tab_url_(arena, from.tab_url_),
        pehash_sha256_(arena, from.pehash_sha256_),
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        risk_infos_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.risk_infos_)>()
          , from.risk_infos_
        }
        ,
        iframe_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.iframe_urls_)>()
          , from.iframe_urls_
        }
     {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SafeBrowsingDangerousDownloadEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00040000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  _impl_.tab_url_info_ = (CheckHasBit(cached_has_bits, 0x00080000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, threat_type_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, threat_type_),
           offsetof(Impl_, is_encrypted_) -
               offsetof(Impl_, threat_type_) +
               sizeof(Impl_::is_encrypted_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingDangerousDownloadEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.security_agents_)>()
         }
        ,
        url_(arena),
        file_name_(arena),
        download_digest_sha256_(arena),
        profile_user_name_(arena),
        content_name_(arena),
        content_type_(arena),
        user_justification_(arena),
        malware_category_(arena),
        malware_family_(arena),
        evidence_locker_filepath_(arena),
        scan_id_(arena),
        source_(arena),
        destination_(arena),
        profile_identifier_(arena),
        tab_url_(arena),
        pehash_sha256_(arena),
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.referrers_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.risk_infos_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingDangerousDownloadEvent, _impl_.iframe_urls_)>()
         }
     {}

inline void SafeBrowsingDangerousDownloadEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, is_encrypted_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::is_encrypted_));
}
SafeBrowsingDangerousDownloadEvent::~SafeBrowsingDangerousDownloadEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent)
  SharedDtor(*this);
}
inline void SafeBrowsingDangerousDownloadEvent::SharedDtor(MessageLite& self) {
  SafeBrowsingDangerousDownloadEvent& this_ = static_cast<SafeBrowsingDangerousDownloadEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.url_.Destroy();
  this_._impl_.file_name_.Destroy();
  this_._impl_.download_digest_sha256_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.content_name_.Destroy();
  this_._impl_.content_type_.Destroy();
  this_._impl_.user_justification_.Destroy();
  this_._impl_.malware_category_.Destroy();
  this_._impl_.malware_family_.Destroy();
  this_._impl_.evidence_locker_filepath_.Destroy();
  this_._impl_.scan_id_.Destroy();
  this_._impl_.source_.Destroy();
  this_._impl_.destination_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.tab_url_.Destroy();
  this_._impl_.pehash_sha256_.Destroy();
  delete this_._impl_.url_info_;
  delete this_._impl_.tab_url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SafeBrowsingDangerousDownloadEvent_class_data_ =
    SafeBrowsingDangerousDownloadEvent::InternalGenerateClassData_(SafeBrowsingDangerousDownloadEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referral_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.file_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.download_digest_sha256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.content_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.content_type_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.user_justification_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _impl_.malware_category_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.malware_family_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.evidence_locker_filepath_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _impl_.scan_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _impl_.source_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _impl_.destination_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000f0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      _impl_.tab_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      _impl_.pehash_sha256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      ABSL_DCHECK(_impl_.tab_url_info_ != nullptr);
      _impl_.tab_url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00f00000U)) {
    ::memset(&_impl_.threat_type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.clicked_through_) -
        reinterpret_cast<char*>(&_impl_.threat_type_)) + sizeof(_impl_.clicked_through_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    ::memset(&_impl_.event_result_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.is_encrypted_) -
        reinterpret_cast<char*>(&_impl_.event_result_)) + sizeof(_impl_.is_encrypted_));
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x80000000U)) {
      _impl_.risk_infos_.Clear();
    }
  }
  cached_has_bits = _impl_._has_bits_[1];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.iframe_urls_.Clear();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string file_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_file_name().empty()) {
      const ::std::string& _s = this_._internal_file_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.file_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string download_digest_sha256 = 3;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_download_digest_sha256().empty()) {
      const ::std::string& _s = this_._internal_download_digest_sha256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.download_digest_sha256");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_user_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.DangerousDownloadThreatType threat_type = 6;
  if (CheckHasBit(cached_has_bits, 0x00100000U)) {
    if (this_._internal_threat_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          6, this_._internal_threat_type(), target);
    }
  }

  // string content_name = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_content_name().empty()) {
      const ::std::string& _s = this_._internal_content_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.content_name");
      target = stream->WriteStringMaybeAliased(7, _s, target);
    }
  }

  // string content_type = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_content_type().empty()) {
      const ::std::string& _s = this_._internal_content_type();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.content_type");
      target = stream->WriteStringMaybeAliased(8, _s, target);
    }
  }

  // uint64 content_size = 9;
  if (CheckHasBit(cached_has_bits, 0x00400000U)) {
    if (this_._internal_content_size() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          9, this_._internal_content_size(), target);
    }
  }

  // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 10;
  if (CheckHasBit(cached_has_bits, 0x00200000U)) {
    if (this_._internal_trigger() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          10, this_._internal_trigger(), target);
    }
  }

  // repeated string referral_urls = 17;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referral_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referral_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.referral_urls");
      target = stream->WriteString(17, s, target);
    }
  }

  // bool clicked_through = 18;
  if (CheckHasBit(cached_has_bits, 0x00800000U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          18, this_._internal_clicked_through(), target);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 19;
  if (CheckHasBit(cached_has_bits, 0x01000000U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          19, this_._internal_event_result(), target);
    }
  }

  // string user_justification = 20;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (!this_._internal_user_justification().empty()) {
      const ::std::string& _s = this_._internal_user_justification();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.user_justification");
      target = stream->WriteStringMaybeAliased(20, _s, target);
    }
  }

  // string malware_category = 21;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (!this_._internal_malware_category().empty()) {
      const ::std::string& _s = this_._internal_malware_category();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.malware_category");
      target = stream->WriteStringMaybeAliased(21, _s, target);
    }
  }

  // string malware_family = 22;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (!this_._internal_malware_family().empty()) {
      const ::std::string& _s = this_._internal_malware_family();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.malware_family");
      target = stream->WriteStringMaybeAliased(22, _s, target);
    }
  }

  // string evidence_locker_filepath = 23;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    if (!this_._internal_evidence_locker_filepath().empty()) {
      const ::std::string& _s = this_._internal_evidence_locker_filepath();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.evidence_locker_filepath");
      target = stream->WriteStringMaybeAliased(23, _s, target);
    }
  }

  // string scan_id = 24;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (!this_._internal_scan_id().empty()) {
      const ::std::string& _s = this_._internal_scan_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.scan_id");
      target = stream->WriteStringMaybeAliased(24, _s, target);
    }
  }

  // string source = 25;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (!this_._internal_source().empty()) {
      const ::std::string& _s = this_._internal_source();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.source");
      target = stream->WriteStringMaybeAliased(25, _s, target);
    }
  }

  // string destination = 26;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    if (!this_._internal_destination().empty()) {
      const ::std::string& _s = this_._internal_destination();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.destination");
      target = stream->WriteStringMaybeAliased(26, _s, target);
    }
  }

  // string profile_identifier = 27;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(27, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 28;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              28, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string tab_url = 29;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    if (!this_._internal_tab_url().empty()) {
      const ::std::string& _s = this_._internal_tab_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.tab_url");
      target = stream->WriteStringMaybeAliased(29, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 30;
  if (CheckHasBit(cached_has_bits, 0x02000000U)) {
    if (this_._internal_content_transfer_method() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          30, this_._internal_content_transfer_method(), target);
    }
  }

  // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 31;
  if (CheckHasBit(cached_has_bits, 0x04000000U)) {
    if (this_._internal_server_scan_status() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          31, this_._internal_server_scan_status(), target);
    }
  }

  // int64 server_scan_latency_millis = 32;
  if (CheckHasBit(cached_has_bits, 0x08000000U)) {
    if (this_._internal_server_scan_latency_millis() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteInt64ToArray(
          32, this_._internal_server_scan_latency_millis(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 33;
  if (CheckHasBit(cached_has_bits, 0x00040000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        33, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 34;
  if (CheckHasBit(cached_has_bits, 0x40000000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              34, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 35;
  if (CheckHasBit(cached_has_bits, 0x80000000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_risk_infos_size());
         i < n; i++) {
      const auto& repfield = this_._internal_risk_infos().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              35, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.RiskLevel risk_level = 36;
  if (CheckHasBit(cached_has_bits, 0x10000000U)) {
    if (this_._internal_risk_level() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          36, this_._internal_risk_level(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
  if (CheckHasBit(cached_has_bits, 0x00080000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        37, *this_._impl_.tab_url_info_, this_._impl_.tab_url_info_->GetCachedSize(), target,
        stream);
  }

  // string pehash_sha256 = 38;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    if (!this_._internal_pehash_sha256().empty()) {
      const ::std::string& _s = this_._internal_pehash_sha256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.pehash_sha256");
      target = stream->WriteStringMaybeAliased(38, _s, target);
    }
  }

  // bool is_encrypted = 39;
  if (CheckHasBit(cached_has_bits, 0x20000000U)) {
    if (this_._internal_is_encrypted() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          39, this_._internal_is_encrypted(), target);
    }
  }

  cached_has_bits = this_._impl_._has_bits_[1];
  // repeated string iframe_urls = 40;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_iframe_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_iframe_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.iframe_urls");
      target = stream->WriteString(40, 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:chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referral_urls = 17;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          2 * ::google::protobuf::internal::FromIntSize(this_._internal_referral_urls().size());
      for (int i = 0, n = this_._internal_referral_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referral_urls().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 28;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string file_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_file_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_file_name());
      }
    }
    // string download_digest_sha256 = 3;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_download_digest_sha256().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_download_digest_sha256());
      }
    }
    // string profile_user_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string content_name = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_content_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content_name());
      }
    }
    // string content_type = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_content_type().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content_type());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    // string user_justification = 20;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!this_._internal_user_justification().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_user_justification());
      }
    }
    // string malware_category = 21;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!this_._internal_malware_category().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_malware_category());
      }
    }
    // string malware_family = 22;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!this_._internal_malware_family().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_malware_family());
      }
    }
    // string evidence_locker_filepath = 23;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!this_._internal_evidence_locker_filepath().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_evidence_locker_filepath());
      }
    }
    // string scan_id = 24;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!this_._internal_scan_id().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_scan_id());
      }
    }
    // string source = 25;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!this_._internal_source().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source());
      }
    }
    // string destination = 26;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!this_._internal_destination().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_destination());
      }
    }
    // string profile_identifier = 27;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    // string tab_url = 29;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!this_._internal_tab_url().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_url());
      }
    }
    // string pehash_sha256 = 38;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (!this_._internal_pehash_sha256().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_pehash_sha256());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 33;
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.tab_url_info_);
    }
    // .chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent.DangerousDownloadThreatType threat_type = 6;
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (this_._internal_threat_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_threat_type());
      }
    }
    // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 10;
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (this_._internal_trigger() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_trigger());
      }
    }
    // uint64 content_size = 9;
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (this_._internal_content_size() != 0) {
        total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
            this_._internal_content_size());
      }
    }
    // bool clicked_through = 18;
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 3;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    // .chrome.cros.reporting.proto.EventResult event_result = 19;
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 30;
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      if (this_._internal_content_transfer_method() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_content_transfer_method());
      }
    }
    // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 31;
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      if (this_._internal_server_scan_status() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_server_scan_status());
      }
    }
    // int64 server_scan_latency_millis = 32;
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      if (this_._internal_server_scan_latency_millis() != 0) {
        total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                        this_._internal_server_scan_latency_millis());
      }
    }
    // .chrome.cros.reporting.proto.RiskLevel risk_level = 36;
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      if (this_._internal_risk_level() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_risk_level());
      }
    }
    // bool is_encrypted = 39;
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      if (this_._internal_is_encrypted() != 0) {
        total_size += 3;
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 34;
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 35;
    if (CheckHasBit(cached_has_bits, 0x80000000U)) {
      total_size += 2UL * this_._internal_risk_infos_size();
      for (const auto& msg : this_._internal_risk_infos()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
   {
    // repeated string iframe_urls = 40;
    cached_has_bits = this_._impl_._has_bits_[1];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          2 * ::google::protobuf::internal::FromIntSize(this_._internal_iframe_urls().size());
      for (int i = 0, n = this_._internal_iframe_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_iframe_urls().Get(i));
      }
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referral_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referral_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_file_name().empty()) {
        _this->_internal_set_file_name(from._internal_file_name());
      } else {
        if (_this->_impl_.file_name_.IsDefault()) {
          _this->_internal_set_file_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_download_digest_sha256().empty()) {
        _this->_internal_set_download_digest_sha256(from._internal_download_digest_sha256());
      } else {
        if (_this->_impl_.download_digest_sha256_.IsDefault()) {
          _this->_internal_set_download_digest_sha256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_content_name().empty()) {
        _this->_internal_set_content_name(from._internal_content_name());
      } else {
        if (_this->_impl_.content_name_.IsDefault()) {
          _this->_internal_set_content_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_content_type().empty()) {
        _this->_internal_set_content_type(from._internal_content_type());
      } else {
        if (_this->_impl_.content_type_.IsDefault()) {
          _this->_internal_set_content_type("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!from._internal_user_justification().empty()) {
        _this->_internal_set_user_justification(from._internal_user_justification());
      } else {
        if (_this->_impl_.user_justification_.IsDefault()) {
          _this->_internal_set_user_justification("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!from._internal_malware_category().empty()) {
        _this->_internal_set_malware_category(from._internal_malware_category());
      } else {
        if (_this->_impl_.malware_category_.IsDefault()) {
          _this->_internal_set_malware_category("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!from._internal_malware_family().empty()) {
        _this->_internal_set_malware_family(from._internal_malware_family());
      } else {
        if (_this->_impl_.malware_family_.IsDefault()) {
          _this->_internal_set_malware_family("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!from._internal_evidence_locker_filepath().empty()) {
        _this->_internal_set_evidence_locker_filepath(from._internal_evidence_locker_filepath());
      } else {
        if (_this->_impl_.evidence_locker_filepath_.IsDefault()) {
          _this->_internal_set_evidence_locker_filepath("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!from._internal_scan_id().empty()) {
        _this->_internal_set_scan_id(from._internal_scan_id());
      } else {
        if (_this->_impl_.scan_id_.IsDefault()) {
          _this->_internal_set_scan_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!from._internal_source().empty()) {
        _this->_internal_set_source(from._internal_source());
      } else {
        if (_this->_impl_.source_.IsDefault()) {
          _this->_internal_set_source("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!from._internal_destination().empty()) {
        _this->_internal_set_destination(from._internal_destination());
      } else {
        if (_this->_impl_.destination_.IsDefault()) {
          _this->_internal_set_destination("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!from._internal_tab_url().empty()) {
        _this->_internal_set_tab_url(from._internal_tab_url());
      } else {
        if (_this->_impl_.tab_url_.IsDefault()) {
          _this->_internal_set_tab_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (!from._internal_pehash_sha256().empty()) {
        _this->_internal_set_pehash_sha256(from._internal_pehash_sha256());
      } else {
        if (_this->_impl_.pehash_sha256_.IsDefault()) {
          _this->_internal_set_pehash_sha256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      ABSL_DCHECK(from._impl_.tab_url_info_ != nullptr);
      if (_this->_impl_.tab_url_info_ == nullptr) {
        _this->_impl_.tab_url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_);
      } else {
        _this->_impl_.tab_url_info_->MergeFrom(*from._impl_.tab_url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (from._internal_threat_type() != 0) {
        _this->_impl_.threat_type_ = from._impl_.threat_type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (from._internal_trigger() != 0) {
        _this->_impl_.trigger_ = from._impl_.trigger_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (from._internal_content_size() != 0) {
        _this->_impl_.content_size_ = from._impl_.content_size_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      if (from._internal_content_transfer_method() != 0) {
        _this->_impl_.content_transfer_method_ = from._impl_.content_transfer_method_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      if (from._internal_server_scan_status() != 0) {
        _this->_impl_.server_scan_status_ = from._impl_.server_scan_status_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      if (from._internal_server_scan_latency_millis() != 0) {
        _this->_impl_.server_scan_latency_millis_ = from._impl_.server_scan_latency_millis_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      if (from._internal_risk_level() != 0) {
        _this->_impl_.risk_level_ = from._impl_.risk_level_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      if (from._internal_is_encrypted() != 0) {
        _this->_impl_.is_encrypted_ = from._impl_.is_encrypted_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x80000000U)) {
      _this->_internal_mutable_risk_infos()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_infos());
    }
  }
  cached_has_bits = from._impl_._has_bits_[1];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_internal_mutable_iframe_urls()->InternalMergeFromWithArena(
        ::google::protobuf::MessageLite::internal_visibility(), arena,
        from._internal_iframe_urls());
  }
  _this->_impl_._has_bits_.Or(from._impl_._has_bits_);
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SafeBrowsingDangerousDownloadEvent::CopyFrom(const SafeBrowsingDangerousDownloadEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SafeBrowsingDangerousDownloadEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void SafeBrowsingDangerousDownloadEvent::InternalSwap(SafeBrowsingDangerousDownloadEvent* 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]);
  swap(_impl_._has_bits_[1], other->_impl_._has_bits_[1]);
  _impl_.referral_urls_.InternalSwap(&other->_impl_.referral_urls_);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_name_, &other->_impl_.file_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.download_digest_sha256_, &other->_impl_.download_digest_sha256_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.content_name_, &other->_impl_.content_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.content_type_, &other->_impl_.content_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.user_justification_, &other->_impl_.user_justification_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.malware_category_, &other->_impl_.malware_category_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.malware_family_, &other->_impl_.malware_family_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.evidence_locker_filepath_, &other->_impl_.evidence_locker_filepath_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.scan_id_, &other->_impl_.scan_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_, &other->_impl_.source_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.destination_, &other->_impl_.destination_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_url_, &other->_impl_.tab_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.pehash_sha256_, &other->_impl_.pehash_sha256_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.is_encrypted_)
      + sizeof(SafeBrowsingDangerousDownloadEvent::_impl_.is_encrypted_)
      - PROTOBUF_FIELD_OFFSET(SafeBrowsingDangerousDownloadEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  _impl_.risk_infos_.InternalSwap(&other->_impl_.risk_infos_);
  _impl_.iframe_urls_.InternalSwap(&other->_impl_.iframe_urls_);
}

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

SafeBrowsingInterstitialEvent::SafeBrowsingInterstitialEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SafeBrowsingInterstitialEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referral_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referral_urls_)>()
          , from.referral_urls_
        }
        ,
        url_(arena, from.url_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_),
        tab_title_(arena, from.tab_title_),
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referrers_)>()
          , from.referrers_
        }
     {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SafeBrowsingInterstitialEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00000020U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, net_error_code_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, net_error_code_),
           offsetof(Impl_, event_result_) -
               offsetof(Impl_, net_error_code_) +
               sizeof(Impl_::event_result_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
}
PROTOBUF_NDEBUG_INLINE SafeBrowsingInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referral_urls_)>()
         }
        ,
        url_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena),
        tab_title_(arena),
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SafeBrowsingInterstitialEvent, _impl_.referrers_)>()
         }
     {}

inline void SafeBrowsingInterstitialEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, event_result_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::event_result_));
}
SafeBrowsingInterstitialEvent::~SafeBrowsingInterstitialEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
  SharedDtor(*this);
}
inline void SafeBrowsingInterstitialEvent::SharedDtor(MessageLite& self) {
  SafeBrowsingInterstitialEvent& this_ = static_cast<SafeBrowsingInterstitialEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.url_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.tab_title_.Destroy();
  delete this_._impl_.url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SafeBrowsingInterstitialEvent_class_data_ =
    SafeBrowsingInterstitialEvent::InternalGenerateClassData_(SafeBrowsingInterstitialEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referral_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.tab_title_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000c0U)) {
    ::memset(&_impl_.net_error_code_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.clicked_through_) -
        reinterpret_cast<char*>(&_impl_.net_error_code_)) + sizeof(_impl_.clicked_through_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00001f00U)) {
    ::memset(&_impl_.threat_type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.event_result_) -
        reinterpret_cast<char*>(&_impl_.threat_type_)) + sizeof(_impl_.event_result_));
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _impl_.referrers_.Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // int32 net_error_code = 3;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (this_._internal_net_error_code() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<3>(
              stream, this_._internal_net_error_code(), target);
    }
  }

  // string profile_user_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // bool clicked_through = 5;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          5, this_._internal_clicked_through(), target);
    }
  }

  // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialThreatType threat_type = 7;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (this_._internal_threat_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          7, this_._internal_threat_type(), target);
    }
  }

  // repeated string referral_urls = 14;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referral_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referral_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.referral_urls");
      target = stream->WriteString(14, s, target);
    }
  }

  // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialReason reason = 16;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (this_._internal_reason() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          16, this_._internal_reason(), target);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 17;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          17, this_._internal_event_result(), target);
    }
  }

  // string profile_identifier = 18;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(18, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 19;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              19, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 20;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        20, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 21;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              21, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string tab_title = 22;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_tab_title().empty()) {
      const ::std::string& _s = this_._internal_tab_title();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.tab_title");
      target = stream->WriteStringMaybeAliased(22, _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:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referral_urls = 14;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_referral_urls().size());
      for (int i = 0, n = this_._internal_referral_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referral_urls().Get(i));
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string profile_user_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 18;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // string tab_title = 22;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_tab_title().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_title());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 20;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // int32 net_error_code = 3;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (this_._internal_net_error_code() != 0) {
        total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
            this_._internal_net_error_code());
      }
    }
    // bool clicked_through = 5;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 2;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00001f00U)) {
    // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialThreatType threat_type = 7;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (this_._internal_threat_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_threat_type());
      }
    }
    // .chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent.InterstitialReason reason = 16;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (this_._internal_reason() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_reason());
      }
    }
    // .chrome.cros.reporting.proto.EventResult event_result = 17;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 19;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += 2UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 21;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
  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 SafeBrowsingInterstitialEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SafeBrowsingInterstitialEvent*>(&to_msg);
  auto& from = static_cast<const SafeBrowsingInterstitialEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referral_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referral_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_tab_title().empty()) {
        _this->_internal_set_tab_title(from._internal_tab_title());
      } else {
        if (_this->_impl_.tab_title_.IsDefault()) {
          _this->_internal_set_tab_title("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (from._internal_net_error_code() != 0) {
        _this->_impl_.net_error_code_ = from._impl_.net_error_code_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00001f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (from._internal_threat_type() != 0) {
        _this->_impl_.threat_type_ = from._impl_.threat_type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (from._internal_reason() != 0) {
        _this->_impl_.reason_ = from._impl_.reason_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SafeBrowsingInterstitialEvent::CopyFrom(const SafeBrowsingInterstitialEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SafeBrowsingInterstitialEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void SafeBrowsingInterstitialEvent::InternalSwap(SafeBrowsingInterstitialEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.referral_urls_.InternalSwap(&other->_impl_.referral_urls_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_title_, &other->_impl_.tab_title_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.event_result_)
      + sizeof(SafeBrowsingInterstitialEvent::_impl_.event_result_)
      - PROTOBUF_FIELD_OFFSET(SafeBrowsingInterstitialEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
}

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

DlpSensitiveDataEvent::DlpSensitiveDataEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, DlpSensitiveDataEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.DlpSensitiveDataEvent)
}
PROTOBUF_NDEBUG_INLINE DlpSensitiveDataEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::DlpSensitiveDataEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referral_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referral_urls_)>()
          , from.referral_urls_
        }
        ,
        triggered_rule_info_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.triggered_rule_info_)>()
          , from.triggered_rule_info_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        file_name_(arena, from.file_name_),
        content_type_(arena, from.content_type_),
        download_digest_sha_256_(arena, from.download_digest_sha_256_),
        url_(arena, from.url_),
        profile_user_name_(arena, from.profile_user_name_),
        user_justification_(arena, from.user_justification_),
        evidence_locker_filepath_(arena, from.evidence_locker_filepath_),
        scan_id_(arena, from.scan_id_),
        source_(arena, from.source_),
        destination_(arena, from.destination_),
        profile_identifier_(arena, from.profile_identifier_),
        tab_url_(arena, from.tab_url_),
        web_app_signed_in_account_(arena, from.web_app_signed_in_account_),
        source_web_app_signed_in_account_(arena, from.source_web_app_signed_in_account_),
        microsoft_sensitivity_label_name_(arena, from.microsoft_sensitivity_label_name_),
        source_microsoft_sensitivity_label_name_(arena, from.source_microsoft_sensitivity_label_name_),
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        iframe_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.iframe_urls_)>()
          , from.iframe_urls_
        }
     {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  DlpSensitiveDataEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00080000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  _impl_.tab_url_info_ = (CheckHasBit(cached_has_bits, 0x00100000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, content_size_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, content_size_),
           offsetof(Impl_, server_scan_latency_millis_) -
               offsetof(Impl_, content_size_) +
               sizeof(Impl_::server_scan_latency_millis_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.DlpSensitiveDataEvent)
}
PROTOBUF_NDEBUG_INLINE DlpSensitiveDataEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referral_urls_)>()
         }
        ,
        triggered_rule_info_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.triggered_rule_info_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.security_agents_)>()
         }
        ,
        file_name_(arena),
        content_type_(arena),
        download_digest_sha_256_(arena),
        url_(arena),
        profile_user_name_(arena),
        user_justification_(arena),
        evidence_locker_filepath_(arena),
        scan_id_(arena),
        source_(arena),
        destination_(arena),
        profile_identifier_(arena),
        tab_url_(arena),
        web_app_signed_in_account_(arena),
        source_web_app_signed_in_account_(arena),
        microsoft_sensitivity_label_name_(arena),
        source_microsoft_sensitivity_label_name_(arena),
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.referrers_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::DlpSensitiveDataEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::DlpSensitiveDataEvent, _impl_.iframe_urls_)>()
         }
     {}

inline void DlpSensitiveDataEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, server_scan_latency_millis_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::server_scan_latency_millis_));
}
DlpSensitiveDataEvent::~DlpSensitiveDataEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.DlpSensitiveDataEvent)
  SharedDtor(*this);
}
inline void DlpSensitiveDataEvent::SharedDtor(MessageLite& self) {
  DlpSensitiveDataEvent& this_ = static_cast<DlpSensitiveDataEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.file_name_.Destroy();
  this_._impl_.content_type_.Destroy();
  this_._impl_.download_digest_sha_256_.Destroy();
  this_._impl_.url_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.user_justification_.Destroy();
  this_._impl_.evidence_locker_filepath_.Destroy();
  this_._impl_.scan_id_.Destroy();
  this_._impl_.source_.Destroy();
  this_._impl_.destination_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.tab_url_.Destroy();
  this_._impl_.web_app_signed_in_account_.Destroy();
  this_._impl_.source_web_app_signed_in_account_.Destroy();
  this_._impl_.microsoft_sensitivity_label_name_.Destroy();
  this_._impl_.source_microsoft_sensitivity_label_name_.Destroy();
  delete this_._impl_.url_info_;
  delete this_._impl_.tab_url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite DlpSensitiveDataEvent_class_data_ =
    DlpSensitiveDataEvent::InternalGenerateClassData_(DlpSensitiveDataEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referral_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.triggered_rule_info_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.file_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.content_type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.download_digest_sha_256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.user_justification_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _impl_.evidence_locker_filepath_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.scan_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.source_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _impl_.destination_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _impl_.tab_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _impl_.web_app_signed_in_account_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x001f0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      _impl_.source_web_app_signed_in_account_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      _impl_.microsoft_sensitivity_label_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      _impl_.source_microsoft_sensitivity_label_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      ABSL_DCHECK(_impl_.tab_url_info_ != nullptr);
      _impl_.tab_url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00e00000U)) {
    ::memset(&_impl_.content_size_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.clicked_through_) -
        reinterpret_cast<char*>(&_impl_.content_size_)) + sizeof(_impl_.clicked_through_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x7f000000U)) {
    ::memset(&_impl_.reporting_target_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.server_scan_latency_millis_) -
        reinterpret_cast<char*>(&_impl_.reporting_target_)) + sizeof(_impl_.server_scan_latency_millis_));
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      _impl_.iframe_urls_.Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string file_name = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_file_name().empty()) {
      const ::std::string& _s = this_._internal_file_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.file_name");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string content_type = 2;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_content_type().empty()) {
      const ::std::string& _s = this_._internal_content_type();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.content_type");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // uint64 content_size = 3;
  if (CheckHasBit(cached_has_bits, 0x00200000U)) {
    if (this_._internal_content_size() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          3, this_._internal_content_size(), target);
    }
  }

  // string download_digest_sha_256 = 4;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_download_digest_sha_256().empty()) {
      const ::std::string& _s = this_._internal_download_digest_sha_256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.download_digest_sha_256");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
  if (CheckHasBit(cached_has_bits, 0x00400000U)) {
    if (this_._internal_trigger() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          5, this_._internal_trigger(), target);
    }
  }

  // bool clicked_through = 7;
  if (CheckHasBit(cached_has_bits, 0x00800000U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          7, this_._internal_clicked_through(), target);
    }
  }

  // string url = 8;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.url");
      target = stream->WriteStringMaybeAliased(8, _s, target);
    }
  }

  // string profile_user_name = 14;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(14, _s, target);
    }
  }

  // repeated string referral_urls = 16;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referral_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referral_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.referral_urls");
      target = stream->WriteString(16, s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 17;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_triggered_rule_info_size());
         i < n; i++) {
      const auto& repfield = this_._internal_triggered_rule_info().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              17, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 18;
  if (CheckHasBit(cached_has_bits, 0x01000000U)) {
    if (this_._internal_reporting_target() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          18, this_._internal_reporting_target(), target);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 19;
  if (CheckHasBit(cached_has_bits, 0x02000000U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          19, this_._internal_event_result(), target);
    }
  }

  // string user_justification = 20;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (!this_._internal_user_justification().empty()) {
      const ::std::string& _s = this_._internal_user_justification();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.user_justification");
      target = stream->WriteStringMaybeAliased(20, _s, target);
    }
  }

  // string evidence_locker_filepath = 21;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (!this_._internal_evidence_locker_filepath().empty()) {
      const ::std::string& _s = this_._internal_evidence_locker_filepath();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.evidence_locker_filepath");
      target = stream->WriteStringMaybeAliased(21, _s, target);
    }
  }

  // string scan_id = 22;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (!this_._internal_scan_id().empty()) {
      const ::std::string& _s = this_._internal_scan_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.scan_id");
      target = stream->WriteStringMaybeAliased(22, _s, target);
    }
  }

  // string source = 23;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    if (!this_._internal_source().empty()) {
      const ::std::string& _s = this_._internal_source();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.source");
      target = stream->WriteStringMaybeAliased(23, _s, target);
    }
  }

  // string destination = 24;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (!this_._internal_destination().empty()) {
      const ::std::string& _s = this_._internal_destination();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.destination");
      target = stream->WriteStringMaybeAliased(24, _s, target);
    }
  }

  // string profile_identifier = 26;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(26, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 27;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              27, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string tab_url = 28;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    if (!this_._internal_tab_url().empty()) {
      const ::std::string& _s = this_._internal_tab_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.tab_url");
      target = stream->WriteStringMaybeAliased(28, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 29;
  if (CheckHasBit(cached_has_bits, 0x04000000U)) {
    if (this_._internal_content_transfer_method() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          29, this_._internal_content_transfer_method(), target);
    }
  }

  // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 30;
  if (CheckHasBit(cached_has_bits, 0x08000000U)) {
    if (this_._internal_server_scan_status() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          30, this_._internal_server_scan_status(), target);
    }
  }

  // int64 server_scan_latency_millis = 31;
  if (CheckHasBit(cached_has_bits, 0x10000000U)) {
    if (this_._internal_server_scan_latency_millis() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteInt64ToArray(
          31, this_._internal_server_scan_latency_millis(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 32;
  if (CheckHasBit(cached_has_bits, 0x00080000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        32, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 33;
  if (CheckHasBit(cached_has_bits, 0x20000000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              33, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated string iframe_urls = 34;
  if (CheckHasBit(cached_has_bits, 0x40000000U)) {
    for (int i = 0, n = this_._internal_iframe_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_iframe_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.iframe_urls");
      target = stream->WriteString(34, s, target);
    }
  }

  // string web_app_signed_in_account = 35;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    if (!this_._internal_web_app_signed_in_account().empty()) {
      const ::std::string& _s = this_._internal_web_app_signed_in_account();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.web_app_signed_in_account");
      target = stream->WriteStringMaybeAliased(35, _s, target);
    }
  }

  // string source_web_app_signed_in_account = 36;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    if (!this_._internal_source_web_app_signed_in_account().empty()) {
      const ::std::string& _s = this_._internal_source_web_app_signed_in_account();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.source_web_app_signed_in_account");
      target = stream->WriteStringMaybeAliased(36, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
  if (CheckHasBit(cached_has_bits, 0x00100000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        37, *this_._impl_.tab_url_info_, this_._impl_.tab_url_info_->GetCachedSize(), target,
        stream);
  }

  // string microsoft_sensitivity_label_name = 38;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    if (!this_._internal_microsoft_sensitivity_label_name().empty()) {
      const ::std::string& _s = this_._internal_microsoft_sensitivity_label_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.microsoft_sensitivity_label_name");
      target = stream->WriteStringMaybeAliased(38, _s, target);
    }
  }

  // string source_microsoft_sensitivity_label_name = 39;
  if (CheckHasBit(cached_has_bits, 0x00040000U)) {
    if (!this_._internal_source_microsoft_sensitivity_label_name().empty()) {
      const ::std::string& _s = this_._internal_source_microsoft_sensitivity_label_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.DlpSensitiveDataEvent.source_microsoft_sensitivity_label_name");
      target = stream->WriteStringMaybeAliased(39, _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:chrome.cros.reporting.proto.DlpSensitiveDataEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referral_urls = 16;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          2 * ::google::protobuf::internal::FromIntSize(this_._internal_referral_urls().size());
      for (int i = 0, n = this_._internal_referral_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referral_urls().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 17;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2UL * this_._internal_triggered_rule_info_size();
      for (const auto& msg : this_._internal_triggered_rule_info()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 27;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string file_name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_file_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_file_name());
      }
    }
    // string content_type = 2;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_content_type().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content_type());
      }
    }
    // string download_digest_sha_256 = 4;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_download_digest_sha_256().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_download_digest_sha_256());
      }
    }
    // string url = 8;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string profile_user_name = 14;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    // string user_justification = 20;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!this_._internal_user_justification().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_user_justification());
      }
    }
    // string evidence_locker_filepath = 21;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!this_._internal_evidence_locker_filepath().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_evidence_locker_filepath());
      }
    }
    // string scan_id = 22;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!this_._internal_scan_id().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_scan_id());
      }
    }
    // string source = 23;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!this_._internal_source().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source());
      }
    }
    // string destination = 24;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!this_._internal_destination().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_destination());
      }
    }
    // string profile_identifier = 26;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // string tab_url = 28;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!this_._internal_tab_url().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_url());
      }
    }
    // string web_app_signed_in_account = 35;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!this_._internal_web_app_signed_in_account().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_web_app_signed_in_account());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    // string source_web_app_signed_in_account = 36;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!this_._internal_source_web_app_signed_in_account().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source_web_app_signed_in_account());
      }
    }
    // string microsoft_sensitivity_label_name = 38;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (!this_._internal_microsoft_sensitivity_label_name().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_microsoft_sensitivity_label_name());
      }
    }
    // string source_microsoft_sensitivity_label_name = 39;
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      if (!this_._internal_source_microsoft_sensitivity_label_name().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source_microsoft_sensitivity_label_name());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 32;
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 37;
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.tab_url_info_);
    }
    // uint64 content_size = 3;
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (this_._internal_content_size() != 0) {
        total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
            this_._internal_content_size());
      }
    }
    // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (this_._internal_trigger() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_trigger());
      }
    }
    // bool clicked_through = 7;
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 2;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x7f000000U)) {
    // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 18;
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      if (this_._internal_reporting_target() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_reporting_target());
      }
    }
    // .chrome.cros.reporting.proto.EventResult event_result = 19;
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 29;
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      if (this_._internal_content_transfer_method() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_content_transfer_method());
      }
    }
    // .chrome.cros.reporting.proto.ServerScanStatus server_scan_status = 30;
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      if (this_._internal_server_scan_status() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_server_scan_status());
      }
    }
    // int64 server_scan_latency_millis = 31;
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      if (this_._internal_server_scan_latency_millis() != 0) {
        total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                        this_._internal_server_scan_latency_millis());
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 33;
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string iframe_urls = 34;
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      total_size +=
          2 * ::google::protobuf::internal::FromIntSize(this_._internal_iframe_urls().size());
      for (int i = 0, n = this_._internal_iframe_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_iframe_urls().Get(i));
      }
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referral_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referral_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_triggered_rule_info()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_triggered_rule_info());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_file_name().empty()) {
        _this->_internal_set_file_name(from._internal_file_name());
      } else {
        if (_this->_impl_.file_name_.IsDefault()) {
          _this->_internal_set_file_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_content_type().empty()) {
        _this->_internal_set_content_type(from._internal_content_type());
      } else {
        if (_this->_impl_.content_type_.IsDefault()) {
          _this->_internal_set_content_type("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_download_digest_sha_256().empty()) {
        _this->_internal_set_download_digest_sha_256(from._internal_download_digest_sha_256());
      } else {
        if (_this->_impl_.download_digest_sha_256_.IsDefault()) {
          _this->_internal_set_download_digest_sha_256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!from._internal_user_justification().empty()) {
        _this->_internal_set_user_justification(from._internal_user_justification());
      } else {
        if (_this->_impl_.user_justification_.IsDefault()) {
          _this->_internal_set_user_justification("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!from._internal_evidence_locker_filepath().empty()) {
        _this->_internal_set_evidence_locker_filepath(from._internal_evidence_locker_filepath());
      } else {
        if (_this->_impl_.evidence_locker_filepath_.IsDefault()) {
          _this->_internal_set_evidence_locker_filepath("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!from._internal_scan_id().empty()) {
        _this->_internal_set_scan_id(from._internal_scan_id());
      } else {
        if (_this->_impl_.scan_id_.IsDefault()) {
          _this->_internal_set_scan_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!from._internal_source().empty()) {
        _this->_internal_set_source(from._internal_source());
      } else {
        if (_this->_impl_.source_.IsDefault()) {
          _this->_internal_set_source("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!from._internal_destination().empty()) {
        _this->_internal_set_destination(from._internal_destination());
      } else {
        if (_this->_impl_.destination_.IsDefault()) {
          _this->_internal_set_destination("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!from._internal_tab_url().empty()) {
        _this->_internal_set_tab_url(from._internal_tab_url());
      } else {
        if (_this->_impl_.tab_url_.IsDefault()) {
          _this->_internal_set_tab_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!from._internal_web_app_signed_in_account().empty()) {
        _this->_internal_set_web_app_signed_in_account(from._internal_web_app_signed_in_account());
      } else {
        if (_this->_impl_.web_app_signed_in_account_.IsDefault()) {
          _this->_internal_set_web_app_signed_in_account("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!from._internal_source_web_app_signed_in_account().empty()) {
        _this->_internal_set_source_web_app_signed_in_account(from._internal_source_web_app_signed_in_account());
      } else {
        if (_this->_impl_.source_web_app_signed_in_account_.IsDefault()) {
          _this->_internal_set_source_web_app_signed_in_account("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (!from._internal_microsoft_sensitivity_label_name().empty()) {
        _this->_internal_set_microsoft_sensitivity_label_name(from._internal_microsoft_sensitivity_label_name());
      } else {
        if (_this->_impl_.microsoft_sensitivity_label_name_.IsDefault()) {
          _this->_internal_set_microsoft_sensitivity_label_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      if (!from._internal_source_microsoft_sensitivity_label_name().empty()) {
        _this->_internal_set_source_microsoft_sensitivity_label_name(from._internal_source_microsoft_sensitivity_label_name());
      } else {
        if (_this->_impl_.source_microsoft_sensitivity_label_name_.IsDefault()) {
          _this->_internal_set_source_microsoft_sensitivity_label_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      ABSL_DCHECK(from._impl_.tab_url_info_ != nullptr);
      if (_this->_impl_.tab_url_info_ == nullptr) {
        _this->_impl_.tab_url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_);
      } else {
        _this->_impl_.tab_url_info_->MergeFrom(*from._impl_.tab_url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (from._internal_content_size() != 0) {
        _this->_impl_.content_size_ = from._impl_.content_size_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (from._internal_trigger() != 0) {
        _this->_impl_.trigger_ = from._impl_.trigger_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x7f000000U)) {
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      if (from._internal_reporting_target() != 0) {
        _this->_impl_.reporting_target_ = from._impl_.reporting_target_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      if (from._internal_content_transfer_method() != 0) {
        _this->_impl_.content_transfer_method_ = from._impl_.content_transfer_method_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      if (from._internal_server_scan_status() != 0) {
        _this->_impl_.server_scan_status_ = from._impl_.server_scan_status_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      if (from._internal_server_scan_latency_millis() != 0) {
        _this->_impl_.server_scan_latency_millis_ = from._impl_.server_scan_latency_millis_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      _this->_internal_mutable_iframe_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_iframe_urls());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void DlpSensitiveDataEvent::CopyFrom(const DlpSensitiveDataEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.DlpSensitiveDataEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void DlpSensitiveDataEvent::InternalSwap(DlpSensitiveDataEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.referral_urls_.InternalSwap(&other->_impl_.referral_urls_);
  _impl_.triggered_rule_info_.InternalSwap(&other->_impl_.triggered_rule_info_);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_name_, &other->_impl_.file_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.content_type_, &other->_impl_.content_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.download_digest_sha_256_, &other->_impl_.download_digest_sha_256_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.user_justification_, &other->_impl_.user_justification_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.evidence_locker_filepath_, &other->_impl_.evidence_locker_filepath_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.scan_id_, &other->_impl_.scan_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_, &other->_impl_.source_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.destination_, &other->_impl_.destination_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_url_, &other->_impl_.tab_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.web_app_signed_in_account_, &other->_impl_.web_app_signed_in_account_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_web_app_signed_in_account_, &other->_impl_.source_web_app_signed_in_account_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.microsoft_sensitivity_label_name_, &other->_impl_.microsoft_sensitivity_label_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_microsoft_sensitivity_label_name_, &other->_impl_.source_microsoft_sensitivity_label_name_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.server_scan_latency_millis_)
      + sizeof(DlpSensitiveDataEvent::_impl_.server_scan_latency_millis_)
      - PROTOBUF_FIELD_OFFSET(DlpSensitiveDataEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  _impl_.iframe_urls_.InternalSwap(&other->_impl_.iframe_urls_);
}

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

UnscannedFileEvent::UnscannedFileEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, UnscannedFileEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.UnscannedFileEvent)
}
PROTOBUF_NDEBUG_INLINE UnscannedFileEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::UnscannedFileEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referral_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UnscannedFileEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referral_urls_)>()
          , from.referral_urls_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UnscannedFileEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UnscannedFileEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        file_name_(arena, from.file_name_),
        content_type_(arena, from.content_type_),
        download_digest_sha_256_(arena, from.download_digest_sha_256_),
        url_(arena, from.url_),
        reason_(arena, from.reason_),
        profile_user_name_(arena, from.profile_user_name_),
        source_(arena, from.source_),
        destination_(arena, from.destination_),
        profile_identifier_(arena, from.profile_identifier_),
        tab_url_(arena, from.tab_url_),
        scan_id_(arena, from.scan_id_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  UnscannedFileEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00004000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  _impl_.tab_url_info_ = (CheckHasBit(cached_has_bits, 0x00008000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, content_size_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, content_size_),
           offsetof(Impl_, content_transfer_method_) -
               offsetof(Impl_, content_size_) +
               sizeof(Impl_::content_transfer_method_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.UnscannedFileEvent)
}
PROTOBUF_NDEBUG_INLINE UnscannedFileEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referral_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referral_urls_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UnscannedFileEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UnscannedFileEvent, _impl_.referrers_)>()
         }
        ,
        file_name_(arena),
        content_type_(arena),
        download_digest_sha_256_(arena),
        url_(arena),
        reason_(arena),
        profile_user_name_(arena),
        source_(arena),
        destination_(arena),
        profile_identifier_(arena),
        tab_url_(arena),
        scan_id_(arena) {}

inline void UnscannedFileEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, content_transfer_method_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::content_transfer_method_));
}
UnscannedFileEvent::~UnscannedFileEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.UnscannedFileEvent)
  SharedDtor(*this);
}
inline void UnscannedFileEvent::SharedDtor(MessageLite& self) {
  UnscannedFileEvent& this_ = static_cast<UnscannedFileEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.file_name_.Destroy();
  this_._impl_.content_type_.Destroy();
  this_._impl_.download_digest_sha_256_.Destroy();
  this_._impl_.url_.Destroy();
  this_._impl_.reason_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.source_.Destroy();
  this_._impl_.destination_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.tab_url_.Destroy();
  this_._impl_.scan_id_.Destroy();
  delete this_._impl_.url_info_;
  delete this_._impl_.tab_url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite UnscannedFileEvent_class_data_ =
    UnscannedFileEvent::InternalGenerateClassData_(UnscannedFileEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referral_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.file_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.content_type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.download_digest_sha_256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.reason_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _impl_.source_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.destination_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _impl_.tab_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _impl_.scan_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      ABSL_DCHECK(_impl_.tab_url_info_ != nullptr);
      _impl_.tab_url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x003f0000U)) {
    ::memset(&_impl_.content_size_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.content_transfer_method_) -
        reinterpret_cast<char*>(&_impl_.content_size_)) + sizeof(_impl_.content_transfer_method_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string file_name = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_file_name().empty()) {
      const ::std::string& _s = this_._internal_file_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.file_name");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string content_type = 2;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_content_type().empty()) {
      const ::std::string& _s = this_._internal_content_type();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.content_type");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // uint64 content_size = 3;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    if (this_._internal_content_size() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          3, this_._internal_content_size(), target);
    }
  }

  // string download_digest_sha_256 = 4;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_download_digest_sha_256().empty()) {
      const ::std::string& _s = this_._internal_download_digest_sha_256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.download_digest_sha_256");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    if (this_._internal_trigger() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          5, this_._internal_trigger(), target);
    }
  }

  // string url = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.url");
      target = stream->WriteStringMaybeAliased(7, _s, target);
    }
  }

  // string reason = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_reason().empty()) {
      const ::std::string& _s = this_._internal_reason();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.reason");
      target = stream->WriteStringMaybeAliased(8, _s, target);
    }
  }

  // string profile_user_name = 13;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(13, _s, target);
    }
  }

  // repeated string referral_urls = 15;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referral_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referral_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.referral_urls");
      target = stream->WriteString(15, s, target);
    }
  }

  // bool clicked_through = 16;
  if (CheckHasBit(cached_has_bits, 0x00040000U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          16, this_._internal_clicked_through(), target);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 17;
  if (CheckHasBit(cached_has_bits, 0x00080000U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          17, this_._internal_event_result(), target);
    }
  }

  // .chrome.cros.reporting.proto.UnscannedFileEvent.UnscannedReason unscanned_reason = 18;
  if (CheckHasBit(cached_has_bits, 0x00100000U)) {
    if (this_._internal_unscanned_reason() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          18, this_._internal_unscanned_reason(), target);
    }
  }

  // string source = 19;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (!this_._internal_source().empty()) {
      const ::std::string& _s = this_._internal_source();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.source");
      target = stream->WriteStringMaybeAliased(19, _s, target);
    }
  }

  // string destination = 20;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (!this_._internal_destination().empty()) {
      const ::std::string& _s = this_._internal_destination();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.destination");
      target = stream->WriteStringMaybeAliased(20, _s, target);
    }
  }

  // string profile_identifier = 21;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(21, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 22;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              22, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string tab_url = 23;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (!this_._internal_tab_url().empty()) {
      const ::std::string& _s = this_._internal_tab_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.tab_url");
      target = stream->WriteStringMaybeAliased(23, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 24;
  if (CheckHasBit(cached_has_bits, 0x00200000U)) {
    if (this_._internal_content_transfer_method() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          24, this_._internal_content_transfer_method(), target);
    }
  }

  // string scan_id = 25;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (!this_._internal_scan_id().empty()) {
      const ::std::string& _s = this_._internal_scan_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UnscannedFileEvent.scan_id");
      target = stream->WriteStringMaybeAliased(25, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 26;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        26, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 27;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              27, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 28;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        28, *this_._impl_.tab_url_info_, this_._impl_.tab_url_info_->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:chrome.cros.reporting.proto.UnscannedFileEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referral_urls = 15;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_referral_urls().size());
      for (int i = 0, n = this_._internal_referral_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referral_urls().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 22;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 27;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string file_name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_file_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_file_name());
      }
    }
    // string content_type = 2;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_content_type().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content_type());
      }
    }
    // string download_digest_sha_256 = 4;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_download_digest_sha_256().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_download_digest_sha_256());
      }
    }
    // string url = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string reason = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_reason().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_reason());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    // string profile_user_name = 13;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string source = 19;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!this_._internal_source().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source());
      }
    }
    // string destination = 20;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!this_._internal_destination().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_destination());
      }
    }
    // string profile_identifier = 21;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // string tab_url = 23;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!this_._internal_tab_url().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_url());
      }
    }
    // string scan_id = 25;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!this_._internal_scan_id().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_scan_id());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 26;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 28;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.tab_url_info_);
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x003f0000U)) {
    // uint64 content_size = 3;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (this_._internal_content_size() != 0) {
        total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
            this_._internal_content_size());
      }
    }
    // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 5;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (this_._internal_trigger() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_trigger());
      }
    }
    // bool clicked_through = 16;
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 3;
      }
    }
    // .chrome.cros.reporting.proto.EventResult event_result = 17;
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // .chrome.cros.reporting.proto.UnscannedFileEvent.UnscannedReason unscanned_reason = 18;
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (this_._internal_unscanned_reason() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_unscanned_reason());
      }
    }
    // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 24;
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (this_._internal_content_transfer_method() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_content_transfer_method());
      }
    }
  }
  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 UnscannedFileEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<UnscannedFileEvent*>(&to_msg);
  auto& from = static_cast<const UnscannedFileEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.UnscannedFileEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referral_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referral_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_file_name().empty()) {
        _this->_internal_set_file_name(from._internal_file_name());
      } else {
        if (_this->_impl_.file_name_.IsDefault()) {
          _this->_internal_set_file_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_content_type().empty()) {
        _this->_internal_set_content_type(from._internal_content_type());
      } else {
        if (_this->_impl_.content_type_.IsDefault()) {
          _this->_internal_set_content_type("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_download_digest_sha_256().empty()) {
        _this->_internal_set_download_digest_sha_256(from._internal_download_digest_sha_256());
      } else {
        if (_this->_impl_.download_digest_sha_256_.IsDefault()) {
          _this->_internal_set_download_digest_sha_256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_reason().empty()) {
        _this->_internal_set_reason(from._internal_reason());
      } else {
        if (_this->_impl_.reason_.IsDefault()) {
          _this->_internal_set_reason("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!from._internal_source().empty()) {
        _this->_internal_set_source(from._internal_source());
      } else {
        if (_this->_impl_.source_.IsDefault()) {
          _this->_internal_set_source("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!from._internal_destination().empty()) {
        _this->_internal_set_destination(from._internal_destination());
      } else {
        if (_this->_impl_.destination_.IsDefault()) {
          _this->_internal_set_destination("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!from._internal_tab_url().empty()) {
        _this->_internal_set_tab_url(from._internal_tab_url());
      } else {
        if (_this->_impl_.tab_url_.IsDefault()) {
          _this->_internal_set_tab_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!from._internal_scan_id().empty()) {
        _this->_internal_set_scan_id(from._internal_scan_id());
      } else {
        if (_this->_impl_.scan_id_.IsDefault()) {
          _this->_internal_set_scan_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      ABSL_DCHECK(from._impl_.tab_url_info_ != nullptr);
      if (_this->_impl_.tab_url_info_ == nullptr) {
        _this->_impl_.tab_url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_);
      } else {
        _this->_impl_.tab_url_info_->MergeFrom(*from._impl_.tab_url_info_);
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x003f0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (from._internal_content_size() != 0) {
        _this->_impl_.content_size_ = from._impl_.content_size_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      if (from._internal_trigger() != 0) {
        _this->_impl_.trigger_ = from._impl_.trigger_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (from._internal_unscanned_reason() != 0) {
        _this->_impl_.unscanned_reason_ = from._impl_.unscanned_reason_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (from._internal_content_transfer_method() != 0) {
        _this->_impl_.content_transfer_method_ = from._impl_.content_transfer_method_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void UnscannedFileEvent::CopyFrom(const UnscannedFileEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.UnscannedFileEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void UnscannedFileEvent::InternalSwap(UnscannedFileEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.referral_urls_.InternalSwap(&other->_impl_.referral_urls_);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_name_, &other->_impl_.file_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.content_type_, &other->_impl_.content_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.download_digest_sha_256_, &other->_impl_.download_digest_sha_256_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.reason_, &other->_impl_.reason_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_, &other->_impl_.source_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.destination_, &other->_impl_.destination_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_url_, &other->_impl_.tab_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.scan_id_, &other->_impl_.scan_id_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.content_transfer_method_)
      + sizeof(UnscannedFileEvent::_impl_.content_transfer_method_)
      - PROTOBUF_FIELD_OFFSET(UnscannedFileEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
}

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

ContentTransferEvent::ContentTransferEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, ContentTransferEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.ContentTransferEvent)
}
PROTOBUF_NDEBUG_INLINE ContentTransferEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::ContentTransferEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        matched_detectors_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::ContentTransferEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.matched_detectors_)>()
          , from.matched_detectors_
        }
        ,
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::ContentTransferEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        risk_infos_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::ContentTransferEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.risk_infos_)>()
          , from.risk_infos_
        }
        ,
        iframe_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::ContentTransferEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.iframe_urls_)>()
          , from.iframe_urls_
        }
        ,
        scan_id_(arena, from.scan_id_),
        profile_user_name_(arena, from.profile_user_name_),
        url_(arena, from.url_),
        file_name_(arena, from.file_name_),
        content_type_(arena, from.content_type_),
        digest_sha256_(arena, from.digest_sha256_),
        source_(arena, from.source_),
        destination_(arena, from.destination_),
        tab_url_(arena, from.tab_url_),
        pehash_sha256_(arena, from.pehash_sha256_),
        evidence_locker_filepath_(arena, from.evidence_locker_filepath_),
        web_app_signed_in_account_(arena, from.web_app_signed_in_account_),
        source_web_app_signed_in_account_(arena, from.source_web_app_signed_in_account_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ContentTransferEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00020000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  _impl_.tab_url_info_ = (CheckHasBit(cached_has_bits, 0x00040000U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, content_size_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, content_size_),
           offsetof(Impl_, is_encrypted_) -
               offsetof(Impl_, content_size_) +
               sizeof(Impl_::is_encrypted_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.ContentTransferEvent)
}
PROTOBUF_NDEBUG_INLINE ContentTransferEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        matched_detectors_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.matched_detectors_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.referrers_)>()
         }
        ,
        risk_infos_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.risk_infos_)>()
         }
        ,
        iframe_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ContentTransferEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ContentTransferEvent, _impl_.iframe_urls_)>()
         }
        ,
        scan_id_(arena),
        profile_user_name_(arena),
        url_(arena),
        file_name_(arena),
        content_type_(arena),
        digest_sha256_(arena),
        source_(arena),
        destination_(arena),
        tab_url_(arena),
        pehash_sha256_(arena),
        evidence_locker_filepath_(arena),
        web_app_signed_in_account_(arena),
        source_web_app_signed_in_account_(arena) {}

inline void ContentTransferEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, is_encrypted_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::is_encrypted_));
}
ContentTransferEvent::~ContentTransferEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.ContentTransferEvent)
  SharedDtor(*this);
}
inline void ContentTransferEvent::SharedDtor(MessageLite& self) {
  ContentTransferEvent& this_ = static_cast<ContentTransferEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.scan_id_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.url_.Destroy();
  this_._impl_.file_name_.Destroy();
  this_._impl_.content_type_.Destroy();
  this_._impl_.digest_sha256_.Destroy();
  this_._impl_.source_.Destroy();
  this_._impl_.destination_.Destroy();
  this_._impl_.tab_url_.Destroy();
  this_._impl_.pehash_sha256_.Destroy();
  this_._impl_.evidence_locker_filepath_.Destroy();
  this_._impl_.web_app_signed_in_account_.Destroy();
  this_._impl_.source_web_app_signed_in_account_.Destroy();
  delete this_._impl_.url_info_;
  delete this_._impl_.tab_url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ContentTransferEvent_class_data_ =
    ContentTransferEvent::InternalGenerateClassData_(ContentTransferEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.matched_detectors_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.risk_infos_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.iframe_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.scan_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.file_name_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.content_type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _impl_.digest_sha256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.source_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.destination_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _impl_.tab_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _impl_.pehash_sha256_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _impl_.evidence_locker_filepath_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _impl_.web_app_signed_in_account_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00070000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      _impl_.source_web_app_signed_in_account_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      ABSL_DCHECK(_impl_.tab_url_info_ != nullptr);
      _impl_.tab_url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00f80000U)) {
    ::memset(&_impl_.content_size_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.risk_level_) -
        reinterpret_cast<char*>(&_impl_.content_size_)) + sizeof(_impl_.risk_level_));
  }
  _impl_.is_encrypted_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string scan_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_scan_id().empty()) {
      const ::std::string& _s = this_._internal_scan_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.scan_id");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string profile_user_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string url = 3;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.url");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string file_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_file_name().empty()) {
      const ::std::string& _s = this_._internal_file_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.file_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // uint64 content_size = 5;
  if (CheckHasBit(cached_has_bits, 0x00080000U)) {
    if (this_._internal_content_size() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          5, this_._internal_content_size(), target);
    }
  }

  // string content_type = 6;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (!this_._internal_content_type().empty()) {
      const ::std::string& _s = this_._internal_content_type();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.content_type");
      target = stream->WriteStringMaybeAliased(6, _s, target);
    }
  }

  // string digest_sha256 = 7;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (!this_._internal_digest_sha256().empty()) {
      const ::std::string& _s = this_._internal_digest_sha256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.digest_sha256");
      target = stream->WriteStringMaybeAliased(7, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 8;
  if (CheckHasBit(cached_has_bits, 0x00100000U)) {
    if (this_._internal_trigger() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          8, this_._internal_trigger(), target);
    }
  }

  // string source = 9;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (!this_._internal_source().empty()) {
      const ::std::string& _s = this_._internal_source();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.source");
      target = stream->WriteStringMaybeAliased(9, _s, target);
    }
  }

  // string destination = 10;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    if (!this_._internal_destination().empty()) {
      const ::std::string& _s = this_._internal_destination();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.destination");
      target = stream->WriteStringMaybeAliased(10, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 11;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_matched_detectors_size());
         i < n; i++) {
      const auto& repfield = this_._internal_matched_detectors().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              11, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string tab_url = 12;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (!this_._internal_tab_url().empty()) {
      const ::std::string& _s = this_._internal_tab_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.tab_url");
      target = stream->WriteStringMaybeAliased(12, _s, target);
    }
  }

  // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 13;
  if (CheckHasBit(cached_has_bits, 0x00200000U)) {
    if (this_._internal_content_transfer_method() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          13, this_._internal_content_transfer_method(), target);
    }
  }

  // int64 server_scan_latency_millis = 14;
  if (CheckHasBit(cached_has_bits, 0x00400000U)) {
    if (this_._internal_server_scan_latency_millis() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<14>(
              stream, this_._internal_server_scan_latency_millis(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 15;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        15, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 16;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              16, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 17;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_risk_infos_size());
         i < n; i++) {
      const auto& repfield = this_._internal_risk_infos().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              17, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.RiskLevel risk_level = 18;
  if (CheckHasBit(cached_has_bits, 0x00800000U)) {
    if (this_._internal_risk_level() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          18, this_._internal_risk_level(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 19;
  if (CheckHasBit(cached_has_bits, 0x00040000U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        19, *this_._impl_.tab_url_info_, this_._impl_.tab_url_info_->GetCachedSize(), target,
        stream);
  }

  // string pehash_sha256 = 20;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (!this_._internal_pehash_sha256().empty()) {
      const ::std::string& _s = this_._internal_pehash_sha256();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.pehash_sha256");
      target = stream->WriteStringMaybeAliased(20, _s, target);
    }
  }

  // bool is_encrypted = 21;
  if (CheckHasBit(cached_has_bits, 0x01000000U)) {
    if (this_._internal_is_encrypted() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          21, this_._internal_is_encrypted(), target);
    }
  }

  // string evidence_locker_filepath = 22;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    if (!this_._internal_evidence_locker_filepath().empty()) {
      const ::std::string& _s = this_._internal_evidence_locker_filepath();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.evidence_locker_filepath");
      target = stream->WriteStringMaybeAliased(22, _s, target);
    }
  }

  // repeated string iframe_urls = 23;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    for (int i = 0, n = this_._internal_iframe_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_iframe_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.iframe_urls");
      target = stream->WriteString(23, s, target);
    }
  }

  // string web_app_signed_in_account = 24;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    if (!this_._internal_web_app_signed_in_account().empty()) {
      const ::std::string& _s = this_._internal_web_app_signed_in_account();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.web_app_signed_in_account");
      target = stream->WriteStringMaybeAliased(24, _s, target);
    }
  }

  // string source_web_app_signed_in_account = 25;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    if (!this_._internal_source_web_app_signed_in_account().empty()) {
      const ::std::string& _s = this_._internal_source_web_app_signed_in_account();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ContentTransferEvent.source_web_app_signed_in_account");
      target = stream->WriteStringMaybeAliased(25, _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:chrome.cros.reporting.proto.ContentTransferEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .chrome.cros.reporting.proto.MatchedDetector matched_detectors = 11;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_matched_detectors_size();
      for (const auto& msg : this_._internal_matched_detectors()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 16;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.RiskInfo risk_infos = 17;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2UL * this_._internal_risk_infos_size();
      for (const auto& msg : this_._internal_risk_infos()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string iframe_urls = 23;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size +=
          2 * ::google::protobuf::internal::FromIntSize(this_._internal_iframe_urls().size());
      for (int i = 0, n = this_._internal_iframe_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_iframe_urls().Get(i));
      }
    }
    // string scan_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_scan_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_scan_id());
      }
    }
    // string profile_user_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string url = 3;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string file_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_file_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_file_name());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    // string content_type = 6;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!this_._internal_content_type().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_content_type());
      }
    }
    // string digest_sha256 = 7;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!this_._internal_digest_sha256().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_digest_sha256());
      }
    }
    // string source = 9;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!this_._internal_source().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source());
      }
    }
    // string destination = 10;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!this_._internal_destination().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_destination());
      }
    }
    // string tab_url = 12;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!this_._internal_tab_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_url());
      }
    }
    // string pehash_sha256 = 20;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!this_._internal_pehash_sha256().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_pehash_sha256());
      }
    }
    // string evidence_locker_filepath = 22;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!this_._internal_evidence_locker_filepath().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_evidence_locker_filepath());
      }
    }
    // string web_app_signed_in_account = 24;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!this_._internal_web_app_signed_in_account().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_web_app_signed_in_account());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    // string source_web_app_signed_in_account = 25;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!this_._internal_source_web_app_signed_in_account().empty()) {
        total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_source_web_app_signed_in_account());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 15;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // .chrome.cros.reporting.proto.UrlInfo tab_url_info = 19;
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.tab_url_info_);
    }
    // uint64 content_size = 5;
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      if (this_._internal_content_size() != 0) {
        total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
            this_._internal_content_size());
      }
    }
    // .chrome.cros.reporting.proto.DataTransferEventTrigger trigger = 8;
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (this_._internal_trigger() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_trigger());
      }
    }
    // .chrome.cros.reporting.proto.ContentTransferMethod content_transfer_method = 13;
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (this_._internal_content_transfer_method() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_content_transfer_method());
      }
    }
    // int64 server_scan_latency_millis = 14;
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (this_._internal_server_scan_latency_millis() != 0) {
        total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
            this_._internal_server_scan_latency_millis());
      }
    }
    // .chrome.cros.reporting.proto.RiskLevel risk_level = 18;
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (this_._internal_risk_level() != 0) {
        total_size += 2 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_risk_level());
      }
    }
  }
   {
    // bool is_encrypted = 21;
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      if (this_._internal_is_encrypted() != 0) {
        total_size += 3;
      }
    }
  }
  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 ContentTransferEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ContentTransferEvent*>(&to_msg);
  auto& from = static_cast<const ContentTransferEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.ContentTransferEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_matched_detectors()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_matched_detectors());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_risk_infos()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_risk_infos());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_mutable_iframe_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_iframe_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_scan_id().empty()) {
        _this->_internal_set_scan_id(from._internal_scan_id());
      } else {
        if (_this->_impl_.scan_id_.IsDefault()) {
          _this->_internal_set_scan_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_file_name().empty()) {
        _this->_internal_set_file_name(from._internal_file_name());
      } else {
        if (_this->_impl_.file_name_.IsDefault()) {
          _this->_internal_set_file_name("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!from._internal_content_type().empty()) {
        _this->_internal_set_content_type(from._internal_content_type());
      } else {
        if (_this->_impl_.content_type_.IsDefault()) {
          _this->_internal_set_content_type("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (!from._internal_digest_sha256().empty()) {
        _this->_internal_set_digest_sha256(from._internal_digest_sha256());
      } else {
        if (_this->_impl_.digest_sha256_.IsDefault()) {
          _this->_internal_set_digest_sha256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (!from._internal_source().empty()) {
        _this->_internal_set_source(from._internal_source());
      } else {
        if (_this->_impl_.source_.IsDefault()) {
          _this->_internal_set_source("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (!from._internal_destination().empty()) {
        _this->_internal_set_destination(from._internal_destination());
      } else {
        if (_this->_impl_.destination_.IsDefault()) {
          _this->_internal_set_destination("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (!from._internal_tab_url().empty()) {
        _this->_internal_set_tab_url(from._internal_tab_url());
      } else {
        if (_this->_impl_.tab_url_.IsDefault()) {
          _this->_internal_set_tab_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (!from._internal_pehash_sha256().empty()) {
        _this->_internal_set_pehash_sha256(from._internal_pehash_sha256());
      } else {
        if (_this->_impl_.pehash_sha256_.IsDefault()) {
          _this->_internal_set_pehash_sha256("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (!from._internal_evidence_locker_filepath().empty()) {
        _this->_internal_set_evidence_locker_filepath(from._internal_evidence_locker_filepath());
      } else {
        if (_this->_impl_.evidence_locker_filepath_.IsDefault()) {
          _this->_internal_set_evidence_locker_filepath("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      if (!from._internal_web_app_signed_in_account().empty()) {
        _this->_internal_set_web_app_signed_in_account(from._internal_web_app_signed_in_account());
      } else {
        if (_this->_impl_.web_app_signed_in_account_.IsDefault()) {
          _this->_internal_set_web_app_signed_in_account("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      if (!from._internal_source_web_app_signed_in_account().empty()) {
        _this->_internal_set_source_web_app_signed_in_account(from._internal_source_web_app_signed_in_account());
      } else {
        if (_this->_impl_.source_web_app_signed_in_account_.IsDefault()) {
          _this->_internal_set_source_web_app_signed_in_account("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      ABSL_DCHECK(from._impl_.tab_url_info_ != nullptr);
      if (_this->_impl_.tab_url_info_ == nullptr) {
        _this->_impl_.tab_url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.tab_url_info_);
      } else {
        _this->_impl_.tab_url_info_->MergeFrom(*from._impl_.tab_url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      if (from._internal_content_size() != 0) {
        _this->_impl_.content_size_ = from._impl_.content_size_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      if (from._internal_trigger() != 0) {
        _this->_impl_.trigger_ = from._impl_.trigger_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      if (from._internal_content_transfer_method() != 0) {
        _this->_impl_.content_transfer_method_ = from._impl_.content_transfer_method_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      if (from._internal_server_scan_latency_millis() != 0) {
        _this->_impl_.server_scan_latency_millis_ = from._impl_.server_scan_latency_millis_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      if (from._internal_risk_level() != 0) {
        _this->_impl_.risk_level_ = from._impl_.risk_level_;
      }
    }
  }
  if (CheckHasBit(cached_has_bits, 0x01000000U)) {
    if (from._internal_is_encrypted() != 0) {
      _this->_impl_.is_encrypted_ = from._impl_.is_encrypted_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void ContentTransferEvent::CopyFrom(const ContentTransferEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.ContentTransferEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void ContentTransferEvent::InternalSwap(ContentTransferEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.matched_detectors_.InternalSwap(&other->_impl_.matched_detectors_);
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  _impl_.risk_infos_.InternalSwap(&other->_impl_.risk_infos_);
  _impl_.iframe_urls_.InternalSwap(&other->_impl_.iframe_urls_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.scan_id_, &other->_impl_.scan_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_name_, &other->_impl_.file_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.content_type_, &other->_impl_.content_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.digest_sha256_, &other->_impl_.digest_sha256_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_, &other->_impl_.source_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.destination_, &other->_impl_.destination_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_url_, &other->_impl_.tab_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.pehash_sha256_, &other->_impl_.pehash_sha256_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.evidence_locker_filepath_, &other->_impl_.evidence_locker_filepath_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.web_app_signed_in_account_, &other->_impl_.web_app_signed_in_account_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.source_web_app_signed_in_account_, &other->_impl_.source_web_app_signed_in_account_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.is_encrypted_)
      + sizeof(ContentTransferEvent::_impl_.is_encrypted_)
      - PROTOBUF_FIELD_OFFSET(ContentTransferEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
}

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

LoginEvent::LoginEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, LoginEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.LoginEvent)
}
PROTOBUF_NDEBUG_INLINE LoginEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::LoginEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::LoginEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::LoginEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        url_(arena, from.url_),
        federated_origin_(arena, from.federated_origin_),
        profile_user_name_(arena, from.profile_user_name_),
        login_user_name_(arena, from.login_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.LoginEvent)
}
PROTOBUF_NDEBUG_INLINE LoginEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::LoginEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::LoginEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::LoginEvent, _impl_.referrers_)>()
         }
        ,
        url_(arena),
        federated_origin_(arena),
        profile_user_name_(arena),
        login_user_name_(arena),
        profile_identifier_(arena) {}

inline void LoginEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, is_federated_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::is_federated_));
}
LoginEvent::~LoginEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.LoginEvent)
  SharedDtor(*this);
}
inline void LoginEvent::SharedDtor(MessageLite& self) {
  LoginEvent& this_ = static_cast<LoginEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.url_.Destroy();
  this_._impl_.federated_origin_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.login_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  delete this_._impl_.url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite LoginEvent_class_data_ =
    LoginEvent::InternalGenerateClassData_(LoginEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.federated_origin_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.login_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  _impl_.is_federated_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.LoginEvent.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // bool is_federated = 2;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (this_._internal_is_federated() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          2, this_._internal_is_federated(), target);
    }
  }

  // string federated_origin = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_federated_origin().empty()) {
      const ::std::string& _s = this_._internal_federated_origin();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.LoginEvent.federated_origin");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_user_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.LoginEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // string login_user_name = 5;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_login_user_name().empty()) {
      const ::std::string& _s = this_._internal_login_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.LoginEvent.login_user_name");
      target = stream->WriteStringMaybeAliased(5, _s, target);
    }
  }

  // string profile_identifier = 6;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.LoginEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(6, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              7, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        8, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 9;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              9, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 9;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string federated_origin = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_federated_origin().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_federated_origin());
      }
    }
    // string profile_user_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string login_user_name = 5;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_login_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_login_user_name());
      }
    }
    // string profile_identifier = 6;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
  }
   {
    // bool is_federated = 2;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (this_._internal_is_federated() != 0) {
        total_size += 2;
      }
    }
  }
  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 LoginEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<LoginEvent*>(&to_msg);
  auto& from = static_cast<const LoginEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.LoginEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_federated_origin().empty()) {
        _this->_internal_set_federated_origin(from._internal_federated_origin());
      } else {
        if (_this->_impl_.federated_origin_.IsDefault()) {
          _this->_internal_set_federated_origin("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_login_user_name().empty()) {
        _this->_internal_set_login_user_name(from._internal_login_user_name());
      } else {
        if (_this->_impl_.login_user_name_.IsDefault()) {
          _this->_internal_set_login_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
  }
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (from._internal_is_federated() != 0) {
      _this->_impl_.is_federated_ = from._impl_.is_federated_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void LoginEvent::CopyFrom(const LoginEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.LoginEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void LoginEvent::InternalSwap(LoginEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.federated_origin_, &other->_impl_.federated_origin_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.login_user_name_, &other->_impl_.login_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.is_federated_)
      + sizeof(LoginEvent::_impl_.is_federated_)
      - PROTOBUF_FIELD_OFFSET(LoginEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
}

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

PasswordBreachEvent_Identity::PasswordBreachEvent_Identity(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, PasswordBreachEvent_Identity_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
}
PROTOBUF_NDEBUG_INLINE PasswordBreachEvent_Identity::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::PasswordBreachEvent_Identity& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        url_(arena, from.url_),
        username_(arena, from.username_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  PasswordBreachEvent_Identity* 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:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
}
PROTOBUF_NDEBUG_INLINE PasswordBreachEvent_Identity::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        url_(arena),
        username_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite PasswordBreachEvent_Identity_class_data_ =
    PasswordBreachEvent_Identity::InternalGenerateClassData_(PasswordBreachEvent_Identity_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PasswordBreachEvent_Identity::GetClassData() const {
  return PasswordBreachEvent_Identity_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PasswordBreachEvent_Identity::GetClassData() const {
  return PasswordBreachEvent_Identity_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const PasswordBreachEvent_Identity::ParseTableT_
    PasswordBreachEvent_Identity::_table_ =
        PasswordBreachEvent_Identity::InternalGenerateParseTable_(PasswordBreachEvent_Identity_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void PasswordBreachEvent_Identity::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
  ::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_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.username_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.PasswordBreachEvent.Identity.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string username = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_username().empty()) {
      const ::std::string& _s = this_._internal_username();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.PasswordBreachEvent.Identity.username");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t PasswordBreachEvent_Identity::ByteSizeLong(const MessageLite& base) {
  const PasswordBreachEvent_Identity& this_ = static_cast<const PasswordBreachEvent_Identity&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t PasswordBreachEvent_Identity::ByteSizeLong() const {
  const PasswordBreachEvent_Identity& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
  ::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 url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string username = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_username().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_username());
      }
    }
  }
  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 PasswordBreachEvent_Identity::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<PasswordBreachEvent_Identity*>(&to_msg);
  auto& from = static_cast<const PasswordBreachEvent_Identity&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
  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_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_username().empty()) {
        _this->_internal_set_username(from._internal_username());
      } else {
        if (_this->_impl_.username_.IsDefault()) {
          _this->_internal_set_username("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void PasswordBreachEvent_Identity::CopyFrom(const PasswordBreachEvent_Identity& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.PasswordBreachEvent.Identity)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void PasswordBreachEvent_Identity::InternalSwap(PasswordBreachEvent_Identity* 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_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.username_, &other->_impl_.username_, arena);
}

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

PasswordBreachEvent::PasswordBreachEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, PasswordBreachEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.PasswordBreachEvent)
}
PROTOBUF_NDEBUG_INLINE PasswordBreachEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::PasswordBreachEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        identities_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::PasswordBreachEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.identities_)>()
          , from.identities_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::PasswordBreachEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.PasswordBreachEvent)
}
PROTOBUF_NDEBUG_INLINE PasswordBreachEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        identities_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::PasswordBreachEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.identities_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::PasswordBreachEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::PasswordBreachEvent, _impl_.security_agents_)>()
         }
        ,
        profile_user_name_(arena),
        profile_identifier_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite PasswordBreachEvent_class_data_ =
    PasswordBreachEvent::InternalGenerateClassData_(PasswordBreachEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PasswordBreachEvent::GetClassData() const {
  return PasswordBreachEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PasswordBreachEvent::GetClassData() const {
  return PasswordBreachEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const PasswordBreachEvent::ParseTableT_
    PasswordBreachEvent::_table_ =
        PasswordBreachEvent::InternalGenerateParseTable_(PasswordBreachEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void PasswordBreachEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.PasswordBreachEvent)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.identities_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
  }
  _impl_.trigger_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .chrome.cros.reporting.proto.PasswordBreachEvent.TriggerType trigger = 1;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (this_._internal_trigger() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          1, this_._internal_trigger(), target);
    }
  }

  // repeated .chrome.cros.reporting.proto.PasswordBreachEvent.Identity identities = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_identities_size());
         i < n; i++) {
      const auto& repfield = this_._internal_identities().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              2, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string profile_user_name = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.PasswordBreachEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_identifier = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.PasswordBreachEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 5;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              5, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    // repeated .chrome.cros.reporting.proto.PasswordBreachEvent.Identity identities = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_identities_size();
      for (const auto& msg : this_._internal_identities()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 5;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string profile_user_name = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .chrome.cros.reporting.proto.PasswordBreachEvent.TriggerType trigger = 1;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (this_._internal_trigger() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_trigger());
      }
    }
  }
  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 PasswordBreachEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<PasswordBreachEvent*>(&to_msg);
  auto& from = static_cast<const PasswordBreachEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.PasswordBreachEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_identities()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_identities());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (from._internal_trigger() != 0) {
        _this->_impl_.trigger_ = from._impl_.trigger_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void PasswordBreachEvent::CopyFrom(const PasswordBreachEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.PasswordBreachEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

BrowserExtensionInstallEvent::BrowserExtensionInstallEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, BrowserExtensionInstallEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
}
PROTOBUF_NDEBUG_INLINE BrowserExtensionInstallEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserExtensionInstallEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        id_(arena, from.id_),
        name_(arena, from.name_),
        description_(arena, from.description_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_),
        extension_version_(arena, from.extension_version_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
}
PROTOBUF_NDEBUG_INLINE BrowserExtensionInstallEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserExtensionInstallEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserExtensionInstallEvent, _impl_.security_agents_)>()
         }
        ,
        id_(arena),
        name_(arena),
        description_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena),
        extension_version_(arena) {}

inline void BrowserExtensionInstallEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, extension_action_type_),
           0,
           offsetof(Impl_, extension_source_) -
               offsetof(Impl_, extension_action_type_) +
               sizeof(Impl_::extension_source_));
}
BrowserExtensionInstallEvent::~BrowserExtensionInstallEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
  SharedDtor(*this);
}
inline void BrowserExtensionInstallEvent::SharedDtor(MessageLite& self) {
  BrowserExtensionInstallEvent& this_ = static_cast<BrowserExtensionInstallEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.id_.Destroy();
  this_._impl_.name_.Destroy();
  this_._impl_.description_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.extension_version_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite BrowserExtensionInstallEvent_class_data_ =
    BrowserExtensionInstallEvent::InternalGenerateClassData_(BrowserExtensionInstallEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.description_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.extension_version_.ClearNonDefaultToEmpty();
    }
  }
  _impl_.extension_action_type_ = 0;
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    ::memset(&_impl_.from_webstore_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.extension_source_) -
        reinterpret_cast<char*>(&_impl_.from_webstore_)) + sizeof(_impl_.extension_source_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_id().empty()) {
      const ::std::string& _s = this_._internal_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.id");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_name().empty()) {
      const ::std::string& _s = this_._internal_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string description = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_description().empty()) {
      const ::std::string& _s = this_._internal_description();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.description");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_user_name = 4;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // string profile_identifier = 5;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(5, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 6;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              6, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionAction extension_action_type = 7;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (this_._internal_extension_action_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          7, this_._internal_extension_action_type(), target);
    }
  }

  // string extension_version = 8;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_extension_version().empty()) {
      const ::std::string& _s = this_._internal_extension_version();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserExtensionInstallEvent.extension_version");
      target = stream->WriteStringMaybeAliased(8, _s, target);
    }
  }

  // bool from_webstore = 9 [deprecated = true];
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (this_._internal_from_webstore() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          9, this_._internal_from_webstore(), target);
    }
  }

  // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionSource extension_source = 10;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    if (this_._internal_extension_source() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          10, this_._internal_extension_source(), 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:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 6;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_id());
      }
    }
    // string name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_name());
      }
    }
    // string description = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_description().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_description());
      }
    }
    // string profile_user_name = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 5;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // string extension_version = 8;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_extension_version().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_extension_version());
      }
    }
    // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionAction extension_action_type = 7;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (this_._internal_extension_action_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_extension_action_type());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    // bool from_webstore = 9 [deprecated = true];
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (this_._internal_from_webstore() != 0) {
        total_size += 2;
      }
    }
    // .chrome.cros.reporting.proto.BrowserExtensionInstallEvent.ExtensionSource extension_source = 10;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (this_._internal_extension_source() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_extension_source());
      }
    }
  }
  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 BrowserExtensionInstallEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<BrowserExtensionInstallEvent*>(&to_msg);
  auto& from = static_cast<const BrowserExtensionInstallEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_id().empty()) {
        _this->_internal_set_id(from._internal_id());
      } else {
        if (_this->_impl_.id_.IsDefault()) {
          _this->_internal_set_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_name().empty()) {
        _this->_internal_set_name(from._internal_name());
      } else {
        if (_this->_impl_.name_.IsDefault()) {
          _this->_internal_set_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_description().empty()) {
        _this->_internal_set_description(from._internal_description());
      } else {
        if (_this->_impl_.description_.IsDefault()) {
          _this->_internal_set_description("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_extension_version().empty()) {
        _this->_internal_set_extension_version(from._internal_extension_version());
      } else {
        if (_this->_impl_.extension_version_.IsDefault()) {
          _this->_internal_set_extension_version("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (from._internal_extension_action_type() != 0) {
        _this->_impl_.extension_action_type_ = from._impl_.extension_action_type_;
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (from._internal_from_webstore() != 0) {
        _this->_impl_.from_webstore_ = from._impl_.from_webstore_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      if (from._internal_extension_source() != 0) {
        _this->_impl_.extension_source_ = from._impl_.extension_source_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void BrowserExtensionInstallEvent::CopyFrom(const BrowserExtensionInstallEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.BrowserExtensionInstallEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void BrowserExtensionInstallEvent::InternalSwap(BrowserExtensionInstallEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.id_, &other->_impl_.id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.description_, &other->_impl_.description_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.extension_version_, &other->_impl_.extension_version_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_source_)
      + sizeof(BrowserExtensionInstallEvent::_impl_.extension_source_)
      - PROTOBUF_FIELD_OFFSET(BrowserExtensionInstallEvent, _impl_.extension_action_type_)>(
          reinterpret_cast<char*>(&_impl_.extension_action_type_),
          reinterpret_cast<char*>(&other->_impl_.extension_action_type_));
}

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

BrowserCrashEvent::BrowserCrashEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, BrowserCrashEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.BrowserCrashEvent)
}
PROTOBUF_NDEBUG_INLINE BrowserCrashEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::BrowserCrashEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::BrowserCrashEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserCrashEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        channel_(arena, from.channel_),
        version_(arena, from.version_),
        report_id_(arena, from.report_id_),
        platform_(arena, from.platform_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  BrowserCrashEvent* 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:chrome.cros.reporting.proto.BrowserCrashEvent)
}
PROTOBUF_NDEBUG_INLINE BrowserCrashEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserCrashEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserCrashEvent, _impl_.security_agents_)>()
         }
        ,
        channel_(arena),
        version_(arena),
        report_id_(arena),
        platform_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena) {}

inline void BrowserCrashEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
BrowserCrashEvent::~BrowserCrashEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.BrowserCrashEvent)
  SharedDtor(*this);
}
inline void BrowserCrashEvent::SharedDtor(MessageLite& self) {
  BrowserCrashEvent& this_ = static_cast<BrowserCrashEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.channel_.Destroy();
  this_._impl_.version_.Destroy();
  this_._impl_.report_id_.Destroy();
  this_._impl_.platform_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite BrowserCrashEvent_class_data_ =
    BrowserCrashEvent::InternalGenerateClassData_(BrowserCrashEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.channel_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.version_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.report_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.platform_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string channel = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_channel().empty()) {
      const ::std::string& _s = this_._internal_channel();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.channel");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string version = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_version().empty()) {
      const ::std::string& _s = this_._internal_version();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.version");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string report_id = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    if (!this_._internal_report_id().empty()) {
      const ::std::string& _s = this_._internal_report_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.report_id");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string platform = 4;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_platform().empty()) {
      const ::std::string& _s = this_._internal_platform();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.platform");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // string profile_user_name = 5;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(5, _s, target);
    }
  }

  // string profile_identifier = 6;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserCrashEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(6, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              7, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 7;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string channel = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_channel().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_channel());
      }
    }
    // string version = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_version().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_version());
      }
    }
    // string report_id = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!this_._internal_report_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_report_id());
      }
    }
    // string platform = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_platform().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_platform());
      }
    }
    // string profile_user_name = 5;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 6;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
  }
  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 BrowserCrashEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<BrowserCrashEvent*>(&to_msg);
  auto& from = static_cast<const BrowserCrashEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.BrowserCrashEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_channel().empty()) {
        _this->_internal_set_channel(from._internal_channel());
      } else {
        if (_this->_impl_.channel_.IsDefault()) {
          _this->_internal_set_channel("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_version().empty()) {
        _this->_internal_set_version(from._internal_version());
      } else {
        if (_this->_impl_.version_.IsDefault()) {
          _this->_internal_set_version("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      if (!from._internal_report_id().empty()) {
        _this->_internal_set_report_id(from._internal_report_id());
      } else {
        if (_this->_impl_.report_id_.IsDefault()) {
          _this->_internal_set_report_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_platform().empty()) {
        _this->_internal_set_platform(from._internal_platform());
      } else {
        if (_this->_impl_.platform_.IsDefault()) {
          _this->_internal_set_platform("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void BrowserCrashEvent::CopyFrom(const BrowserCrashEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.BrowserCrashEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void BrowserCrashEvent::InternalSwap(BrowserCrashEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.channel_, &other->_impl_.channel_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.version_, &other->_impl_.version_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.report_id_, &other->_impl_.report_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.platform_, &other->_impl_.platform_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
}

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

UrlFilteringInterstitialEvent::UrlFilteringInterstitialEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, UrlFilteringInterstitialEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
}
PROTOBUF_NDEBUG_INLINE UrlFilteringInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referrer_urls_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrer_urls_)>()
          , from.referrer_urls_
        }
        ,
        triggered_rule_info_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.triggered_rule_info_)>()
          , from.triggered_rule_info_
        }
        ,
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        url_(arena, from.url_),
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_),
        web_app_signed_in_account_(arena, from.web_app_signed_in_account_),
        tab_title_(arena, from.tab_title_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  UrlFilteringInterstitialEvent* 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_.url_info_ = (CheckHasBit(cached_has_bits, 0x00000200U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, clicked_through_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, clicked_through_),
           offsetof(Impl_, server_scan_latency_millis_) -
               offsetof(Impl_, clicked_through_) +
               sizeof(Impl_::server_scan_latency_millis_));

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
}
PROTOBUF_NDEBUG_INLINE UrlFilteringInterstitialEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referrer_urls_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrer_urls_)>()
         }
        ,
        triggered_rule_info_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.triggered_rule_info_)>()
         }
        ,
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.security_agents_)>()
         }
        ,
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlFilteringInterstitialEvent, _impl_.referrers_)>()
         }
        ,
        url_(arena),
        profile_user_name_(arena),
        profile_identifier_(arena),
        web_app_signed_in_account_(arena),
        tab_title_(arena) {}

inline void UrlFilteringInterstitialEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, url_info_),
           0,
           offsetof(Impl_, server_scan_latency_millis_) -
               offsetof(Impl_, url_info_) +
               sizeof(Impl_::server_scan_latency_millis_));
}
UrlFilteringInterstitialEvent::~UrlFilteringInterstitialEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
  SharedDtor(*this);
}
inline void UrlFilteringInterstitialEvent::SharedDtor(MessageLite& self) {
  UrlFilteringInterstitialEvent& this_ = static_cast<UrlFilteringInterstitialEvent&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.url_.Destroy();
  this_._impl_.profile_user_name_.Destroy();
  this_._impl_.profile_identifier_.Destroy();
  this_._impl_.web_app_signed_in_account_.Destroy();
  this_._impl_.tab_title_.Destroy();
  delete this_._impl_.url_info_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite UrlFilteringInterstitialEvent_class_data_ =
    UrlFilteringInterstitialEvent::InternalGenerateClassData_(UrlFilteringInterstitialEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referrer_urls_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.triggered_rule_info_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.web_app_signed_in_account_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.tab_title_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007c00U)) {
    ::memset(&_impl_.clicked_through_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.server_scan_latency_millis_) -
        reinterpret_cast<char*>(&_impl_.clicked_through_)) + sizeof(_impl_.server_scan_latency_millis_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string url = 1;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    if (!this_._internal_url().empty()) {
      const ::std::string& _s = this_._internal_url();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.url");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string profile_user_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // bool clicked_through = 3;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    if (this_._internal_clicked_through() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteBoolToArray(
          3, this_._internal_clicked_through(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.InterstitialThreatType threat_type = 4;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    if (this_._internal_threat_type() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          4, this_._internal_threat_type(), target);
    }
  }

  // repeated string referrer_urls = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_referrer_urls_size(); i < n; ++i) {
      const auto& s = this_._internal_referrer_urls().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.referrer_urls");
      target = stream->WriteString(5, s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_triggered_rule_info_size());
         i < n; i++) {
      const auto& repfield = this_._internal_triggered_rule_info().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              6, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.EventResult event_result = 7;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    if (this_._internal_event_result() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          7, this_._internal_event_result(), target);
    }
  }

  // string profile_identifier = 8;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(8, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 9;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              9, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 10;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    if (this_._internal_reporting_target() != 0) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          10, this_._internal_reporting_target(), target);
    }
  }

  // .chrome.cros.reporting.proto.UrlInfo url_info = 11;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        11, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 12;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              12, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string web_app_signed_in_account = 13;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    if (!this_._internal_web_app_signed_in_account().empty()) {
      const ::std::string& _s = this_._internal_web_app_signed_in_account();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.web_app_signed_in_account");
      target = stream->WriteStringMaybeAliased(13, _s, target);
    }
  }

  // int64 server_scan_latency_millis = 14;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    if (this_._internal_server_scan_latency_millis() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<14>(
              stream, this_._internal_server_scan_latency_millis(), target);
    }
  }

  // string tab_title = 15;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    if (!this_._internal_tab_title().empty()) {
      const ::std::string& _s = this_._internal_tab_title();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.tab_title");
      target = stream->WriteStringMaybeAliased(15, _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:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string referrer_urls = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_referrer_urls().size());
      for (int i = 0, n = this_._internal_referrer_urls().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_referrer_urls().Get(i));
      }
    }
    // repeated .chrome.cros.reporting.proto.TriggeredRuleInfo triggered_rule_info = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_triggered_rule_info_size();
      for (const auto& msg : this_._internal_triggered_rule_info()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 9;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 12;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string url = 1;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!this_._internal_url().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_url());
      }
    }
    // string profile_user_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 8;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // string web_app_signed_in_account = 13;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!this_._internal_web_app_signed_in_account().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_web_app_signed_in_account());
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    // string tab_title = 15;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!this_._internal_tab_title().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_tab_title());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 11;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_info_);
    }
    // bool clicked_through = 3;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (this_._internal_clicked_through() != 0) {
        total_size += 2;
      }
    }
    // .chrome.cros.reporting.proto.UrlFilteringInterstitialEvent.InterstitialThreatType threat_type = 4;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (this_._internal_threat_type() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_threat_type());
      }
    }
    // .chrome.cros.reporting.proto.EventResult event_result = 7;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (this_._internal_event_result() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_event_result());
      }
    }
    // .chrome.cros.reporting.proto.ReportingTarget reporting_target = 10;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (this_._internal_reporting_target() != 0) {
        total_size += 1 +
                      ::_pbi::WireFormatLite::EnumSize(this_._internal_reporting_target());
      }
    }
    // int64 server_scan_latency_millis = 14;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (this_._internal_server_scan_latency_millis() != 0) {
        total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
            this_._internal_server_scan_latency_millis());
      }
    }
  }
  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 UrlFilteringInterstitialEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<UrlFilteringInterstitialEvent*>(&to_msg);
  auto& from = static_cast<const UrlFilteringInterstitialEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referrer_urls()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrer_urls());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_triggered_rule_info()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_triggered_rule_info());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      if (!from._internal_url().empty()) {
        _this->_internal_set_url(from._internal_url());
      } else {
        if (_this->_impl_.url_.IsDefault()) {
          _this->_internal_set_url("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      if (!from._internal_web_app_signed_in_account().empty()) {
        _this->_internal_set_web_app_signed_in_account(from._internal_web_app_signed_in_account());
      } else {
        if (_this->_impl_.web_app_signed_in_account_.IsDefault()) {
          _this->_internal_set_web_app_signed_in_account("");
        }
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      if (!from._internal_tab_title().empty()) {
        _this->_internal_set_tab_title(from._internal_tab_title());
      } else {
        if (_this->_impl_.tab_title_.IsDefault()) {
          _this->_internal_set_tab_title("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      if (from._internal_clicked_through() != 0) {
        _this->_impl_.clicked_through_ = from._impl_.clicked_through_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      if (from._internal_threat_type() != 0) {
        _this->_impl_.threat_type_ = from._impl_.threat_type_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      if (from._internal_event_result() != 0) {
        _this->_impl_.event_result_ = from._impl_.event_result_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      if (from._internal_reporting_target() != 0) {
        _this->_impl_.reporting_target_ = from._impl_.reporting_target_;
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      if (from._internal_server_scan_latency_millis() != 0) {
        _this->_impl_.server_scan_latency_millis_ = from._impl_.server_scan_latency_millis_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void UrlFilteringInterstitialEvent::CopyFrom(const UrlFilteringInterstitialEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.UrlFilteringInterstitialEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void UrlFilteringInterstitialEvent::InternalSwap(UrlFilteringInterstitialEvent* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.referrer_urls_.InternalSwap(&other->_impl_.referrer_urls_);
  _impl_.triggered_rule_info_.InternalSwap(&other->_impl_.triggered_rule_info_);
  _impl_.security_agents_.InternalSwap(&other->_impl_.security_agents_);
  _impl_.referrers_.InternalSwap(&other->_impl_.referrers_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.url_, &other->_impl_.url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_user_name_, &other->_impl_.profile_user_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.profile_identifier_, &other->_impl_.profile_identifier_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.web_app_signed_in_account_, &other->_impl_.web_app_signed_in_account_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.tab_title_, &other->_impl_.tab_title_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.server_scan_latency_millis_)
      + sizeof(UrlFilteringInterstitialEvent::_impl_.server_scan_latency_millis_)
      - PROTOBUF_FIELD_OFFSET(UrlFilteringInterstitialEvent, _impl_.url_info_)>(
          reinterpret_cast<char*>(&_impl_.url_info_),
          reinterpret_cast<char*>(&other->_impl_.url_info_));
}

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

void ExtensionTelemetryEvent::clear_extension_telemetry_report() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.extension_telemetry_report_ != nullptr) _impl_.extension_telemetry_report_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
ExtensionTelemetryEvent::ExtensionTelemetryEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, ExtensionTelemetryEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.ExtensionTelemetryEvent)
}
PROTOBUF_NDEBUG_INLINE ExtensionTelemetryEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::ExtensionTelemetryEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        security_agents_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::ExtensionTelemetryEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ExtensionTelemetryEvent, _impl_.security_agents_)>()
          , from.security_agents_
        }
        ,
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.ExtensionTelemetryEvent)
}
PROTOBUF_NDEBUG_INLINE ExtensionTelemetryEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        security_agents_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::ExtensionTelemetryEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::ExtensionTelemetryEvent, _impl_.security_agents_)>()
         }
        ,
        profile_user_name_(arena),
        profile_identifier_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ExtensionTelemetryEvent_class_data_ =
    ExtensionTelemetryEvent::InternalGenerateClassData_(ExtensionTelemetryEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ExtensionTelemetryEvent::GetClassData() const {
  return ExtensionTelemetryEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ExtensionTelemetryEvent::GetClassData() const {
  return ExtensionTelemetryEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ExtensionTelemetryEvent::ParseTableT_
    ExtensionTelemetryEvent::_table_ =
        ExtensionTelemetryEvent::InternalGenerateParseTable_(ExtensionTelemetryEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void ExtensionTelemetryEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.ExtensionTelemetryEvent)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.security_agents_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.extension_telemetry_report_ != nullptr);
      _impl_.extension_telemetry_report_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .safe_browsing.ExtensionTelemetryReportRequest extension_telemetry_report = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.extension_telemetry_report_, this_._impl_.extension_telemetry_report_->GetCachedSize(), target,
        stream);
  }

  // string profile_user_name = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ExtensionTelemetryEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // string profile_identifier = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.ExtensionTelemetryEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_security_agents_size());
         i < n; i++) {
      const auto& repfield = this_._internal_security_agents().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              4, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .chrome.cros.reporting.proto.SecurityAgent security_agents = 4;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_security_agents_size();
      for (const auto& msg : this_._internal_security_agents()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string profile_user_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .safe_browsing.ExtensionTelemetryReportRequest extension_telemetry_report = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.extension_telemetry_report_);
    }
  }
  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 ExtensionTelemetryEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ExtensionTelemetryEvent*>(&to_msg);
  auto& from = static_cast<const ExtensionTelemetryEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.ExtensionTelemetryEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_security_agents()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_security_agents());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.extension_telemetry_report_ != nullptr);
      if (_this->_impl_.extension_telemetry_report_ == nullptr) {
        _this->_impl_.extension_telemetry_report_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.extension_telemetry_report_);
      } else {
        _this->_impl_.extension_telemetry_report_->MergeFrom(*from._impl_.extension_telemetry_report_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void ExtensionTelemetryEvent::CopyFrom(const ExtensionTelemetryEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.ExtensionTelemetryEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

UrlNavigationEvent::UrlNavigationEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, UrlNavigationEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.UrlNavigationEvent)
}
PROTOBUF_NDEBUG_INLINE UrlNavigationEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::UrlNavigationEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::UrlNavigationEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlNavigationEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.UrlNavigationEvent)
}
PROTOBUF_NDEBUG_INLINE UrlNavigationEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::UrlNavigationEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::UrlNavigationEvent, _impl_.referrers_)>()
         }
        ,
        profile_user_name_(arena),
        profile_identifier_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite UrlNavigationEvent_class_data_ =
    UrlNavigationEvent::InternalGenerateClassData_(UrlNavigationEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
UrlNavigationEvent::GetClassData() const {
  return UrlNavigationEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
UrlNavigationEvent::GetClassData() const {
  return UrlNavigationEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const UrlNavigationEvent::ParseTableT_
    UrlNavigationEvent::_table_ =
        UrlNavigationEvent::InternalGenerateParseTable_(UrlNavigationEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void UrlNavigationEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.UrlNavigationEvent)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              2, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string profile_user_name = 3;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlNavigationEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_identifier = 4;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.UrlNavigationEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(4, _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:chrome.cros.reporting.proto.UrlNavigationEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string profile_user_name = 3;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 4;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_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 UrlNavigationEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<UrlNavigationEvent*>(&to_msg);
  auto& from = static_cast<const UrlNavigationEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.UrlNavigationEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void UrlNavigationEvent::CopyFrom(const UrlNavigationEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.UrlNavigationEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

SuspiciousURLEvent::SuspiciousURLEvent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SuspiciousURLEvent_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.SuspiciousURLEvent)
}
PROTOBUF_NDEBUG_INLINE SuspiciousURLEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::SuspiciousURLEvent& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        referrers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::chrome::cros::reporting::proto::SuspiciousURLEvent,
              PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SuspiciousURLEvent, _impl_.referrers_)>()
          , from.referrers_
        }
        ,
        profile_user_name_(arena, from.profile_user_name_),
        profile_identifier_(arena, from.profile_identifier_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.SuspiciousURLEvent)
}
PROTOBUF_NDEBUG_INLINE SuspiciousURLEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        referrers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::SuspiciousURLEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::SuspiciousURLEvent, _impl_.referrers_)>()
         }
        ,
        profile_user_name_(arena),
        profile_identifier_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SuspiciousURLEvent_class_data_ =
    SuspiciousURLEvent::InternalGenerateClassData_(SuspiciousURLEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SuspiciousURLEvent::GetClassData() const {
  return SuspiciousURLEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SuspiciousURLEvent::GetClassData() const {
  return SuspiciousURLEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const SuspiciousURLEvent::ParseTableT_
    SuspiciousURLEvent::_table_ =
        SuspiciousURLEvent::InternalGenerateParseTable_(SuspiciousURLEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void SuspiciousURLEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.SuspiciousURLEvent)
  ::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, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.referrers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.profile_user_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.profile_identifier_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.url_info_ != nullptr);
      _impl_.url_info_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.url_info_, this_._impl_.url_info_->GetCachedSize(), target,
        stream);
  }

  // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_referrers_size());
         i < n; i++) {
      const auto& repfield = this_._internal_referrers().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              2, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // string profile_user_name = 3;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_profile_user_name().empty()) {
      const ::std::string& _s = this_._internal_profile_user_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SuspiciousURLEvent.profile_user_name");
      target = stream->WriteStringMaybeAliased(3, _s, target);
    }
  }

  // string profile_identifier = 4;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_profile_identifier().empty()) {
      const ::std::string& _s = this_._internal_profile_identifier();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.SuspiciousURLEvent.profile_identifier");
      target = stream->WriteStringMaybeAliased(4, _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:chrome.cros.reporting.proto.SuspiciousURLEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .chrome.cros.reporting.proto.UrlInfo referrers = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_referrers_size();
      for (const auto& msg : this_._internal_referrers()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // string profile_user_name = 3;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_profile_user_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_user_name());
      }
    }
    // string profile_identifier = 4;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_profile_identifier().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_profile_identifier());
      }
    }
    // .chrome.cros.reporting.proto.UrlInfo url_info = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.url_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 SuspiciousURLEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SuspiciousURLEvent*>(&to_msg);
  auto& from = static_cast<const SuspiciousURLEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.SuspiciousURLEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_referrers()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_referrers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_profile_user_name().empty()) {
        _this->_internal_set_profile_user_name(from._internal_profile_user_name());
      } else {
        if (_this->_impl_.profile_user_name_.IsDefault()) {
          _this->_internal_set_profile_user_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_profile_identifier().empty()) {
        _this->_internal_set_profile_identifier(from._internal_profile_identifier());
      } else {
        if (_this->_impl_.profile_identifier_.IsDefault()) {
          _this->_internal_set_profile_identifier("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.url_info_ != nullptr);
      if (_this->_impl_.url_info_ == nullptr) {
        _this->_impl_.url_info_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.url_info_);
      } else {
        _this->_impl_.url_info_->MergeFrom(*from._impl_.url_info_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void SuspiciousURLEvent::CopyFrom(const SuspiciousURLEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.SuspiciousURLEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

TelomereEvent_TelomereLog::TelomereEvent_TelomereLog(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, TelomereEvent_TelomereLog_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
}
PROTOBUF_NDEBUG_INLINE TelomereEvent_TelomereLog::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::chrome::cros::reporting::proto::TelomereEvent_TelomereLog& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        log_type_(arena, from.log_type_),
        log_data_(arena, from.log_data_) {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  TelomereEvent_TelomereLog* 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:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
}
PROTOBUF_NDEBUG_INLINE TelomereEvent_TelomereLog::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        log_type_(arena),
        log_data_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite TelomereEvent_TelomereLog_class_data_ =
    TelomereEvent_TelomereLog::InternalGenerateClassData_(TelomereEvent_TelomereLog_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
TelomereEvent_TelomereLog::GetClassData() const {
  return TelomereEvent_TelomereLog_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
TelomereEvent_TelomereLog::GetClassData() const {
  return TelomereEvent_TelomereLog_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const TelomereEvent_TelomereLog::ParseTableT_
    TelomereEvent_TelomereLog::_table_ =
        TelomereEvent_TelomereLog::InternalGenerateParseTable_(TelomereEvent_TelomereLog_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void TelomereEvent_TelomereLog::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
  ::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_.log_type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.log_data_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string log_type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_log_type().empty()) {
      const ::std::string& _s = this_._internal_log_type();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TelomereEvent.TelomereLog.log_type");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string log_data = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_log_data().empty()) {
      const ::std::string& _s = this_._internal_log_data();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.TelomereEvent.TelomereLog.log_data");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t TelomereEvent_TelomereLog::ByteSizeLong(const MessageLite& base) {
  const TelomereEvent_TelomereLog& this_ = static_cast<const TelomereEvent_TelomereLog&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t TelomereEvent_TelomereLog::ByteSizeLong() const {
  const TelomereEvent_TelomereLog& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
  ::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 log_type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_log_type().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_log_type());
      }
    }
    // string log_data = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_log_data().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_log_data());
      }
    }
  }
  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 TelomereEvent_TelomereLog::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<TelomereEvent_TelomereLog*>(&to_msg);
  auto& from = static_cast<const TelomereEvent_TelomereLog&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
  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_log_type().empty()) {
        _this->_internal_set_log_type(from._internal_log_type());
      } else {
        if (_this->_impl_.log_type_.IsDefault()) {
          _this->_internal_set_log_type("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_log_data().empty()) {
        _this->_internal_set_log_data(from._internal_log_data());
      } else {
        if (_this->_impl_.log_data_.IsDefault()) {
          _this->_internal_set_log_data("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void TelomereEvent_TelomereLog::CopyFrom(const TelomereEvent_TelomereLog& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.TelomereEvent.TelomereLog)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void TelomereEvent_TelomereLog::InternalSwap(TelomereEvent_TelomereLog* 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_.log_type_, &other->_impl_.log_type_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.log_data_, &other->_impl_.log_data_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  TelomereEvent* 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:chrome.cros.reporting.proto.TelomereEvent)
}
PROTOBUF_NDEBUG_INLINE TelomereEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        logs_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::TelomereEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::TelomereEvent, _impl_.logs_)>()
         }
     {}

inline void TelomereEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
TelomereEvent::~TelomereEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.TelomereEvent)
  SharedDtor(*this);
}
inline void TelomereEvent::SharedDtor(MessageLite& self) {
  TelomereEvent& this_ = static_cast<TelomereEvent&>(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 TelomereEvent_class_data_ =
    TelomereEvent::InternalGenerateClassData_(TelomereEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
TelomereEvent::GetClassData() const {
  return TelomereEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
TelomereEvent::GetClassData() const {
  return TelomereEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const TelomereEvent::ParseTableT_
    TelomereEvent::_table_ =
        TelomereEvent::InternalGenerateParseTable_(TelomereEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void TelomereEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.TelomereEvent)
  ::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_.logs_.Clear();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // repeated .chrome.cros.reporting.proto.TelomereEvent.TelomereLog logs = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_logs_size());
         i < n; i++) {
      const auto& repfield = this_._internal_logs().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              1, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
   {
    // repeated .chrome.cros.reporting.proto.TelomereEvent.TelomereLog logs = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_logs_size();
      for (const auto& msg : this_._internal_logs()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
  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 TelomereEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<TelomereEvent*>(&to_msg);
  auto& from = static_cast<const TelomereEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.TelomereEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

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

void TelomereEvent::CopyFrom(const TelomereEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.TelomereEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

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

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

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

  // @@protoc_insertion_point(copy_constructor:chrome.cros.reporting.proto.BrowserLaunchEvent)
}
PROTOBUF_NDEBUG_INLINE BrowserLaunchEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        command_line_switch_keys_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::chrome::cros::reporting::proto::BrowserLaunchEvent,
            PROTOBUF_FIELD_OFFSET(::chrome::cros::reporting::proto::BrowserLaunchEvent, _impl_.command_line_switch_keys_)>()
         }
     {}

inline void BrowserLaunchEvent::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.launch_time_millis_ = {};
}
BrowserLaunchEvent::~BrowserLaunchEvent() {
  // @@protoc_insertion_point(destructor:chrome.cros.reporting.proto.BrowserLaunchEvent)
  SharedDtor(*this);
}
inline void BrowserLaunchEvent::SharedDtor(MessageLite& self) {
  BrowserLaunchEvent& this_ = static_cast<BrowserLaunchEvent&>(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 BrowserLaunchEvent_class_data_ =
    BrowserLaunchEvent::InternalGenerateClassData_(BrowserLaunchEvent_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
BrowserLaunchEvent::GetClassData() const {
  return BrowserLaunchEvent_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
BrowserLaunchEvent::GetClassData() const {
  return BrowserLaunchEvent_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const BrowserLaunchEvent::ParseTableT_
    BrowserLaunchEvent::_table_ =
        BrowserLaunchEvent::InternalGenerateParseTable_(BrowserLaunchEvent_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void BrowserLaunchEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:chrome.cros.reporting.proto.BrowserLaunchEvent)
  ::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_.command_line_switch_keys_.Clear();
  }
  _impl_.launch_time_millis_ = ::int64_t{0};
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // int64 launch_time_millis = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (this_._internal_launch_time_millis() != 0) {
      target =
          ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
              stream, this_._internal_launch_time_millis(), target);
    }
  }

  // repeated string command_line_switch_keys = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_command_line_switch_keys_size(); i < n; ++i) {
      const auto& s = this_._internal_command_line_switch_keys().Get(i);
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          s.data(), static_cast<int>(s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "chrome.cros.reporting.proto.BrowserLaunchEvent.command_line_switch_keys");
      target = stream->WriteString(2, s, target);
    }
  }

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

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t BrowserLaunchEvent::ByteSizeLong(const MessageLite& base) {
  const BrowserLaunchEvent& this_ = static_cast<const BrowserLaunchEvent&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t BrowserLaunchEvent::ByteSizeLong() const {
  const BrowserLaunchEvent& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:chrome.cros.reporting.proto.BrowserLaunchEvent)
  ::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)) {
    // repeated string command_line_switch_keys = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_command_line_switch_keys().size());
      for (int i = 0, n = this_._internal_command_line_switch_keys().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_command_line_switch_keys().Get(i));
      }
    }
    // int64 launch_time_millis = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (this_._internal_launch_time_millis() != 0) {
        total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
            this_._internal_launch_time_millis());
      }
    }
  }
  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 BrowserLaunchEvent::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<BrowserLaunchEvent*>(&to_msg);
  auto& from = static_cast<const BrowserLaunchEvent&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:chrome.cros.reporting.proto.BrowserLaunchEvent)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_command_line_switch_keys()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_command_line_switch_keys());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (from._internal_launch_time_millis() != 0) {
        _this->_impl_.launch_time_millis_ = from._impl_.launch_time_millis_;
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void BrowserLaunchEvent::CopyFrom(const BrowserLaunchEvent& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:chrome.cros.reporting.proto.BrowserLaunchEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

// @@protoc_insertion_point(namespace_scope)
}  // namespace proto
}  // namespace reporting
}  // namespace cros
}  // namespace chrome
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google
// @@protoc_insertion_point(global_scope)
#include "google/protobuf/port_undef.inc"
