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

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

constexpr WebApkResponse::ParseTableT_ WebApkResponse::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_._has_bits_),
      0, // no _extensions_
      8, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967132,  // 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<::webapk::WebApkResponse>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional bool relax_updates = 8;
      {::_pbi::TcParser::FastV8S1,
       {64, 3, 0,
        PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.relax_updates_)}},
      // optional string package_name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.package_name_)}},
      // optional string version = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.version_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string token = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 2, 0,
        PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.token_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string package_name = 1;
      {PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.package_name_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string version = 2;
      {PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.version_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string token = 6;
      {PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.token_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bool relax_updates = 8;
      {PROTOBUF_FIELD_OFFSET(WebApkResponse, _impl_.relax_updates_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr WebApkResponse::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        package_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        token_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        relax_updates_{false} {}

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

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

constexpr ShareTargetParamsFile::ParseTableT_ ShareTargetParamsFile::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ShareTargetParamsFile, _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<::webapk::ShareTargetParamsFile>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated string accept = 2;
      {::_pbi::TcParser::FastBR1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParamsFile, _impl_.accept_)}},
      // optional string name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParamsFile, _impl_.name_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string name = 1;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParamsFile, _impl_.name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated string accept = 2;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParamsFile, _impl_.accept_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kBytes | ::_fl::kRepSString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr ShareTargetParamsFile::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        accept_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShareTargetParamsFile,
            PROTOBUF_FIELD_OFFSET(::webapk::ShareTargetParamsFile, _impl_.accept_)>()
         }
        ,
        name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr Image::ParseTableT_ Image::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Image, _impl_._has_bits_),
      0, // no _extensions_
      8, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967054,  // 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<::webapk::Image>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .webapk.Image.Usage usages = 8;
      {::_pbi::TcParser::FastEvR1,
       {64, 1, 1,
        PROTOBUF_FIELD_OFFSET(Image, _impl_.usages_)}},
      // optional string src = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(Image, _impl_.src_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string hash = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 3, 0,
        PROTOBUF_FIELD_OFFSET(Image, _impl_.hash_)}},
      // optional bytes image_data = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 4, 0,
        PROTOBUF_FIELD_OFFSET(Image, _impl_.image_data_)}},
      // repeated .webapk.Image.Purpose purposes = 7;
      {::_pbi::TcParser::FastEvR1,
       {56, 0, 0,
        PROTOBUF_FIELD_OFFSET(Image, _impl_.purposes_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string src = 1;
      {PROTOBUF_FIELD_OFFSET(Image, _impl_.src_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string hash = 5;
      {PROTOBUF_FIELD_OFFSET(Image, _impl_.hash_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bytes image_data = 6;
      {PROTOBUF_FIELD_OFFSET(Image, _impl_.image_data_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .webapk.Image.Purpose purposes = 7;
      {PROTOBUF_FIELD_OFFSET(Image, _impl_.purposes_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kEnum)},
      // repeated .webapk.Image.Usage usages = 8;
      {PROTOBUF_FIELD_OFFSET(Image, _impl_.usages_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcRepeated | ::_fl::kEnum)},
    }},
    {{
        {::_pbi::FieldAuxEnumData{}, ::webapk::Image_Purpose_internal_data_},
        {::_pbi::FieldAuxEnumData{}, ::webapk::Image_Usage_internal_data_},
    }},
    {{
    }},
  };
}


inline constexpr Image::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        purposes_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::Image,
            PROTOBUF_FIELD_OFFSET(::webapk::Image, _impl_.purposes_)>()
         }
        ,
        usages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::Image,
            PROTOBUF_FIELD_OFFSET(::webapk::Image, _impl_.usages_)>()
         }
        ,
        src_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        hash_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        image_data_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr ShortcutItem::ParseTableT_ ShortcutItem::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ShortcutItem, _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<::webapk::ShortcutItem>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .webapk.Image icons = 4;
      {::_pbi::TcParser::FastMtR1,
       {34, 0, 0,
        PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.icons_)}},
      // optional string name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.name_)}},
      // optional string short_name = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.short_name_)}},
      // optional string url = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.url_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string name = 1;
      {PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string short_name = 2;
      {PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.short_name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string url = 3;
      {PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.url_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .webapk.Image icons = 4;
      {PROTOBUF_FIELD_OFFSET(ShortcutItem, _impl_.icons_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::Image>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::Image_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr ShortcutItem::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        icons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShortcutItem,
            PROTOBUF_FIELD_OFFSET(::webapk::ShortcutItem, _impl_.icons_)>()
         }
        ,
        name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        short_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr ShareTargetParams::ParseTableT_ ShareTargetParams::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ShareTargetParams, _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<::webapk::ShareTargetParams>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated .webapk.ShareTargetParamsFile files = 4;
      {::_pbi::TcParser::FastMtR1,
       {34, 0, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.files_)}},
      // optional string title = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.title_)}},
      // optional string text = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.text_)}},
      // optional string url = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.url_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string title = 1;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.title_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string text = 2;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.text_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string url = 3;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.url_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .webapk.ShareTargetParamsFile files = 4;
      {PROTOBUF_FIELD_OFFSET(ShareTargetParams, _impl_.files_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::ShareTargetParamsFile>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::ShareTargetParamsFile_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr ShareTargetParams::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        files_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShareTargetParams,
            PROTOBUF_FIELD_OFFSET(::webapk::ShareTargetParams, _impl_.files_)>()
         }
        ,
        title_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        text_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

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

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

constexpr ShareTarget::ParseTableT_ ShareTarget::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_._has_bits_),
      0, // no _extensions_
      5, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967265,  // 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<::webapk::ShareTarget>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional string method = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 1, 0,
        PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.method_)}},
      // optional string enctype = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 2, 0,
        PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.enctype_)}},
      // optional string action = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.action_)}},
      // optional .webapk.ShareTargetParams params = 3;
      {::_pbi::TcParser::FastMtS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.params_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string action = 2;
      {PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.action_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional .webapk.ShareTargetParams params = 3;
      {PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.params_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional string method = 4;
      {PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.method_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string enctype = 5;
      {PROTOBUF_FIELD_OFFSET(ShareTarget, _impl_.enctype_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::ShareTargetParams>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::ShareTargetParams_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr ShareTarget::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        action_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        method_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        enctype_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        params_{nullptr} {}

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

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

constexpr WebAppManifest::ParseTableT_ WebAppManifest::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_._has_bits_),
      0, // no _extensions_
      22, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4290834628,  // skipmap
      offsetof(ParseTableT_, field_entries),
      15,  // 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<::webapk::WebAppManifest>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional string name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 2, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.name_)}},
      // optional string short_name = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 3, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.short_name_)}},
      // optional string id = 19;
      {::_pbi::TcParser::FastBS2,
       {410, 9, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.id_)}},
      // optional string start_url = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 4, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.start_url_)}},
      // repeated string scopes = 5;
      {::_pbi::TcParser::FastBR1,
       {42, 0, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.scopes_)}},
      // repeated .webapk.Image icons = 6;
      {::_pbi::TcParser::FastMtR1,
       {50, 1, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.icons_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string orientation = 9;
      {::_pbi::TcParser::FastBS1,
       {74, 5, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.orientation_)}},
      // optional string display_mode = 10;
      {::_pbi::TcParser::FastBS1,
       {82, 6, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.display_mode_)}},
      // optional string theme_color = 11;
      {::_pbi::TcParser::FastBS1,
       {90, 7, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.theme_color_)}},
      // optional string background_color = 12;
      {::_pbi::TcParser::FastBS1,
       {98, 8, 0,
        PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.background_color_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string name = 1;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string short_name = 2;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.short_name_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string start_url = 4;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.start_url_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated string scopes = 5;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.scopes_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kBytes | ::_fl::kRepSString)},
      // repeated .webapk.Image icons = 6;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.icons_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional string orientation = 9;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.orientation_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string display_mode = 10;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.display_mode_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string theme_color = 11;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.theme_color_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string background_color = 12;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.background_color_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .webapk.ShareTarget share_targets = 17;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.share_targets_), _Internal::kHasBitsOffset + 13, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .webapk.ShortcutItem shortcuts = 18;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.shortcuts_), _Internal::kHasBitsOffset + 14, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional string id = 19;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.id_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string dark_theme_color = 20;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.dark_theme_color_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string dark_background_color = 21;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.dark_background_color_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bool has_custom_name = 22;
      {PROTOBUF_FIELD_OFFSET(WebAppManifest, _impl_.has_custom_name_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::Image>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::Image_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::ShareTarget>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::ShareTarget_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::ShortcutItem>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::ShortcutItem_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr WebAppManifest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        scopes_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.scopes_)>()
         }
        ,
        icons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.icons_)>()
         }
        ,
        name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        short_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        start_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        orientation_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        display_mode_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        theme_color_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        background_color_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        dark_theme_color_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        dark_background_color_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        has_custom_name_{false},
        share_targets_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.share_targets_)>()
         }
        ,
        shortcuts_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.shortcuts_)>()
         }
     {}

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

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

constexpr WebApk::ParseTableT_ WebApk::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(WebApk, _impl_._has_bits_),
      0, // no _extensions_
      14, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294951432,  // skipmap
      offsetof(ParseTableT_, field_entries),
      12,  // 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<::webapk::WebApk>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional string package_name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.package_name_)}},
      // optional string version = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.version_)}},
      // optional string manifest_url = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.manifest_url_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string requester_application_package = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 4, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.requester_application_package_)}},
      // optional string requester_application_version = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 5, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.requester_application_version_)}},
      // optional .webapk.WebAppManifest manifest = 7;
      {::_pbi::TcParser::FastMtS1,
       {58, 9, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.manifest_)}},
      // optional string android_abi = 8;
      {::_pbi::TcParser::FastBS1,
       {66, 6, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.android_abi_)}},
      // optional bool stale_manifest = 9;
      {::_pbi::TcParser::FastV8S1,
       {72, 10, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.stale_manifest_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated .webapk.WebApk.UpdateReason update_reasons = 11;
      {::_pbi::TcParser::FastEvR1,
       {88, 0, 1,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.update_reasons_)}},
      // optional string android_version = 12;
      {::_pbi::TcParser::FastBS1,
       {98, 7, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.android_version_)}},
      // optional bool app_identity_update_supported = 13;
      {::_pbi::TcParser::FastV8S1,
       {104, 11, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.app_identity_update_supported_)}},
      // optional string app_key = 14;
      {::_pbi::TcParser::FastBS1,
       {114, 8, 0,
        PROTOBUF_FIELD_OFFSET(WebApk, _impl_.app_key_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string package_name = 1;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.package_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string version = 2;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.version_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string manifest_url = 3;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.manifest_url_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string requester_application_package = 5;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.requester_application_package_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string requester_application_version = 6;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.requester_application_version_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional .webapk.WebAppManifest manifest = 7;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.manifest_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional string android_abi = 8;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.android_abi_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bool stale_manifest = 9;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.stale_manifest_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // repeated .webapk.WebApk.UpdateReason update_reasons = 11;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.update_reasons_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kEnum)},
      // optional string android_version = 12;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.android_version_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bool app_identity_update_supported = 13;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.app_identity_update_supported_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional string app_key = 14;
      {PROTOBUF_FIELD_OFFSET(WebApk, _impl_.app_key_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::webapk::WebAppManifest>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::webapk::WebAppManifest_globals_},
        #endif
        {::_pbi::FieldAuxEnumData{}, ::webapk::WebApk_UpdateReason_internal_data_},
    }},
    {{
    }},
  };
}


inline constexpr WebApk::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        update_reasons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebApk,
            PROTOBUF_FIELD_OFFSET(::webapk::WebApk, _impl_.update_reasons_)>()
         }
        ,
        package_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        manifest_url_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        requester_application_package_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        requester_application_version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        android_abi_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        android_version_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        app_key_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        manifest_{nullptr},
        stale_manifest_{false},
        app_identity_update_supported_{false} {}

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

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST WebApkGlobalsTypeInternal WebApk_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* WebApk_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return WebApk_globals_.GetClassData();
#else
  return WebApk_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
}  // namespace webapk
namespace webapk {
PROTOBUF_CONSTINIT const uint32_t WebApk_UpdateReason_internal_data_[] = {
    196609u, 32u, 131070u, };
static const char WebApk_UpdateReason_names[] = {
    "BACKGROUND_COLOR_DIFFERS"
    "DARK_BACKGROUND_COLOR_DIFFERS"
    "DARK_THEME_COLOR_DIFFERS"
    "DISPLAY_MODE_DIFFERS"
    "MANUALLY_TRIGGERED"
    "NAME_DIFFERS"
    "NONE"
    "OLD_SHELL_APK"
    "ORIENTATION_DIFFERS"
    "PRIMARY_ICON_CHANGE_BELOW_THRESHOLD"
    "PRIMARY_ICON_HASH_DIFFERS"
    "PRIMARY_ICON_MASKABLE_DIFFERS"
    "SCOPE_DIFFERS"
    "SHORTCUTS_DIFFER"
    "SHORT_NAME_DIFFERS"
    "SPLASH_ICON_HASH_DIFFERS"
    "START_URL_DIFFERS"
    "THEME_COLOR_DIFFERS"
    "WEB_SHARE_TARGET_DIFFERS"
};

static const ::google::protobuf::internal::EnumEntry WebApk_UpdateReason_entries[] = {
    {{&WebApk_UpdateReason_names[0], 24}, 9},
    {{&WebApk_UpdateReason_names[24], 29}, 18},
    {{&WebApk_UpdateReason_names[53], 24}, 19},
    {{&WebApk_UpdateReason_names[77], 20}, 12},
    {{&WebApk_UpdateReason_names[97], 18}, 14},
    {{&WebApk_UpdateReason_names[115], 12}, 8},
    {{&WebApk_UpdateReason_names[127], 4}, 1},
    {{&WebApk_UpdateReason_names[131], 13}, 2},
    {{&WebApk_UpdateReason_names[144], 19}, 11},
    {{&WebApk_UpdateReason_names[163], 35}, 20},
    {{&WebApk_UpdateReason_names[198], 25}, 3},
    {{&WebApk_UpdateReason_names[223], 29}, 15},
    {{&WebApk_UpdateReason_names[252], 13}, 5},
    {{&WebApk_UpdateReason_names[265], 16}, 16},
    {{&WebApk_UpdateReason_names[281], 18}, 7},
    {{&WebApk_UpdateReason_names[299], 24}, 17},
    {{&WebApk_UpdateReason_names[323], 17}, 6},
    {{&WebApk_UpdateReason_names[340], 19}, 10},
    {{&WebApk_UpdateReason_names[359], 24}, 13},
};

static const int WebApk_UpdateReason_entries_by_number[] = {
    6,  // 1 -> NONE
    7,  // 2 -> OLD_SHELL_APK
    10,  // 3 -> PRIMARY_ICON_HASH_DIFFERS
    12,  // 5 -> SCOPE_DIFFERS
    16,  // 6 -> START_URL_DIFFERS
    14,  // 7 -> SHORT_NAME_DIFFERS
    5,  // 8 -> NAME_DIFFERS
    0,  // 9 -> BACKGROUND_COLOR_DIFFERS
    17,  // 10 -> THEME_COLOR_DIFFERS
    8,  // 11 -> ORIENTATION_DIFFERS
    3,  // 12 -> DISPLAY_MODE_DIFFERS
    18,  // 13 -> WEB_SHARE_TARGET_DIFFERS
    4,  // 14 -> MANUALLY_TRIGGERED
    11,  // 15 -> PRIMARY_ICON_MASKABLE_DIFFERS
    13,  // 16 -> SHORTCUTS_DIFFER
    15,  // 17 -> SPLASH_ICON_HASH_DIFFERS
    1,  // 18 -> DARK_BACKGROUND_COLOR_DIFFERS
    2,  // 19 -> DARK_THEME_COLOR_DIFFERS
    9,  // 20 -> PRIMARY_ICON_CHANGE_BELOW_THRESHOLD
};

bool WebApk_UpdateReason_Parse(::absl::string_view name,
                                  WebApk_UpdateReason* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      WebApk_UpdateReason_entries, 19, name, &int_value);
  if (success) {
    *value = static_cast<WebApk_UpdateReason>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    WebApk_UpdateReason_strings[19] = {};

const ::std::string& WebApk_UpdateReason_Name(WebApk_UpdateReason value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      WebApk_UpdateReason_entries, WebApk_UpdateReason_entries_by_number, 19,
      WebApk_UpdateReason_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(WebApk_UpdateReason_entries,
                                  WebApk_UpdateReason_entries_by_number,
                                  19, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : WebApk_UpdateReason_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t Image_Usage_internal_data_[] = {
    65537u, 32u, 6u, };
static const char Image_Usage_names[] = {
    "PRIMARY_ICON"
    "SHORTCUT_ICON"
    "SPLASH_ICON"
};

static const ::google::protobuf::internal::EnumEntry Image_Usage_entries[] = {
    {{&Image_Usage_names[0], 12}, 1},
    {{&Image_Usage_names[12], 13}, 4},
    {{&Image_Usage_names[25], 11}, 3},
};

static const int Image_Usage_entries_by_number[] = {
    0,  // 1 -> PRIMARY_ICON
    2,  // 3 -> SPLASH_ICON
    1,  // 4 -> SHORTCUT_ICON
};

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

const ::std::string& Image_Usage_Name(Image_Usage value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      Image_Usage_entries, Image_Usage_entries_by_number, 3,
      Image_Usage_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(Image_Usage_entries,
                                  Image_Usage_entries_by_number,
                                  3, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : Image_Usage_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t Image_Purpose_internal_data_[] = {
    131072u, 32u, 2u, };
static const char Image_Purpose_names[] = {
    "ANY"
    "MASKABLE"
    "PURPOSE_UNDEFINED"
};

static const ::google::protobuf::internal::EnumEntry Image_Purpose_entries[] = {
    {{&Image_Purpose_names[0], 3}, 1},
    {{&Image_Purpose_names[3], 8}, 3},
    {{&Image_Purpose_names[11], 17}, 0},
};

static const int Image_Purpose_entries_by_number[] = {
    2,  // 0 -> PURPOSE_UNDEFINED
    0,  // 1 -> ANY
    1,  // 3 -> MASKABLE
};

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

const ::std::string& Image_Purpose_Name(Image_Purpose value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      Image_Purpose_entries, Image_Purpose_entries_by_number, 3,
      Image_Purpose_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(Image_Purpose_entries,
                                  Image_Purpose_entries_by_number,
                                  3, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : Image_Purpose_strings[idx].get();
}
// ===================================================================

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

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

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

  // @@protoc_insertion_point(copy_constructor:webapk.WebApkResponse)
}
PROTOBUF_NDEBUG_INLINE WebApkResponse::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        package_name_(arena),
        version_(arena),
        token_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite WebApkResponse_class_data_ =
    WebApkResponse::InternalGenerateClassData_(WebApkResponse_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebApkResponse::GetClassData() const {
  return WebApkResponse_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebApkResponse::GetClassData() const {
  return WebApkResponse_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const WebApkResponse::ParseTableT_
    WebApkResponse::_table_ =
        WebApkResponse::InternalGenerateParseTable_(WebApkResponse_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void WebApkResponse::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.WebApkResponse)
  ::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_.package_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.version_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.token_.ClearNonDefaultToEmpty();
    }
  }
  _impl_.relax_updates_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

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

  // optional bool relax_updates = 8;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        8, this_._internal_relax_updates(), 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:webapk.WebApkResponse)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00000008U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    // optional string package_name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_package_name());
    }
    // optional string version = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_version());
    }
    // optional string token = 6;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_token());
    }
  }
  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 WebApkResponse::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<WebApkResponse*>(&to_msg);
  auto& from = static_cast<const WebApkResponse&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.WebApkResponse)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_package_name(from._internal_package_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_version(from._internal_version());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_token(from._internal_token());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.relax_updates_ = from._impl_.relax_updates_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void WebApkResponse::InternalSwap(WebApkResponse* 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_.package_name_, &other->_impl_.package_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.version_, &other->_impl_.version_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.token_, &other->_impl_.token_, arena);
  swap(_impl_.relax_updates_, other->_impl_.relax_updates_);
}

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

WebApk::WebApk(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, WebApk_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:webapk.WebApk)
}
PROTOBUF_NDEBUG_INLINE WebApk::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::webapk::WebApk& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        update_reasons_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::webapk::WebApk,
              PROTOBUF_FIELD_OFFSET(::webapk::WebApk, _impl_.update_reasons_)>()
          , from.update_reasons_
        }
        ,
        package_name_(arena, from.package_name_),
        version_(arena, from.version_),
        manifest_url_(arena, from.manifest_url_),
        requester_application_package_(arena, from.requester_application_package_),
        requester_application_version_(arena, from.requester_application_version_),
        android_abi_(arena, from.android_abi_),
        android_version_(arena, from.android_version_),
        app_key_(arena, from.app_key_) {}

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

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

  // @@protoc_insertion_point(copy_constructor:webapk.WebApk)
}
PROTOBUF_NDEBUG_INLINE WebApk::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        update_reasons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebApk,
            PROTOBUF_FIELD_OFFSET(::webapk::WebApk, _impl_.update_reasons_)>()
         }
        ,
        package_name_(arena),
        version_(arena),
        manifest_url_(arena),
        requester_application_package_(arena),
        requester_application_version_(arena),
        android_abi_(arena),
        android_version_(arena),
        app_key_(arena) {}

inline void WebApk::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, manifest_),
           0,
           offsetof(Impl_, app_identity_update_supported_) -
               offsetof(Impl_, manifest_) +
               sizeof(Impl_::app_identity_update_supported_));
}
WebApk::~WebApk() {
  // @@protoc_insertion_point(destructor:webapk.WebApk)
  SharedDtor(*this);
}
inline void WebApk::SharedDtor(MessageLite& self) {
  WebApk& this_ = static_cast<WebApk&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.package_name_.Destroy();
  this_._impl_.version_.Destroy();
  this_._impl_.manifest_url_.Destroy();
  this_._impl_.requester_application_package_.Destroy();
  this_._impl_.requester_application_version_.Destroy();
  this_._impl_.android_abi_.Destroy();
  this_._impl_.android_version_.Destroy();
  this_._impl_.app_key_.Destroy();
  delete this_._impl_.manifest_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite WebApk_class_data_ =
    WebApk::InternalGenerateClassData_(WebApk_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebApk::GetClassData() const {
  return WebApk_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebApk::GetClassData() const {
  return WebApk_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const WebApk::ParseTableT_
    WebApk::_table_ =
        WebApk::InternalGenerateParseTable_(WebApk_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void WebApk::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.WebApk)
  ::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_.update_reasons_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.package_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.version_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.manifest_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.requester_application_package_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.requester_application_version_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.android_abi_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.android_version_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.app_key_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(_impl_.manifest_ != nullptr);
      _impl_.manifest_->Clear();
    }
  }
  ::memset(&_impl_.stale_manifest_, 0, static_cast<::size_t>(
      reinterpret_cast<char*>(&_impl_.app_identity_update_supported_) -
      reinterpret_cast<char*>(&_impl_.stale_manifest_)) + sizeof(_impl_.app_identity_update_supported_));
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

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

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

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

  // optional .webapk.WebAppManifest manifest = 7;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        7, *this_._impl_.manifest_, this_._impl_.manifest_->GetCachedSize(), target,
        stream);
  }

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

  // optional bool stale_manifest = 9;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        9, this_._internal_stale_manifest(), target);
  }

  // repeated .webapk.WebApk.UpdateReason update_reasons = 11;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_update_reasons_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          11, static_cast<::webapk::WebApk_UpdateReason>(this_._internal_update_reasons().Get(i)),
          target);
    }
  }

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

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

  // optional string app_key = 14;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    const ::std::string& _s = this_._internal_app_key();
    target = stream->WriteStringMaybeAliased(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:webapk.WebApk)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += ::absl::popcount(0x00000c00U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .webapk.WebApk.UpdateReason update_reasons = 11;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ::size_t data_size =
          ::_pbi::WireFormatLite::EnumSize(this_._internal_update_reasons());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_update_reasons_size());
      total_size += data_size + tag_size;
    }
    // optional string package_name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_package_name());
    }
    // optional string version = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_version());
    }
    // optional string manifest_url = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_manifest_url());
    }
    // optional string requester_application_package = 5;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_requester_application_package());
    }
    // optional string requester_application_version = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_requester_application_version());
    }
    // optional string android_abi = 8;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_android_abi());
    }
    // optional string android_version = 12;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_android_version());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    // optional string app_key = 14;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_app_key());
    }
    // optional .webapk.WebAppManifest manifest = 7;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.manifest_);
    }
  }
  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 WebApk::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<WebApk*>(&to_msg);
  auto& from = static_cast<const WebApk&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.WebApk)
  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_update_reasons()->MergeFrom(from._internal_update_reasons());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_package_name(from._internal_package_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_version(from._internal_version());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_manifest_url(from._internal_manifest_url());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_requester_application_package(from._internal_requester_application_package());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_requester_application_version(from._internal_requester_application_version());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_internal_set_android_abi(from._internal_android_abi());
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_internal_set_android_version(from._internal_android_version());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_internal_set_app_key(from._internal_app_key());
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(from._impl_.manifest_ != nullptr);
      if (_this->_impl_.manifest_ == nullptr) {
        _this->_impl_.manifest_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.manifest_);
      } else {
        _this->_impl_.manifest_->MergeFrom(*from._impl_.manifest_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.stale_manifest_ = from._impl_.stale_manifest_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.app_identity_update_supported_ = from._impl_.app_identity_update_supported_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void WebApk::InternalSwap(WebApk* 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_.update_reasons_.InternalSwap(&other->_impl_.update_reasons_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.package_name_, &other->_impl_.package_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.version_, &other->_impl_.version_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.manifest_url_, &other->_impl_.manifest_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.requester_application_package_, &other->_impl_.requester_application_package_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.requester_application_version_, &other->_impl_.requester_application_version_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.android_abi_, &other->_impl_.android_abi_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.android_version_, &other->_impl_.android_version_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.app_key_, &other->_impl_.app_key_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(WebApk, _impl_.app_identity_update_supported_)
      + sizeof(WebApk::_impl_.app_identity_update_supported_)
      - PROTOBUF_FIELD_OFFSET(WebApk, _impl_.manifest_)>(
          reinterpret_cast<char*>(&_impl_.manifest_),
          reinterpret_cast<char*>(&other->_impl_.manifest_));
}

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

WebAppManifest::WebAppManifest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, WebAppManifest_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:webapk.WebAppManifest)
}
PROTOBUF_NDEBUG_INLINE WebAppManifest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::webapk::WebAppManifest& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        scopes_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::webapk::WebAppManifest,
              PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.scopes_)>()
          , from.scopes_
        }
        ,
        icons_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::webapk::WebAppManifest,
              PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.icons_)>()
          , from.icons_
        }
        ,
        name_(arena, from.name_),
        short_name_(arena, from.short_name_),
        start_url_(arena, from.start_url_),
        orientation_(arena, from.orientation_),
        display_mode_(arena, from.display_mode_),
        theme_color_(arena, from.theme_color_),
        background_color_(arena, from.background_color_),
        id_(arena, from.id_),
        dark_theme_color_(arena, from.dark_theme_color_),
        dark_background_color_(arena, from.dark_background_color_),
        share_targets_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::webapk::WebAppManifest,
              PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.share_targets_)>()
          , from.share_targets_
        }
        ,
        shortcuts_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::webapk::WebAppManifest,
              PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.shortcuts_)>()
          , from.shortcuts_
        }
     {}

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

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

  // @@protoc_insertion_point(copy_constructor:webapk.WebAppManifest)
}
PROTOBUF_NDEBUG_INLINE WebAppManifest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        scopes_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.scopes_)>()
         }
        ,
        icons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.icons_)>()
         }
        ,
        name_(arena),
        short_name_(arena),
        start_url_(arena),
        orientation_(arena),
        display_mode_(arena),
        theme_color_(arena),
        background_color_(arena),
        id_(arena),
        dark_theme_color_(arena),
        dark_background_color_(arena),
        share_targets_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.share_targets_)>()
         }
        ,
        shortcuts_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::WebAppManifest,
            PROTOBUF_FIELD_OFFSET(::webapk::WebAppManifest, _impl_.shortcuts_)>()
         }
     {}

inline void WebAppManifest::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.has_custom_name_ = {};
}
WebAppManifest::~WebAppManifest() {
  // @@protoc_insertion_point(destructor:webapk.WebAppManifest)
  SharedDtor(*this);
}
inline void WebAppManifest::SharedDtor(MessageLite& self) {
  WebAppManifest& this_ = static_cast<WebAppManifest&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.name_.Destroy();
  this_._impl_.short_name_.Destroy();
  this_._impl_.start_url_.Destroy();
  this_._impl_.orientation_.Destroy();
  this_._impl_.display_mode_.Destroy();
  this_._impl_.theme_color_.Destroy();
  this_._impl_.background_color_.Destroy();
  this_._impl_.id_.Destroy();
  this_._impl_.dark_theme_color_.Destroy();
  this_._impl_.dark_background_color_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite WebAppManifest_class_data_ =
    WebAppManifest::InternalGenerateClassData_(WebAppManifest_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebAppManifest::GetClassData() const {
  return WebAppManifest_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebAppManifest::GetClassData() const {
  return WebAppManifest_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const WebAppManifest::ParseTableT_
    WebAppManifest::_table_ =
        WebAppManifest::InternalGenerateParseTable_(WebAppManifest_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void WebAppManifest::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.WebAppManifest)
  ::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_.scopes_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.icons_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.short_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.start_url_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.orientation_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.display_mode_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.theme_color_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.background_color_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _impl_.dark_theme_color_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _impl_.dark_background_color_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007000U)) {
    _impl_.has_custom_name_ = false;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _impl_.share_targets_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _impl_.shortcuts_.Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

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

  // repeated string scopes = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_scopes_size(); i < n; ++i) {
      const auto& s = this_._internal_scopes().Get(i);
      target = stream->WriteString(5, s, target);
    }
  }

  // repeated .webapk.Image icons = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_icons_size());
         i < n; i++) {
      const auto& repfield = this_._internal_icons().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              6, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

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

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

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

  // repeated .webapk.ShareTarget share_targets = 17;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_share_targets_size());
         i < n; i++) {
      const auto& repfield = this_._internal_share_targets().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              17, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated .webapk.ShortcutItem shortcuts = 18;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_shortcuts_size());
         i < n; i++) {
      const auto& repfield = this_._internal_shortcuts().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              18, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

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

  // optional string dark_theme_color = 20;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    const ::std::string& _s = this_._internal_dark_theme_color();
    target = stream->WriteStringMaybeAliased(20, _s, target);
  }

  // optional string dark_background_color = 21;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    const ::std::string& _s = this_._internal_dark_background_color();
    target = stream->WriteStringMaybeAliased(21, _s, target);
  }

  // optional bool has_custom_name = 22;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        22, this_._internal_has_custom_name(), 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:webapk.WebAppManifest)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00001000U & cached_has_bits) * 3;
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated string scopes = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_scopes().size());
      for (int i = 0, n = this_._internal_scopes().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_scopes().Get(i));
      }
    }
    // repeated .webapk.Image icons = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_icons_size();
      for (const auto& msg : this_._internal_icons()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional string name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_name());
    }
    // optional string short_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_short_name());
    }
    // optional string start_url = 4;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_start_url());
    }
    // optional string orientation = 9;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_orientation());
    }
    // optional string display_mode = 10;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_display_mode());
    }
    // optional string theme_color = 11;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_theme_color());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00006f00U)) {
    // optional string background_color = 12;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_background_color());
    }
    // optional string id = 19;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_id());
    }
    // optional string dark_theme_color = 20;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_dark_theme_color());
    }
    // optional string dark_background_color = 21;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += 2 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_dark_background_color());
    }
    // repeated .webapk.ShareTarget share_targets = 17;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += 2UL * this_._internal_share_targets_size();
      for (const auto& msg : this_._internal_share_targets()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .webapk.ShortcutItem shortcuts = 18;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2UL * this_._internal_shortcuts_size();
      for (const auto& msg : this_._internal_shortcuts()) {
        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 WebAppManifest::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<WebAppManifest*>(&to_msg);
  auto& from = static_cast<const WebAppManifest&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.WebAppManifest)
  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_scopes()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_scopes());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_icons()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_icons());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_name(from._internal_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_short_name(from._internal_short_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_start_url(from._internal_start_url());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_orientation(from._internal_orientation());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_internal_set_display_mode(from._internal_display_mode());
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_internal_set_theme_color(from._internal_theme_color());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_internal_set_background_color(from._internal_background_color());
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_internal_set_id(from._internal_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_internal_set_dark_theme_color(from._internal_dark_theme_color());
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_internal_set_dark_background_color(from._internal_dark_background_color());
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.has_custom_name_ = from._impl_.has_custom_name_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_internal_mutable_share_targets()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_share_targets());
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_internal_mutable_shortcuts()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_shortcuts());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void WebAppManifest::InternalSwap(WebAppManifest* 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_.scopes_.InternalSwap(&other->_impl_.scopes_);
  _impl_.icons_.InternalSwap(&other->_impl_.icons_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.short_name_, &other->_impl_.short_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.start_url_, &other->_impl_.start_url_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.orientation_, &other->_impl_.orientation_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.display_mode_, &other->_impl_.display_mode_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.theme_color_, &other->_impl_.theme_color_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.background_color_, &other->_impl_.background_color_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.id_, &other->_impl_.id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.dark_theme_color_, &other->_impl_.dark_theme_color_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.dark_background_color_, &other->_impl_.dark_background_color_, arena);
  swap(_impl_.has_custom_name_, other->_impl_.has_custom_name_);
  _impl_.share_targets_.InternalSwap(&other->_impl_.share_targets_);
  _impl_.shortcuts_.InternalSwap(&other->_impl_.shortcuts_);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  Image* 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:webapk.Image)
}
PROTOBUF_NDEBUG_INLINE Image::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        purposes_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::Image,
            PROTOBUF_FIELD_OFFSET(::webapk::Image, _impl_.purposes_)>()
         }
        ,
        usages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::Image,
            PROTOBUF_FIELD_OFFSET(::webapk::Image, _impl_.usages_)>()
         }
        ,
        src_(arena),
        hash_(arena),
        image_data_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Image_class_data_ =
    Image::InternalGenerateClassData_(Image_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.purposes_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.usages_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.src_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.hash_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.image_data_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

  // optional bytes image_data = 6;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    const ::std::string& _s = this_._internal_image_data();
    target = stream->WriteBytesMaybeAliased(6, _s, target);
  }

  // repeated .webapk.Image.Purpose purposes = 7;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_purposes_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          7, static_cast<::webapk::Image_Purpose>(this_._internal_purposes().Get(i)),
          target);
    }
  }

  // repeated .webapk.Image.Usage usages = 8;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (int i = 0, n = this_._internal_usages_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          8, static_cast<::webapk::Image_Usage>(this_._internal_usages().Get(i)),
          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:webapk.Image)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Image::ByteSizeLong(const MessageLite& base) {
  const Image& this_ = static_cast<const Image&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Image::ByteSizeLong() const {
  const Image& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:webapk.Image)
  ::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 .webapk.Image.Purpose purposes = 7;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ::size_t data_size =
          ::_pbi::WireFormatLite::EnumSize(this_._internal_purposes());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_purposes_size());
      total_size += data_size + tag_size;
    }
    // repeated .webapk.Image.Usage usages = 8;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ::size_t data_size =
          ::_pbi::WireFormatLite::EnumSize(this_._internal_usages());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_usages_size());
      total_size += data_size + tag_size;
    }
    // optional string src = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_src());
    }
    // optional string hash = 5;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_hash());
    }
    // optional bytes image_data = 6;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_image_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 Image::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Image*>(&to_msg);
  auto& from = static_cast<const Image&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.Image)
  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_purposes()->MergeFrom(from._internal_purposes());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_usages()->MergeFrom(from._internal_usages());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_src(from._internal_src());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_hash(from._internal_hash());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_image_data(from._internal_image_data());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void Image::InternalSwap(Image* 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_.purposes_.InternalSwap(&other->_impl_.purposes_);
  _impl_.usages_.InternalSwap(&other->_impl_.usages_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.src_, &other->_impl_.src_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.hash_, &other->_impl_.hash_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.image_data_, &other->_impl_.image_data_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ShareTargetParamsFile* 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:webapk.ShareTargetParamsFile)
}
PROTOBUF_NDEBUG_INLINE ShareTargetParamsFile::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        accept_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShareTargetParamsFile,
            PROTOBUF_FIELD_OFFSET(::webapk::ShareTargetParamsFile, _impl_.accept_)>()
         }
        ,
        name_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ShareTargetParamsFile_class_data_ =
    ShareTargetParamsFile::InternalGenerateClassData_(ShareTargetParamsFile_globals_._default);

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

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

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

  // repeated string accept = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_accept_size(); i < n; ++i) {
      const auto& s = this_._internal_accept().Get(i);
      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:webapk.ShareTargetParamsFile)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t ShareTargetParamsFile::ByteSizeLong(const MessageLite& base) {
  const ShareTargetParamsFile& this_ = static_cast<const ShareTargetParamsFile&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t ShareTargetParamsFile::ByteSizeLong() const {
  const ShareTargetParamsFile& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:webapk.ShareTargetParamsFile)
  ::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 accept = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_accept().size());
      for (int i = 0, n = this_._internal_accept().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_accept().Get(i));
      }
    }
    // optional string name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_name());
    }
  }
  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 ShareTargetParamsFile::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ShareTargetParamsFile*>(&to_msg);
  auto& from = static_cast<const ShareTargetParamsFile&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.ShareTargetParamsFile)
  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_accept()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_accept());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_name(from._internal_name());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ShareTargetParams* 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:webapk.ShareTargetParams)
}
PROTOBUF_NDEBUG_INLINE ShareTargetParams::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        files_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShareTargetParams,
            PROTOBUF_FIELD_OFFSET(::webapk::ShareTargetParams, _impl_.files_)>()
         }
        ,
        title_(arena),
        text_(arena),
        url_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ShareTargetParams_class_data_ =
    ShareTargetParams::InternalGenerateClassData_(ShareTargetParams_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShareTargetParams::GetClassData() const {
  return ShareTargetParams_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShareTargetParams::GetClassData() const {
  return ShareTargetParams_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ShareTargetParams::ParseTableT_
    ShareTargetParams::_table_ =
        ShareTargetParams::InternalGenerateParseTable_(ShareTargetParams_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void ShareTargetParams::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.ShareTargetParams)
  ::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_.files_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.title_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.text_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

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

  // repeated .webapk.ShareTargetParamsFile files = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_files_size());
         i < n; i++) {
      const auto& repfield = this_._internal_files().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:webapk.ShareTargetParams)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t ShareTargetParams::ByteSizeLong(const MessageLite& base) {
  const ShareTargetParams& this_ = static_cast<const ShareTargetParams&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t ShareTargetParams::ByteSizeLong() const {
  const ShareTargetParams& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:webapk.ShareTargetParams)
  ::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 .webapk.ShareTargetParamsFile files = 4;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_files_size();
      for (const auto& msg : this_._internal_files()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional string title = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_title());
    }
    // optional string text = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_text());
    }
    // optional string url = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_url());
    }
  }
  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 ShareTargetParams::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ShareTargetParams*>(&to_msg);
  auto& from = static_cast<const ShareTargetParams&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.ShareTargetParams)
  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_files()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_files());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_title(from._internal_title());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_text(from._internal_text());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_url(from._internal_url());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

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

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

  // @@protoc_insertion_point(copy_constructor:webapk.ShareTarget)
}
PROTOBUF_NDEBUG_INLINE ShareTarget::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        action_(arena),
        method_(arena),
        enctype_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ShareTarget_class_data_ =
    ShareTarget::InternalGenerateClassData_(ShareTarget_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShareTarget::GetClassData() const {
  return ShareTarget_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShareTarget::GetClassData() const {
  return ShareTarget_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ShareTarget::ParseTableT_
    ShareTarget::_table_ =
        ShareTarget::InternalGenerateParseTable_(ShareTarget_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void ShareTarget::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.ShareTarget)
  ::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_.action_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.method_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.enctype_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.params_ != nullptr);
      _impl_.params_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // optional .webapk.ShareTargetParams params = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        3, *this_._impl_.params_, this_._impl_.params_->GetCachedSize(), target,
        stream);
  }

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

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

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

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // optional string action = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_action());
    }
    // optional string method = 4;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_method());
    }
    // optional string enctype = 5;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_enctype());
    }
    // optional .webapk.ShareTargetParams params = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.params_);
    }
  }
  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 ShareTarget::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ShareTarget*>(&to_msg);
  auto& from = static_cast<const ShareTarget&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.ShareTarget)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_action(from._internal_action());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_method(from._internal_method());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_enctype(from._internal_enctype());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.params_ != nullptr);
      if (_this->_impl_.params_ == nullptr) {
        _this->_impl_.params_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.params_);
      } else {
        _this->_impl_.params_->MergeFrom(*from._impl_.params_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void ShareTarget::InternalSwap(ShareTarget* 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_.action_, &other->_impl_.action_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.method_, &other->_impl_.method_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.enctype_, &other->_impl_.enctype_, arena);
  swap(_impl_.params_, other->_impl_.params_);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ShortcutItem* 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:webapk.ShortcutItem)
}
PROTOBUF_NDEBUG_INLINE ShortcutItem::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        icons_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::webapk::ShortcutItem,
            PROTOBUF_FIELD_OFFSET(::webapk::ShortcutItem, _impl_.icons_)>()
         }
        ,
        name_(arena),
        short_name_(arena),
        url_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ShortcutItem_class_data_ =
    ShortcutItem::InternalGenerateClassData_(ShortcutItem_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShortcutItem::GetClassData() const {
  return ShortcutItem_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ShortcutItem::GetClassData() const {
  return ShortcutItem_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ShortcutItem::ParseTableT_
    ShortcutItem::_table_ =
        ShortcutItem::InternalGenerateParseTable_(ShortcutItem_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void ShortcutItem::Clear() {
// @@protoc_insertion_point(message_clear_start:webapk.ShortcutItem)
  ::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_.icons_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.short_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.url_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

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

  // repeated .webapk.Image icons = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_icons_size());
         i < n; i++) {
      const auto& repfield = this_._internal_icons().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:webapk.ShortcutItem)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t ShortcutItem::ByteSizeLong(const MessageLite& base) {
  const ShortcutItem& this_ = static_cast<const ShortcutItem&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t ShortcutItem::ByteSizeLong() const {
  const ShortcutItem& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:webapk.ShortcutItem)
  ::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 .webapk.Image icons = 4;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_icons_size();
      for (const auto& msg : this_._internal_icons()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional string name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_name());
    }
    // optional string short_name = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_short_name());
    }
    // optional string url = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_url());
    }
  }
  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 ShortcutItem::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ShortcutItem*>(&to_msg);
  auto& from = static_cast<const ShortcutItem&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:webapk.ShortcutItem)
  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_icons()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_icons());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_name(from._internal_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_short_name(from._internal_short_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_url(from._internal_url());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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