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

#ifndef components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto_2epb_2eh
#define components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto_2epb_2eh

#include <limits>
#include <string>
#include <type_traits>
#include <utility>

// clang-format off
#include "google/protobuf/runtime_version.h"
#if PROTOBUF_VERSION != 7035001
#error "Protobuf C++ gencode is built with an incompatible version of"
#error "Protobuf C++ headers/runtime. See"
#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
#endif
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/arena.h"
#include "google/protobuf/arenastring.h"
#include "google/protobuf/generated_message_tctable_decl.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/metadata_lite.h"
#include "google/protobuf/message_lite.h"
#include "google/protobuf/repeated_field.h"  // IWYU pragma: export
#include "google/protobuf/extension_set.h"  // IWYU pragma: export
#include "google/protobuf/generated_enum_util.h"
#include "components/sync/protocol/encryption.pb.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"

#define PROTOBUF_INTERNAL_EXPORT_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto

namespace google {
namespace protobuf {
namespace internal {
template <typename T>
::absl::string_view GetAnyMessageName();
}  // namespace internal
}  // namespace protobuf
}  // namespace google

// Internal implementation detail -- do not use these members.
struct TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto {
  static const ::uint32_t offsets[];
};
namespace sync_pb {
enum PasswordSpecificsData_Scheme : int;
extern const uint32_t PasswordSpecificsData_Scheme_internal_data_[];
class PasswordIssues;
struct PasswordIssuesGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordIssuesGlobalsTypeInternal PasswordIssues_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordIssues_class_data_;
#else
extern const PasswordIssuesGlobalsTypeInternal PasswordIssues_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordIssues_PasswordIssue;
struct PasswordIssues_PasswordIssueGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordIssues_PasswordIssueGlobalsTypeInternal PasswordIssues_PasswordIssue_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordIssues_PasswordIssue_class_data_;
#else
extern const PasswordIssues_PasswordIssueGlobalsTypeInternal PasswordIssues_PasswordIssue_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordSpecifics;
struct PasswordSpecificsGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordSpecificsGlobalsTypeInternal PasswordSpecifics_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordSpecifics_class_data_;
#else
extern const PasswordSpecificsGlobalsTypeInternal PasswordSpecifics_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordSpecificsData;
struct PasswordSpecificsDataGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordSpecificsDataGlobalsTypeInternal PasswordSpecificsData_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordSpecificsData_class_data_;
#else
extern const PasswordSpecificsDataGlobalsTypeInternal PasswordSpecificsData_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordSpecificsData_Notes;
struct PasswordSpecificsData_NotesGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordSpecificsData_NotesGlobalsTypeInternal PasswordSpecificsData_Notes_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordSpecificsData_Notes_class_data_;
#else
extern const PasswordSpecificsData_NotesGlobalsTypeInternal PasswordSpecificsData_Notes_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordSpecificsData_Notes_Note;
struct PasswordSpecificsData_Notes_NoteGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordSpecificsData_Notes_NoteGlobalsTypeInternal PasswordSpecificsData_Notes_Note_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordSpecificsData_Notes_Note_class_data_;
#else
extern const PasswordSpecificsData_Notes_NoteGlobalsTypeInternal PasswordSpecificsData_Notes_Note_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class PasswordSpecificsMetadata;
struct PasswordSpecificsMetadataGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PasswordSpecificsMetadataGlobalsTypeInternal PasswordSpecificsMetadata_globals_;
extern const ::google::protobuf::internal::ClassDataLite PasswordSpecificsMetadata_class_data_;
#else
extern const PasswordSpecificsMetadataGlobalsTypeInternal PasswordSpecificsMetadata_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
}  // namespace sync_pb
namespace google {
namespace protobuf {
template <>
internal::EnumTraitsT<::sync_pb::PasswordSpecificsData_Scheme_internal_data_>
    internal::EnumTraitsImpl::value<::sync_pb::PasswordSpecificsData_Scheme>;
}  // namespace protobuf
}  // namespace google

namespace sync_pb {
enum PasswordSpecificsData_Scheme : int {
  PasswordSpecificsData_Scheme_SCHEME_HTML = 0,
  PasswordSpecificsData_Scheme_SCHEME_BASIC = 1,
  PasswordSpecificsData_Scheme_SCHEME_DIGEST = 2,
  PasswordSpecificsData_Scheme_SCHEME_OTHER = 3,
  PasswordSpecificsData_Scheme_USERNAME_ONLY = 4,
};

extern const uint32_t PasswordSpecificsData_Scheme_internal_data_[];
inline constexpr PasswordSpecificsData_Scheme PasswordSpecificsData_Scheme_Scheme_MIN =
    static_cast<PasswordSpecificsData_Scheme>(0);
inline constexpr PasswordSpecificsData_Scheme PasswordSpecificsData_Scheme_Scheme_MAX =
    static_cast<PasswordSpecificsData_Scheme>(4);
inline bool PasswordSpecificsData_Scheme_IsValid(int value) {
  return 0 <= value && value <= 4;
}
inline constexpr int PasswordSpecificsData_Scheme_Scheme_ARRAYSIZE = 4 + 1;
const ::std::string& PasswordSpecificsData_Scheme_Name(PasswordSpecificsData_Scheme value);
template <typename T>
const ::std::string& PasswordSpecificsData_Scheme_Name(T value) {
  static_assert(::std::is_same<T, PasswordSpecificsData_Scheme>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to Scheme_Name().");
  return PasswordSpecificsData_Scheme_Name(static_cast<PasswordSpecificsData_Scheme>(value));
}
bool PasswordSpecificsData_Scheme_Parse(
    ::absl::string_view name, PasswordSpecificsData_Scheme* PROTOBUF_NONNULL value);
using ::google::protobuf::internal::generated_enum::AbslParseFlag;
using ::google::protobuf::internal::generated_enum::AbslUnparseFlag;

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


// -------------------------------------------------------------------

class  PasswordSpecificsData_Notes_Note final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordSpecificsData.Notes.Note) */ {
 public:
  inline PasswordSpecificsData_Notes_Note() : PasswordSpecificsData_Notes_Note(nullptr) {}
  ~PasswordSpecificsData_Notes_Note() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordSpecificsData_Notes_Note));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordSpecificsData_Notes_Note(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordSpecificsData_Notes_Note(const PasswordSpecificsData_Notes_Note& from) : PasswordSpecificsData_Notes_Note(nullptr, from) {}
  inline PasswordSpecificsData_Notes_Note(PasswordSpecificsData_Notes_Note&& from) noexcept : PasswordSpecificsData_Notes_Note(nullptr, ::std::move(from)) {}
  inline PasswordSpecificsData_Notes_Note& operator=(const PasswordSpecificsData_Notes_Note& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordSpecificsData_Notes_Note& operator=(PasswordSpecificsData_Notes_Note&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordSpecificsData_Notes_Note& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordSpecificsData_Notes_Note>(&PasswordSpecificsData_Notes_Note_globals_);
  }
  static constexpr int kIndexInFileMessages = 2;
  friend void swap(PasswordSpecificsData_Notes_Note& a, PasswordSpecificsData_Notes_Note& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordSpecificsData_Notes_Note>(arena);
  }
  void CopyFrom(const PasswordSpecificsData_Notes_Note& from);
  void MergeFrom(const PasswordSpecificsData_Notes_Note& from) { PasswordSpecificsData_Notes_Note::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordSpecificsData.Notes.Note"; }

  explicit PasswordSpecificsData_Notes_Note(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordSpecificsData_Notes_Note(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordSpecificsData_Notes_Note& from);
  PasswordSpecificsData_Notes_Note(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordSpecificsData_Notes_Note&& from) noexcept
      : PasswordSpecificsData_Notes_Note(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kUniqueDisplayNameFieldNumber = 1,
    kValueFieldNumber = 2,
    kDateCreatedWindowsEpochMicrosFieldNumber = 3,
    kHideByDefaultFieldNumber = 4,
  };
  // optional string unique_display_name = 1;
  bool has_unique_display_name()
      const;
  void clear_unique_display_name() ;
  const ::std::string& unique_display_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_unique_display_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_unique_display_name();
  ::std::string* PROTOBUF_NULLABLE release_unique_display_name();
  void set_allocated_unique_display_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_unique_display_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_unique_display_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_unique_display_name();

  public:
  // optional string value = 2;
  bool has_value()
      const;
  void clear_value() ;
  const ::std::string& value() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_value(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_value();
  ::std::string* PROTOBUF_NULLABLE release_value();
  void set_allocated_value(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_value() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_value(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_value();

  public:
  // optional int64 date_created_windows_epoch_micros = 3;
  bool has_date_created_windows_epoch_micros()
      const;
  void clear_date_created_windows_epoch_micros() ;
  ::int64_t date_created_windows_epoch_micros() const;
  void set_date_created_windows_epoch_micros(::int64_t value);

  private:
  ::int64_t _internal_date_created_windows_epoch_micros() const;
  void _internal_set_date_created_windows_epoch_micros(::int64_t value);

  public:
  // optional bool hide_by_default = 4;
  bool has_hide_by_default()
      const;
  void clear_hide_by_default() ;
  bool hide_by_default() const;
  void set_hide_by_default(bool value);

  private:
  bool _internal_hide_by_default() const;
  void _internal_set_hide_by_default(bool value);

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordSpecificsData.Notes.Note)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 4,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordSpecificsData_Notes_Note& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr unique_display_name_;
    ::google::protobuf::internal::ArenaStringPtr value_;
    ::int64_t date_created_windows_epoch_micros_;
    bool hide_by_default_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordIssues_PasswordIssue final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordIssues.PasswordIssue) */ {
 public:
  inline PasswordIssues_PasswordIssue() : PasswordIssues_PasswordIssue(nullptr) {}
  ~PasswordIssues_PasswordIssue() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordIssues_PasswordIssue* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordIssues_PasswordIssue));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordIssues_PasswordIssue(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordIssues_PasswordIssue(const PasswordIssues_PasswordIssue& from) : PasswordIssues_PasswordIssue(nullptr, from) {}
  inline PasswordIssues_PasswordIssue(PasswordIssues_PasswordIssue&& from) noexcept : PasswordIssues_PasswordIssue(nullptr, ::std::move(from)) {}
  inline PasswordIssues_PasswordIssue& operator=(const PasswordIssues_PasswordIssue& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordIssues_PasswordIssue& operator=(PasswordIssues_PasswordIssue&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordIssues_PasswordIssue& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordIssues_PasswordIssue>(&PasswordIssues_PasswordIssue_globals_);
  }
  static constexpr int kIndexInFileMessages = 0;
  friend void swap(PasswordIssues_PasswordIssue& a, PasswordIssues_PasswordIssue& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordIssues_PasswordIssue* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordIssues_PasswordIssue* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordIssues_PasswordIssue* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordIssues_PasswordIssue>(arena);
  }
  void CopyFrom(const PasswordIssues_PasswordIssue& from);
  void MergeFrom(const PasswordIssues_PasswordIssue& from) { PasswordIssues_PasswordIssue::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordIssues_PasswordIssue* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordIssues.PasswordIssue"; }

  explicit PasswordIssues_PasswordIssue(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordIssues_PasswordIssue(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordIssues_PasswordIssue& from);
  PasswordIssues_PasswordIssue(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordIssues_PasswordIssue&& from) noexcept
      : PasswordIssues_PasswordIssue(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kDateFirstDetectionWindowsEpochMicrosFieldNumber = 1,
    kIsMutedFieldNumber = 2,
    kTriggerNotificationFromBackendOnDetectionFieldNumber = 3,
  };
  // optional uint64 date_first_detection_windows_epoch_micros = 1;
  bool has_date_first_detection_windows_epoch_micros()
      const;
  void clear_date_first_detection_windows_epoch_micros() ;
  ::uint64_t date_first_detection_windows_epoch_micros() const;
  void set_date_first_detection_windows_epoch_micros(::uint64_t value);

  private:
  ::uint64_t _internal_date_first_detection_windows_epoch_micros() const;
  void _internal_set_date_first_detection_windows_epoch_micros(::uint64_t value);

  public:
  // optional bool is_muted = 2;
  bool has_is_muted()
      const;
  void clear_is_muted() ;
  bool is_muted() const;
  void set_is_muted(bool value);

  private:
  bool _internal_is_muted() const;
  void _internal_set_is_muted(bool value);

  public:
  // optional bool trigger_notification_from_backend_on_detection = 3;
  bool has_trigger_notification_from_backend_on_detection()
      const;
  void clear_trigger_notification_from_backend_on_detection() ;
  bool trigger_notification_from_backend_on_detection() const;
  void set_trigger_notification_from_backend_on_detection(bool value);

  private:
  bool _internal_trigger_notification_from_backend_on_detection() const;
  void _internal_set_trigger_notification_from_backend_on_detection(bool value);

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordIssues.PasswordIssue)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordIssues_PasswordIssue& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::uint64_t date_first_detection_windows_epoch_micros_;
    bool is_muted_;
    bool trigger_notification_from_backend_on_detection_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordSpecificsData_Notes final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordSpecificsData.Notes) */ {
 public:
  inline PasswordSpecificsData_Notes() : PasswordSpecificsData_Notes(nullptr) {}
  ~PasswordSpecificsData_Notes() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordSpecificsData_Notes* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordSpecificsData_Notes));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordSpecificsData_Notes(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordSpecificsData_Notes(const PasswordSpecificsData_Notes& from) : PasswordSpecificsData_Notes(nullptr, from) {}
  inline PasswordSpecificsData_Notes(PasswordSpecificsData_Notes&& from) noexcept : PasswordSpecificsData_Notes(nullptr, ::std::move(from)) {}
  inline PasswordSpecificsData_Notes& operator=(const PasswordSpecificsData_Notes& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordSpecificsData_Notes& operator=(PasswordSpecificsData_Notes&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordSpecificsData_Notes& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordSpecificsData_Notes>(&PasswordSpecificsData_Notes_globals_);
  }
  static constexpr int kIndexInFileMessages = 3;
  friend void swap(PasswordSpecificsData_Notes& a, PasswordSpecificsData_Notes& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordSpecificsData_Notes* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordSpecificsData_Notes* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordSpecificsData_Notes* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordSpecificsData_Notes>(arena);
  }
  void CopyFrom(const PasswordSpecificsData_Notes& from);
  void MergeFrom(const PasswordSpecificsData_Notes& from) { PasswordSpecificsData_Notes::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordSpecificsData_Notes* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordSpecificsData.Notes"; }

  explicit PasswordSpecificsData_Notes(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordSpecificsData_Notes(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordSpecificsData_Notes& from);
  PasswordSpecificsData_Notes(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordSpecificsData_Notes&& from) noexcept
      : PasswordSpecificsData_Notes(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------
  using Note = PasswordSpecificsData_Notes_Note;

  // accessors -------------------------------------------------------
  enum : int {
    kNoteFieldNumber = 1,
  };
  // repeated .sync_pb.PasswordSpecificsData.Notes.Note note = 1;
  int note_size()
      const;
  private:
  int _internal_note_size() const;

  public:
  void clear_note() ;
  const ::sync_pb::PasswordSpecificsData_Notes_Note& note(int index) const;
  ::sync_pb::PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL mutable_note(int index);
  ::sync_pb::PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL add_note();
  const ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>&
  note() const;
  ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>* PROTOBUF_NONNULL
  mutable_note();

  private:
  const ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>& _internal_note() const;
  ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>* PROTOBUF_NONNULL _internal_mutable_note();

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordSpecificsData.Notes)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          1, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordSpecificsData_Notes& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField< ::sync_pb::PasswordSpecificsData_Notes_Note > note_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordIssues final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordIssues) */ {
 public:
  inline PasswordIssues() : PasswordIssues(nullptr) {}
  ~PasswordIssues() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordIssues* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordIssues));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordIssues(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordIssues(const PasswordIssues& from) : PasswordIssues(nullptr, from) {}
  inline PasswordIssues(PasswordIssues&& from) noexcept : PasswordIssues(nullptr, ::std::move(from)) {}
  inline PasswordIssues& operator=(const PasswordIssues& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordIssues& operator=(PasswordIssues&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordIssues& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordIssues>(&PasswordIssues_globals_);
  }
  static constexpr int kIndexInFileMessages = 1;
  friend void swap(PasswordIssues& a, PasswordIssues& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordIssues* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordIssues* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordIssues* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordIssues>(arena);
  }
  void CopyFrom(const PasswordIssues& from);
  void MergeFrom(const PasswordIssues& from) { PasswordIssues::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordIssues* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordIssues"; }

  explicit PasswordIssues(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordIssues(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordIssues& from);
  PasswordIssues(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordIssues&& from) noexcept
      : PasswordIssues(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------
  using PasswordIssue = PasswordIssues_PasswordIssue;

  // accessors -------------------------------------------------------
  enum : int {
    kLeakedPasswordIssueFieldNumber = 1,
    kReusedPasswordIssueFieldNumber = 2,
    kWeakPasswordIssueFieldNumber = 3,
    kPhishedPasswordIssueFieldNumber = 4,
  };
  // optional .sync_pb.PasswordIssues.PasswordIssue leaked_password_issue = 1;
  bool has_leaked_password_issue()
      const;
  void clear_leaked_password_issue() ;
  const ::sync_pb::PasswordIssues_PasswordIssue& leaked_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE release_leaked_password_issue();
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL mutable_leaked_password_issue();
  void set_allocated_leaked_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_leaked_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE unsafe_arena_release_leaked_password_issue();

  private:
  const ::sync_pb::PasswordIssues_PasswordIssue& _internal_leaked_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL _internal_mutable_leaked_password_issue();

  public:
  // optional .sync_pb.PasswordIssues.PasswordIssue reused_password_issue = 2;
  bool has_reused_password_issue()
      const;
  void clear_reused_password_issue() ;
  const ::sync_pb::PasswordIssues_PasswordIssue& reused_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE release_reused_password_issue();
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL mutable_reused_password_issue();
  void set_allocated_reused_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_reused_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE unsafe_arena_release_reused_password_issue();

  private:
  const ::sync_pb::PasswordIssues_PasswordIssue& _internal_reused_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL _internal_mutable_reused_password_issue();

  public:
  // optional .sync_pb.PasswordIssues.PasswordIssue weak_password_issue = 3;
  bool has_weak_password_issue()
      const;
  void clear_weak_password_issue() ;
  const ::sync_pb::PasswordIssues_PasswordIssue& weak_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE release_weak_password_issue();
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL mutable_weak_password_issue();
  void set_allocated_weak_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_weak_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE unsafe_arena_release_weak_password_issue();

  private:
  const ::sync_pb::PasswordIssues_PasswordIssue& _internal_weak_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL _internal_mutable_weak_password_issue();

  public:
  // optional .sync_pb.PasswordIssues.PasswordIssue phished_password_issue = 4;
  bool has_phished_password_issue()
      const;
  void clear_phished_password_issue() ;
  const ::sync_pb::PasswordIssues_PasswordIssue& phished_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE release_phished_password_issue();
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL mutable_phished_password_issue();
  void set_allocated_phished_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_phished_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE unsafe_arena_release_phished_password_issue();

  private:
  const ::sync_pb::PasswordIssues_PasswordIssue& _internal_phished_password_issue() const;
  ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL _internal_mutable_phished_password_issue();

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordIssues)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 4,
                          4, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordIssues& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE leaked_password_issue_;
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE reused_password_issue_;
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE weak_password_issue_;
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE phished_password_issue_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordSpecificsMetadata final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordSpecificsMetadata) */ {
 public:
  inline PasswordSpecificsMetadata() : PasswordSpecificsMetadata(nullptr) {}
  ~PasswordSpecificsMetadata() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordSpecificsMetadata* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordSpecificsMetadata));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordSpecificsMetadata(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordSpecificsMetadata(const PasswordSpecificsMetadata& from) : PasswordSpecificsMetadata(nullptr, from) {}
  inline PasswordSpecificsMetadata(PasswordSpecificsMetadata&& from) noexcept : PasswordSpecificsMetadata(nullptr, ::std::move(from)) {}
  inline PasswordSpecificsMetadata& operator=(const PasswordSpecificsMetadata& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordSpecificsMetadata& operator=(PasswordSpecificsMetadata&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordSpecificsMetadata& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordSpecificsMetadata>(&PasswordSpecificsMetadata_globals_);
  }
  static constexpr int kIndexInFileMessages = 5;
  friend void swap(PasswordSpecificsMetadata& a, PasswordSpecificsMetadata& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordSpecificsMetadata* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordSpecificsMetadata* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordSpecificsMetadata* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordSpecificsMetadata>(arena);
  }
  void CopyFrom(const PasswordSpecificsMetadata& from);
  void MergeFrom(const PasswordSpecificsMetadata& from) { PasswordSpecificsMetadata::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordSpecificsMetadata* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordSpecificsMetadata"; }

  explicit PasswordSpecificsMetadata(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordSpecificsMetadata(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordSpecificsMetadata& from);
  PasswordSpecificsMetadata(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordSpecificsMetadata&& from) noexcept
      : PasswordSpecificsMetadata(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kUrlFieldNumber = 1,
    kPasswordIssuesFieldNumber = 4,
    kDateLastUsedWindowsEpochMicrosFieldNumber = 3,
    kBlacklistedFieldNumber = 2,
    kTypeFieldNumber = 13,
  };
  // optional string url = 1;
  bool has_url()
      const;
  void clear_url() ;
  const ::std::string& url() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_url(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_url();
  ::std::string* PROTOBUF_NULLABLE release_url();
  void set_allocated_url(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_url() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_url(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_url();

  public:
  // optional .sync_pb.PasswordIssues password_issues = 4;
  bool has_password_issues()
      const;
  void clear_password_issues() ;
  const ::sync_pb::PasswordIssues& password_issues() const;
  ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE release_password_issues();
  ::sync_pb::PasswordIssues* PROTOBUF_NONNULL mutable_password_issues();
  void set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE unsafe_arena_release_password_issues();

  private:
  const ::sync_pb::PasswordIssues& _internal_password_issues() const;
  ::sync_pb::PasswordIssues* PROTOBUF_NONNULL _internal_mutable_password_issues();

  public:
  // optional int64 date_last_used_windows_epoch_micros = 3;
  bool has_date_last_used_windows_epoch_micros()
      const;
  void clear_date_last_used_windows_epoch_micros() ;
  ::int64_t date_last_used_windows_epoch_micros() const;
  void set_date_last_used_windows_epoch_micros(::int64_t value);

  private:
  ::int64_t _internal_date_last_used_windows_epoch_micros() const;
  void _internal_set_date_last_used_windows_epoch_micros(::int64_t value);

  public:
  // optional bool blacklisted = 2;
  bool has_blacklisted()
      const;
  void clear_blacklisted() ;
  bool blacklisted() const;
  void set_blacklisted(bool value);

  private:
  bool _internal_blacklisted() const;
  void _internal_set_blacklisted(bool value);

  public:
  // optional int32 type = 13;
  bool has_type()
      const;
  void clear_type() ;
  ::int32_t type() const;
  void set_type(::int32_t value);

  private:
  ::int32_t _internal_type() const;
  void _internal_set_type(::int32_t value);

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordSpecificsMetadata)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<3, 5,
                          1, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordSpecificsMetadata& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr url_;
    ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE password_issues_;
    ::int64_t date_last_used_windows_epoch_micros_;
    bool blacklisted_;
    ::int32_t type_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordSpecificsData final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordSpecificsData) */ {
 public:
  inline PasswordSpecificsData() : PasswordSpecificsData(nullptr) {}
  ~PasswordSpecificsData() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordSpecificsData* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordSpecificsData));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordSpecificsData(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordSpecificsData(const PasswordSpecificsData& from) : PasswordSpecificsData(nullptr, from) {}
  inline PasswordSpecificsData(PasswordSpecificsData&& from) noexcept : PasswordSpecificsData(nullptr, ::std::move(from)) {}
  inline PasswordSpecificsData& operator=(const PasswordSpecificsData& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordSpecificsData& operator=(PasswordSpecificsData&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordSpecificsData& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordSpecificsData>(&PasswordSpecificsData_globals_);
  }
  static constexpr int kIndexInFileMessages = 4;
  friend void swap(PasswordSpecificsData& a, PasswordSpecificsData& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordSpecificsData* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordSpecificsData* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordSpecificsData* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordSpecificsData>(arena);
  }
  void CopyFrom(const PasswordSpecificsData& from);
  void MergeFrom(const PasswordSpecificsData& from) { PasswordSpecificsData::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordSpecificsData* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordSpecificsData"; }

  explicit PasswordSpecificsData(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordSpecificsData(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordSpecificsData& from);
  PasswordSpecificsData(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordSpecificsData&& from) noexcept
      : PasswordSpecificsData(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------
  using Notes = PasswordSpecificsData_Notes;
  using Scheme = PasswordSpecificsData_Scheme;
  static constexpr Scheme SCHEME_HTML = PasswordSpecificsData_Scheme_SCHEME_HTML;
  static constexpr Scheme SCHEME_BASIC = PasswordSpecificsData_Scheme_SCHEME_BASIC;
  static constexpr Scheme SCHEME_DIGEST = PasswordSpecificsData_Scheme_SCHEME_DIGEST;
  static constexpr Scheme SCHEME_OTHER = PasswordSpecificsData_Scheme_SCHEME_OTHER;
  static constexpr Scheme USERNAME_ONLY = PasswordSpecificsData_Scheme_USERNAME_ONLY;
  static inline bool Scheme_IsValid(int value) {
    return PasswordSpecificsData_Scheme_IsValid(value);
  }
  static constexpr Scheme Scheme_MIN = PasswordSpecificsData_Scheme_Scheme_MIN;
  static constexpr Scheme Scheme_MAX = PasswordSpecificsData_Scheme_Scheme_MAX;
  static constexpr int Scheme_ARRAYSIZE = PasswordSpecificsData_Scheme_Scheme_ARRAYSIZE;
  template <typename T>
  static inline const ::std::string& Scheme_Name(T value) {
    return PasswordSpecificsData_Scheme_Name(value);
  }
  static inline bool Scheme_Parse(
      ::absl::string_view name, Scheme* PROTOBUF_NONNULL value) {
    return PasswordSpecificsData_Scheme_Parse(name, value);
  }

  // accessors -------------------------------------------------------
  enum : int {
    kSignonRealmFieldNumber = 2,
    kOriginFieldNumber = 3,
    kActionFieldNumber = 4,
    kUsernameElementFieldNumber = 5,
    kUsernameValueFieldNumber = 6,
    kPasswordElementFieldNumber = 7,
    kPasswordValueFieldNumber = 8,
    kDisplayNameFieldNumber = 15,
    kAvatarUrlFieldNumber = 16,
    kFederationUrlFieldNumber = 17,
    kSenderEmailFieldNumber = 23,
    kSenderNameFieldNumber = 24,
    kSenderProfileImageUrlFieldNumber = 27,
    kPasswordIssuesFieldNumber = 19,
    kNotesFieldNumber = 22,
    kSchemeFieldNumber = 1,
    kTypeFieldNumber = 13,
    kDateCreatedFieldNumber = 11,
    kTimesUsedFieldNumber = 14,
    kSslValidFieldNumber = 9,
    kPreferredFieldNumber = 10,
    kBlacklistedFieldNumber = 12,
    kSharingNotificationDisplayedFieldNumber = 26,
    kDateLastUsedFieldNumber = 18,
    kDatePasswordModifiedWindowsEpochMicrosFieldNumber = 20,
    kDateReceivedWindowsEpochMicrosFieldNumber = 25,
    kDateLastFilledWindowsEpochMicrosFieldNumber = 28,
    kActorLoginApprovedFieldNumber = 29,
  };
  // optional string signon_realm = 2;
  bool has_signon_realm()
      const;
  void clear_signon_realm() ;
  const ::std::string& signon_realm() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_signon_realm(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_signon_realm();
  ::std::string* PROTOBUF_NULLABLE release_signon_realm();
  void set_allocated_signon_realm(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_signon_realm() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_signon_realm(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_signon_realm();

  public:
  // optional string origin = 3;
  bool has_origin()
      const;
  void clear_origin() ;
  const ::std::string& origin() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_origin(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_origin();
  ::std::string* PROTOBUF_NULLABLE release_origin();
  void set_allocated_origin(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_origin() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_origin(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_origin();

  public:
  // optional string action = 4;
  bool has_action()
      const;
  void clear_action() ;
  const ::std::string& action() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_action(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_action();
  ::std::string* PROTOBUF_NULLABLE release_action();
  void set_allocated_action(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_action() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_action(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_action();

  public:
  // optional string username_element = 5;
  bool has_username_element()
      const;
  void clear_username_element() ;
  const ::std::string& username_element() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_username_element(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_username_element();
  ::std::string* PROTOBUF_NULLABLE release_username_element();
  void set_allocated_username_element(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_username_element() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_username_element(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_username_element();

  public:
  // optional string username_value = 6;
  bool has_username_value()
      const;
  void clear_username_value() ;
  const ::std::string& username_value() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_username_value(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_username_value();
  ::std::string* PROTOBUF_NULLABLE release_username_value();
  void set_allocated_username_value(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_username_value() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_username_value(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_username_value();

  public:
  // optional string password_element = 7;
  bool has_password_element()
      const;
  void clear_password_element() ;
  const ::std::string& password_element() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_password_element(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_password_element();
  ::std::string* PROTOBUF_NULLABLE release_password_element();
  void set_allocated_password_element(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_password_element() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_password_element(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_password_element();

  public:
  // optional string password_value = 8;
  bool has_password_value()
      const;
  void clear_password_value() ;
  const ::std::string& password_value() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_password_value(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_password_value();
  ::std::string* PROTOBUF_NULLABLE release_password_value();
  void set_allocated_password_value(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_password_value() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_password_value(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_password_value();

  public:
  // optional string display_name = 15;
  bool has_display_name()
      const;
  void clear_display_name() ;
  const ::std::string& display_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_display_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_display_name();
  ::std::string* PROTOBUF_NULLABLE release_display_name();
  void set_allocated_display_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_display_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_display_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_display_name();

  public:
  // optional string avatar_url = 16;
  bool has_avatar_url()
      const;
  void clear_avatar_url() ;
  const ::std::string& avatar_url() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_avatar_url(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_avatar_url();
  ::std::string* PROTOBUF_NULLABLE release_avatar_url();
  void set_allocated_avatar_url(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_avatar_url() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_avatar_url(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_avatar_url();

  public:
  // optional string federation_url = 17;
  bool has_federation_url()
      const;
  void clear_federation_url() ;
  const ::std::string& federation_url() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_federation_url(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_federation_url();
  ::std::string* PROTOBUF_NULLABLE release_federation_url();
  void set_allocated_federation_url(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_federation_url() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_federation_url(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_federation_url();

  public:
  // optional string sender_email = 23;
  bool has_sender_email()
      const;
  void clear_sender_email() ;
  const ::std::string& sender_email() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sender_email(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sender_email();
  ::std::string* PROTOBUF_NULLABLE release_sender_email();
  void set_allocated_sender_email(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sender_email() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sender_email(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sender_email();

  public:
  // optional string sender_name = 24;
  bool has_sender_name()
      const;
  void clear_sender_name() ;
  const ::std::string& sender_name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sender_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sender_name();
  ::std::string* PROTOBUF_NULLABLE release_sender_name();
  void set_allocated_sender_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sender_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sender_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sender_name();

  public:
  // optional string sender_profile_image_url = 27;
  bool has_sender_profile_image_url()
      const;
  void clear_sender_profile_image_url() ;
  const ::std::string& sender_profile_image_url() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sender_profile_image_url(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sender_profile_image_url();
  ::std::string* PROTOBUF_NULLABLE release_sender_profile_image_url();
  void set_allocated_sender_profile_image_url(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sender_profile_image_url() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sender_profile_image_url(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sender_profile_image_url();

  public:
  // optional .sync_pb.PasswordIssues password_issues = 19;
  bool has_password_issues()
      const;
  void clear_password_issues() ;
  const ::sync_pb::PasswordIssues& password_issues() const;
  ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE release_password_issues();
  ::sync_pb::PasswordIssues* PROTOBUF_NONNULL mutable_password_issues();
  void set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE unsafe_arena_release_password_issues();

  private:
  const ::sync_pb::PasswordIssues& _internal_password_issues() const;
  ::sync_pb::PasswordIssues* PROTOBUF_NONNULL _internal_mutable_password_issues();

  public:
  // optional .sync_pb.PasswordSpecificsData.Notes notes = 22;
  bool has_notes()
      const;
  void clear_notes() ;
  const ::sync_pb::PasswordSpecificsData_Notes& notes() const;
  ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE release_notes();
  ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NONNULL mutable_notes();
  void set_allocated_notes(::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_notes(::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE unsafe_arena_release_notes();

  private:
  const ::sync_pb::PasswordSpecificsData_Notes& _internal_notes() const;
  ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NONNULL _internal_mutable_notes();

  public:
  // optional int32 scheme = 1;
  bool has_scheme()
      const;
  void clear_scheme() ;
  ::int32_t scheme() const;
  void set_scheme(::int32_t value);

  private:
  ::int32_t _internal_scheme() const;
  void _internal_set_scheme(::int32_t value);

  public:
  // optional int32 type = 13;
  bool has_type()
      const;
  void clear_type() ;
  ::int32_t type() const;
  void set_type(::int32_t value);

  private:
  ::int32_t _internal_type() const;
  void _internal_set_type(::int32_t value);

  public:
  // optional int64 date_created = 11;
  bool has_date_created()
      const;
  void clear_date_created() ;
  ::int64_t date_created() const;
  void set_date_created(::int64_t value);

  private:
  ::int64_t _internal_date_created() const;
  void _internal_set_date_created(::int64_t value);

  public:
  // optional int32 times_used = 14;
  bool has_times_used()
      const;
  void clear_times_used() ;
  ::int32_t times_used() const;
  void set_times_used(::int32_t value);

  private:
  ::int32_t _internal_times_used() const;
  void _internal_set_times_used(::int32_t value);

  public:
  // optional bool ssl_valid = 9 [deprecated = true];
  bool has_ssl_valid()
      const;
  void clear_ssl_valid() ;
  bool ssl_valid() const;
  void set_ssl_valid(bool value);

  private:
  bool _internal_ssl_valid() const;
  void _internal_set_ssl_valid(bool value);

  public:
  // optional bool preferred = 10 [deprecated = true];
  bool has_preferred()
      const;
  void clear_preferred() ;
  bool preferred() const;
  void set_preferred(bool value);

  private:
  bool _internal_preferred() const;
  void _internal_set_preferred(bool value);

  public:
  // optional bool blacklisted = 12;
  bool has_blacklisted()
      const;
  void clear_blacklisted() ;
  bool blacklisted() const;
  void set_blacklisted(bool value);

  private:
  bool _internal_blacklisted() const;
  void _internal_set_blacklisted(bool value);

  public:
  // optional bool sharing_notification_displayed = 26;
  bool has_sharing_notification_displayed()
      const;
  void clear_sharing_notification_displayed() ;
  bool sharing_notification_displayed() const;
  void set_sharing_notification_displayed(bool value);

  private:
  bool _internal_sharing_notification_displayed() const;
  void _internal_set_sharing_notification_displayed(bool value);

  public:
  // optional int64 date_last_used = 18;
  bool has_date_last_used()
      const;
  void clear_date_last_used() ;
  ::int64_t date_last_used() const;
  void set_date_last_used(::int64_t value);

  private:
  ::int64_t _internal_date_last_used() const;
  void _internal_set_date_last_used(::int64_t value);

  public:
  // optional int64 date_password_modified_windows_epoch_micros = 20;
  bool has_date_password_modified_windows_epoch_micros()
      const;
  void clear_date_password_modified_windows_epoch_micros() ;
  ::int64_t date_password_modified_windows_epoch_micros() const;
  void set_date_password_modified_windows_epoch_micros(::int64_t value);

  private:
  ::int64_t _internal_date_password_modified_windows_epoch_micros() const;
  void _internal_set_date_password_modified_windows_epoch_micros(::int64_t value);

  public:
  // optional int64 date_received_windows_epoch_micros = 25;
  bool has_date_received_windows_epoch_micros()
      const;
  void clear_date_received_windows_epoch_micros() ;
  ::int64_t date_received_windows_epoch_micros() const;
  void set_date_received_windows_epoch_micros(::int64_t value);

  private:
  ::int64_t _internal_date_received_windows_epoch_micros() const;
  void _internal_set_date_received_windows_epoch_micros(::int64_t value);

  public:
  // optional int64 date_last_filled_windows_epoch_micros = 28;
  bool has_date_last_filled_windows_epoch_micros()
      const;
  void clear_date_last_filled_windows_epoch_micros() ;
  ::int64_t date_last_filled_windows_epoch_micros() const;
  void set_date_last_filled_windows_epoch_micros(::int64_t value);

  private:
  ::int64_t _internal_date_last_filled_windows_epoch_micros() const;
  void _internal_set_date_last_filled_windows_epoch_micros(::int64_t value);

  public:
  // optional bool actor_login_approved = 29;
  bool has_actor_login_approved()
      const;
  void clear_actor_login_approved() ;
  bool actor_login_approved() const;
  void set_actor_login_approved(bool value);

  private:
  bool _internal_actor_login_approved() const;
  void _internal_set_actor_login_approved(bool value);

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordSpecificsData)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<5, 28,
                          2, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordSpecificsData& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr signon_realm_;
    ::google::protobuf::internal::ArenaStringPtr origin_;
    ::google::protobuf::internal::ArenaStringPtr action_;
    ::google::protobuf::internal::ArenaStringPtr username_element_;
    ::google::protobuf::internal::ArenaStringPtr username_value_;
    ::google::protobuf::internal::ArenaStringPtr password_element_;
    ::google::protobuf::internal::ArenaStringPtr password_value_;
    ::google::protobuf::internal::ArenaStringPtr display_name_;
    ::google::protobuf::internal::ArenaStringPtr avatar_url_;
    ::google::protobuf::internal::ArenaStringPtr federation_url_;
    ::google::protobuf::internal::ArenaStringPtr sender_email_;
    ::google::protobuf::internal::ArenaStringPtr sender_name_;
    ::google::protobuf::internal::ArenaStringPtr sender_profile_image_url_;
    ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE password_issues_;
    ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE notes_;
    ::int32_t scheme_;
    ::int32_t type_;
    ::int64_t date_created_;
    ::int32_t times_used_;
    bool ssl_valid_;
    bool preferred_;
    bool blacklisted_;
    bool sharing_notification_displayed_;
    ::int64_t date_last_used_;
    ::int64_t date_password_modified_windows_epoch_micros_;
    ::int64_t date_received_windows_epoch_micros_;
    ::int64_t date_last_filled_windows_epoch_micros_;
    bool actor_login_approved_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};
// -------------------------------------------------------------------

class  PasswordSpecifics final : public ::google::protobuf::MessageLite
/* @@protoc_insertion_point(class_definition:sync_pb.PasswordSpecifics) */ {
 public:
  inline PasswordSpecifics() : PasswordSpecifics(nullptr) {}
  ~PasswordSpecifics() PROTOBUF_FINAL;

#if defined(PROTOBUF_CUSTOM_VTABLE)
  void operator delete(PasswordSpecifics* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
    SharedDtor(*msg);
    ::google::protobuf::internal::SizedDelete(msg, sizeof(PasswordSpecifics));
  }
#endif

  template <typename = void>
  explicit constexpr PasswordSpecifics(::google::protobuf::internal::ConstantInitialized,
                           const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
                               class_data);

  inline PasswordSpecifics(const PasswordSpecifics& from) : PasswordSpecifics(nullptr, from) {}
  inline PasswordSpecifics(PasswordSpecifics&& from) noexcept : PasswordSpecifics(nullptr, ::std::move(from)) {}
  inline PasswordSpecifics& operator=(const PasswordSpecifics& from) {
    CopyFrom(from);
    return *this;
  }
  inline PasswordSpecifics& operator=(PasswordSpecifics&& from) noexcept {
    if (this == &from) return *this;
    if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::std::string& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString);
  }
  inline ::std::string* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::std::string>();
  }

  static const PasswordSpecifics& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<PasswordSpecifics>(&PasswordSpecifics_globals_);
  }
  static constexpr int kIndexInFileMessages = 6;
  friend void swap(PasswordSpecifics& a, PasswordSpecifics& b) { a.Swap(&b); }
  PROTOBUF_NOINLINE void Swap(PasswordSpecifics* PROTOBUF_NONNULL other) {
    if (other == this) return;
    if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
      InternalSwap(other);
    } else {
      ::google::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PasswordSpecifics* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  PasswordSpecifics* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::MessageLite::DefaultConstruct<PasswordSpecifics>(arena);
  }
  void CopyFrom(const PasswordSpecifics& from);
  void MergeFrom(const PasswordSpecifics& from) { PasswordSpecifics::MergeImpl(*this, from); }

  private:
  static void MergeImpl(::google::protobuf::MessageLite& to_msg,
                        const ::google::protobuf::MessageLite& from_msg);

  public:
  bool IsInitialized() const {
    return true;
  }
  ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
  #if defined(PROTOBUF_CUSTOM_VTABLE)
  private:
  static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
  static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
    return _InternalSerialize(*this, target, stream);
  }
  #else   // PROTOBUF_CUSTOM_VTABLE
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

  private:
  void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static void SharedDtor(MessageLite& self);
  void InternalSwap(PasswordSpecifics* PROTOBUF_NONNULL other);
 private:
  template <typename T>
  friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
  static ::absl::string_view FullMessageName() { return "sync_pb.PasswordSpecifics"; }

  explicit PasswordSpecifics(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  PasswordSpecifics(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PasswordSpecifics& from);
  PasswordSpecifics(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PasswordSpecifics&& from) noexcept
      : PasswordSpecifics(arena) {
    *this = ::std::move(from);
  }
  const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
  static void* PROTOBUF_NONNULL PlacementNew_(
      const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr auto InternalNewImpl_();

 public:
  static constexpr auto InternalGenerateClassData_(
      const MessageLite& prototype,
      const ::google::protobuf::internal::TcParseTableBase* PROTOBUF_NULLABLE tc_table = nullptr);

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kEncryptedFieldNumber = 1,
    kClientOnlyEncryptedDataFieldNumber = 2,
    kUnencryptedMetadataFieldNumber = 3,
    kEncryptedNotesBackupFieldNumber = 5,
  };
  // optional .sync_pb.EncryptedData encrypted = 1;
  bool has_encrypted()
      const;
  void clear_encrypted() ;
  const ::sync_pb::EncryptedData& encrypted() const;
  ::sync_pb::EncryptedData* PROTOBUF_NULLABLE release_encrypted();
  ::sync_pb::EncryptedData* PROTOBUF_NONNULL mutable_encrypted();
  void set_allocated_encrypted(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_encrypted(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value);
  ::sync_pb::EncryptedData* PROTOBUF_NULLABLE unsafe_arena_release_encrypted();

  private:
  const ::sync_pb::EncryptedData& _internal_encrypted() const;
  ::sync_pb::EncryptedData* PROTOBUF_NONNULL _internal_mutable_encrypted();

  public:
  // optional .sync_pb.PasswordSpecificsData client_only_encrypted_data = 2;
  bool has_client_only_encrypted_data()
      const;
  void clear_client_only_encrypted_data() ;
  const ::sync_pb::PasswordSpecificsData& client_only_encrypted_data() const;
  ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE release_client_only_encrypted_data();
  ::sync_pb::PasswordSpecificsData* PROTOBUF_NONNULL mutable_client_only_encrypted_data();
  void set_allocated_client_only_encrypted_data(::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_client_only_encrypted_data(::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE unsafe_arena_release_client_only_encrypted_data();

  private:
  const ::sync_pb::PasswordSpecificsData& _internal_client_only_encrypted_data() const;
  ::sync_pb::PasswordSpecificsData* PROTOBUF_NONNULL _internal_mutable_client_only_encrypted_data();

  public:
  // optional .sync_pb.PasswordSpecificsMetadata unencrypted_metadata = 3;
  bool has_unencrypted_metadata()
      const;
  void clear_unencrypted_metadata() ;
  const ::sync_pb::PasswordSpecificsMetadata& unencrypted_metadata() const;
  ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE release_unencrypted_metadata();
  ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NONNULL mutable_unencrypted_metadata();
  void set_allocated_unencrypted_metadata(::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_unencrypted_metadata(::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE value);
  ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE unsafe_arena_release_unencrypted_metadata();

  private:
  const ::sync_pb::PasswordSpecificsMetadata& _internal_unencrypted_metadata() const;
  ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NONNULL _internal_mutable_unencrypted_metadata();

  public:
  // optional .sync_pb.EncryptedData encrypted_notes_backup = 5;
  bool has_encrypted_notes_backup()
      const;
  void clear_encrypted_notes_backup() ;
  const ::sync_pb::EncryptedData& encrypted_notes_backup() const;
  ::sync_pb::EncryptedData* PROTOBUF_NULLABLE release_encrypted_notes_backup();
  ::sync_pb::EncryptedData* PROTOBUF_NONNULL mutable_encrypted_notes_backup();
  void set_allocated_encrypted_notes_backup(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_encrypted_notes_backup(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value);
  ::sync_pb::EncryptedData* PROTOBUF_NULLABLE unsafe_arena_release_encrypted_notes_backup();

  private:
  const ::sync_pb::EncryptedData& _internal_encrypted_notes_backup() const;
  ::sync_pb::EncryptedData* PROTOBUF_NONNULL _internal_mutable_encrypted_notes_backup();

  public:
  // @@protoc_insertion_point(class_scope:sync_pb.PasswordSpecifics)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<3, 4,
                          4, 0,
                          2>;
  static constexpr ParseTableT_ InternalGenerateParseTable_(
      const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL class_data);
  friend class ::google::protobuf::internal::TcParser;
  #ifndef PROTOBUF_MESSAGE_GLOBALS
  static const ParseTableT_ _table_;
  #endif

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  friend ::google::protobuf::internal::PrivateAccess;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::google::protobuf::internal::InternalVisibility visibility,
                                    ::google::protobuf::internal::ConstantInitialized) noexcept;
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
    inline explicit Impl_(
        ::google::protobuf::internal::InternalVisibility visibility,
        ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
        const PasswordSpecifics& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::sync_pb::EncryptedData* PROTOBUF_NULLABLE encrypted_;
    ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE client_only_encrypted_data_;
    ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE unencrypted_metadata_;
    ::sync_pb::EncryptedData* PROTOBUF_NULLABLE encrypted_notes_backup_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto;
};

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




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


#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// -------------------------------------------------------------------

// PasswordIssues_PasswordIssue

// optional uint64 date_first_detection_windows_epoch_micros = 1;
inline bool PasswordIssues_PasswordIssue::has_date_first_detection_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  return value;
}
inline void PasswordIssues_PasswordIssue::clear_date_first_detection_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_first_detection_windows_epoch_micros_ = ::uint64_t{0u};
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::uint64_t PasswordIssues_PasswordIssue::date_first_detection_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.PasswordIssue.date_first_detection_windows_epoch_micros)
  return _internal_date_first_detection_windows_epoch_micros();
}
inline void PasswordIssues_PasswordIssue::set_date_first_detection_windows_epoch_micros(::uint64_t value) {
  _internal_set_date_first_detection_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordIssues.PasswordIssue.date_first_detection_windows_epoch_micros)
}
inline ::uint64_t PasswordIssues_PasswordIssue::_internal_date_first_detection_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_first_detection_windows_epoch_micros_;
}
inline void PasswordIssues_PasswordIssue::_internal_set_date_first_detection_windows_epoch_micros(::uint64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_first_detection_windows_epoch_micros_ = value;
}

// optional bool is_muted = 2;
inline bool PasswordIssues_PasswordIssue::has_is_muted() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  return value;
}
inline void PasswordIssues_PasswordIssue::clear_is_muted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_muted_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool PasswordIssues_PasswordIssue::is_muted() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.PasswordIssue.is_muted)
  return _internal_is_muted();
}
inline void PasswordIssues_PasswordIssue::set_is_muted(bool value) {
  _internal_set_is_muted(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordIssues.PasswordIssue.is_muted)
}
inline bool PasswordIssues_PasswordIssue::_internal_is_muted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.is_muted_;
}
inline void PasswordIssues_PasswordIssue::_internal_set_is_muted(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_muted_ = value;
}

// optional bool trigger_notification_from_backend_on_detection = 3;
inline bool PasswordIssues_PasswordIssue::has_trigger_notification_from_backend_on_detection() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  return value;
}
inline void PasswordIssues_PasswordIssue::clear_trigger_notification_from_backend_on_detection() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.trigger_notification_from_backend_on_detection_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline bool PasswordIssues_PasswordIssue::trigger_notification_from_backend_on_detection() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.PasswordIssue.trigger_notification_from_backend_on_detection)
  return _internal_trigger_notification_from_backend_on_detection();
}
inline void PasswordIssues_PasswordIssue::set_trigger_notification_from_backend_on_detection(bool value) {
  _internal_set_trigger_notification_from_backend_on_detection(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordIssues.PasswordIssue.trigger_notification_from_backend_on_detection)
}
inline bool PasswordIssues_PasswordIssue::_internal_trigger_notification_from_backend_on_detection() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.trigger_notification_from_backend_on_detection_;
}
inline void PasswordIssues_PasswordIssue::_internal_set_trigger_notification_from_backend_on_detection(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.trigger_notification_from_backend_on_detection_ = value;
}

// -------------------------------------------------------------------

// PasswordIssues

// optional .sync_pb.PasswordIssues.PasswordIssue leaked_password_issue = 1;
inline bool PasswordIssues::has_leaked_password_issue() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.leaked_password_issue_ != nullptr);
  return value;
}
inline void PasswordIssues::clear_leaked_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.leaked_password_issue_ != nullptr) _impl_.leaked_password_issue_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::_internal_leaked_password_issue() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues_PasswordIssue* p = _impl_.leaked_password_issue_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues_PasswordIssue>(&::sync_pb::PasswordIssues_PasswordIssue_globals_);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::leaked_password_issue() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.leaked_password_issue)
  return _internal_leaked_password_issue();
}
inline void PasswordIssues::unsafe_arena_set_allocated_leaked_password_issue(
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.leaked_password_issue_);
  }
  _impl_.leaked_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordIssues.leaked_password_issue)
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::release_leaked_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::PasswordIssues_PasswordIssue* released = _impl_.leaked_password_issue_;
  _impl_.leaked_password_issue_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::unsafe_arena_release_leaked_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordIssues.leaked_password_issue)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::PasswordIssues_PasswordIssue* temp = _impl_.leaked_password_issue_;
  _impl_.leaked_password_issue_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::_internal_mutable_leaked_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.leaked_password_issue_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues_PasswordIssue>(GetArena());
    _impl_.leaked_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(p);
  }
  return _impl_.leaked_password_issue_;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::mutable_leaked_password_issue()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::PasswordIssues_PasswordIssue* _msg = _internal_mutable_leaked_password_issue();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordIssues.leaked_password_issue)
  return _msg;
}
inline void PasswordIssues::set_allocated_leaked_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.leaked_password_issue_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.leaked_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordIssues.leaked_password_issue)
}

// optional .sync_pb.PasswordIssues.PasswordIssue reused_password_issue = 2;
inline bool PasswordIssues::has_reused_password_issue() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.reused_password_issue_ != nullptr);
  return value;
}
inline void PasswordIssues::clear_reused_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.reused_password_issue_ != nullptr) _impl_.reused_password_issue_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::_internal_reused_password_issue() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues_PasswordIssue* p = _impl_.reused_password_issue_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues_PasswordIssue>(&::sync_pb::PasswordIssues_PasswordIssue_globals_);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::reused_password_issue() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.reused_password_issue)
  return _internal_reused_password_issue();
}
inline void PasswordIssues::unsafe_arena_set_allocated_reused_password_issue(
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reused_password_issue_);
  }
  _impl_.reused_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordIssues.reused_password_issue)
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::release_reused_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues_PasswordIssue* released = _impl_.reused_password_issue_;
  _impl_.reused_password_issue_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::unsafe_arena_release_reused_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordIssues.reused_password_issue)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues_PasswordIssue* temp = _impl_.reused_password_issue_;
  _impl_.reused_password_issue_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::_internal_mutable_reused_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.reused_password_issue_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues_PasswordIssue>(GetArena());
    _impl_.reused_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(p);
  }
  return _impl_.reused_password_issue_;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::mutable_reused_password_issue()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues_PasswordIssue* _msg = _internal_mutable_reused_password_issue();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordIssues.reused_password_issue)
  return _msg;
}
inline void PasswordIssues::set_allocated_reused_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reused_password_issue_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }

  _impl_.reused_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordIssues.reused_password_issue)
}

// optional .sync_pb.PasswordIssues.PasswordIssue weak_password_issue = 3;
inline bool PasswordIssues::has_weak_password_issue() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  PROTOBUF_ASSUME(!value || _impl_.weak_password_issue_ != nullptr);
  return value;
}
inline void PasswordIssues::clear_weak_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.weak_password_issue_ != nullptr) _impl_.weak_password_issue_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::_internal_weak_password_issue() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues_PasswordIssue* p = _impl_.weak_password_issue_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues_PasswordIssue>(&::sync_pb::PasswordIssues_PasswordIssue_globals_);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::weak_password_issue() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.weak_password_issue)
  return _internal_weak_password_issue();
}
inline void PasswordIssues::unsafe_arena_set_allocated_weak_password_issue(
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.weak_password_issue_);
  }
  _impl_.weak_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordIssues.weak_password_issue)
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::release_weak_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordIssues_PasswordIssue* released = _impl_.weak_password_issue_;
  _impl_.weak_password_issue_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::unsafe_arena_release_weak_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordIssues.weak_password_issue)

  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordIssues_PasswordIssue* temp = _impl_.weak_password_issue_;
  _impl_.weak_password_issue_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::_internal_mutable_weak_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.weak_password_issue_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues_PasswordIssue>(GetArena());
    _impl_.weak_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(p);
  }
  return _impl_.weak_password_issue_;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::mutable_weak_password_issue()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordIssues_PasswordIssue* _msg = _internal_mutable_weak_password_issue();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordIssues.weak_password_issue)
  return _msg;
}
inline void PasswordIssues::set_allocated_weak_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.weak_password_issue_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }

  _impl_.weak_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordIssues.weak_password_issue)
}

// optional .sync_pb.PasswordIssues.PasswordIssue phished_password_issue = 4;
inline bool PasswordIssues::has_phished_password_issue() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
  PROTOBUF_ASSUME(!value || _impl_.phished_password_issue_ != nullptr);
  return value;
}
inline void PasswordIssues::clear_phished_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.phished_password_issue_ != nullptr) _impl_.phished_password_issue_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::_internal_phished_password_issue() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues_PasswordIssue* p = _impl_.phished_password_issue_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues_PasswordIssue>(&::sync_pb::PasswordIssues_PasswordIssue_globals_);
}
inline const ::sync_pb::PasswordIssues_PasswordIssue& PasswordIssues::phished_password_issue() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordIssues.phished_password_issue)
  return _internal_phished_password_issue();
}
inline void PasswordIssues::unsafe_arena_set_allocated_phished_password_issue(
    ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.phished_password_issue_);
  }
  _impl_.phished_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordIssues.phished_password_issue)
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::release_phished_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::PasswordIssues_PasswordIssue* released = _impl_.phished_password_issue_;
  _impl_.phished_password_issue_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE PasswordIssues::unsafe_arena_release_phished_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordIssues.phished_password_issue)

  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::PasswordIssues_PasswordIssue* temp = _impl_.phished_password_issue_;
  _impl_.phished_password_issue_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::_internal_mutable_phished_password_issue() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.phished_password_issue_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues_PasswordIssue>(GetArena());
    _impl_.phished_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(p);
  }
  return _impl_.phished_password_issue_;
}
inline ::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NONNULL PasswordIssues::mutable_phished_password_issue()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::PasswordIssues_PasswordIssue* _msg = _internal_mutable_phished_password_issue();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordIssues.phished_password_issue)
  return _msg;
}
inline void PasswordIssues::set_allocated_phished_password_issue(::sync_pb::PasswordIssues_PasswordIssue* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.phished_password_issue_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }

  _impl_.phished_password_issue_ = reinterpret_cast<::sync_pb::PasswordIssues_PasswordIssue*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordIssues.phished_password_issue)
}

// -------------------------------------------------------------------

// PasswordSpecificsData_Notes_Note

// optional string unique_display_name = 1;
inline bool PasswordSpecificsData_Notes_Note::has_unique_display_name() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  return value;
}
inline void PasswordSpecificsData_Notes_Note::clear_unique_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.unique_display_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& PasswordSpecificsData_Notes_Note::unique_display_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.Notes.Note.unique_display_name)
  return _internal_unique_display_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData_Notes_Note::set_unique_display_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.unique_display_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.Notes.Note.unique_display_name)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData_Notes_Note::mutable_unique_display_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_unique_display_name();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.Notes.Note.unique_display_name)
  return _s;
}
inline const ::std::string& PasswordSpecificsData_Notes_Note::_internal_unique_display_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.unique_display_name_.Get();
}
inline void PasswordSpecificsData_Notes_Note::_internal_set_unique_display_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.unique_display_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData_Notes_Note::_internal_mutable_unique_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.unique_display_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData_Notes_Note::release_unique_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.Notes.Note.unique_display_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.unique_display_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.unique_display_name_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData_Notes_Note::set_allocated_unique_display_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.unique_display_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.unique_display_name_.IsDefault()) {
    _impl_.unique_display_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.Notes.Note.unique_display_name)
}

// optional string value = 2;
inline bool PasswordSpecificsData_Notes_Note::has_value() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  return value;
}
inline void PasswordSpecificsData_Notes_Note::clear_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.value_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& PasswordSpecificsData_Notes_Note::value() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.Notes.Note.value)
  return _internal_value();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData_Notes_Note::set_value(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.value_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.Notes.Note.value)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData_Notes_Note::mutable_value()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_value();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.Notes.Note.value)
  return _s;
}
inline const ::std::string& PasswordSpecificsData_Notes_Note::_internal_value() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.value_.Get();
}
inline void PasswordSpecificsData_Notes_Note::_internal_set_value(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.value_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData_Notes_Note::_internal_mutable_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.value_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData_Notes_Note::release_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.Notes.Note.value)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.value_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.value_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData_Notes_Note::set_allocated_value(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.value_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.value_.IsDefault()) {
    _impl_.value_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.Notes.Note.value)
}

// optional int64 date_created_windows_epoch_micros = 3;
inline bool PasswordSpecificsData_Notes_Note::has_date_created_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  return value;
}
inline void PasswordSpecificsData_Notes_Note::clear_date_created_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_created_windows_epoch_micros_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::int64_t PasswordSpecificsData_Notes_Note::date_created_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.Notes.Note.date_created_windows_epoch_micros)
  return _internal_date_created_windows_epoch_micros();
}
inline void PasswordSpecificsData_Notes_Note::set_date_created_windows_epoch_micros(::int64_t value) {
  _internal_set_date_created_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.Notes.Note.date_created_windows_epoch_micros)
}
inline ::int64_t PasswordSpecificsData_Notes_Note::_internal_date_created_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_created_windows_epoch_micros_;
}
inline void PasswordSpecificsData_Notes_Note::_internal_set_date_created_windows_epoch_micros(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_created_windows_epoch_micros_ = value;
}

// optional bool hide_by_default = 4;
inline bool PasswordSpecificsData_Notes_Note::has_hide_by_default() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
  return value;
}
inline void PasswordSpecificsData_Notes_Note::clear_hide_by_default() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hide_by_default_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline bool PasswordSpecificsData_Notes_Note::hide_by_default() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.Notes.Note.hide_by_default)
  return _internal_hide_by_default();
}
inline void PasswordSpecificsData_Notes_Note::set_hide_by_default(bool value) {
  _internal_set_hide_by_default(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.Notes.Note.hide_by_default)
}
inline bool PasswordSpecificsData_Notes_Note::_internal_hide_by_default() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.hide_by_default_;
}
inline void PasswordSpecificsData_Notes_Note::_internal_set_hide_by_default(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hide_by_default_ = value;
}

// -------------------------------------------------------------------

// PasswordSpecificsData_Notes

// repeated .sync_pb.PasswordSpecificsData.Notes.Note note = 1;
inline int PasswordSpecificsData_Notes::_internal_note_size() const {
  return _internal_note().size();
}
inline int PasswordSpecificsData_Notes::note_size() const {
  return _internal_note_size();
}
inline void PasswordSpecificsData_Notes::clear_note() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.note_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::sync_pb::PasswordSpecificsData_Notes_Note& PasswordSpecificsData_Notes::note(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.Notes.note)
  return _internal_note().Get(index);
}
inline ::sync_pb::PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL PasswordSpecificsData_Notes::mutable_note(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.Notes.note)
  return _internal_mutable_note()->Mutable(index);
}
inline ::sync_pb::PasswordSpecificsData_Notes_Note* PROTOBUF_NONNULL PasswordSpecificsData_Notes::add_note()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::sync_pb::PasswordSpecificsData_Notes_Note* _add =
      _internal_mutable_note()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:sync_pb.PasswordSpecificsData.Notes.note)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>& PasswordSpecificsData_Notes::note() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:sync_pb.PasswordSpecificsData.Notes.note)
  return _internal_note();
}
inline ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>* PROTOBUF_NONNULL
PasswordSpecificsData_Notes::mutable_note() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:sync_pb.PasswordSpecificsData.Notes.note)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_note();
}
inline const ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>&
PasswordSpecificsData_Notes::_internal_note() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.note_;
}
inline ::google::protobuf::RepeatedPtrField<::sync_pb::PasswordSpecificsData_Notes_Note>* PROTOBUF_NONNULL
PasswordSpecificsData_Notes::_internal_mutable_note() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.note_;
}

// -------------------------------------------------------------------

// PasswordSpecificsData

// optional int32 scheme = 1;
inline bool PasswordSpecificsData::has_scheme() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00008000U);
  return value;
}
inline void PasswordSpecificsData::clear_scheme() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.scheme_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
}
inline ::int32_t PasswordSpecificsData::scheme() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.scheme)
  return _internal_scheme();
}
inline void PasswordSpecificsData::set_scheme(::int32_t value) {
  _internal_set_scheme(value);
  SetHasBit(_impl_._has_bits_[0], 0x00008000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.scheme)
}
inline ::int32_t PasswordSpecificsData::_internal_scheme() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.scheme_;
}
inline void PasswordSpecificsData::_internal_set_scheme(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.scheme_ = value;
}

// optional string signon_realm = 2;
inline bool PasswordSpecificsData::has_signon_realm() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  return value;
}
inline void PasswordSpecificsData::clear_signon_realm() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.signon_realm_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& PasswordSpecificsData::signon_realm() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.signon_realm)
  return _internal_signon_realm();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_signon_realm(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.signon_realm_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.signon_realm)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_signon_realm()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_signon_realm();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.signon_realm)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_signon_realm() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.signon_realm_.Get();
}
inline void PasswordSpecificsData::_internal_set_signon_realm(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.signon_realm_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_signon_realm() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.signon_realm_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_signon_realm() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.signon_realm)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.signon_realm_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.signon_realm_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_signon_realm(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.signon_realm_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.signon_realm_.IsDefault()) {
    _impl_.signon_realm_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.signon_realm)
}

// optional string origin = 3;
inline bool PasswordSpecificsData::has_origin() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  return value;
}
inline void PasswordSpecificsData::clear_origin() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.origin_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& PasswordSpecificsData::origin() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.origin)
  return _internal_origin();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_origin(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.origin_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.origin)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_origin()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_origin();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.origin)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_origin() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.origin_.Get();
}
inline void PasswordSpecificsData::_internal_set_origin(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.origin_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_origin() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.origin_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_origin() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.origin)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.origin_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.origin_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_origin(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  _impl_.origin_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.origin_.IsDefault()) {
    _impl_.origin_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.origin)
}

// optional string action = 4;
inline bool PasswordSpecificsData::has_action() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  return value;
}
inline void PasswordSpecificsData::clear_action() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.action_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& PasswordSpecificsData::action() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.action)
  return _internal_action();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_action(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.action_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.action)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_action()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_action();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.action)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_action() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.action_.Get();
}
inline void PasswordSpecificsData::_internal_set_action(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.action_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_action() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.action_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_action() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.action)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.action_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.action_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_action(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }
  _impl_.action_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.action_.IsDefault()) {
    _impl_.action_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.action)
}

// optional string username_element = 5;
inline bool PasswordSpecificsData::has_username_element() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
  return value;
}
inline void PasswordSpecificsData::clear_username_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.username_element_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::std::string& PasswordSpecificsData::username_element() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.username_element)
  return _internal_username_element();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_username_element(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.username_element_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.username_element)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_username_element()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_username_element();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.username_element)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_username_element() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.username_element_.Get();
}
inline void PasswordSpecificsData::_internal_set_username_element(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.username_element_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_username_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.username_element_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_username_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.username_element)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.username_element_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.username_element_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_username_element(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }
  _impl_.username_element_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.username_element_.IsDefault()) {
    _impl_.username_element_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.username_element)
}

// optional string username_value = 6;
inline bool PasswordSpecificsData::has_username_value() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000010U);
  return value;
}
inline void PasswordSpecificsData::clear_username_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.username_value_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline const ::std::string& PasswordSpecificsData::username_value() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.username_value)
  return _internal_username_value();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_username_value(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  _impl_.username_value_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.username_value)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_username_value()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  ::std::string* _s = _internal_mutable_username_value();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.username_value)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_username_value() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.username_value_.Get();
}
inline void PasswordSpecificsData::_internal_set_username_value(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.username_value_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_username_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.username_value_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_username_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.username_value)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000010U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  auto* released = _impl_.username_value_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.username_value_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_username_value(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  }
  _impl_.username_value_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.username_value_.IsDefault()) {
    _impl_.username_value_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.username_value)
}

// optional string password_element = 7;
inline bool PasswordSpecificsData::has_password_element() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000020U);
  return value;
}
inline void PasswordSpecificsData::clear_password_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.password_element_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline const ::std::string& PasswordSpecificsData::password_element() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.password_element)
  return _internal_password_element();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_password_element(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  _impl_.password_element_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.password_element)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_password_element()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::std::string* _s = _internal_mutable_password_element();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.password_element)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_password_element() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.password_element_.Get();
}
inline void PasswordSpecificsData::_internal_set_password_element(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.password_element_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_password_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.password_element_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_password_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.password_element)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000020U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  auto* released = _impl_.password_element_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.password_element_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_password_element(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  }
  _impl_.password_element_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.password_element_.IsDefault()) {
    _impl_.password_element_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.password_element)
}

// optional string password_value = 8;
inline bool PasswordSpecificsData::has_password_value() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000040U);
  return value;
}
inline void PasswordSpecificsData::clear_password_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.password_value_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
}
inline const ::std::string& PasswordSpecificsData::password_value() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.password_value)
  return _internal_password_value();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_password_value(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  _impl_.password_value_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.password_value)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_password_value()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::std::string* _s = _internal_mutable_password_value();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.password_value)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_password_value() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.password_value_.Get();
}
inline void PasswordSpecificsData::_internal_set_password_value(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.password_value_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_password_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.password_value_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_password_value() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.password_value)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000040U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  auto* released = _impl_.password_value_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.password_value_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_password_value(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  }
  _impl_.password_value_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.password_value_.IsDefault()) {
    _impl_.password_value_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.password_value)
}

// optional bool ssl_valid = 9 [deprecated = true];
inline bool PasswordSpecificsData::has_ssl_valid() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00080000U);
  return value;
}
inline void PasswordSpecificsData::clear_ssl_valid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ssl_valid_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00080000U);
}
inline bool PasswordSpecificsData::ssl_valid() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.ssl_valid)
  return _internal_ssl_valid();
}
inline void PasswordSpecificsData::set_ssl_valid(bool value) {
  _internal_set_ssl_valid(value);
  SetHasBit(_impl_._has_bits_[0], 0x00080000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.ssl_valid)
}
inline bool PasswordSpecificsData::_internal_ssl_valid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.ssl_valid_;
}
inline void PasswordSpecificsData::_internal_set_ssl_valid(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.ssl_valid_ = value;
}

// optional bool preferred = 10 [deprecated = true];
inline bool PasswordSpecificsData::has_preferred() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00100000U);
  return value;
}
inline void PasswordSpecificsData::clear_preferred() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preferred_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00100000U);
}
inline bool PasswordSpecificsData::preferred() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.preferred)
  return _internal_preferred();
}
inline void PasswordSpecificsData::set_preferred(bool value) {
  _internal_set_preferred(value);
  SetHasBit(_impl_._has_bits_[0], 0x00100000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.preferred)
}
inline bool PasswordSpecificsData::_internal_preferred() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.preferred_;
}
inline void PasswordSpecificsData::_internal_set_preferred(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preferred_ = value;
}

// optional int64 date_created = 11;
inline bool PasswordSpecificsData::has_date_created() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00020000U);
  return value;
}
inline void PasswordSpecificsData::clear_date_created() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_created_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x00020000U);
}
inline ::int64_t PasswordSpecificsData::date_created() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.date_created)
  return _internal_date_created();
}
inline void PasswordSpecificsData::set_date_created(::int64_t value) {
  _internal_set_date_created(value);
  SetHasBit(_impl_._has_bits_[0], 0x00020000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.date_created)
}
inline ::int64_t PasswordSpecificsData::_internal_date_created() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_created_;
}
inline void PasswordSpecificsData::_internal_set_date_created(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_created_ = value;
}

// optional bool blacklisted = 12;
inline bool PasswordSpecificsData::has_blacklisted() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00200000U);
  return value;
}
inline void PasswordSpecificsData::clear_blacklisted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.blacklisted_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00200000U);
}
inline bool PasswordSpecificsData::blacklisted() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.blacklisted)
  return _internal_blacklisted();
}
inline void PasswordSpecificsData::set_blacklisted(bool value) {
  _internal_set_blacklisted(value);
  SetHasBit(_impl_._has_bits_[0], 0x00200000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.blacklisted)
}
inline bool PasswordSpecificsData::_internal_blacklisted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.blacklisted_;
}
inline void PasswordSpecificsData::_internal_set_blacklisted(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.blacklisted_ = value;
}

// optional int32 type = 13;
inline bool PasswordSpecificsData::has_type() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00010000U);
  return value;
}
inline void PasswordSpecificsData::clear_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
}
inline ::int32_t PasswordSpecificsData::type() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.type)
  return _internal_type();
}
inline void PasswordSpecificsData::set_type(::int32_t value) {
  _internal_set_type(value);
  SetHasBit(_impl_._has_bits_[0], 0x00010000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.type)
}
inline ::int32_t PasswordSpecificsData::_internal_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.type_;
}
inline void PasswordSpecificsData::_internal_set_type(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = value;
}

// optional int32 times_used = 14;
inline bool PasswordSpecificsData::has_times_used() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00040000U);
  return value;
}
inline void PasswordSpecificsData::clear_times_used() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.times_used_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00040000U);
}
inline ::int32_t PasswordSpecificsData::times_used() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.times_used)
  return _internal_times_used();
}
inline void PasswordSpecificsData::set_times_used(::int32_t value) {
  _internal_set_times_used(value);
  SetHasBit(_impl_._has_bits_[0], 0x00040000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.times_used)
}
inline ::int32_t PasswordSpecificsData::_internal_times_used() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.times_used_;
}
inline void PasswordSpecificsData::_internal_set_times_used(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.times_used_ = value;
}

// optional string display_name = 15;
inline bool PasswordSpecificsData::has_display_name() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000080U);
  return value;
}
inline void PasswordSpecificsData::clear_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.display_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
}
inline const ::std::string& PasswordSpecificsData::display_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.display_name)
  return _internal_display_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_display_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  _impl_.display_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.display_name)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_display_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::std::string* _s = _internal_mutable_display_name();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.display_name)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_display_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.display_name_.Get();
}
inline void PasswordSpecificsData::_internal_set_display_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.display_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.display_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_display_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.display_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000080U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  auto* released = _impl_.display_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.display_name_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_display_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  }
  _impl_.display_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.display_name_.IsDefault()) {
    _impl_.display_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.display_name)
}

// optional string avatar_url = 16;
inline bool PasswordSpecificsData::has_avatar_url() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000100U);
  return value;
}
inline void PasswordSpecificsData::clear_avatar_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.avatar_url_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
}
inline const ::std::string& PasswordSpecificsData::avatar_url() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.avatar_url)
  return _internal_avatar_url();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_avatar_url(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  _impl_.avatar_url_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.avatar_url)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_avatar_url()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::std::string* _s = _internal_mutable_avatar_url();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.avatar_url)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_avatar_url() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.avatar_url_.Get();
}
inline void PasswordSpecificsData::_internal_set_avatar_url(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.avatar_url_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_avatar_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.avatar_url_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_avatar_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.avatar_url)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000100U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  auto* released = _impl_.avatar_url_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.avatar_url_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_avatar_url(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  }
  _impl_.avatar_url_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.avatar_url_.IsDefault()) {
    _impl_.avatar_url_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.avatar_url)
}

// optional string federation_url = 17;
inline bool PasswordSpecificsData::has_federation_url() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000200U);
  return value;
}
inline void PasswordSpecificsData::clear_federation_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.federation_url_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
}
inline const ::std::string& PasswordSpecificsData::federation_url() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.federation_url)
  return _internal_federation_url();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_federation_url(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  _impl_.federation_url_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.federation_url)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_federation_url()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  ::std::string* _s = _internal_mutable_federation_url();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.federation_url)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_federation_url() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.federation_url_.Get();
}
inline void PasswordSpecificsData::_internal_set_federation_url(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.federation_url_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_federation_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.federation_url_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_federation_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.federation_url)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000200U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  auto* released = _impl_.federation_url_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.federation_url_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_federation_url(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  }
  _impl_.federation_url_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.federation_url_.IsDefault()) {
    _impl_.federation_url_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.federation_url)
}

// optional int64 date_last_used = 18;
inline bool PasswordSpecificsData::has_date_last_used() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00800000U);
  return value;
}
inline void PasswordSpecificsData::clear_date_last_used() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_used_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x00800000U);
}
inline ::int64_t PasswordSpecificsData::date_last_used() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.date_last_used)
  return _internal_date_last_used();
}
inline void PasswordSpecificsData::set_date_last_used(::int64_t value) {
  _internal_set_date_last_used(value);
  SetHasBit(_impl_._has_bits_[0], 0x00800000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.date_last_used)
}
inline ::int64_t PasswordSpecificsData::_internal_date_last_used() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_last_used_;
}
inline void PasswordSpecificsData::_internal_set_date_last_used(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_used_ = value;
}

// optional .sync_pb.PasswordIssues password_issues = 19;
inline bool PasswordSpecificsData::has_password_issues() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00002000U);
  PROTOBUF_ASSUME(!value || _impl_.password_issues_ != nullptr);
  return value;
}
inline void PasswordSpecificsData::clear_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.password_issues_ != nullptr) _impl_.password_issues_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
}
inline const ::sync_pb::PasswordIssues& PasswordSpecificsData::_internal_password_issues() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues* p = _impl_.password_issues_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues>(&::sync_pb::PasswordIssues_globals_);
}
inline const ::sync_pb::PasswordIssues& PasswordSpecificsData::password_issues() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.password_issues)
  return _internal_password_issues();
}
inline void PasswordSpecificsData::unsafe_arena_set_allocated_password_issues(
    ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.password_issues_);
  }
  _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecificsData.password_issues)
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE PasswordSpecificsData::release_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::sync_pb::PasswordIssues* released = _impl_.password_issues_;
  _impl_.password_issues_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE PasswordSpecificsData::unsafe_arena_release_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.password_issues)

  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::sync_pb::PasswordIssues* temp = _impl_.password_issues_;
  _impl_.password_issues_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.password_issues_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues>(GetArena());
    _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(p);
  }
  return _impl_.password_issues_;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NONNULL PasswordSpecificsData::mutable_password_issues()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::sync_pb::PasswordIssues* _msg = _internal_mutable_password_issues();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.password_issues)
  return _msg;
}
inline void PasswordSpecificsData::set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.password_issues_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  }

  _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.password_issues)
}

// optional int64 date_password_modified_windows_epoch_micros = 20;
inline bool PasswordSpecificsData::has_date_password_modified_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x01000000U);
  return value;
}
inline void PasswordSpecificsData::clear_date_password_modified_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_password_modified_windows_epoch_micros_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x01000000U);
}
inline ::int64_t PasswordSpecificsData::date_password_modified_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.date_password_modified_windows_epoch_micros)
  return _internal_date_password_modified_windows_epoch_micros();
}
inline void PasswordSpecificsData::set_date_password_modified_windows_epoch_micros(::int64_t value) {
  _internal_set_date_password_modified_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x01000000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.date_password_modified_windows_epoch_micros)
}
inline ::int64_t PasswordSpecificsData::_internal_date_password_modified_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_password_modified_windows_epoch_micros_;
}
inline void PasswordSpecificsData::_internal_set_date_password_modified_windows_epoch_micros(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_password_modified_windows_epoch_micros_ = value;
}

// optional .sync_pb.PasswordSpecificsData.Notes notes = 22;
inline bool PasswordSpecificsData::has_notes() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00004000U);
  PROTOBUF_ASSUME(!value || _impl_.notes_ != nullptr);
  return value;
}
inline void PasswordSpecificsData::clear_notes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.notes_ != nullptr) _impl_.notes_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
}
inline const ::sync_pb::PasswordSpecificsData_Notes& PasswordSpecificsData::_internal_notes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordSpecificsData_Notes* p = _impl_.notes_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordSpecificsData_Notes>(&::sync_pb::PasswordSpecificsData_Notes_globals_);
}
inline const ::sync_pb::PasswordSpecificsData_Notes& PasswordSpecificsData::notes() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.notes)
  return _internal_notes();
}
inline void PasswordSpecificsData::unsafe_arena_set_allocated_notes(
    ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.notes_);
  }
  _impl_.notes_ = reinterpret_cast<::sync_pb::PasswordSpecificsData_Notes*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecificsData.notes)
}
inline ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE PasswordSpecificsData::release_notes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::sync_pb::PasswordSpecificsData_Notes* released = _impl_.notes_;
  _impl_.notes_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE PasswordSpecificsData::unsafe_arena_release_notes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.notes)

  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::sync_pb::PasswordSpecificsData_Notes* temp = _impl_.notes_;
  _impl_.notes_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_notes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.notes_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordSpecificsData_Notes>(GetArena());
    _impl_.notes_ = reinterpret_cast<::sync_pb::PasswordSpecificsData_Notes*>(p);
  }
  return _impl_.notes_;
}
inline ::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NONNULL PasswordSpecificsData::mutable_notes()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::sync_pb::PasswordSpecificsData_Notes* _msg = _internal_mutable_notes();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.notes)
  return _msg;
}
inline void PasswordSpecificsData::set_allocated_notes(::sync_pb::PasswordSpecificsData_Notes* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.notes_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  }

  _impl_.notes_ = reinterpret_cast<::sync_pb::PasswordSpecificsData_Notes*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.notes)
}

// optional string sender_email = 23;
inline bool PasswordSpecificsData::has_sender_email() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000400U);
  return value;
}
inline void PasswordSpecificsData::clear_sender_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_email_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
}
inline const ::std::string& PasswordSpecificsData::sender_email() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.sender_email)
  return _internal_sender_email();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_sender_email(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  _impl_.sender_email_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.sender_email)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_sender_email()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  ::std::string* _s = _internal_mutable_sender_email();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.sender_email)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_sender_email() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sender_email_.Get();
}
inline void PasswordSpecificsData::_internal_set_sender_email(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_email_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_sender_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sender_email_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_sender_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.sender_email)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000400U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  auto* released = _impl_.sender_email_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sender_email_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_sender_email(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  }
  _impl_.sender_email_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sender_email_.IsDefault()) {
    _impl_.sender_email_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.sender_email)
}

// optional string sender_name = 24;
inline bool PasswordSpecificsData::has_sender_name() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000800U);
  return value;
}
inline void PasswordSpecificsData::clear_sender_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
}
inline const ::std::string& PasswordSpecificsData::sender_name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.sender_name)
  return _internal_sender_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_sender_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  _impl_.sender_name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.sender_name)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_sender_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  ::std::string* _s = _internal_mutable_sender_name();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.sender_name)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_sender_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sender_name_.Get();
}
inline void PasswordSpecificsData::_internal_set_sender_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_sender_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sender_name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_sender_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.sender_name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000800U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  auto* released = _impl_.sender_name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sender_name_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_sender_name(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  }
  _impl_.sender_name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sender_name_.IsDefault()) {
    _impl_.sender_name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.sender_name)
}

// optional int64 date_received_windows_epoch_micros = 25;
inline bool PasswordSpecificsData::has_date_received_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x02000000U);
  return value;
}
inline void PasswordSpecificsData::clear_date_received_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_received_windows_epoch_micros_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x02000000U);
}
inline ::int64_t PasswordSpecificsData::date_received_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.date_received_windows_epoch_micros)
  return _internal_date_received_windows_epoch_micros();
}
inline void PasswordSpecificsData::set_date_received_windows_epoch_micros(::int64_t value) {
  _internal_set_date_received_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x02000000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.date_received_windows_epoch_micros)
}
inline ::int64_t PasswordSpecificsData::_internal_date_received_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_received_windows_epoch_micros_;
}
inline void PasswordSpecificsData::_internal_set_date_received_windows_epoch_micros(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_received_windows_epoch_micros_ = value;
}

// optional bool sharing_notification_displayed = 26;
inline bool PasswordSpecificsData::has_sharing_notification_displayed() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00400000U);
  return value;
}
inline void PasswordSpecificsData::clear_sharing_notification_displayed() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sharing_notification_displayed_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00400000U);
}
inline bool PasswordSpecificsData::sharing_notification_displayed() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.sharing_notification_displayed)
  return _internal_sharing_notification_displayed();
}
inline void PasswordSpecificsData::set_sharing_notification_displayed(bool value) {
  _internal_set_sharing_notification_displayed(value);
  SetHasBit(_impl_._has_bits_[0], 0x00400000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.sharing_notification_displayed)
}
inline bool PasswordSpecificsData::_internal_sharing_notification_displayed() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sharing_notification_displayed_;
}
inline void PasswordSpecificsData::_internal_set_sharing_notification_displayed(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sharing_notification_displayed_ = value;
}

// optional string sender_profile_image_url = 27;
inline bool PasswordSpecificsData::has_sender_profile_image_url() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00001000U);
  return value;
}
inline void PasswordSpecificsData::clear_sender_profile_image_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_profile_image_url_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
}
inline const ::std::string& PasswordSpecificsData::sender_profile_image_url() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.sender_profile_image_url)
  return _internal_sender_profile_image_url();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsData::set_sender_profile_image_url(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  _impl_.sender_profile_image_url_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.sender_profile_image_url)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::mutable_sender_profile_image_url()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  ::std::string* _s = _internal_mutable_sender_profile_image_url();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsData.sender_profile_image_url)
  return _s;
}
inline const ::std::string& PasswordSpecificsData::_internal_sender_profile_image_url() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sender_profile_image_url_.Get();
}
inline void PasswordSpecificsData::_internal_set_sender_profile_image_url(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sender_profile_image_url_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsData::_internal_mutable_sender_profile_image_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sender_profile_image_url_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsData::release_sender_profile_image_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsData.sender_profile_image_url)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00001000U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  auto* released = _impl_.sender_profile_image_url_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sender_profile_image_url_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsData::set_allocated_sender_profile_image_url(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  }
  _impl_.sender_profile_image_url_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sender_profile_image_url_.IsDefault()) {
    _impl_.sender_profile_image_url_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsData.sender_profile_image_url)
}

// optional int64 date_last_filled_windows_epoch_micros = 28;
inline bool PasswordSpecificsData::has_date_last_filled_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x04000000U);
  return value;
}
inline void PasswordSpecificsData::clear_date_last_filled_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_filled_windows_epoch_micros_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x04000000U);
}
inline ::int64_t PasswordSpecificsData::date_last_filled_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.date_last_filled_windows_epoch_micros)
  return _internal_date_last_filled_windows_epoch_micros();
}
inline void PasswordSpecificsData::set_date_last_filled_windows_epoch_micros(::int64_t value) {
  _internal_set_date_last_filled_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x04000000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.date_last_filled_windows_epoch_micros)
}
inline ::int64_t PasswordSpecificsData::_internal_date_last_filled_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_last_filled_windows_epoch_micros_;
}
inline void PasswordSpecificsData::_internal_set_date_last_filled_windows_epoch_micros(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_filled_windows_epoch_micros_ = value;
}

// optional bool actor_login_approved = 29;
inline bool PasswordSpecificsData::has_actor_login_approved() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x08000000U);
  return value;
}
inline void PasswordSpecificsData::clear_actor_login_approved() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.actor_login_approved_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x08000000U);
}
inline bool PasswordSpecificsData::actor_login_approved() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsData.actor_login_approved)
  return _internal_actor_login_approved();
}
inline void PasswordSpecificsData::set_actor_login_approved(bool value) {
  _internal_set_actor_login_approved(value);
  SetHasBit(_impl_._has_bits_[0], 0x08000000U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsData.actor_login_approved)
}
inline bool PasswordSpecificsData::_internal_actor_login_approved() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.actor_login_approved_;
}
inline void PasswordSpecificsData::_internal_set_actor_login_approved(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.actor_login_approved_ = value;
}

// -------------------------------------------------------------------

// PasswordSpecificsMetadata

// optional string url = 1;
inline bool PasswordSpecificsMetadata::has_url() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  return value;
}
inline void PasswordSpecificsMetadata::clear_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.url_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& PasswordSpecificsMetadata::url() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsMetadata.url)
  return _internal_url();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void PasswordSpecificsMetadata::set_url(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.url_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsMetadata.url)
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsMetadata::mutable_url()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_url();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsMetadata.url)
  return _s;
}
inline const ::std::string& PasswordSpecificsMetadata::_internal_url() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.url_.Get();
}
inline void PasswordSpecificsMetadata::_internal_set_url(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.url_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL PasswordSpecificsMetadata::_internal_mutable_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.url_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE PasswordSpecificsMetadata::release_url() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsMetadata.url)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.url_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.url_.Set("", GetArena());
  }
  return released;
}
inline void PasswordSpecificsMetadata::set_allocated_url(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  _impl_.url_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.url_.IsDefault()) {
    _impl_.url_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsMetadata.url)
}

// optional bool blacklisted = 2;
inline bool PasswordSpecificsMetadata::has_blacklisted() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
  return value;
}
inline void PasswordSpecificsMetadata::clear_blacklisted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.blacklisted_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline bool PasswordSpecificsMetadata::blacklisted() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsMetadata.blacklisted)
  return _internal_blacklisted();
}
inline void PasswordSpecificsMetadata::set_blacklisted(bool value) {
  _internal_set_blacklisted(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsMetadata.blacklisted)
}
inline bool PasswordSpecificsMetadata::_internal_blacklisted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.blacklisted_;
}
inline void PasswordSpecificsMetadata::_internal_set_blacklisted(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.blacklisted_ = value;
}

// optional int64 date_last_used_windows_epoch_micros = 3;
inline bool PasswordSpecificsMetadata::has_date_last_used_windows_epoch_micros() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  return value;
}
inline void PasswordSpecificsMetadata::clear_date_last_used_windows_epoch_micros() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_used_windows_epoch_micros_ = ::int64_t{0};
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::int64_t PasswordSpecificsMetadata::date_last_used_windows_epoch_micros() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsMetadata.date_last_used_windows_epoch_micros)
  return _internal_date_last_used_windows_epoch_micros();
}
inline void PasswordSpecificsMetadata::set_date_last_used_windows_epoch_micros(::int64_t value) {
  _internal_set_date_last_used_windows_epoch_micros(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsMetadata.date_last_used_windows_epoch_micros)
}
inline ::int64_t PasswordSpecificsMetadata::_internal_date_last_used_windows_epoch_micros() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_last_used_windows_epoch_micros_;
}
inline void PasswordSpecificsMetadata::_internal_set_date_last_used_windows_epoch_micros(::int64_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_last_used_windows_epoch_micros_ = value;
}

// optional .sync_pb.PasswordIssues password_issues = 4;
inline bool PasswordSpecificsMetadata::has_password_issues() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.password_issues_ != nullptr);
  return value;
}
inline void PasswordSpecificsMetadata::clear_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.password_issues_ != nullptr) _impl_.password_issues_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::sync_pb::PasswordIssues& PasswordSpecificsMetadata::_internal_password_issues() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordIssues* p = _impl_.password_issues_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordIssues>(&::sync_pb::PasswordIssues_globals_);
}
inline const ::sync_pb::PasswordIssues& PasswordSpecificsMetadata::password_issues() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsMetadata.password_issues)
  return _internal_password_issues();
}
inline void PasswordSpecificsMetadata::unsafe_arena_set_allocated_password_issues(
    ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.password_issues_);
  }
  _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecificsMetadata.password_issues)
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE PasswordSpecificsMetadata::release_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues* released = _impl_.password_issues_;
  _impl_.password_issues_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NULLABLE PasswordSpecificsMetadata::unsafe_arena_release_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecificsMetadata.password_issues)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues* temp = _impl_.password_issues_;
  _impl_.password_issues_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NONNULL PasswordSpecificsMetadata::_internal_mutable_password_issues() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.password_issues_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordIssues>(GetArena());
    _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(p);
  }
  return _impl_.password_issues_;
}
inline ::sync_pb::PasswordIssues* PROTOBUF_NONNULL PasswordSpecificsMetadata::mutable_password_issues()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordIssues* _msg = _internal_mutable_password_issues();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecificsMetadata.password_issues)
  return _msg;
}
inline void PasswordSpecificsMetadata::set_allocated_password_issues(::sync_pb::PasswordIssues* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.password_issues_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }

  _impl_.password_issues_ = reinterpret_cast<::sync_pb::PasswordIssues*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecificsMetadata.password_issues)
}

// optional int32 type = 13;
inline bool PasswordSpecificsMetadata::has_type() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000010U);
  return value;
}
inline void PasswordSpecificsMetadata::clear_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline ::int32_t PasswordSpecificsMetadata::type() const {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecificsMetadata.type)
  return _internal_type();
}
inline void PasswordSpecificsMetadata::set_type(::int32_t value) {
  _internal_set_type(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  // @@protoc_insertion_point(field_set:sync_pb.PasswordSpecificsMetadata.type)
}
inline ::int32_t PasswordSpecificsMetadata::_internal_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.type_;
}
inline void PasswordSpecificsMetadata::_internal_set_type(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = value;
}

// -------------------------------------------------------------------

// PasswordSpecifics

// optional .sync_pb.EncryptedData encrypted = 1;
inline bool PasswordSpecifics::has_encrypted() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.encrypted_ != nullptr);
  return value;
}
inline const ::sync_pb::EncryptedData& PasswordSpecifics::_internal_encrypted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::EncryptedData* p = _impl_.encrypted_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::EncryptedData>(&::sync_pb::EncryptedData_globals_);
}
inline const ::sync_pb::EncryptedData& PasswordSpecifics::encrypted() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecifics.encrypted)
  return _internal_encrypted();
}
inline void PasswordSpecifics::unsafe_arena_set_allocated_encrypted(
    ::sync_pb::EncryptedData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.encrypted_);
  }
  _impl_.encrypted_ = reinterpret_cast<::sync_pb::EncryptedData*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecifics.encrypted)
}
inline ::sync_pb::EncryptedData* PROTOBUF_NULLABLE PasswordSpecifics::release_encrypted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::EncryptedData* released = _impl_.encrypted_;
  _impl_.encrypted_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NULLABLE PasswordSpecifics::unsafe_arena_release_encrypted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecifics.encrypted)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::EncryptedData* temp = _impl_.encrypted_;
  _impl_.encrypted_ = nullptr;
  return temp;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NONNULL PasswordSpecifics::_internal_mutable_encrypted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.encrypted_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::EncryptedData>(GetArena());
    _impl_.encrypted_ = reinterpret_cast<::sync_pb::EncryptedData*>(p);
  }
  return _impl_.encrypted_;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NONNULL PasswordSpecifics::mutable_encrypted()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::sync_pb::EncryptedData* _msg = _internal_mutable_encrypted();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecifics.encrypted)
  return _msg;
}
inline void PasswordSpecifics::set_allocated_encrypted(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.encrypted_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(value)->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.encrypted_ = reinterpret_cast<::sync_pb::EncryptedData*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecifics.encrypted)
}

// optional .sync_pb.PasswordSpecificsData client_only_encrypted_data = 2;
inline bool PasswordSpecifics::has_client_only_encrypted_data() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.client_only_encrypted_data_ != nullptr);
  return value;
}
inline void PasswordSpecifics::clear_client_only_encrypted_data() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.client_only_encrypted_data_ != nullptr) _impl_.client_only_encrypted_data_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::sync_pb::PasswordSpecificsData& PasswordSpecifics::_internal_client_only_encrypted_data() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordSpecificsData* p = _impl_.client_only_encrypted_data_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordSpecificsData>(&::sync_pb::PasswordSpecificsData_globals_);
}
inline const ::sync_pb::PasswordSpecificsData& PasswordSpecifics::client_only_encrypted_data() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecifics.client_only_encrypted_data)
  return _internal_client_only_encrypted_data();
}
inline void PasswordSpecifics::unsafe_arena_set_allocated_client_only_encrypted_data(
    ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.client_only_encrypted_data_);
  }
  _impl_.client_only_encrypted_data_ = reinterpret_cast<::sync_pb::PasswordSpecificsData*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecifics.client_only_encrypted_data)
}
inline ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE PasswordSpecifics::release_client_only_encrypted_data() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordSpecificsData* released = _impl_.client_only_encrypted_data_;
  _impl_.client_only_encrypted_data_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE PasswordSpecifics::unsafe_arena_release_client_only_encrypted_data() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecifics.client_only_encrypted_data)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordSpecificsData* temp = _impl_.client_only_encrypted_data_;
  _impl_.client_only_encrypted_data_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordSpecificsData* PROTOBUF_NONNULL PasswordSpecifics::_internal_mutable_client_only_encrypted_data() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.client_only_encrypted_data_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordSpecificsData>(GetArena());
    _impl_.client_only_encrypted_data_ = reinterpret_cast<::sync_pb::PasswordSpecificsData*>(p);
  }
  return _impl_.client_only_encrypted_data_;
}
inline ::sync_pb::PasswordSpecificsData* PROTOBUF_NONNULL PasswordSpecifics::mutable_client_only_encrypted_data()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::sync_pb::PasswordSpecificsData* _msg = _internal_mutable_client_only_encrypted_data();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecifics.client_only_encrypted_data)
  return _msg;
}
inline void PasswordSpecifics::set_allocated_client_only_encrypted_data(::sync_pb::PasswordSpecificsData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.client_only_encrypted_data_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  }

  _impl_.client_only_encrypted_data_ = reinterpret_cast<::sync_pb::PasswordSpecificsData*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecifics.client_only_encrypted_data)
}

// optional .sync_pb.PasswordSpecificsMetadata unencrypted_metadata = 3;
inline bool PasswordSpecifics::has_unencrypted_metadata() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
  PROTOBUF_ASSUME(!value || _impl_.unencrypted_metadata_ != nullptr);
  return value;
}
inline void PasswordSpecifics::clear_unencrypted_metadata() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.unencrypted_metadata_ != nullptr) _impl_.unencrypted_metadata_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::sync_pb::PasswordSpecificsMetadata& PasswordSpecifics::_internal_unencrypted_metadata() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::PasswordSpecificsMetadata* p = _impl_.unencrypted_metadata_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::PasswordSpecificsMetadata>(&::sync_pb::PasswordSpecificsMetadata_globals_);
}
inline const ::sync_pb::PasswordSpecificsMetadata& PasswordSpecifics::unencrypted_metadata() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecifics.unencrypted_metadata)
  return _internal_unencrypted_metadata();
}
inline void PasswordSpecifics::unsafe_arena_set_allocated_unencrypted_metadata(
    ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.unencrypted_metadata_);
  }
  _impl_.unencrypted_metadata_ = reinterpret_cast<::sync_pb::PasswordSpecificsMetadata*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecifics.unencrypted_metadata)
}
inline ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE PasswordSpecifics::release_unencrypted_metadata() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordSpecificsMetadata* released = _impl_.unencrypted_metadata_;
  _impl_.unencrypted_metadata_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE PasswordSpecifics::unsafe_arena_release_unencrypted_metadata() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecifics.unencrypted_metadata)

  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordSpecificsMetadata* temp = _impl_.unencrypted_metadata_;
  _impl_.unencrypted_metadata_ = nullptr;
  return temp;
}
inline ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NONNULL PasswordSpecifics::_internal_mutable_unencrypted_metadata() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.unencrypted_metadata_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::PasswordSpecificsMetadata>(GetArena());
    _impl_.unencrypted_metadata_ = reinterpret_cast<::sync_pb::PasswordSpecificsMetadata*>(p);
  }
  return _impl_.unencrypted_metadata_;
}
inline ::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NONNULL PasswordSpecifics::mutable_unencrypted_metadata()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::sync_pb::PasswordSpecificsMetadata* _msg = _internal_mutable_unencrypted_metadata();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecifics.unencrypted_metadata)
  return _msg;
}
inline void PasswordSpecifics::set_allocated_unencrypted_metadata(::sync_pb::PasswordSpecificsMetadata* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.unencrypted_metadata_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = value->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  }

  _impl_.unencrypted_metadata_ = reinterpret_cast<::sync_pb::PasswordSpecificsMetadata*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecifics.unencrypted_metadata)
}

// optional .sync_pb.EncryptedData encrypted_notes_backup = 5;
inline bool PasswordSpecifics::has_encrypted_notes_backup() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
  PROTOBUF_ASSUME(!value || _impl_.encrypted_notes_backup_ != nullptr);
  return value;
}
inline const ::sync_pb::EncryptedData& PasswordSpecifics::_internal_encrypted_notes_backup() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::sync_pb::EncryptedData* p = _impl_.encrypted_notes_backup_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::sync_pb::EncryptedData>(&::sync_pb::EncryptedData_globals_);
}
inline const ::sync_pb::EncryptedData& PasswordSpecifics::encrypted_notes_backup() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:sync_pb.PasswordSpecifics.encrypted_notes_backup)
  return _internal_encrypted_notes_backup();
}
inline void PasswordSpecifics::unsafe_arena_set_allocated_encrypted_notes_backup(
    ::sync_pb::EncryptedData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.encrypted_notes_backup_);
  }
  _impl_.encrypted_notes_backup_ = reinterpret_cast<::sync_pb::EncryptedData*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:sync_pb.PasswordSpecifics.encrypted_notes_backup)
}
inline ::sync_pb::EncryptedData* PROTOBUF_NULLABLE PasswordSpecifics::release_encrypted_notes_backup() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::EncryptedData* released = _impl_.encrypted_notes_backup_;
  _impl_.encrypted_notes_backup_ = nullptr;
  if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
    auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
    released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    if (GetArena() == nullptr) {
      delete old;
    }
  } else {
    if (GetArena() != nullptr) {
      released = ::google::protobuf::internal::DuplicateIfNonNull(released);
    }
  }
  return released;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NULLABLE PasswordSpecifics::unsafe_arena_release_encrypted_notes_backup() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:sync_pb.PasswordSpecifics.encrypted_notes_backup)

  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::EncryptedData* temp = _impl_.encrypted_notes_backup_;
  _impl_.encrypted_notes_backup_ = nullptr;
  return temp;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NONNULL PasswordSpecifics::_internal_mutable_encrypted_notes_backup() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.encrypted_notes_backup_ == nullptr) {
    auto* p = ::google::protobuf::MessageLite::DefaultConstruct<::sync_pb::EncryptedData>(GetArena());
    _impl_.encrypted_notes_backup_ = reinterpret_cast<::sync_pb::EncryptedData*>(p);
  }
  return _impl_.encrypted_notes_backup_;
}
inline ::sync_pb::EncryptedData* PROTOBUF_NONNULL PasswordSpecifics::mutable_encrypted_notes_backup()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::sync_pb::EncryptedData* _msg = _internal_mutable_encrypted_notes_backup();
  // @@protoc_insertion_point(field_mutable:sync_pb.PasswordSpecifics.encrypted_notes_backup)
  return _msg;
}
inline void PasswordSpecifics::set_allocated_encrypted_notes_backup(::sync_pb::EncryptedData* PROTOBUF_NULLABLE value) {
  ::google::protobuf::Arena* message_arena = GetArena();
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (message_arena == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.encrypted_notes_backup_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(value)->GetArena();
    if (message_arena != submessage_arena) {
      value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
    }
    SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  }

  _impl_.encrypted_notes_backup_ = reinterpret_cast<::sync_pb::EncryptedData*>(value);
  // @@protoc_insertion_point(field_set_allocated:sync_pb.PasswordSpecifics.encrypted_notes_backup)
}

#ifdef __GNUC__
#pragma GCC diagnostic pop
#endif  // __GNUC__

// @@protoc_insertion_point(namespace_scope)
}  // namespace sync_pb


namespace google {
namespace protobuf {

template <>
struct is_proto_enum<::sync_pb::PasswordSpecificsData_Scheme> : std::true_type {};
template <>
struct internal::LiteEnumFuncs<::sync_pb::PasswordSpecificsData_Scheme> {
  static constexpr bool kIsDefined = true;
  static constexpr auto kParseFunc = ::sync_pb::PasswordSpecificsData_Scheme_Parse;
  static constexpr auto kNameFunc = ::sync_pb::PasswordSpecificsData_Scheme_Name<int>;
};

}  // namespace protobuf
}  // namespace google

// @@protoc_insertion_point(global_scope)

#include "google/protobuf/port_undef.inc"
// clang-format on

#endif  // components_2fsync_2fprotocol_2fpassword_5fspecifics_2eproto_2epb_2eh
