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

#ifndef messages_2eproto_2epb_2eh
#define messages_2eproto_2epb_2eh

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

// clang-format off
#include "google/protobuf/runtime_version.h"
#if PROTOBUF_VERSION != 7035000
#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/generated_message_reflection.h"
#include "google/protobuf/message.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_reflection.h"
#include "google/protobuf/unknown_field_set.h"
// @@protoc_insertion_point(includes)

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

#define PROTOBUF_INTERNAL_EXPORT_messages_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_messages_2eproto {
  static const ::uint32_t offsets[];
};
extern "C" {
extern const ::google::protobuf::internal::DescriptorTable descriptor_table_messages_2eproto;
}  // extern "C"
namespace AstroidMessages {
enum Navigate_Direction : int;
extern const uint32_t Navigate_Direction_internal_data_[];
enum Navigate_Type : int;
extern const uint32_t Navigate_Type_internal_data_[];
enum State_MessageState_Element_Type : int;
extern const uint32_t State_MessageState_Element_Type_internal_data_[];
enum UpdateMessage_Type : int;
extern const uint32_t UpdateMessage_Type_internal_data_[];
class Ack;
struct AckGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern AckGlobalsTypeInternal Ack_globals_;
extern const ::google::protobuf::internal::ClassDataFull Ack_class_data_;
#else
extern const AckGlobalsTypeInternal Ack_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Address;
struct AddressGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern AddressGlobalsTypeInternal Address_globals_;
extern const ::google::protobuf::internal::ClassDataFull Address_class_data_;
#else
extern const AddressGlobalsTypeInternal Address_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class AddressList;
struct AddressListGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern AddressListGlobalsTypeInternal AddressList_globals_;
extern const ::google::protobuf::internal::ClassDataFull AddressList_class_data_;
#else
extern const AddressListGlobalsTypeInternal AddressList_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class AllowRemoteImages;
struct AllowRemoteImagesGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern AllowRemoteImagesGlobalsTypeInternal AllowRemoteImages_globals_;
extern const ::google::protobuf::internal::ClassDataFull AllowRemoteImages_class_data_;
#else
extern const AllowRemoteImagesGlobalsTypeInternal AllowRemoteImages_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class ClearMessage;
struct ClearMessageGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern ClearMessageGlobalsTypeInternal ClearMessage_globals_;
extern const ::google::protobuf::internal::ClassDataFull ClearMessage_class_data_;
#else
extern const ClearMessageGlobalsTypeInternal ClearMessage_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Debug;
struct DebugGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern DebugGlobalsTypeInternal Debug_globals_;
extern const ::google::protobuf::internal::ClassDataFull Debug_class_data_;
#else
extern const DebugGlobalsTypeInternal Debug_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Focus;
struct FocusGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern FocusGlobalsTypeInternal Focus_globals_;
extern const ::google::protobuf::internal::ClassDataFull Focus_class_data_;
#else
extern const FocusGlobalsTypeInternal Focus_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Hidden;
struct HiddenGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern HiddenGlobalsTypeInternal Hidden_globals_;
extern const ::google::protobuf::internal::ClassDataFull Hidden_class_data_;
#else
extern const HiddenGlobalsTypeInternal Hidden_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Indent;
struct IndentGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern IndentGlobalsTypeInternal Indent_globals_;
extern const ::google::protobuf::internal::ClassDataFull Indent_class_data_;
#else
extern const IndentGlobalsTypeInternal Indent_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Info;
struct InfoGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern InfoGlobalsTypeInternal Info_globals_;
extern const ::google::protobuf::internal::ClassDataFull Info_class_data_;
#else
extern const InfoGlobalsTypeInternal Info_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Mark;
struct MarkGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern MarkGlobalsTypeInternal Mark_globals_;
extern const ::google::protobuf::internal::ClassDataFull Mark_class_data_;
#else
extern const MarkGlobalsTypeInternal Mark_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Message;
struct MessageGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern MessageGlobalsTypeInternal Message_globals_;
extern const ::google::protobuf::internal::ClassDataFull Message_class_data_;
#else
extern const MessageGlobalsTypeInternal Message_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Message_Chunk;
struct Message_ChunkGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern Message_ChunkGlobalsTypeInternal Message_Chunk_globals_;
extern const ::google::protobuf::internal::ClassDataFull Message_Chunk_class_data_;
#else
extern const Message_ChunkGlobalsTypeInternal Message_Chunk_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Message_Chunk_Encryption;
struct Message_Chunk_EncryptionGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern Message_Chunk_EncryptionGlobalsTypeInternal Message_Chunk_Encryption_globals_;
extern const ::google::protobuf::internal::ClassDataFull Message_Chunk_Encryption_class_data_;
#else
extern const Message_Chunk_EncryptionGlobalsTypeInternal Message_Chunk_Encryption_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Message_Chunk_Signature;
struct Message_Chunk_SignatureGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern Message_Chunk_SignatureGlobalsTypeInternal Message_Chunk_Signature_globals_;
extern const ::google::protobuf::internal::ClassDataFull Message_Chunk_Signature_class_data_;
#else
extern const Message_Chunk_SignatureGlobalsTypeInternal Message_Chunk_Signature_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Navigate;
struct NavigateGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern NavigateGlobalsTypeInternal Navigate_globals_;
extern const ::google::protobuf::internal::ClassDataFull Navigate_class_data_;
#else
extern const NavigateGlobalsTypeInternal Navigate_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class Page;
struct PageGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern PageGlobalsTypeInternal Page_globals_;
extern const ::google::protobuf::internal::ClassDataFull Page_class_data_;
#else
extern const PageGlobalsTypeInternal Page_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class State;
struct StateGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern StateGlobalsTypeInternal State_globals_;
extern const ::google::protobuf::internal::ClassDataFull State_class_data_;
#else
extern const StateGlobalsTypeInternal State_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class State_MessageState;
struct State_MessageStateGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern State_MessageStateGlobalsTypeInternal State_MessageState_globals_;
extern const ::google::protobuf::internal::ClassDataFull State_MessageState_class_data_;
#else
extern const State_MessageStateGlobalsTypeInternal State_MessageState_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class State_MessageState_Element;
struct State_MessageState_ElementGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern State_MessageState_ElementGlobalsTypeInternal State_MessageState_Element_globals_;
extern const ::google::protobuf::internal::ClassDataFull State_MessageState_Element_class_data_;
#else
extern const State_MessageState_ElementGlobalsTypeInternal State_MessageState_Element_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
class UpdateMessage;
struct UpdateMessageGlobalsTypeInternal;
#ifndef PROTOBUF_MESSAGE_GLOBALS
extern UpdateMessageGlobalsTypeInternal UpdateMessage_globals_;
extern const ::google::protobuf::internal::ClassDataFull UpdateMessage_class_data_;
#else
extern const UpdateMessageGlobalsTypeInternal UpdateMessage_globals_;
#endif  // PROTOBUF_MESSAGE_GLOBALS
}  // namespace AstroidMessages
namespace google {
namespace protobuf {
template <>
internal::EnumTraitsT<::AstroidMessages::Navigate_Direction_internal_data_>
    internal::EnumTraitsImpl::value<::AstroidMessages::Navigate_Direction>;
template <>
internal::EnumTraitsT<::AstroidMessages::Navigate_Type_internal_data_>
    internal::EnumTraitsImpl::value<::AstroidMessages::Navigate_Type>;
template <>
internal::EnumTraitsT<::AstroidMessages::State_MessageState_Element_Type_internal_data_>
    internal::EnumTraitsImpl::value<::AstroidMessages::State_MessageState_Element_Type>;
template <>
internal::EnumTraitsT<::AstroidMessages::UpdateMessage_Type_internal_data_>
    internal::EnumTraitsImpl::value<::AstroidMessages::UpdateMessage_Type>;
}  // namespace protobuf
}  // namespace google

namespace AstroidMessages {
enum Navigate_Direction : int {
  Navigate_Direction_None = 0,
  Navigate_Direction_Specific = 1,
  Navigate_Direction_Up = 2,
  Navigate_Direction_Down = 3,
  Navigate_Direction_Navigate_Direction_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  Navigate_Direction_Navigate_Direction_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t Navigate_Direction_internal_data_[];
inline constexpr Navigate_Direction Navigate_Direction_Direction_MIN =
    static_cast<Navigate_Direction>(0);
inline constexpr Navigate_Direction Navigate_Direction_Direction_MAX =
    static_cast<Navigate_Direction>(3);
[[nodiscard]] inline bool Navigate_Direction_IsValid(int value) {
  return 0 <= value && value <= 3;
}
inline constexpr int Navigate_Direction_Direction_ARRAYSIZE = 3 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
Navigate_Direction_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(Navigate_Direction) {
  return Navigate_Direction_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& Navigate_Direction_Name(T value) {
  static_assert(::std::is_same<T, Navigate_Direction>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to Direction_Name().");
  return Navigate_Direction_Name(static_cast<Navigate_Direction>(value));
}
template <>
[[nodiscard]] inline const ::std::string& Navigate_Direction_Name(Navigate_Direction value) {
  return ::google::protobuf::internal::NameOfDenseEnum<Navigate_Direction_descriptor, 0, 3>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool Navigate_Direction_Parse(
    ::absl::string_view name, Navigate_Direction* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<Navigate_Direction>(Navigate_Direction_descriptor(), name,
                                           value);
}
enum Navigate_Type : int {
  Navigate_Type_VisualElement = 0,
  Navigate_Type_Visual = 1,
  Navigate_Type_VisualBig = 2,
  Navigate_Type_VisualPage = 3,
  Navigate_Type_Element = 4,
  Navigate_Type_Message = 5,
  Navigate_Type_FocusView = 6,
  Navigate_Type_Extreme = 7,
  Navigate_Type_Navigate_Type_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  Navigate_Type_Navigate_Type_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t Navigate_Type_internal_data_[];
inline constexpr Navigate_Type Navigate_Type_Type_MIN =
    static_cast<Navigate_Type>(0);
inline constexpr Navigate_Type Navigate_Type_Type_MAX =
    static_cast<Navigate_Type>(7);
[[nodiscard]] inline bool Navigate_Type_IsValid(int value) {
  return 0 <= value && value <= 7;
}
inline constexpr int Navigate_Type_Type_ARRAYSIZE = 7 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
Navigate_Type_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(Navigate_Type) {
  return Navigate_Type_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& Navigate_Type_Name(T value) {
  static_assert(::std::is_same<T, Navigate_Type>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to Type_Name().");
  return Navigate_Type_Name(static_cast<Navigate_Type>(value));
}
template <>
[[nodiscard]] inline const ::std::string& Navigate_Type_Name(Navigate_Type value) {
  return ::google::protobuf::internal::NameOfDenseEnum<Navigate_Type_descriptor, 0, 7>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool Navigate_Type_Parse(
    ::absl::string_view name, Navigate_Type* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<Navigate_Type>(Navigate_Type_descriptor(), name,
                                           value);
}
enum State_MessageState_Element_Type : int {
  State_MessageState_Element_Type_Empty = 0,
  State_MessageState_Element_Type_Address = 1,
  State_MessageState_Element_Type_Part = 2,
  State_MessageState_Element_Type_Attachment = 3,
  State_MessageState_Element_Type_MimeMessage = 4,
  State_MessageState_Element_Type_Encryption = 5,
  State_MessageState_Element_Type_State_MessageState_Element_Type_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  State_MessageState_Element_Type_State_MessageState_Element_Type_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t State_MessageState_Element_Type_internal_data_[];
inline constexpr State_MessageState_Element_Type State_MessageState_Element_Type_Type_MIN =
    static_cast<State_MessageState_Element_Type>(0);
inline constexpr State_MessageState_Element_Type State_MessageState_Element_Type_Type_MAX =
    static_cast<State_MessageState_Element_Type>(5);
[[nodiscard]] inline bool State_MessageState_Element_Type_IsValid(int value) {
  return 0 <= value && value <= 5;
}
inline constexpr int State_MessageState_Element_Type_Type_ARRAYSIZE = 5 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
State_MessageState_Element_Type_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(State_MessageState_Element_Type) {
  return State_MessageState_Element_Type_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& State_MessageState_Element_Type_Name(T value) {
  static_assert(::std::is_same<T, State_MessageState_Element_Type>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to Type_Name().");
  return State_MessageState_Element_Type_Name(static_cast<State_MessageState_Element_Type>(value));
}
template <>
[[nodiscard]] inline const ::std::string& State_MessageState_Element_Type_Name(State_MessageState_Element_Type value) {
  return ::google::protobuf::internal::NameOfDenseEnum<State_MessageState_Element_Type_descriptor, 0, 5>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool State_MessageState_Element_Type_Parse(
    ::absl::string_view name, State_MessageState_Element_Type* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<State_MessageState_Element_Type>(State_MessageState_Element_Type_descriptor(), name,
                                           value);
}
enum UpdateMessage_Type : int {
  UpdateMessage_Type_Tags = 0,
  UpdateMessage_Type_VisibleParts = 1,
  UpdateMessage_Type_UpdateMessage_Type_INT_MIN_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::min(),
  UpdateMessage_Type_UpdateMessage_Type_INT_MAX_SENTINEL_DO_NOT_USE_ =
      ::std::numeric_limits<::int32_t>::max(),
};

extern const uint32_t UpdateMessage_Type_internal_data_[];
inline constexpr UpdateMessage_Type UpdateMessage_Type_Type_MIN =
    static_cast<UpdateMessage_Type>(0);
inline constexpr UpdateMessage_Type UpdateMessage_Type_Type_MAX =
    static_cast<UpdateMessage_Type>(1);
[[nodiscard]] inline bool UpdateMessage_Type_IsValid(int value) {
  return 0 <= value && value <= 1;
}
inline constexpr int UpdateMessage_Type_Type_ARRAYSIZE = 1 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
UpdateMessage_Type_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(UpdateMessage_Type) {
  return UpdateMessage_Type_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& UpdateMessage_Type_Name(T value) {
  static_assert(::std::is_same<T, UpdateMessage_Type>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to Type_Name().");
  return UpdateMessage_Type_Name(static_cast<UpdateMessage_Type>(value));
}
template <>
[[nodiscard]] inline const ::std::string& UpdateMessage_Type_Name(UpdateMessage_Type value) {
  return ::google::protobuf::internal::NameOfDenseEnum<UpdateMessage_Type_descriptor, 0, 1>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool UpdateMessage_Type_Parse(
    ::absl::string_view name, UpdateMessage_Type* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<UpdateMessage_Type>(UpdateMessage_Type_descriptor(), name,
                                           value);
}
using ::google::protobuf::internal::generated_enum::AbslParseFlag;
using ::google::protobuf::internal::generated_enum::AbslUnparseFlag;

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


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

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED State_MessageState_Element final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.State.MessageState.Element) */ {
 public:
  inline State_MessageState_Element() : State_MessageState_Element(nullptr) {}
  ~State_MessageState_Element() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const State_MessageState_Element& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<State_MessageState_Element>(&State_MessageState_Element_globals_);
  }
  static constexpr int kIndexInFileMessages = 16;
  friend void swap(State_MessageState_Element& a, State_MessageState_Element& b) { a.Swap(&b); }
  inline void Swap(State_MessageState_Element* 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(State_MessageState_Element* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] State_MessageState_Element* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<State_MessageState_Element>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const State_MessageState_Element& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const State_MessageState_Element& from) { State_MessageState_Element::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit State_MessageState_Element(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  State_MessageState_Element(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const State_MessageState_Element& from);
  State_MessageState_Element(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, State_MessageState_Element&& from) noexcept
      : State_MessageState_Element(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Type = State_MessageState_Element_Type;
  static constexpr Type Empty = State_MessageState_Element_Type_Empty;
  static constexpr Type Address = State_MessageState_Element_Type_Address;
  static constexpr Type Part = State_MessageState_Element_Type_Part;
  static constexpr Type Attachment = State_MessageState_Element_Type_Attachment;
  static constexpr Type MimeMessage = State_MessageState_Element_Type_MimeMessage;
  static constexpr Type Encryption = State_MessageState_Element_Type_Encryption;
  [[nodiscard]] static inline bool Type_IsValid(int value) {
    return State_MessageState_Element_Type_IsValid(value);
  }
  static constexpr Type Type_MIN = State_MessageState_Element_Type_Type_MIN;
  static constexpr Type Type_MAX = State_MessageState_Element_Type_Type_MAX;
  static constexpr int Type_ARRAYSIZE = State_MessageState_Element_Type_Type_ARRAYSIZE;
  static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Type_descriptor() {
    return State_MessageState_Element_Type_descriptor();
  }
  template <typename T>
  [[nodiscard]] static inline const ::std::string& Type_Name(T value) {
    return State_MessageState_Element_Type_Name(value);
  }
  [[nodiscard]] static inline bool Type_Parse(
      ::absl::string_view name, Type* PROTOBUF_NONNULL value) {
    return State_MessageState_Element_Type_Parse(name, value);
  }

  // accessors -------------------------------------------------------
  enum : int {
    kSidFieldNumber = 3,
    kTypeFieldNumber = 1,
    kIdFieldNumber = 2,
    kFocusableFieldNumber = 4,
  };
  // string sid = 3;
  void clear_sid() ;
  [[nodiscard]] const ::std::string& sid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_sid();
  void set_allocated_sid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sid();

  public:
  // .AstroidMessages.State.MessageState.Element.Type type = 1;
  void clear_type() ;
  [[nodiscard]] ::AstroidMessages::State_MessageState_Element_Type type() const;
  void set_type(::AstroidMessages::State_MessageState_Element_Type value);

  private:
  ::AstroidMessages::State_MessageState_Element_Type _internal_type() const;
  void _internal_set_type(::AstroidMessages::State_MessageState_Element_Type value);

  public:
  // int32 id = 2;
  void clear_id() ;
  [[nodiscard]] ::int32_t id() const;
  void set_id(::int32_t value);

  private:
  ::int32_t _internal_id() const;
  void _internal_set_id(::int32_t value);

  public:
  // bool focusable = 4;
  void clear_focusable() ;
  [[nodiscard]] bool focusable() const;
  void set_focusable(bool value);

  private:
  bool _internal_focusable() const;
  void _internal_set_focusable(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.State.MessageState.Element)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 4,
                          0, 54,
                          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 State_MessageState_Element& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr sid_;
    int type_;
    ::int32_t id_;
    bool focusable_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Page final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Page) */ {
 public:
  inline Page() : Page(nullptr) {}
  ~Page() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Page& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Page>(&Page_globals_);
  }
  static constexpr int kIndexInFileMessages = 8;
  friend void swap(Page& a, Page& b) { a.Swap(&b); }
  inline void Swap(Page* 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(Page* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Page* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Page>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Page& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Page& from) { Page::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Page(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Page(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Page& from);
  Page(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Page&& from) noexcept
      : Page(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kAllowedUrisFieldNumber = 4,
    kHtmlFieldNumber = 1,
    kCssFieldNumber = 2,
    kPartCssFieldNumber = 3,
    kLogLevelFieldNumber = 8,
    kUseStdoutFieldNumber = 5,
    kUseSyslogFieldNumber = 6,
    kDisableLogFieldNumber = 7,
  };
  // repeated string allowed_uris = 4;
  [[nodiscard]] int allowed_uris_size()
      const;
  private:
  int _internal_allowed_uris_size() const;

  public:
  void clear_allowed_uris() ;
  [[nodiscard]] const ::std::string& allowed_uris(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_allowed_uris(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_allowed_uris(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_allowed_uris();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_allowed_uris(Arg_&& value, Args_... args);
  [[nodiscard]] const
      ::google::protobuf::RepeatedPtrField<::std::string>&
      allowed_uris() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::std::string>*
      PROTOBUF_NONNULL
      mutable_allowed_uris();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_allowed_uris() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_allowed_uris();

  public:
  // string html = 1;
  void clear_html() ;
  [[nodiscard]] const ::std::string& html() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_html(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_html();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_html();
  void set_allocated_html(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_html() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_html(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_html();

  public:
  // string css = 2;
  void clear_css() ;
  [[nodiscard]] const ::std::string& css() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_css(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_css();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_css();
  void set_allocated_css(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_css() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_css(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_css();

  public:
  // string part_css = 3;
  void clear_part_css() ;
  [[nodiscard]] const ::std::string& part_css() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_part_css(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_part_css();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_part_css();
  void set_allocated_part_css(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_part_css() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_part_css(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_part_css();

  public:
  // string log_level = 8;
  void clear_log_level() ;
  [[nodiscard]] const ::std::string& log_level() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_log_level(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_log_level();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_log_level();
  void set_allocated_log_level(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_log_level() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_log_level(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_log_level();

  public:
  // bool use_stdout = 5;
  void clear_use_stdout() ;
  [[nodiscard]] bool use_stdout() const;
  void set_use_stdout(bool value);

  private:
  bool _internal_use_stdout() const;
  void _internal_set_use_stdout(bool value);

  public:
  // bool use_syslog = 6;
  void clear_use_syslog() ;
  [[nodiscard]] bool use_syslog() const;
  void set_use_syslog(bool value);

  private:
  bool _internal_use_syslog() const;
  void _internal_set_use_syslog(bool value);

  public:
  // bool disable_log = 7;
  void clear_disable_log() ;
  [[nodiscard]] bool disable_log() const;
  void set_disable_log(bool value);

  private:
  bool _internal_disable_log() const;
  void _internal_set_disable_log(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Page)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<3, 8,
                          0, 73,
                          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 Page& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField<::std::string> allowed_uris_;
    ::google::protobuf::internal::ArenaStringPtr html_;
    ::google::protobuf::internal::ArenaStringPtr css_;
    ::google::protobuf::internal::ArenaStringPtr part_css_;
    ::google::protobuf::internal::ArenaStringPtr log_level_;
    bool use_stdout_;
    bool use_syslog_;
    bool disable_log_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Navigate final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Navigate) */ {
 public:
  inline Navigate() : Navigate(nullptr) {}
  ~Navigate() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Navigate& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Navigate>(&Navigate_globals_);
  }
  static constexpr int kIndexInFileMessages = 4;
  friend void swap(Navigate& a, Navigate& b) { a.Swap(&b); }
  inline void Swap(Navigate* 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(Navigate* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Navigate* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Navigate>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Navigate& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Navigate& from) { Navigate::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Navigate(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Navigate(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Navigate& from);
  Navigate(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Navigate&& from) noexcept
      : Navigate(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Direction = Navigate_Direction;
  static constexpr Direction None = Navigate_Direction_None;
  static constexpr Direction Specific = Navigate_Direction_Specific;
  static constexpr Direction Up = Navigate_Direction_Up;
  static constexpr Direction Down = Navigate_Direction_Down;
  [[nodiscard]] static inline bool Direction_IsValid(int value) {
    return Navigate_Direction_IsValid(value);
  }
  static constexpr Direction Direction_MIN = Navigate_Direction_Direction_MIN;
  static constexpr Direction Direction_MAX = Navigate_Direction_Direction_MAX;
  static constexpr int Direction_ARRAYSIZE = Navigate_Direction_Direction_ARRAYSIZE;
  static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Direction_descriptor() {
    return Navigate_Direction_descriptor();
  }
  template <typename T>
  [[nodiscard]] static inline const ::std::string& Direction_Name(T value) {
    return Navigate_Direction_Name(value);
  }
  [[nodiscard]] static inline bool Direction_Parse(
      ::absl::string_view name, Direction* PROTOBUF_NONNULL value) {
    return Navigate_Direction_Parse(name, value);
  }
  using Type = Navigate_Type;
  static constexpr Type VisualElement = Navigate_Type_VisualElement;
  static constexpr Type Visual = Navigate_Type_Visual;
  static constexpr Type VisualBig = Navigate_Type_VisualBig;
  static constexpr Type VisualPage = Navigate_Type_VisualPage;
  static constexpr Type Element = Navigate_Type_Element;
  static constexpr Type Message = Navigate_Type_Message;
  static constexpr Type FocusView = Navigate_Type_FocusView;
  static constexpr Type Extreme = Navigate_Type_Extreme;
  [[nodiscard]] static inline bool Type_IsValid(int value) {
    return Navigate_Type_IsValid(value);
  }
  static constexpr Type Type_MIN = Navigate_Type_Type_MIN;
  static constexpr Type Type_MAX = Navigate_Type_Type_MAX;
  static constexpr int Type_ARRAYSIZE = Navigate_Type_Type_ARRAYSIZE;
  static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Type_descriptor() {
    return Navigate_Type_descriptor();
  }
  template <typename T>
  [[nodiscard]] static inline const ::std::string& Type_Name(T value) {
    return Navigate_Type_Name(value);
  }
  [[nodiscard]] static inline bool Type_Parse(
      ::absl::string_view name, Type* PROTOBUF_NONNULL value) {
    return Navigate_Type_Parse(name, value);
  }

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 3,
    kDirectionFieldNumber = 1,
    kTypeFieldNumber = 2,
    kElementFieldNumber = 4,
    kFocusTopFieldNumber = 5,
  };
  // string mid = 3;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // .AstroidMessages.Navigate.Direction direction = 1;
  void clear_direction() ;
  [[nodiscard]] ::AstroidMessages::Navigate_Direction direction() const;
  void set_direction(::AstroidMessages::Navigate_Direction value);

  private:
  ::AstroidMessages::Navigate_Direction _internal_direction() const;
  void _internal_set_direction(::AstroidMessages::Navigate_Direction value);

  public:
  // .AstroidMessages.Navigate.Type type = 2;
  void clear_type() ;
  [[nodiscard]] ::AstroidMessages::Navigate_Type type() const;
  void set_type(::AstroidMessages::Navigate_Type value);

  private:
  ::AstroidMessages::Navigate_Type _internal_type() const;
  void _internal_set_type(::AstroidMessages::Navigate_Type value);

  public:
  // int32 element = 4;
  void clear_element() ;
  [[nodiscard]] ::int32_t element() const;
  void set_element(::int32_t value);

  private:
  ::int32_t _internal_element() const;
  void _internal_set_element(::int32_t value);

  public:
  // bool focus_top = 5;
  void clear_focus_top() ;
  [[nodiscard]] bool focus_top() const;
  void set_focus_top(bool value);

  private:
  bool _internal_focus_top() const;
  void _internal_set_focus_top(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Navigate)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<3, 5,
                          0, 36,
                          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 Navigate& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    int direction_;
    int type_;
    ::int32_t element_;
    bool focus_top_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Message_Chunk_Signature final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Message.Chunk.Signature) */ {
 public:
  inline Message_Chunk_Signature() : Message_Chunk_Signature(nullptr) {}
  ~Message_Chunk_Signature() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Message_Chunk_Signature& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Message_Chunk_Signature>(&Message_Chunk_Signature_globals_);
  }
  static constexpr int kIndexInFileMessages = 12;
  friend void swap(Message_Chunk_Signature& a, Message_Chunk_Signature& b) { a.Swap(&b); }
  inline void Swap(Message_Chunk_Signature* 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(Message_Chunk_Signature* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Message_Chunk_Signature* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Message_Chunk_Signature>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Message_Chunk_Signature& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Message_Chunk_Signature& from) { Message_Chunk_Signature::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Message_Chunk_Signature(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Message_Chunk_Signature(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Message_Chunk_Signature& from);
  Message_Chunk_Signature(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Message_Chunk_Signature&& from) noexcept
      : Message_Chunk_Signature(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kSignStringsFieldNumber = 2,
    kAllErrorsFieldNumber = 3,
    kVerifiedFieldNumber = 1,
  };
  // repeated string sign_strings = 2;
  [[nodiscard]] int sign_strings_size()
      const;
  private:
  int _internal_sign_strings_size() const;

  public:
  void clear_sign_strings() ;
  [[nodiscard]] const ::std::string& sign_strings(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_sign_strings(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sign_strings(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_sign_strings();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_sign_strings(Arg_&& value, Args_... args);
  [[nodiscard]] const
      ::google::protobuf::RepeatedPtrField<::std::string>&
      sign_strings() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::std::string>*
      PROTOBUF_NONNULL
      mutable_sign_strings();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_sign_strings() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_sign_strings();

  public:
  // repeated string all_errors = 3;
  [[nodiscard]] int all_errors_size()
      const;
  private:
  int _internal_all_errors_size() const;

  public:
  void clear_all_errors() ;
  [[nodiscard]] const ::std::string& all_errors(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_all_errors(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_all_errors(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_all_errors();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_all_errors(Arg_&& value, Args_... args);
  [[nodiscard]] const
      ::google::protobuf::RepeatedPtrField<::std::string>&
      all_errors() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::std::string>*
      PROTOBUF_NONNULL
      mutable_all_errors();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_all_errors() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_all_errors();

  public:
  // bool verified = 1;
  void clear_verified() ;
  [[nodiscard]] bool verified() const;
  void set_verified(bool value);

  private:
  bool _internal_verified() const;
  void _internal_set_verified(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Message.Chunk.Signature)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 70,
                          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 Message_Chunk_Signature& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField<::std::string> sign_strings_;
    ::google::protobuf::RepeatedPtrField<::std::string> all_errors_;
    bool verified_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Message_Chunk_Encryption final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Message.Chunk.Encryption) */ {
 public:
  inline Message_Chunk_Encryption() : Message_Chunk_Encryption(nullptr) {}
  ~Message_Chunk_Encryption() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Message_Chunk_Encryption& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Message_Chunk_Encryption>(&Message_Chunk_Encryption_globals_);
  }
  static constexpr int kIndexInFileMessages = 13;
  friend void swap(Message_Chunk_Encryption& a, Message_Chunk_Encryption& b) { a.Swap(&b); }
  inline void Swap(Message_Chunk_Encryption* 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(Message_Chunk_Encryption* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Message_Chunk_Encryption* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Message_Chunk_Encryption>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Message_Chunk_Encryption& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Message_Chunk_Encryption& from) { Message_Chunk_Encryption::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Message_Chunk_Encryption(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Message_Chunk_Encryption(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Message_Chunk_Encryption& from);
  Message_Chunk_Encryption(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Message_Chunk_Encryption&& from) noexcept
      : Message_Chunk_Encryption(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kEncStringsFieldNumber = 2,
    kDecryptedFieldNumber = 1,
  };
  // repeated string enc_strings = 2;
  [[nodiscard]] int enc_strings_size()
      const;
  private:
  int _internal_enc_strings_size() const;

  public:
  void clear_enc_strings() ;
  [[nodiscard]] const ::std::string& enc_strings(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_enc_strings(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_enc_strings(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_enc_strings();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_enc_strings(Arg_&& value, Args_... args);
  [[nodiscard]] const
      ::google::protobuf::RepeatedPtrField<::std::string>&
      enc_strings() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::std::string>*
      PROTOBUF_NONNULL
      mutable_enc_strings();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_enc_strings() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_enc_strings();

  public:
  // bool decrypted = 1;
  void clear_decrypted() ;
  [[nodiscard]] bool decrypted() const;
  void set_decrypted(bool value);

  private:
  bool _internal_decrypted() const;
  void _internal_set_decrypted(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Message.Chunk.Encryption)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 60,
                          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 Message_Chunk_Encryption& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField<::std::string> enc_strings_;
    bool decrypted_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Mark final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Mark) */ {
 public:
  inline Mark() : Mark(nullptr) {}
  ~Mark() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Mark& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Mark>(&Mark_globals_);
  }
  static constexpr int kIndexInFileMessages = 5;
  friend void swap(Mark& a, Mark& b) { a.Swap(&b); }
  inline void Swap(Mark* 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(Mark* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Mark* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Mark>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Mark& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Mark& from) { Mark::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Mark(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Mark(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Mark& from);
  Mark(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Mark&& from) noexcept
      : Mark(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 1,
    kMarkedFieldNumber = 2,
  };
  // string mid = 1;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // bool marked = 2;
  void clear_marked() ;
  [[nodiscard]] bool marked() const;
  void set_marked(bool value);

  private:
  bool _internal_marked() const;
  void _internal_set_marked(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Mark)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 32,
                          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 Mark& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    bool marked_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Info final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Info) */ {
 public:
  inline Info() : Info(nullptr) {}
  ~Info() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Info& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Info>(&Info_globals_);
  }
  static constexpr int kIndexInFileMessages = 9;
  friend void swap(Info& a, Info& b) { a.Swap(&b); }
  inline void Swap(Info* 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(Info* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Info* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Info>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Info& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Info& from) { Info::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Info(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Info(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Info& from);
  Info(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Info&& from) noexcept
      : Info(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 3,
    kTxtFieldNumber = 4,
    kWarningFieldNumber = 1,
    kSetFieldNumber = 2,
  };
  // string mid = 3;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // string txt = 4;
  void clear_txt() ;
  [[nodiscard]] const ::std::string& txt() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_txt(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_txt();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_txt();
  void set_allocated_txt(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_txt() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_txt(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_txt();

  public:
  // bool warning = 1;
  void clear_warning() ;
  [[nodiscard]] bool warning() const;
  void set_warning(bool value);

  private:
  bool _internal_warning() const;
  void _internal_set_warning(bool value);

  public:
  // bool set = 2;
  void clear_set() ;
  [[nodiscard]] bool set() const;
  void set_set(bool value);

  private:
  bool _internal_set() const;
  void _internal_set_set(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Info)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 4,
                          0, 35,
                          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 Info& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    ::google::protobuf::internal::ArenaStringPtr txt_;
    bool warning_;
    bool set_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Indent final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Indent) */ {
 public:
  inline Indent() : Indent(nullptr) {}
  ~Indent() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Indent& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Indent>(&Indent_globals_);
  }
  static constexpr int kIndexInFileMessages = 2;
  friend void swap(Indent& a, Indent& b) { a.Swap(&b); }
  inline void Swap(Indent* 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(Indent* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Indent* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Indent>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Indent& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Indent& from) { Indent::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Indent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Indent(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Indent& from);
  Indent(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Indent&& from) noexcept
      : Indent(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kBogusFieldNumber = 1,
    kIndentFieldNumber = 2,
  };
  // string bogus = 1;
  void clear_bogus() ;
  [[nodiscard]] const ::std::string& bogus() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_bogus(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_bogus();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_bogus();
  void set_allocated_bogus(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_bogus() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_bogus(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_bogus();

  public:
  // bool indent = 2;
  void clear_indent() ;
  [[nodiscard]] bool indent() const;
  void set_indent(bool value);

  private:
  bool _internal_indent() const;
  void _internal_set_indent(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Indent)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 36,
                          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 Indent& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr bogus_;
    bool indent_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Hidden final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Hidden) */ {
 public:
  inline Hidden() : Hidden(nullptr) {}
  ~Hidden() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Hidden& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Hidden>(&Hidden_globals_);
  }
  static constexpr int kIndexInFileMessages = 6;
  friend void swap(Hidden& a, Hidden& b) { a.Swap(&b); }
  inline void Swap(Hidden* 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(Hidden* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Hidden* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Hidden>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Hidden& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Hidden& from) { Hidden::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Hidden(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Hidden(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Hidden& from);
  Hidden(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Hidden&& from) noexcept
      : Hidden(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 1,
    kHiddenFieldNumber = 2,
  };
  // string mid = 1;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // bool hidden = 2;
  void clear_hidden() ;
  [[nodiscard]] bool hidden() const;
  void set_hidden(bool value);

  private:
  bool _internal_hidden() const;
  void _internal_set_hidden(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Hidden)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 34,
                          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 Hidden& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    bool hidden_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Focus final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Focus) */ {
 public:
  inline Focus() : Focus(nullptr) {}
  ~Focus() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Focus& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Focus>(&Focus_globals_);
  }
  static constexpr int kIndexInFileMessages = 0;
  friend void swap(Focus& a, Focus& b) { a.Swap(&b); }
  inline void Swap(Focus* 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(Focus* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Focus* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Focus>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Focus& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Focus& from) { Focus::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Focus(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Focus(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Focus& from);
  Focus(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Focus&& from) noexcept
      : Focus(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 1,
    kFocusFieldNumber = 2,
    kElementFieldNumber = 3,
  };
  // string mid = 1;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // bool focus = 2;
  void clear_focus() ;
  [[nodiscard]] bool focus() const;
  void set_focus(bool value);

  private:
  bool _internal_focus() const;
  void _internal_set_focus(bool value);

  public:
  // int32 element = 3;
  void clear_element() ;
  [[nodiscard]] ::int32_t element() const;
  void set_element(::int32_t value);

  private:
  ::int32_t _internal_element() const;
  void _internal_set_element(::int32_t value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Focus)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 33,
                          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 Focus& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    bool focus_;
    ::int32_t element_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Debug final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Debug) */ {
 public:
  inline Debug() : Debug(nullptr) {}
  ~Debug() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Debug& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Debug>(&Debug_globals_);
  }
  static constexpr int kIndexInFileMessages = 7;
  friend void swap(Debug& a, Debug& b) { a.Swap(&b); }
  inline void Swap(Debug* 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(Debug* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Debug* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Debug>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Debug& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Debug& from) { Debug::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Debug(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Debug(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Debug& from);
  Debug(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Debug&& from) noexcept
      : Debug(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kMsgFieldNumber = 1,
  };
  // string msg = 1;
  void clear_msg() ;
  [[nodiscard]] const ::std::string& msg() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_msg(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_msg();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_msg();
  void set_allocated_msg(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_msg() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_msg(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_msg();

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Debug)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          0, 33,
                          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 Debug& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr msg_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED ClearMessage final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.ClearMessage) */ {
 public:
  inline ClearMessage() : ClearMessage(nullptr) {}
  ~ClearMessage() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const ClearMessage& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<ClearMessage>(&ClearMessage_globals_);
  }
  static constexpr int kIndexInFileMessages = 20;
  friend void swap(ClearMessage& a, ClearMessage& b) { a.Swap(&b); }
  inline void Swap(ClearMessage* 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(ClearMessage* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] ClearMessage* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<ClearMessage>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const ClearMessage& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const ClearMessage& from) { ClearMessage::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit ClearMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ClearMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ClearMessage& from);
  ClearMessage(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ClearMessage&& from) noexcept
      : ClearMessage(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kYesFieldNumber = 1,
  };
  // bool yes = 1;
  void clear_yes() ;
  [[nodiscard]] bool yes() const;
  void set_yes(bool value);

  private:
  bool _internal_yes() const;
  void _internal_set_yes(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.ClearMessage)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<0, 1,
                          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 ClearMessage& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    bool yes_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED AllowRemoteImages final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.AllowRemoteImages) */ {
 public:
  inline AllowRemoteImages() : AllowRemoteImages(nullptr) {}
  ~AllowRemoteImages() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const AllowRemoteImages& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<AllowRemoteImages>(&AllowRemoteImages_globals_);
  }
  static constexpr int kIndexInFileMessages = 3;
  friend void swap(AllowRemoteImages& a, AllowRemoteImages& b) { a.Swap(&b); }
  inline void Swap(AllowRemoteImages* 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(AllowRemoteImages* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] AllowRemoteImages* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<AllowRemoteImages>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const AllowRemoteImages& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const AllowRemoteImages& from) { AllowRemoteImages::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit AllowRemoteImages(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  AllowRemoteImages(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const AllowRemoteImages& from);
  AllowRemoteImages(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, AllowRemoteImages&& from) noexcept
      : AllowRemoteImages(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kBogusFieldNumber = 1,
    kAllowFieldNumber = 2,
  };
  // string bogus = 1;
  void clear_bogus() ;
  [[nodiscard]] const ::std::string& bogus() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_bogus(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_bogus();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_bogus();
  void set_allocated_bogus(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_bogus() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_bogus(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_bogus();

  public:
  // bool allow = 2;
  void clear_allow() ;
  [[nodiscard]] bool allow() const;
  void set_allow(bool value);

  private:
  bool _internal_allow() const;
  void _internal_set_allow(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.AllowRemoteImages)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          0, 47,
                          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 AllowRemoteImages& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr bogus_;
    bool allow_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Address final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Address) */ {
 public:
  inline Address() : Address(nullptr) {}
  ~Address() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Address& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Address>(&Address_globals_);
  }
  static constexpr int kIndexInFileMessages = 10;
  friend void swap(Address& a, Address& b) { a.Swap(&b); }
  inline void Swap(Address* 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(Address* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Address* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Address>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Address& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Address& from) { Address::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Address(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Address(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Address& from);
  Address(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Address&& from) noexcept
      : Address(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kNameFieldNumber = 1,
    kEmailFieldNumber = 2,
    kFullAddressFieldNumber = 3,
  };
  // string name = 1;
  void clear_name() ;
  [[nodiscard]] const ::std::string& name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
  void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_name();

  public:
  // string email = 2;
  void clear_email() ;
  [[nodiscard]] const ::std::string& email() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_email(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_email();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_email();
  void set_allocated_email(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_email() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_email(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_email();

  public:
  // string full_address = 3;
  void clear_full_address() ;
  [[nodiscard]] const ::std::string& full_address() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_full_address(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_full_address();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_full_address();
  void set_allocated_full_address(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_full_address() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_full_address(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_full_address();

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Address)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          0, 53,
                          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 Address& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr name_;
    ::google::protobuf::internal::ArenaStringPtr email_;
    ::google::protobuf::internal::ArenaStringPtr full_address_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED State_MessageState final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.State.MessageState) */ {
 public:
  inline State_MessageState() : State_MessageState(nullptr) {}
  ~State_MessageState() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const State_MessageState& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<State_MessageState>(&State_MessageState_globals_);
  }
  static constexpr int kIndexInFileMessages = 17;
  friend void swap(State_MessageState& a, State_MessageState& b) { a.Swap(&b); }
  inline void Swap(State_MessageState* 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(State_MessageState* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] State_MessageState* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<State_MessageState>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const State_MessageState& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const State_MessageState& from) { State_MessageState::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit State_MessageState(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  State_MessageState(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const State_MessageState& from);
  State_MessageState(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, State_MessageState&& from) noexcept
      : State_MessageState(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Element = State_MessageState_Element;

  // accessors -------------------------------------------------------
  enum : int {
    kMidFieldNumber = 1,
    kLevelFieldNumber = 6,
    kElementsFieldNumber = 5,
  };
  // string mid = 1;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // int32 level = 6;
  void clear_level() ;
  [[nodiscard]] ::int32_t level() const;
  void set_level(::int32_t value);

  private:
  ::int32_t _internal_level() const;
  void _internal_set_level(::int32_t value);

  public:
  // repeated .AstroidMessages.State.MessageState.Element elements = 5;
  [[nodiscard]] int elements_size()
      const;
  private:
  int _internal_elements_size() const;

  public:
  void clear_elements() ;
  [[nodiscard]] const ::AstroidMessages::State_MessageState_Element& elements(int index) const;
  [[nodiscard]] ::AstroidMessages::State_MessageState_Element* PROTOBUF_NONNULL mutable_elements(int index);
  ::AstroidMessages::State_MessageState_Element* PROTOBUF_NONNULL add_elements();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>&
  elements() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>* PROTOBUF_NONNULL
  mutable_elements();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>& _internal_elements() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>* PROTOBUF_NONNULL _internal_mutable_elements();

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.State.MessageState)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 3,
                          1, 46,
                          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 State_MessageState& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    ::int32_t level_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::State_MessageState_Element > elements_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Message_Chunk final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Message.Chunk) */ {
 public:
  inline Message_Chunk() : Message_Chunk(nullptr) {}
  ~Message_Chunk() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Message_Chunk& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Message_Chunk>(&Message_Chunk_globals_);
  }
  static constexpr int kIndexInFileMessages = 14;
  friend void swap(Message_Chunk& a, Message_Chunk& b) { a.Swap(&b); }
  inline void Swap(Message_Chunk* 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(Message_Chunk* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Message_Chunk* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Message_Chunk>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Message_Chunk& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Message_Chunk& from) { Message_Chunk::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Message_Chunk(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Message_Chunk(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Message_Chunk& from);
  Message_Chunk(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Message_Chunk&& from) noexcept
      : Message_Chunk(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Signature = Message_Chunk_Signature;
  using Encryption = Message_Chunk_Encryption;

  // accessors -------------------------------------------------------
  enum : int {
    kKidsFieldNumber = 4,
    kSiblingsFieldNumber = 5,
    kMimeTypeFieldNumber = 6,
    kContentFieldNumber = 10,
    kSidFieldNumber = 13,
    kFilenameFieldNumber = 14,
    kHumanSizeFieldNumber = 16,
    kThumbnailFieldNumber = 17,
    kCidFieldNumber = 22,
    kSignatureFieldNumber = 19,
    kEncryptionFieldNumber = 20,
    kIdFieldNumber = 1,
    kViewableFieldNumber = 2,
    kPreferredFieldNumber = 3,
    kAttachmentFieldNumber = 7,
    kIsEncryptedFieldNumber = 8,
    kIsSignedFieldNumber = 9,
    kSiblingFieldNumber = 11,
    kUseFieldNumber = 12,
    kFocusableFieldNumber = 18,
    kSizeFieldNumber = 15,
    kCryptoIdFieldNumber = 21,
  };
  // repeated .AstroidMessages.Message.Chunk kids = 4;
  [[nodiscard]] int kids_size()
      const;
  private:
  int _internal_kids_size() const;

  public:
  void clear_kids() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk& kids(int index) const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL mutable_kids(int index);
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL add_kids();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
  kids() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
  mutable_kids();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& _internal_kids() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL _internal_mutable_kids();

  public:
  // repeated .AstroidMessages.Message.Chunk siblings = 5;
  [[nodiscard]] int siblings_size()
      const;
  private:
  int _internal_siblings_size() const;

  public:
  void clear_siblings() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk& siblings(int index) const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL mutable_siblings(int index);
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL add_siblings();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
  siblings() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
  mutable_siblings();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& _internal_siblings() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL _internal_mutable_siblings();

  public:
  // string mime_type = 6;
  void clear_mime_type() ;
  [[nodiscard]] const ::std::string& mime_type() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mime_type(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mime_type();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mime_type();
  void set_allocated_mime_type(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mime_type() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mime_type(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mime_type();

  public:
  // string content = 10;
  void clear_content() ;
  [[nodiscard]] const ::std::string& content() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_content(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_content();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_content();
  void set_allocated_content(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_content() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_content(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_content();

  public:
  // string sid = 13;
  void clear_sid() ;
  [[nodiscard]] const ::std::string& sid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_sid();
  void set_allocated_sid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sid();

  public:
  // string filename = 14;
  void clear_filename() ;
  [[nodiscard]] const ::std::string& filename() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_filename(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_filename();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_filename();
  void set_allocated_filename(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_filename() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_filename(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_filename();

  public:
  // string human_size = 16;
  void clear_human_size() ;
  [[nodiscard]] const ::std::string& human_size() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_human_size(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_human_size();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_human_size();
  void set_allocated_human_size(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_human_size() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_human_size(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_human_size();

  public:
  // string thumbnail = 17;
  void clear_thumbnail() ;
  [[nodiscard]] const ::std::string& thumbnail() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_thumbnail(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_thumbnail();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_thumbnail();
  void set_allocated_thumbnail(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_thumbnail() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_thumbnail(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_thumbnail();

  public:
  // string cid = 22;
  void clear_cid() ;
  [[nodiscard]] const ::std::string& cid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_cid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_cid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_cid();
  void set_allocated_cid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_cid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_cid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_cid();

  public:
  // .AstroidMessages.Message.Chunk.Signature signature = 19;
  [[nodiscard]] bool has_signature()
      const;
  void clear_signature() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk_Signature& signature() const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE release_signature();
  ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NONNULL mutable_signature();
  void set_allocated_signature(::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_signature(::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE unsafe_arena_release_signature();

  private:
  const ::AstroidMessages::Message_Chunk_Signature& _internal_signature() const;
  ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NONNULL _internal_mutable_signature();

  public:
  // .AstroidMessages.Message.Chunk.Encryption encryption = 20;
  [[nodiscard]] bool has_encryption()
      const;
  void clear_encryption() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk_Encryption& encryption() const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE release_encryption();
  ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NONNULL mutable_encryption();
  void set_allocated_encryption(::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_encryption(::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE unsafe_arena_release_encryption();

  private:
  const ::AstroidMessages::Message_Chunk_Encryption& _internal_encryption() const;
  ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NONNULL _internal_mutable_encryption();

  public:
  // int32 id = 1;
  void clear_id() ;
  [[nodiscard]] ::int32_t id() const;
  void set_id(::int32_t value);

  private:
  ::int32_t _internal_id() const;
  void _internal_set_id(::int32_t value);

  public:
  // bool viewable = 2;
  void clear_viewable() ;
  [[nodiscard]] bool viewable() const;
  void set_viewable(bool value);

  private:
  bool _internal_viewable() const;
  void _internal_set_viewable(bool value);

  public:
  // bool preferred = 3;
  void clear_preferred() ;
  [[nodiscard]] bool preferred() const;
  void set_preferred(bool value);

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

  public:
  // bool attachment = 7;
  void clear_attachment() ;
  [[nodiscard]] bool attachment() const;
  void set_attachment(bool value);

  private:
  bool _internal_attachment() const;
  void _internal_set_attachment(bool value);

  public:
  // bool is_encrypted = 8;
  void clear_is_encrypted() ;
  [[nodiscard]] bool is_encrypted() const;
  void set_is_encrypted(bool value);

  private:
  bool _internal_is_encrypted() const;
  void _internal_set_is_encrypted(bool value);

  public:
  // bool is_signed = 9;
  void clear_is_signed() ;
  [[nodiscard]] bool is_signed() const;
  void set_is_signed(bool value);

  private:
  bool _internal_is_signed() const;
  void _internal_set_is_signed(bool value);

  public:
  // bool sibling = 11;
  void clear_sibling() ;
  [[nodiscard]] bool sibling() const;
  void set_sibling(bool value);

  private:
  bool _internal_sibling() const;
  void _internal_set_sibling(bool value);

  public:
  // bool use = 12;
  void clear_use() ;
  [[nodiscard]] bool use() const;
  void set_use(bool value);

  private:
  bool _internal_use() const;
  void _internal_set_use(bool value);

  public:
  // bool focusable = 18;
  void clear_focusable() ;
  [[nodiscard]] bool focusable() const;
  void set_focusable(bool value);

  private:
  bool _internal_focusable() const;
  void _internal_set_focusable(bool value);

  public:
  // int32 size = 15;
  void clear_size() ;
  [[nodiscard]] ::int32_t size() const;
  void set_size(::int32_t value);

  private:
  ::int32_t _internal_size() const;
  void _internal_set_size(::int32_t value);

  public:
  // int32 crypto_id = 21;
  void clear_crypto_id() ;
  [[nodiscard]] ::int32_t crypto_id() const;
  void set_crypto_id(::int32_t value);

  private:
  ::int32_t _internal_crypto_id() const;
  void _internal_set_crypto_id(::int32_t value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Message.Chunk)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<5, 22,
                          4, 103,
                          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 Message_Chunk& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::Message_Chunk > kids_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::Message_Chunk > siblings_;
    ::google::protobuf::internal::ArenaStringPtr mime_type_;
    ::google::protobuf::internal::ArenaStringPtr content_;
    ::google::protobuf::internal::ArenaStringPtr sid_;
    ::google::protobuf::internal::ArenaStringPtr filename_;
    ::google::protobuf::internal::ArenaStringPtr human_size_;
    ::google::protobuf::internal::ArenaStringPtr thumbnail_;
    ::google::protobuf::internal::ArenaStringPtr cid_;
    ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE signature_;
    ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE encryption_;
    ::int32_t id_;
    bool viewable_;
    bool preferred_;
    bool attachment_;
    bool is_encrypted_;
    bool is_signed_;
    bool sibling_;
    bool use_;
    bool focusable_;
    ::int32_t size_;
    ::int32_t crypto_id_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED AddressList final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.AddressList) */ {
 public:
  inline AddressList() : AddressList(nullptr) {}
  ~AddressList() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const AddressList& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<AddressList>(&AddressList_globals_);
  }
  static constexpr int kIndexInFileMessages = 11;
  friend void swap(AddressList& a, AddressList& b) { a.Swap(&b); }
  inline void Swap(AddressList* 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(AddressList* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] AddressList* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<AddressList>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const AddressList& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const AddressList& from) { AddressList::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit AddressList(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  AddressList(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const AddressList& from);
  AddressList(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, AddressList&& from) noexcept
      : AddressList(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kAddressesFieldNumber = 1,
  };
  // repeated .AstroidMessages.Address addresses = 1;
  [[nodiscard]] int addresses_size()
      const;
  private:
  int _internal_addresses_size() const;

  public:
  void clear_addresses() ;
  [[nodiscard]] const ::AstroidMessages::Address& addresses(int index) const;
  [[nodiscard]] ::AstroidMessages::Address* PROTOBUF_NONNULL mutable_addresses(int index);
  ::AstroidMessages::Address* PROTOBUF_NONNULL add_addresses();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>&
  addresses() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>* PROTOBUF_NONNULL
  mutable_addresses();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>& _internal_addresses() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>* PROTOBUF_NONNULL _internal_mutable_addresses();

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.AddressList)
 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 AddressList& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::Address > addresses_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Ack final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Ack) */ {
 public:
  inline Ack() : Ack(nullptr) {}
  ~Ack() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Ack& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Ack>(&Ack_globals_);
  }
  static constexpr int kIndexInFileMessages = 1;
  friend void swap(Ack& a, Ack& b) { a.Swap(&b); }
  inline void Swap(Ack* 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(Ack* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] Ack* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<Ack>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const Ack& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const Ack& from) { Ack::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Ack(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Ack(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Ack& from);
  Ack(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Ack&& from) noexcept
      : Ack(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------
  enum : int {
    kFocusFieldNumber = 3,
    kIdFieldNumber = 1,
    kSuccessFieldNumber = 2,
  };
  // .AstroidMessages.Focus focus = 3;
  [[nodiscard]] bool has_focus()
      const;
  void clear_focus() ;
  [[nodiscard]] const ::AstroidMessages::Focus& focus() const;
  [[nodiscard]] ::AstroidMessages::Focus* PROTOBUF_NULLABLE release_focus();
  ::AstroidMessages::Focus* PROTOBUF_NONNULL mutable_focus();
  void set_allocated_focus(::AstroidMessages::Focus* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_focus(::AstroidMessages::Focus* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Focus* PROTOBUF_NULLABLE unsafe_arena_release_focus();

  private:
  const ::AstroidMessages::Focus& _internal_focus() const;
  ::AstroidMessages::Focus* PROTOBUF_NONNULL _internal_mutable_focus();

  public:
  // int32 id = 1;
  void clear_id() ;
  [[nodiscard]] ::int32_t id() const;
  void set_id(::int32_t value);

  private:
  ::int32_t _internal_id() const;
  void _internal_set_id(::int32_t value);

  public:
  // bool success = 2;
  void clear_success() ;
  [[nodiscard]] bool success() const;
  void set_success(bool value);

  private:
  bool _internal_success() const;
  void _internal_set_success(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Ack)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<2, 3,
                          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 Ack& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::AstroidMessages::Focus* PROTOBUF_NULLABLE focus_;
    ::int32_t id_;
    bool success_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED State final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.State) */ {
 public:
  inline State() : State(nullptr) {}
  ~State() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const State& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<State>(&State_globals_);
  }
  static constexpr int kIndexInFileMessages = 18;
  friend void swap(State& a, State& b) { a.Swap(&b); }
  inline void Swap(State* 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(State* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] State* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<State>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const State& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const State& from) { State::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit State(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  State(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const State& from);
  State(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, State&& from) noexcept
      : State(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using MessageState = State_MessageState;

  // accessors -------------------------------------------------------
  enum : int {
    kMessagesFieldNumber = 2,
    kEditModeFieldNumber = 3,
  };
  // repeated .AstroidMessages.State.MessageState messages = 2;
  [[nodiscard]] int messages_size()
      const;
  private:
  int _internal_messages_size() const;

  public:
  void clear_messages() ;
  [[nodiscard]] const ::AstroidMessages::State_MessageState& messages(int index) const;
  [[nodiscard]] ::AstroidMessages::State_MessageState* PROTOBUF_NONNULL mutable_messages(int index);
  ::AstroidMessages::State_MessageState* PROTOBUF_NONNULL add_messages();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>&
  messages() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>* PROTOBUF_NONNULL
  mutable_messages();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>& _internal_messages() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>* PROTOBUF_NONNULL _internal_mutable_messages();

  public:
  // bool edit_mode = 3;
  void clear_edit_mode() ;
  [[nodiscard]] bool edit_mode() const;
  void set_edit_mode(bool value);

  private:
  bool _internal_edit_mode() const;
  void _internal_set_edit_mode(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.State)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          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 State& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::State_MessageState > messages_;
    bool edit_mode_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED Message final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.Message) */ {
 public:
  inline Message() : Message(nullptr) {}
  ~Message() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const Message& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<Message>(&Message_globals_);
  }
  static constexpr int kIndexInFileMessages = 15;
  friend void swap(Message& a, Message& b) { a.Swap(&b); }
  inline void Swap(Message* 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(Message* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit Message(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Message(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Message& from);
  Message(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Message&& from) noexcept
      : Message(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Chunk = Message_Chunk;

  // accessors -------------------------------------------------------
  enum : int {
    kTagsFieldNumber = 10,
    kMimeMessagesFieldNumber = 18,
    kAttachmentsFieldNumber = 19,
    kMidFieldNumber = 1,
    kDatePrettyFieldNumber = 6,
    kDateVerboseFieldNumber = 7,
    kSubjectFieldNumber = 9,
    kGravatarFieldNumber = 11,
    kInReplyToFieldNumber = 16,
    kPreviewFieldNumber = 17,
    kTagStringFieldNumber = 21,
    kSenderFieldNumber = 2,
    kToFieldNumber = 3,
    kCcFieldNumber = 4,
    kBccFieldNumber = 5,
    kReplyToFieldNumber = 20,
    kRootFieldNumber = 23,
    kLevelFieldNumber = 15,
    kMissingContentFieldNumber = 13,
    kPatchFieldNumber = 14,
    kDifferentSubjectFieldNumber = 22,
  };
  // repeated string tags = 10;
  [[nodiscard]] int tags_size()
      const;
  private:
  int _internal_tags_size() const;

  public:
  void clear_tags() ;
  [[nodiscard]] const ::std::string& tags(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_tags(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_tags(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_tags();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_tags(Arg_&& value, Args_... args);
  [[nodiscard]] const
      ::google::protobuf::RepeatedPtrField<::std::string>&
      tags() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::std::string>*
      PROTOBUF_NONNULL
      mutable_tags();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_tags() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_tags();

  public:
  // repeated .AstroidMessages.Message.Chunk mime_messages = 18;
  [[nodiscard]] int mime_messages_size()
      const;
  private:
  int _internal_mime_messages_size() const;

  public:
  void clear_mime_messages() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk& mime_messages(int index) const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL mutable_mime_messages(int index);
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL add_mime_messages();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
  mime_messages() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
  mutable_mime_messages();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& _internal_mime_messages() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL _internal_mutable_mime_messages();

  public:
  // repeated .AstroidMessages.Message.Chunk attachments = 19;
  [[nodiscard]] int attachments_size()
      const;
  private:
  int _internal_attachments_size() const;

  public:
  void clear_attachments() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk& attachments(int index) const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL mutable_attachments(int index);
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL add_attachments();
  [[nodiscard]] const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
  attachments() const;
  [[nodiscard]] ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
  mutable_attachments();

  private:
  const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& _internal_attachments() const;
  ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL _internal_mutable_attachments();

  public:
  // string mid = 1;
  void clear_mid() ;
  [[nodiscard]] const ::std::string& mid() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_mid(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_mid();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_mid();
  void set_allocated_mid(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_mid() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_mid(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_mid();

  public:
  // string date_pretty = 6;
  void clear_date_pretty() ;
  [[nodiscard]] const ::std::string& date_pretty() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_date_pretty(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_date_pretty();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_date_pretty();
  void set_allocated_date_pretty(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_date_pretty() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_date_pretty(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_date_pretty();

  public:
  // string date_verbose = 7;
  void clear_date_verbose() ;
  [[nodiscard]] const ::std::string& date_verbose() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_date_verbose(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_date_verbose();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_date_verbose();
  void set_allocated_date_verbose(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_date_verbose() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_date_verbose(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_date_verbose();

  public:
  // string subject = 9;
  void clear_subject() ;
  [[nodiscard]] const ::std::string& subject() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_subject(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_subject();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_subject();
  void set_allocated_subject(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_subject() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_subject(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_subject();

  public:
  // string gravatar = 11;
  void clear_gravatar() ;
  [[nodiscard]] const ::std::string& gravatar() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_gravatar(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_gravatar();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_gravatar();
  void set_allocated_gravatar(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_gravatar() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_gravatar(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_gravatar();

  public:
  // string in_reply_to = 16;
  void clear_in_reply_to() ;
  [[nodiscard]] const ::std::string& in_reply_to() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_in_reply_to(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_in_reply_to();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_in_reply_to();
  void set_allocated_in_reply_to(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_in_reply_to() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_in_reply_to(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_in_reply_to();

  public:
  // string preview = 17;
  void clear_preview() ;
  [[nodiscard]] const ::std::string& preview() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_preview(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_preview();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_preview();
  void set_allocated_preview(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_preview() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_preview(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_preview();

  public:
  // string tag_string = 21;
  void clear_tag_string() ;
  [[nodiscard]] const ::std::string& tag_string() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_tag_string(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_tag_string();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_tag_string();
  void set_allocated_tag_string(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_tag_string() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_tag_string(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_tag_string();

  public:
  // .AstroidMessages.Address sender = 2;
  [[nodiscard]] bool has_sender()
      const;
  void clear_sender() ;
  [[nodiscard]] const ::AstroidMessages::Address& sender() const;
  [[nodiscard]] ::AstroidMessages::Address* PROTOBUF_NULLABLE release_sender();
  ::AstroidMessages::Address* PROTOBUF_NONNULL mutable_sender();
  void set_allocated_sender(::AstroidMessages::Address* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_sender(::AstroidMessages::Address* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Address* PROTOBUF_NULLABLE unsafe_arena_release_sender();

  private:
  const ::AstroidMessages::Address& _internal_sender() const;
  ::AstroidMessages::Address* PROTOBUF_NONNULL _internal_mutable_sender();

  public:
  // .AstroidMessages.AddressList to = 3;
  [[nodiscard]] bool has_to()
      const;
  void clear_to() ;
  [[nodiscard]] const ::AstroidMessages::AddressList& to() const;
  [[nodiscard]] ::AstroidMessages::AddressList* PROTOBUF_NULLABLE release_to();
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL mutable_to();
  void set_allocated_to(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_to(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  ::AstroidMessages::AddressList* PROTOBUF_NULLABLE unsafe_arena_release_to();

  private:
  const ::AstroidMessages::AddressList& _internal_to() const;
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL _internal_mutable_to();

  public:
  // .AstroidMessages.AddressList cc = 4;
  [[nodiscard]] bool has_cc()
      const;
  void clear_cc() ;
  [[nodiscard]] const ::AstroidMessages::AddressList& cc() const;
  [[nodiscard]] ::AstroidMessages::AddressList* PROTOBUF_NULLABLE release_cc();
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL mutable_cc();
  void set_allocated_cc(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_cc(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  ::AstroidMessages::AddressList* PROTOBUF_NULLABLE unsafe_arena_release_cc();

  private:
  const ::AstroidMessages::AddressList& _internal_cc() const;
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL _internal_mutable_cc();

  public:
  // .AstroidMessages.AddressList bcc = 5;
  [[nodiscard]] bool has_bcc()
      const;
  void clear_bcc() ;
  [[nodiscard]] const ::AstroidMessages::AddressList& bcc() const;
  [[nodiscard]] ::AstroidMessages::AddressList* PROTOBUF_NULLABLE release_bcc();
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL mutable_bcc();
  void set_allocated_bcc(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_bcc(::AstroidMessages::AddressList* PROTOBUF_NULLABLE value);
  ::AstroidMessages::AddressList* PROTOBUF_NULLABLE unsafe_arena_release_bcc();

  private:
  const ::AstroidMessages::AddressList& _internal_bcc() const;
  ::AstroidMessages::AddressList* PROTOBUF_NONNULL _internal_mutable_bcc();

  public:
  // .AstroidMessages.Address reply_to = 20;
  [[nodiscard]] bool has_reply_to()
      const;
  void clear_reply_to() ;
  [[nodiscard]] const ::AstroidMessages::Address& reply_to() const;
  [[nodiscard]] ::AstroidMessages::Address* PROTOBUF_NULLABLE release_reply_to();
  ::AstroidMessages::Address* PROTOBUF_NONNULL mutable_reply_to();
  void set_allocated_reply_to(::AstroidMessages::Address* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_reply_to(::AstroidMessages::Address* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Address* PROTOBUF_NULLABLE unsafe_arena_release_reply_to();

  private:
  const ::AstroidMessages::Address& _internal_reply_to() const;
  ::AstroidMessages::Address* PROTOBUF_NONNULL _internal_mutable_reply_to();

  public:
  // .AstroidMessages.Message.Chunk root = 23;
  [[nodiscard]] bool has_root()
      const;
  void clear_root() ;
  [[nodiscard]] const ::AstroidMessages::Message_Chunk& root() const;
  [[nodiscard]] ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE release_root();
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL mutable_root();
  void set_allocated_root(::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_root(::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE unsafe_arena_release_root();

  private:
  const ::AstroidMessages::Message_Chunk& _internal_root() const;
  ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL _internal_mutable_root();

  public:
  // int32 level = 15;
  void clear_level() ;
  [[nodiscard]] ::int32_t level() const;
  void set_level(::int32_t value);

  private:
  ::int32_t _internal_level() const;
  void _internal_set_level(::int32_t value);

  public:
  // bool missing_content = 13;
  void clear_missing_content() ;
  [[nodiscard]] bool missing_content() const;
  void set_missing_content(bool value);

  private:
  bool _internal_missing_content() const;
  void _internal_set_missing_content(bool value);

  public:
  // bool patch = 14;
  void clear_patch() ;
  [[nodiscard]] bool patch() const;
  void set_patch(bool value);

  private:
  bool _internal_patch() const;
  void _internal_set_patch(bool value);

  public:
  // bool different_subject = 22;
  void clear_different_subject() ;
  [[nodiscard]] bool different_subject() const;
  void set_different_subject(bool value);

  private:
  bool _internal_different_subject() const;
  void _internal_set_different_subject(bool value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.Message)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<5, 21,
                          8, 121,
                          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 Message& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField<::std::string> tags_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::Message_Chunk > mime_messages_;
    ::google::protobuf::RepeatedPtrField< ::AstroidMessages::Message_Chunk > attachments_;
    ::google::protobuf::internal::ArenaStringPtr mid_;
    ::google::protobuf::internal::ArenaStringPtr date_pretty_;
    ::google::protobuf::internal::ArenaStringPtr date_verbose_;
    ::google::protobuf::internal::ArenaStringPtr subject_;
    ::google::protobuf::internal::ArenaStringPtr gravatar_;
    ::google::protobuf::internal::ArenaStringPtr in_reply_to_;
    ::google::protobuf::internal::ArenaStringPtr preview_;
    ::google::protobuf::internal::ArenaStringPtr tag_string_;
    ::AstroidMessages::Address* PROTOBUF_NULLABLE sender_;
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE to_;
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE cc_;
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE bcc_;
    ::AstroidMessages::Address* PROTOBUF_NULLABLE reply_to_;
    ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE root_;
    ::int32_t level_;
    bool missing_content_;
    bool patch_;
    bool different_subject_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};
// -------------------------------------------------------------------

class  PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED UpdateMessage final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:AstroidMessages.UpdateMessage) */ {
 public:
  inline UpdateMessage() : UpdateMessage(nullptr) {}
  ~UpdateMessage() PROTOBUF_FINAL;

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

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

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

  [[nodiscard]] inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
  }
  [[nodiscard]] inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL
  mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  [[nodiscard]] static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL
  GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  [[nodiscard]] static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  [[nodiscard]] static const UpdateMessage& default_instance() {
    return *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<UpdateMessage>(&UpdateMessage_globals_);
  }
  static constexpr int kIndexInFileMessages = 19;
  friend void swap(UpdateMessage& a, UpdateMessage& b) { a.Swap(&b); }
  inline void Swap(UpdateMessage* 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(UpdateMessage* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

  [[nodiscard]] UpdateMessage* PROTOBUF_NONNULL
  New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
    return ::google::protobuf::Message::DefaultConstruct<UpdateMessage>(arena);
  }
  using ::google::protobuf::Message::CopyFrom;
  void CopyFrom(const UpdateMessage& from);
  using ::google::protobuf::Message::MergeFrom;
  void MergeFrom(const UpdateMessage& from) { UpdateMessage::MergeImpl(*this, from); }

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

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

  public:
  [[nodiscard]] ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  [[nodiscard]] ::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
  [[nodiscard]] ::size_t ByteSizeLong() const final;
  [[nodiscard]] ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  [[nodiscard]] int GetCachedSize() const {
    return _impl_._cached_size_.Get();
  }

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

  explicit UpdateMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  UpdateMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const UpdateMessage& from);
  UpdateMessage(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, UpdateMessage&& from) noexcept
      : UpdateMessage(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);

  [[nodiscard]] ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Type = UpdateMessage_Type;
  static constexpr Type Tags = UpdateMessage_Type_Tags;
  static constexpr Type VisibleParts = UpdateMessage_Type_VisibleParts;
  [[nodiscard]] static inline bool Type_IsValid(int value) {
    return UpdateMessage_Type_IsValid(value);
  }
  static constexpr Type Type_MIN = UpdateMessage_Type_Type_MIN;
  static constexpr Type Type_MAX = UpdateMessage_Type_Type_MAX;
  static constexpr int Type_ARRAYSIZE = UpdateMessage_Type_Type_ARRAYSIZE;
  static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Type_descriptor() {
    return UpdateMessage_Type_descriptor();
  }
  template <typename T>
  [[nodiscard]] static inline const ::std::string& Type_Name(T value) {
    return UpdateMessage_Type_Name(value);
  }
  [[nodiscard]] static inline bool Type_Parse(
      ::absl::string_view name, Type* PROTOBUF_NONNULL value) {
    return UpdateMessage_Type_Parse(name, value);
  }

  // accessors -------------------------------------------------------
  enum : int {
    kMFieldNumber = 1,
    kTypeFieldNumber = 2,
  };
  // .AstroidMessages.Message m = 1;
  [[nodiscard]] bool has_m()
      const;
  void clear_m() ;
  [[nodiscard]] const ::AstroidMessages::Message& m() const;
  [[nodiscard]] ::AstroidMessages::Message* PROTOBUF_NULLABLE release_m();
  ::AstroidMessages::Message* PROTOBUF_NONNULL mutable_m();
  void set_allocated_m(::AstroidMessages::Message* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_m(::AstroidMessages::Message* PROTOBUF_NULLABLE value);
  ::AstroidMessages::Message* PROTOBUF_NULLABLE unsafe_arena_release_m();

  private:
  const ::AstroidMessages::Message& _internal_m() const;
  ::AstroidMessages::Message* PROTOBUF_NONNULL _internal_mutable_m();

  public:
  // .AstroidMessages.UpdateMessage.Type type = 2;
  void clear_type() ;
  [[nodiscard]] ::AstroidMessages::UpdateMessage_Type type() const;
  void set_type(::AstroidMessages::UpdateMessage_Type value);

  private:
  ::AstroidMessages::UpdateMessage_Type _internal_type() const;
  void _internal_set_type(::AstroidMessages::UpdateMessage_Type value);

  public:
  // @@protoc_insertion_point(class_scope:AstroidMessages.UpdateMessage)
 private:
  class _Internal;
  using ParseTableT_ =
      ::google::protobuf::internal::TcParseTable<1, 2,
                          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 UpdateMessage& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::AstroidMessages::Message* PROTOBUF_NULLABLE m_;
    int type_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_messages_2eproto;
};

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




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


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

// Focus

// string mid = 1;
inline void Focus::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Focus::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Focus.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Focus::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Focus.mid)
}
inline ::std::string* PROTOBUF_NONNULL Focus::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Focus.mid)
  return _s;
}
inline const ::std::string& Focus::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Focus::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Focus::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Focus::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Focus.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Focus::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Focus.mid)
}

// bool focus = 2;
inline void Focus::clear_focus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focus_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool Focus::focus() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Focus.focus)
  return _internal_focus();
}
inline void Focus::set_focus(bool value) {
  _internal_set_focus(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Focus.focus)
}
inline bool Focus::_internal_focus() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.focus_;
}
inline void Focus::_internal_set_focus(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focus_ = value;
}

// int32 element = 3;
inline void Focus::clear_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.element_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::int32_t Focus::element() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Focus.element)
  return _internal_element();
}
inline void Focus::set_element(::int32_t value) {
  _internal_set_element(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Focus.element)
}
inline ::int32_t Focus::_internal_element() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.element_;
}
inline void Focus::_internal_set_element(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.element_ = value;
}

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

// Ack

// int32 id = 1;
inline void Ack::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::int32_t Ack::id() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Ack.id)
  return _internal_id();
}
inline void Ack::set_id(::int32_t value) {
  _internal_set_id(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Ack.id)
}
inline ::int32_t Ack::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_;
}
inline void Ack::_internal_set_id(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = value;
}

// bool success = 2;
inline void Ack::clear_success() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.success_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline bool Ack::success() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Ack.success)
  return _internal_success();
}
inline void Ack::set_success(bool value) {
  _internal_set_success(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Ack.success)
}
inline bool Ack::_internal_success() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.success_;
}
inline void Ack::_internal_set_success(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.success_ = value;
}

// .AstroidMessages.Focus focus = 3;
inline bool Ack::has_focus() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.focus_ != nullptr);
  return value;
}
inline void Ack::clear_focus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.focus_ != nullptr) _impl_.focus_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::AstroidMessages::Focus& Ack::_internal_focus() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Focus* p = _impl_.focus_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Focus>(&::AstroidMessages::Focus_globals_);
}
inline const ::AstroidMessages::Focus& Ack::focus() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Ack.focus)
  return _internal_focus();
}
inline void Ack::unsafe_arena_set_allocated_focus(
    ::AstroidMessages::Focus* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.focus_);
  }
  _impl_.focus_ = reinterpret_cast<::AstroidMessages::Focus*>(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:AstroidMessages.Ack.focus)
}
inline ::AstroidMessages::Focus* PROTOBUF_NULLABLE Ack::release_focus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Focus* released = _impl_.focus_;
  _impl_.focus_ = 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 ::AstroidMessages::Focus* PROTOBUF_NULLABLE Ack::unsafe_arena_release_focus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Ack.focus)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Focus* temp = _impl_.focus_;
  _impl_.focus_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Focus* PROTOBUF_NONNULL Ack::_internal_mutable_focus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.focus_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Focus>(GetArena());
    _impl_.focus_ = reinterpret_cast<::AstroidMessages::Focus*>(p);
  }
  return _impl_.focus_;
}
inline ::AstroidMessages::Focus* PROTOBUF_NONNULL Ack::mutable_focus()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Focus* _msg = _internal_mutable_focus();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Ack.focus)
  return _msg;
}
inline void Ack::set_allocated_focus(::AstroidMessages::Focus* 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_.focus_);
  }

  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_.focus_ = reinterpret_cast<::AstroidMessages::Focus*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Ack.focus)
}

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

// Indent

// string bogus = 1;
inline void Indent::clear_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.bogus_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Indent::bogus() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Indent.bogus)
  return _internal_bogus();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Indent::set_bogus(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.bogus_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Indent.bogus)
}
inline ::std::string* PROTOBUF_NONNULL Indent::mutable_bogus()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_bogus();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Indent.bogus)
  return _s;
}
inline const ::std::string& Indent::_internal_bogus() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.bogus_.Get();
}
inline void Indent::_internal_set_bogus(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.bogus_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Indent::_internal_mutable_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.bogus_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Indent::release_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Indent.bogus)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.bogus_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.bogus_.Set("", GetArena());
  }
  return released;
}
inline void Indent::set_allocated_bogus(::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_.bogus_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.bogus_.IsDefault()) {
    _impl_.bogus_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Indent.bogus)
}

// bool indent = 2;
inline void Indent::clear_indent() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.indent_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool Indent::indent() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Indent.indent)
  return _internal_indent();
}
inline void Indent::set_indent(bool value) {
  _internal_set_indent(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Indent.indent)
}
inline bool Indent::_internal_indent() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.indent_;
}
inline void Indent::_internal_set_indent(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.indent_ = value;
}

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

// AllowRemoteImages

// string bogus = 1;
inline void AllowRemoteImages::clear_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.bogus_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& AllowRemoteImages::bogus() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.AllowRemoteImages.bogus)
  return _internal_bogus();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void AllowRemoteImages::set_bogus(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.bogus_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.AllowRemoteImages.bogus)
}
inline ::std::string* PROTOBUF_NONNULL AllowRemoteImages::mutable_bogus()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_bogus();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.AllowRemoteImages.bogus)
  return _s;
}
inline const ::std::string& AllowRemoteImages::_internal_bogus() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.bogus_.Get();
}
inline void AllowRemoteImages::_internal_set_bogus(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.bogus_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL AllowRemoteImages::_internal_mutable_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.bogus_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE AllowRemoteImages::release_bogus() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.AllowRemoteImages.bogus)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.bogus_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.bogus_.Set("", GetArena());
  }
  return released;
}
inline void AllowRemoteImages::set_allocated_bogus(::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_.bogus_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.bogus_.IsDefault()) {
    _impl_.bogus_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.AllowRemoteImages.bogus)
}

// bool allow = 2;
inline void AllowRemoteImages::clear_allow() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.allow_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool AllowRemoteImages::allow() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.AllowRemoteImages.allow)
  return _internal_allow();
}
inline void AllowRemoteImages::set_allow(bool value) {
  _internal_set_allow(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.AllowRemoteImages.allow)
}
inline bool AllowRemoteImages::_internal_allow() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.allow_;
}
inline void AllowRemoteImages::_internal_set_allow(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.allow_ = value;
}

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

// Navigate

// .AstroidMessages.Navigate.Direction direction = 1;
inline void Navigate::clear_direction() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.direction_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::AstroidMessages::Navigate_Direction Navigate::direction() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Navigate.direction)
  return _internal_direction();
}
inline void Navigate::set_direction(::AstroidMessages::Navigate_Direction value) {
  _internal_set_direction(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Navigate.direction)
}
inline ::AstroidMessages::Navigate_Direction Navigate::_internal_direction() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::AstroidMessages::Navigate_Direction>(_impl_.direction_);
}
inline void Navigate::_internal_set_direction(::AstroidMessages::Navigate_Direction value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.direction_ = value;
}

// .AstroidMessages.Navigate.Type type = 2;
inline void Navigate::clear_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::AstroidMessages::Navigate_Type Navigate::type() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Navigate.type)
  return _internal_type();
}
inline void Navigate::set_type(::AstroidMessages::Navigate_Type value) {
  _internal_set_type(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Navigate.type)
}
inline ::AstroidMessages::Navigate_Type Navigate::_internal_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::AstroidMessages::Navigate_Type>(_impl_.type_);
}
inline void Navigate::_internal_set_type(::AstroidMessages::Navigate_Type value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = value;
}

// string mid = 3;
inline void Navigate::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Navigate::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Navigate.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Navigate::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Navigate.mid)
}
inline ::std::string* PROTOBUF_NONNULL Navigate::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Navigate.mid)
  return _s;
}
inline const ::std::string& Navigate::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Navigate::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Navigate::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Navigate::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Navigate.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Navigate::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Navigate.mid)
}

// int32 element = 4;
inline void Navigate::clear_element() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.element_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline ::int32_t Navigate::element() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Navigate.element)
  return _internal_element();
}
inline void Navigate::set_element(::int32_t value) {
  _internal_set_element(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Navigate.element)
}
inline ::int32_t Navigate::_internal_element() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.element_;
}
inline void Navigate::_internal_set_element(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.element_ = value;
}

// bool focus_top = 5;
inline void Navigate::clear_focus_top() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focus_top_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline bool Navigate::focus_top() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Navigate.focus_top)
  return _internal_focus_top();
}
inline void Navigate::set_focus_top(bool value) {
  _internal_set_focus_top(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Navigate.focus_top)
}
inline bool Navigate::_internal_focus_top() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.focus_top_;
}
inline void Navigate::_internal_set_focus_top(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focus_top_ = value;
}

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

// Mark

// string mid = 1;
inline void Mark::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Mark::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Mark.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Mark::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Mark.mid)
}
inline ::std::string* PROTOBUF_NONNULL Mark::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Mark.mid)
  return _s;
}
inline const ::std::string& Mark::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Mark::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Mark::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Mark::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Mark.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Mark::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Mark.mid)
}

// bool marked = 2;
inline void Mark::clear_marked() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.marked_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool Mark::marked() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Mark.marked)
  return _internal_marked();
}
inline void Mark::set_marked(bool value) {
  _internal_set_marked(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Mark.marked)
}
inline bool Mark::_internal_marked() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.marked_;
}
inline void Mark::_internal_set_marked(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.marked_ = value;
}

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

// Hidden

// string mid = 1;
inline void Hidden::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Hidden::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Hidden.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Hidden::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Hidden.mid)
}
inline ::std::string* PROTOBUF_NONNULL Hidden::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Hidden.mid)
  return _s;
}
inline const ::std::string& Hidden::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Hidden::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Hidden::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Hidden::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Hidden.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Hidden::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Hidden.mid)
}

// bool hidden = 2;
inline void Hidden::clear_hidden() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hidden_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool Hidden::hidden() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Hidden.hidden)
  return _internal_hidden();
}
inline void Hidden::set_hidden(bool value) {
  _internal_set_hidden(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Hidden.hidden)
}
inline bool Hidden::_internal_hidden() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.hidden_;
}
inline void Hidden::_internal_set_hidden(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.hidden_ = value;
}

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

// Debug

// string msg = 1;
inline void Debug::clear_msg() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.msg_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Debug::msg() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Debug.msg)
  return _internal_msg();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Debug::set_msg(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.msg_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Debug.msg)
}
inline ::std::string* PROTOBUF_NONNULL Debug::mutable_msg()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_msg();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Debug.msg)
  return _s;
}
inline const ::std::string& Debug::_internal_msg() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.msg_.Get();
}
inline void Debug::_internal_set_msg(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.msg_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Debug::_internal_mutable_msg() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.msg_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Debug::release_msg() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Debug.msg)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.msg_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.msg_.Set("", GetArena());
  }
  return released;
}
inline void Debug::set_allocated_msg(::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_.msg_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.msg_.IsDefault()) {
    _impl_.msg_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Debug.msg)
}

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

// Page

// string html = 1;
inline void Page::clear_html() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.html_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& Page::html() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.html)
  return _internal_html();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Page::set_html(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.html_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.html)
}
inline ::std::string* PROTOBUF_NONNULL Page::mutable_html()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_html();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Page.html)
  return _s;
}
inline const ::std::string& Page::_internal_html() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.html_.Get();
}
inline void Page::_internal_set_html(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.html_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Page::_internal_mutable_html() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.html_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Page::release_html() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Page.html)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.html_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.html_.Set("", GetArena());
  }
  return released;
}
inline void Page::set_allocated_html(::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_.html_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.html_.IsDefault()) {
    _impl_.html_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Page.html)
}

// string css = 2;
inline void Page::clear_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.css_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& Page::css() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.css)
  return _internal_css();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Page::set_css(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.css_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.css)
}
inline ::std::string* PROTOBUF_NONNULL Page::mutable_css()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_css();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Page.css)
  return _s;
}
inline const ::std::string& Page::_internal_css() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.css_.Get();
}
inline void Page::_internal_set_css(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.css_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Page::_internal_mutable_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.css_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Page::release_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Page.css)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.css_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.css_.Set("", GetArena());
  }
  return released;
}
inline void Page::set_allocated_css(::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_.css_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.css_.IsDefault()) {
    _impl_.css_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Page.css)
}

// string part_css = 3;
inline void Page::clear_part_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.part_css_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::std::string& Page::part_css() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.part_css)
  return _internal_part_css();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Page::set_part_css(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.part_css_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.part_css)
}
inline ::std::string* PROTOBUF_NONNULL Page::mutable_part_css()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_part_css();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Page.part_css)
  return _s;
}
inline const ::std::string& Page::_internal_part_css() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.part_css_.Get();
}
inline void Page::_internal_set_part_css(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.part_css_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Page::_internal_mutable_part_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.part_css_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Page::release_part_css() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Page.part_css)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.part_css_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.part_css_.Set("", GetArena());
  }
  return released;
}
inline void Page::set_allocated_part_css(::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_.part_css_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.part_css_.IsDefault()) {
    _impl_.part_css_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Page.part_css)
}

// repeated string allowed_uris = 4;
inline int Page::_internal_allowed_uris_size() const {
  return _internal_allowed_uris().size();
}
inline int Page::allowed_uris_size() const {
  return _internal_allowed_uris_size();
}
inline void Page::clear_allowed_uris() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.allowed_uris_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::std::string* PROTOBUF_NONNULL Page::add_allowed_uris()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_allowed_uris()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add_mutable:AstroidMessages.Page.allowed_uris)
  return _s;
}
inline const ::std::string& Page::allowed_uris(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.allowed_uris)
  return _internal_allowed_uris().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL Page::mutable_allowed_uris(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Page.allowed_uris)
  return _internal_mutable_allowed_uris()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void Page::set_allowed_uris(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(
      *_internal_mutable_allowed_uris()->Mutable(index),
      ::std::forward<Arg_>(value), args... );
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.allowed_uris)
}
template <typename Arg_, typename... Args_>
inline void Page::add_allowed_uris(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_allowed_uris(), ::std::forward<Arg_>(value),
      args... );
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Page.allowed_uris)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& Page::allowed_uris()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Page.allowed_uris)
  return _internal_allowed_uris();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Page::mutable_allowed_uris() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Page.allowed_uris)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_allowed_uris();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
Page::_internal_allowed_uris() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.allowed_uris_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Page::_internal_mutable_allowed_uris() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.allowed_uris_;
}

// bool use_stdout = 5;
inline void Page::clear_use_stdout() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_stdout_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline bool Page::use_stdout() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.use_stdout)
  return _internal_use_stdout();
}
inline void Page::set_use_stdout(bool value) {
  _internal_set_use_stdout(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.use_stdout)
}
inline bool Page::_internal_use_stdout() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.use_stdout_;
}
inline void Page::_internal_set_use_stdout(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_stdout_ = value;
}

// bool use_syslog = 6;
inline void Page::clear_use_syslog() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_syslog_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
}
inline bool Page::use_syslog() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.use_syslog)
  return _internal_use_syslog();
}
inline void Page::set_use_syslog(bool value) {
  _internal_set_use_syslog(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.use_syslog)
}
inline bool Page::_internal_use_syslog() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.use_syslog_;
}
inline void Page::_internal_set_use_syslog(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_syslog_ = value;
}

// bool disable_log = 7;
inline void Page::clear_disable_log() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.disable_log_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
}
inline bool Page::disable_log() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.disable_log)
  return _internal_disable_log();
}
inline void Page::set_disable_log(bool value) {
  _internal_set_disable_log(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.disable_log)
}
inline bool Page::_internal_disable_log() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.disable_log_;
}
inline void Page::_internal_set_disable_log(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.disable_log_ = value;
}

// string log_level = 8;
inline void Page::clear_log_level() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.log_level_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline const ::std::string& Page::log_level() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Page.log_level)
  return _internal_log_level();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Page::set_log_level(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  _impl_.log_level_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Page.log_level)
}
inline ::std::string* PROTOBUF_NONNULL Page::mutable_log_level()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  ::std::string* _s = _internal_mutable_log_level();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Page.log_level)
  return _s;
}
inline const ::std::string& Page::_internal_log_level() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.log_level_.Get();
}
inline void Page::_internal_set_log_level(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.log_level_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Page::_internal_mutable_log_level() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.log_level_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Page::release_log_level() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Page.log_level)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000010U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  auto* released = _impl_.log_level_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.log_level_.Set("", GetArena());
  }
  return released;
}
inline void Page::set_allocated_log_level(::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_.log_level_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.log_level_.IsDefault()) {
    _impl_.log_level_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Page.log_level)
}

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

// Info

// bool warning = 1;
inline void Info::clear_warning() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.warning_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline bool Info::warning() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Info.warning)
  return _internal_warning();
}
inline void Info::set_warning(bool value) {
  _internal_set_warning(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Info.warning)
}
inline bool Info::_internal_warning() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.warning_;
}
inline void Info::_internal_set_warning(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.warning_ = value;
}

// bool set = 2;
inline void Info::clear_set() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.set_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline bool Info::set() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Info.set)
  return _internal_set();
}
inline void Info::set_set(bool value) {
  _internal_set_set(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Info.set)
}
inline bool Info::_internal_set() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.set_;
}
inline void Info::_internal_set_set(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.set_ = value;
}

// string mid = 3;
inline void Info::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Info::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Info.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Info::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Info.mid)
}
inline ::std::string* PROTOBUF_NONNULL Info::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Info.mid)
  return _s;
}
inline const ::std::string& Info::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Info::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Info::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Info::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Info.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Info::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Info.mid)
}

// string txt = 4;
inline void Info::clear_txt() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.txt_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& Info::txt() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Info.txt)
  return _internal_txt();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Info::set_txt(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.txt_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Info.txt)
}
inline ::std::string* PROTOBUF_NONNULL Info::mutable_txt()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_txt();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Info.txt)
  return _s;
}
inline const ::std::string& Info::_internal_txt() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.txt_.Get();
}
inline void Info::_internal_set_txt(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.txt_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Info::_internal_mutable_txt() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.txt_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Info::release_txt() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Info.txt)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.txt_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.txt_.Set("", GetArena());
  }
  return released;
}
inline void Info::set_allocated_txt(::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_.txt_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.txt_.IsDefault()) {
    _impl_.txt_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Info.txt)
}

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

// Address

// string name = 1;
inline void Address::clear_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& Address::name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Address.name)
  return _internal_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Address::set_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Address.name)
}
inline ::std::string* PROTOBUF_NONNULL Address::mutable_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_name();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Address.name)
  return _s;
}
inline const ::std::string& Address::_internal_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.name_.Get();
}
inline void Address::_internal_set_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Address::_internal_mutable_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Address::release_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Address.name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.name_.Set("", GetArena());
  }
  return released;
}
inline void Address::set_allocated_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_.name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
    _impl_.name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Address.name)
}

// string email = 2;
inline void Address::clear_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.email_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::std::string& Address::email() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Address.email)
  return _internal_email();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Address::set_email(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.email_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Address.email)
}
inline ::std::string* PROTOBUF_NONNULL Address::mutable_email()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_email();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Address.email)
  return _s;
}
inline const ::std::string& Address::_internal_email() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.email_.Get();
}
inline void Address::_internal_set_email(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.email_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Address::_internal_mutable_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.email_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Address::release_email() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Address.email)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.email_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.email_.Set("", GetArena());
  }
  return released;
}
inline void Address::set_allocated_email(::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_.email_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.email_.IsDefault()) {
    _impl_.email_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Address.email)
}

// string full_address = 3;
inline void Address::clear_full_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.full_address_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& Address::full_address() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Address.full_address)
  return _internal_full_address();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Address::set_full_address(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.full_address_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Address.full_address)
}
inline ::std::string* PROTOBUF_NONNULL Address::mutable_full_address()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_full_address();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Address.full_address)
  return _s;
}
inline const ::std::string& Address::_internal_full_address() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.full_address_.Get();
}
inline void Address::_internal_set_full_address(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.full_address_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Address::_internal_mutable_full_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.full_address_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Address::release_full_address() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Address.full_address)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.full_address_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.full_address_.Set("", GetArena());
  }
  return released;
}
inline void Address::set_allocated_full_address(::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_.full_address_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.full_address_.IsDefault()) {
    _impl_.full_address_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Address.full_address)
}

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

// AddressList

// repeated .AstroidMessages.Address addresses = 1;
inline int AddressList::_internal_addresses_size() const {
  return _internal_addresses().size();
}
inline int AddressList::addresses_size() const {
  return _internal_addresses_size();
}
inline void AddressList::clear_addresses() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.addresses_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::AstroidMessages::Address& AddressList::addresses(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.AddressList.addresses)
  return _internal_addresses().Get(index);
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL AddressList::mutable_addresses(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.AddressList.addresses)
  return _internal_mutable_addresses()->Mutable(index);
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL AddressList::add_addresses()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::Address* _add =
      _internal_mutable_addresses()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.AddressList.addresses)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>& AddressList::addresses() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.AddressList.addresses)
  return _internal_addresses();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>* PROTOBUF_NONNULL
AddressList::mutable_addresses() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.AddressList.addresses)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_addresses();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>&
AddressList::_internal_addresses() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.addresses_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Address>* PROTOBUF_NONNULL
AddressList::_internal_mutable_addresses() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.addresses_;
}

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

// Message_Chunk_Signature

// bool verified = 1;
inline void Message_Chunk_Signature::clear_verified() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.verified_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline bool Message_Chunk_Signature::verified() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.Signature.verified)
  return _internal_verified();
}
inline void Message_Chunk_Signature::set_verified(bool value) {
  _internal_set_verified(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.Signature.verified)
}
inline bool Message_Chunk_Signature::_internal_verified() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.verified_;
}
inline void Message_Chunk_Signature::_internal_set_verified(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.verified_ = value;
}

// repeated string sign_strings = 2;
inline int Message_Chunk_Signature::_internal_sign_strings_size() const {
  return _internal_sign_strings().size();
}
inline int Message_Chunk_Signature::sign_strings_size() const {
  return _internal_sign_strings_size();
}
inline void Message_Chunk_Signature::clear_sign_strings() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sign_strings_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Signature::add_sign_strings()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_sign_strings()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add_mutable:AstroidMessages.Message.Chunk.Signature.sign_strings)
  return _s;
}
inline const ::std::string& Message_Chunk_Signature::sign_strings(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.Signature.sign_strings)
  return _internal_sign_strings().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Signature::mutable_sign_strings(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.Signature.sign_strings)
  return _internal_mutable_sign_strings()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Signature::set_sign_strings(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(
      *_internal_mutable_sign_strings()->Mutable(index),
      ::std::forward<Arg_>(value), args... );
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.Signature.sign_strings)
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Signature::add_sign_strings(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_sign_strings(), ::std::forward<Arg_>(value),
      args... );
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.Chunk.Signature.sign_strings)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& Message_Chunk_Signature::sign_strings()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.Chunk.Signature.sign_strings)
  return _internal_sign_strings();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Signature::mutable_sign_strings() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.Chunk.Signature.sign_strings)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_sign_strings();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
Message_Chunk_Signature::_internal_sign_strings() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sign_strings_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Signature::_internal_mutable_sign_strings() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.sign_strings_;
}

// repeated string all_errors = 3;
inline int Message_Chunk_Signature::_internal_all_errors_size() const {
  return _internal_all_errors().size();
}
inline int Message_Chunk_Signature::all_errors_size() const {
  return _internal_all_errors_size();
}
inline void Message_Chunk_Signature::clear_all_errors() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.all_errors_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Signature::add_all_errors()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_all_errors()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_add_mutable:AstroidMessages.Message.Chunk.Signature.all_errors)
  return _s;
}
inline const ::std::string& Message_Chunk_Signature::all_errors(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.Signature.all_errors)
  return _internal_all_errors().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Signature::mutable_all_errors(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.Signature.all_errors)
  return _internal_mutable_all_errors()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Signature::set_all_errors(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(
      *_internal_mutable_all_errors()->Mutable(index),
      ::std::forward<Arg_>(value), args... );
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.Signature.all_errors)
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Signature::add_all_errors(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_all_errors(), ::std::forward<Arg_>(value),
      args... );
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.Chunk.Signature.all_errors)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& Message_Chunk_Signature::all_errors()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.Chunk.Signature.all_errors)
  return _internal_all_errors();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Signature::mutable_all_errors() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.Chunk.Signature.all_errors)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_all_errors();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
Message_Chunk_Signature::_internal_all_errors() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.all_errors_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Signature::_internal_mutable_all_errors() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.all_errors_;
}

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

// Message_Chunk_Encryption

// bool decrypted = 1;
inline void Message_Chunk_Encryption::clear_decrypted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.decrypted_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool Message_Chunk_Encryption::decrypted() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.Encryption.decrypted)
  return _internal_decrypted();
}
inline void Message_Chunk_Encryption::set_decrypted(bool value) {
  _internal_set_decrypted(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.Encryption.decrypted)
}
inline bool Message_Chunk_Encryption::_internal_decrypted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.decrypted_;
}
inline void Message_Chunk_Encryption::_internal_set_decrypted(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.decrypted_ = value;
}

// repeated string enc_strings = 2;
inline int Message_Chunk_Encryption::_internal_enc_strings_size() const {
  return _internal_enc_strings().size();
}
inline int Message_Chunk_Encryption::enc_strings_size() const {
  return _internal_enc_strings_size();
}
inline void Message_Chunk_Encryption::clear_enc_strings() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.enc_strings_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Encryption::add_enc_strings()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_enc_strings()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add_mutable:AstroidMessages.Message.Chunk.Encryption.enc_strings)
  return _s;
}
inline const ::std::string& Message_Chunk_Encryption::enc_strings(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.Encryption.enc_strings)
  return _internal_enc_strings().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk_Encryption::mutable_enc_strings(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.Encryption.enc_strings)
  return _internal_mutable_enc_strings()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Encryption::set_enc_strings(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(
      *_internal_mutable_enc_strings()->Mutable(index),
      ::std::forward<Arg_>(value), args... );
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.Encryption.enc_strings)
}
template <typename Arg_, typename... Args_>
inline void Message_Chunk_Encryption::add_enc_strings(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_enc_strings(), ::std::forward<Arg_>(value),
      args... );
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.Chunk.Encryption.enc_strings)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& Message_Chunk_Encryption::enc_strings()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.Chunk.Encryption.enc_strings)
  return _internal_enc_strings();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Encryption::mutable_enc_strings() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.Chunk.Encryption.enc_strings)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_enc_strings();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
Message_Chunk_Encryption::_internal_enc_strings() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.enc_strings_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message_Chunk_Encryption::_internal_mutable_enc_strings() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.enc_strings_;
}

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

// Message_Chunk

// int32 id = 1;
inline void Message_Chunk::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
}
inline ::int32_t Message_Chunk::id() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.id)
  return _internal_id();
}
inline void Message_Chunk::set_id(::int32_t value) {
  _internal_set_id(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.id)
}
inline ::int32_t Message_Chunk::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_;
}
inline void Message_Chunk::_internal_set_id(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = value;
}

// string sid = 13;
inline void Message_Chunk::clear_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline const ::std::string& Message_Chunk::sid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.sid)
  return _internal_sid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_sid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  _impl_.sid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.sid)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_sid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  ::std::string* _s = _internal_mutable_sid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.sid)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_sid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sid_.Get();
}
inline void Message_Chunk::_internal_set_sid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.sid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000010U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  auto* released = _impl_.sid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sid_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_sid(::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_.sid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sid_.IsDefault()) {
    _impl_.sid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.sid)
}

// string mime_type = 6;
inline void Message_Chunk::clear_mime_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mime_type_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::std::string& Message_Chunk::mime_type() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.mime_type)
  return _internal_mime_type();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_mime_type(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.mime_type_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.mime_type)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_mime_type()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_mime_type();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.mime_type)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_mime_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mime_type_.Get();
}
inline void Message_Chunk::_internal_set_mime_type(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mime_type_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_mime_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mime_type_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_mime_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.mime_type)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.mime_type_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mime_type_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_mime_type(::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_.mime_type_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mime_type_.IsDefault()) {
    _impl_.mime_type_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.mime_type)
}

// string cid = 22;
inline void Message_Chunk::clear_cid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.cid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
}
inline const ::std::string& Message_Chunk::cid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.cid)
  return _internal_cid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_cid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  _impl_.cid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.cid)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_cid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::std::string* _s = _internal_mutable_cid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.cid)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_cid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.cid_.Get();
}
inline void Message_Chunk::_internal_set_cid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.cid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_cid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.cid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_cid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.cid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000100U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  auto* released = _impl_.cid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.cid_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_cid(::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_.cid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.cid_.IsDefault()) {
    _impl_.cid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.cid)
}

// bool viewable = 2;
inline void Message_Chunk::clear_viewable() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.viewable_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
}
inline bool Message_Chunk::viewable() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.viewable)
  return _internal_viewable();
}
inline void Message_Chunk::set_viewable(bool value) {
  _internal_set_viewable(value);
  SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.viewable)
}
inline bool Message_Chunk::_internal_viewable() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.viewable_;
}
inline void Message_Chunk::_internal_set_viewable(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.viewable_ = value;
}

// bool preferred = 3;
inline void Message_Chunk::clear_preferred() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preferred_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
}
inline bool Message_Chunk::preferred() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.preferred)
  return _internal_preferred();
}
inline void Message_Chunk::set_preferred(bool value) {
  _internal_set_preferred(value);
  SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.preferred)
}
inline bool Message_Chunk::_internal_preferred() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.preferred_;
}
inline void Message_Chunk::_internal_set_preferred(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preferred_ = value;
}

// bool attachment = 7;
inline void Message_Chunk::clear_attachment() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.attachment_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
}
inline bool Message_Chunk::attachment() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.attachment)
  return _internal_attachment();
}
inline void Message_Chunk::set_attachment(bool value) {
  _internal_set_attachment(value);
  SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.attachment)
}
inline bool Message_Chunk::_internal_attachment() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.attachment_;
}
inline void Message_Chunk::_internal_set_attachment(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.attachment_ = value;
}

// bool is_encrypted = 8;
inline void Message_Chunk::clear_is_encrypted() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_encrypted_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
}
inline bool Message_Chunk::is_encrypted() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.is_encrypted)
  return _internal_is_encrypted();
}
inline void Message_Chunk::set_is_encrypted(bool value) {
  _internal_set_is_encrypted(value);
  SetHasBit(_impl_._has_bits_[0], 0x00008000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.is_encrypted)
}
inline bool Message_Chunk::_internal_is_encrypted() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.is_encrypted_;
}
inline void Message_Chunk::_internal_set_is_encrypted(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_encrypted_ = value;
}

// bool is_signed = 9;
inline void Message_Chunk::clear_is_signed() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_signed_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
}
inline bool Message_Chunk::is_signed() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.is_signed)
  return _internal_is_signed();
}
inline void Message_Chunk::set_is_signed(bool value) {
  _internal_set_is_signed(value);
  SetHasBit(_impl_._has_bits_[0], 0x00010000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.is_signed)
}
inline bool Message_Chunk::_internal_is_signed() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.is_signed_;
}
inline void Message_Chunk::_internal_set_is_signed(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.is_signed_ = value;
}

// int32 crypto_id = 21;
inline void Message_Chunk::clear_crypto_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.crypto_id_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00200000U);
}
inline ::int32_t Message_Chunk::crypto_id() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.crypto_id)
  return _internal_crypto_id();
}
inline void Message_Chunk::set_crypto_id(::int32_t value) {
  _internal_set_crypto_id(value);
  SetHasBit(_impl_._has_bits_[0], 0x00200000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.crypto_id)
}
inline ::int32_t Message_Chunk::_internal_crypto_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.crypto_id_;
}
inline void Message_Chunk::_internal_set_crypto_id(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.crypto_id_ = value;
}

// .AstroidMessages.Message.Chunk.Signature signature = 19;
inline bool Message_Chunk::has_signature() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000200U);
  PROTOBUF_ASSUME(!value || _impl_.signature_ != nullptr);
  return value;
}
inline void Message_Chunk::clear_signature() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.signature_ != nullptr) _impl_.signature_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
}
inline const ::AstroidMessages::Message_Chunk_Signature& Message_Chunk::_internal_signature() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Message_Chunk_Signature* p = _impl_.signature_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Message_Chunk_Signature>(&::AstroidMessages::Message_Chunk_Signature_globals_);
}
inline const ::AstroidMessages::Message_Chunk_Signature& Message_Chunk::signature() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.signature)
  return _internal_signature();
}
inline void Message_Chunk::unsafe_arena_set_allocated_signature(
    ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.signature_);
  }
  _impl_.signature_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Signature*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.Chunk.signature)
}
inline ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE Message_Chunk::release_signature() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  ::AstroidMessages::Message_Chunk_Signature* released = _impl_.signature_;
  _impl_.signature_ = 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 ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NULLABLE Message_Chunk::unsafe_arena_release_signature() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.signature)

  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  ::AstroidMessages::Message_Chunk_Signature* temp = _impl_.signature_;
  _impl_.signature_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_signature() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.signature_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Message_Chunk_Signature>(GetArena());
    _impl_.signature_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Signature*>(p);
  }
  return _impl_.signature_;
}
inline ::AstroidMessages::Message_Chunk_Signature* PROTOBUF_NONNULL Message_Chunk::mutable_signature()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  ::AstroidMessages::Message_Chunk_Signature* _msg = _internal_mutable_signature();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.signature)
  return _msg;
}
inline void Message_Chunk::set_allocated_signature(::AstroidMessages::Message_Chunk_Signature* 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_.signature_);
  }

  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], 0x00000200U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  }

  _impl_.signature_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Signature*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.signature)
}

// .AstroidMessages.Message.Chunk.Encryption encryption = 20;
inline bool Message_Chunk::has_encryption() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000400U);
  PROTOBUF_ASSUME(!value || _impl_.encryption_ != nullptr);
  return value;
}
inline void Message_Chunk::clear_encryption() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.encryption_ != nullptr) _impl_.encryption_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
}
inline const ::AstroidMessages::Message_Chunk_Encryption& Message_Chunk::_internal_encryption() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Message_Chunk_Encryption* p = _impl_.encryption_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Message_Chunk_Encryption>(&::AstroidMessages::Message_Chunk_Encryption_globals_);
}
inline const ::AstroidMessages::Message_Chunk_Encryption& Message_Chunk::encryption() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.encryption)
  return _internal_encryption();
}
inline void Message_Chunk::unsafe_arena_set_allocated_encryption(
    ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.encryption_);
  }
  _impl_.encryption_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Encryption*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.Chunk.encryption)
}
inline ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE Message_Chunk::release_encryption() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  ::AstroidMessages::Message_Chunk_Encryption* released = _impl_.encryption_;
  _impl_.encryption_ = 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 ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NULLABLE Message_Chunk::unsafe_arena_release_encryption() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.encryption)

  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  ::AstroidMessages::Message_Chunk_Encryption* temp = _impl_.encryption_;
  _impl_.encryption_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_encryption() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.encryption_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Message_Chunk_Encryption>(GetArena());
    _impl_.encryption_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Encryption*>(p);
  }
  return _impl_.encryption_;
}
inline ::AstroidMessages::Message_Chunk_Encryption* PROTOBUF_NONNULL Message_Chunk::mutable_encryption()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  ::AstroidMessages::Message_Chunk_Encryption* _msg = _internal_mutable_encryption();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.encryption)
  return _msg;
}
inline void Message_Chunk::set_allocated_encryption(::AstroidMessages::Message_Chunk_Encryption* 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_.encryption_);
  }

  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], 0x00000400U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  }

  _impl_.encryption_ = reinterpret_cast<::AstroidMessages::Message_Chunk_Encryption*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.encryption)
}

// bool sibling = 11;
inline void Message_Chunk::clear_sibling() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sibling_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00020000U);
}
inline bool Message_Chunk::sibling() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.sibling)
  return _internal_sibling();
}
inline void Message_Chunk::set_sibling(bool value) {
  _internal_set_sibling(value);
  SetHasBit(_impl_._has_bits_[0], 0x00020000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.sibling)
}
inline bool Message_Chunk::_internal_sibling() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sibling_;
}
inline void Message_Chunk::_internal_set_sibling(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sibling_ = value;
}

// bool use = 12;
inline void Message_Chunk::clear_use() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00040000U);
}
inline bool Message_Chunk::use() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.use)
  return _internal_use();
}
inline void Message_Chunk::set_use(bool value) {
  _internal_set_use(value);
  SetHasBit(_impl_._has_bits_[0], 0x00040000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.use)
}
inline bool Message_Chunk::_internal_use() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.use_;
}
inline void Message_Chunk::_internal_set_use(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.use_ = value;
}

// bool focusable = 18;
inline void Message_Chunk::clear_focusable() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focusable_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00080000U);
}
inline bool Message_Chunk::focusable() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.focusable)
  return _internal_focusable();
}
inline void Message_Chunk::set_focusable(bool value) {
  _internal_set_focusable(value);
  SetHasBit(_impl_._has_bits_[0], 0x00080000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.focusable)
}
inline bool Message_Chunk::_internal_focusable() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.focusable_;
}
inline void Message_Chunk::_internal_set_focusable(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focusable_ = value;
}

// string content = 10;
inline void Message_Chunk::clear_content() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.content_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::std::string& Message_Chunk::content() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.content)
  return _internal_content();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_content(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.content_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.content)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_content()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_content();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.content)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_content() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.content_.Get();
}
inline void Message_Chunk::_internal_set_content(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.content_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_content() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.content_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_content() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.content)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.content_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.content_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_content(::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_.content_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.content_.IsDefault()) {
    _impl_.content_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.content)
}

// string filename = 14;
inline void Message_Chunk::clear_filename() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.filename_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline const ::std::string& Message_Chunk::filename() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.filename)
  return _internal_filename();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_filename(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  _impl_.filename_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.filename)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_filename()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::std::string* _s = _internal_mutable_filename();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.filename)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_filename() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.filename_.Get();
}
inline void Message_Chunk::_internal_set_filename(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.filename_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_filename() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.filename_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_filename() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.filename)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000020U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  auto* released = _impl_.filename_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.filename_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_filename(::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_.filename_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.filename_.IsDefault()) {
    _impl_.filename_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.filename)
}

// int32 size = 15;
inline void Message_Chunk::clear_size() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.size_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00100000U);
}
inline ::int32_t Message_Chunk::size() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.size)
  return _internal_size();
}
inline void Message_Chunk::set_size(::int32_t value) {
  _internal_set_size(value);
  SetHasBit(_impl_._has_bits_[0], 0x00100000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.size)
}
inline ::int32_t Message_Chunk::_internal_size() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.size_;
}
inline void Message_Chunk::_internal_set_size(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.size_ = value;
}

// string human_size = 16;
inline void Message_Chunk::clear_human_size() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.human_size_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
}
inline const ::std::string& Message_Chunk::human_size() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.human_size)
  return _internal_human_size();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_human_size(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  _impl_.human_size_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.human_size)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_human_size()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::std::string* _s = _internal_mutable_human_size();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.human_size)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_human_size() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.human_size_.Get();
}
inline void Message_Chunk::_internal_set_human_size(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.human_size_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_human_size() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.human_size_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_human_size() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.human_size)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000040U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  auto* released = _impl_.human_size_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.human_size_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_human_size(::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_.human_size_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.human_size_.IsDefault()) {
    _impl_.human_size_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.human_size)
}

// string thumbnail = 17;
inline void Message_Chunk::clear_thumbnail() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.thumbnail_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
}
inline const ::std::string& Message_Chunk::thumbnail() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.thumbnail)
  return _internal_thumbnail();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message_Chunk::set_thumbnail(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  _impl_.thumbnail_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.Chunk.thumbnail)
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::mutable_thumbnail()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::std::string* _s = _internal_mutable_thumbnail();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.thumbnail)
  return _s;
}
inline const ::std::string& Message_Chunk::_internal_thumbnail() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.thumbnail_.Get();
}
inline void Message_Chunk::_internal_set_thumbnail(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.thumbnail_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message_Chunk::_internal_mutable_thumbnail() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.thumbnail_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message_Chunk::release_thumbnail() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.Chunk.thumbnail)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000080U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  auto* released = _impl_.thumbnail_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.thumbnail_.Set("", GetArena());
  }
  return released;
}
inline void Message_Chunk::set_allocated_thumbnail(::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_.thumbnail_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.thumbnail_.IsDefault()) {
    _impl_.thumbnail_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.Chunk.thumbnail)
}

// repeated .AstroidMessages.Message.Chunk kids = 4;
inline int Message_Chunk::_internal_kids_size() const {
  return _internal_kids().size();
}
inline int Message_Chunk::kids_size() const {
  return _internal_kids_size();
}
inline void Message_Chunk::clear_kids() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.kids_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::AstroidMessages::Message_Chunk& Message_Chunk::kids(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.kids)
  return _internal_kids().Get(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message_Chunk::mutable_kids(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.kids)
  return _internal_mutable_kids()->Mutable(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message_Chunk::add_kids()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::Message_Chunk* _add =
      _internal_mutable_kids()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.Chunk.kids)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& Message_Chunk::kids() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.Chunk.kids)
  return _internal_kids();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message_Chunk::mutable_kids() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.Chunk.kids)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_kids();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
Message_Chunk::_internal_kids() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.kids_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message_Chunk::_internal_mutable_kids() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.kids_;
}

// repeated .AstroidMessages.Message.Chunk siblings = 5;
inline int Message_Chunk::_internal_siblings_size() const {
  return _internal_siblings().size();
}
inline int Message_Chunk::siblings_size() const {
  return _internal_siblings_size();
}
inline void Message_Chunk::clear_siblings() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.siblings_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::AstroidMessages::Message_Chunk& Message_Chunk::siblings(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.Chunk.siblings)
  return _internal_siblings().Get(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message_Chunk::mutable_siblings(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.Chunk.siblings)
  return _internal_mutable_siblings()->Mutable(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message_Chunk::add_siblings()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::Message_Chunk* _add =
      _internal_mutable_siblings()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.Chunk.siblings)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& Message_Chunk::siblings() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.Chunk.siblings)
  return _internal_siblings();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message_Chunk::mutable_siblings() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.Chunk.siblings)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_siblings();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
Message_Chunk::_internal_siblings() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.siblings_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message_Chunk::_internal_mutable_siblings() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.siblings_;
}

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

// Message

// string mid = 1;
inline void Message::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline const ::std::string& Message::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.mid)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.mid)
  return _s;
}
inline const ::std::string& Message::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void Message::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.mid)
}

// .AstroidMessages.Address sender = 2;
inline bool Message::has_sender() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000800U);
  PROTOBUF_ASSUME(!value || _impl_.sender_ != nullptr);
  return value;
}
inline void Message::clear_sender() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.sender_ != nullptr) _impl_.sender_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
}
inline const ::AstroidMessages::Address& Message::_internal_sender() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Address* p = _impl_.sender_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Address>(&::AstroidMessages::Address_globals_);
}
inline const ::AstroidMessages::Address& Message::sender() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.sender)
  return _internal_sender();
}
inline void Message::unsafe_arena_set_allocated_sender(
    ::AstroidMessages::Address* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.sender_);
  }
  _impl_.sender_ = reinterpret_cast<::AstroidMessages::Address*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.sender)
}
inline ::AstroidMessages::Address* PROTOBUF_NULLABLE Message::release_sender() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  ::AstroidMessages::Address* released = _impl_.sender_;
  _impl_.sender_ = 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 ::AstroidMessages::Address* PROTOBUF_NULLABLE Message::unsafe_arena_release_sender() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.sender)

  ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  ::AstroidMessages::Address* temp = _impl_.sender_;
  _impl_.sender_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL Message::_internal_mutable_sender() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.sender_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Address>(GetArena());
    _impl_.sender_ = reinterpret_cast<::AstroidMessages::Address*>(p);
  }
  return _impl_.sender_;
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL Message::mutable_sender()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000800U);
  ::AstroidMessages::Address* _msg = _internal_mutable_sender();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.sender)
  return _msg;
}
inline void Message::set_allocated_sender(::AstroidMessages::Address* 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_.sender_);
  }

  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], 0x00000800U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000800U);
  }

  _impl_.sender_ = reinterpret_cast<::AstroidMessages::Address*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.sender)
}

// .AstroidMessages.AddressList to = 3;
inline bool Message::has_to() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00001000U);
  PROTOBUF_ASSUME(!value || _impl_.to_ != nullptr);
  return value;
}
inline void Message::clear_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.to_ != nullptr) _impl_.to_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
}
inline const ::AstroidMessages::AddressList& Message::_internal_to() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::AddressList* p = _impl_.to_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::AddressList>(&::AstroidMessages::AddressList_globals_);
}
inline const ::AstroidMessages::AddressList& Message::to() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.to)
  return _internal_to();
}
inline void Message::unsafe_arena_set_allocated_to(
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.to_);
  }
  _impl_.to_ = reinterpret_cast<::AstroidMessages::AddressList*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.to)
}
inline ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::release_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  ::AstroidMessages::AddressList* released = _impl_.to_;
  _impl_.to_ = 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 ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::unsafe_arena_release_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.to)

  ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  ::AstroidMessages::AddressList* temp = _impl_.to_;
  _impl_.to_ = nullptr;
  return temp;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::_internal_mutable_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.to_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::AddressList>(GetArena());
    _impl_.to_ = reinterpret_cast<::AstroidMessages::AddressList*>(p);
  }
  return _impl_.to_;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::mutable_to()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00001000U);
  ::AstroidMessages::AddressList* _msg = _internal_mutable_to();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.to)
  return _msg;
}
inline void Message::set_allocated_to(::AstroidMessages::AddressList* 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_.to_);
  }

  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], 0x00001000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00001000U);
  }

  _impl_.to_ = reinterpret_cast<::AstroidMessages::AddressList*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.to)
}

// .AstroidMessages.AddressList cc = 4;
inline bool Message::has_cc() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00002000U);
  PROTOBUF_ASSUME(!value || _impl_.cc_ != nullptr);
  return value;
}
inline void Message::clear_cc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.cc_ != nullptr) _impl_.cc_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
}
inline const ::AstroidMessages::AddressList& Message::_internal_cc() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::AddressList* p = _impl_.cc_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::AddressList>(&::AstroidMessages::AddressList_globals_);
}
inline const ::AstroidMessages::AddressList& Message::cc() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.cc)
  return _internal_cc();
}
inline void Message::unsafe_arena_set_allocated_cc(
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.cc_);
  }
  _impl_.cc_ = reinterpret_cast<::AstroidMessages::AddressList*>(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:AstroidMessages.Message.cc)
}
inline ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::release_cc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::AstroidMessages::AddressList* released = _impl_.cc_;
  _impl_.cc_ = 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 ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::unsafe_arena_release_cc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.cc)

  ClearHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::AstroidMessages::AddressList* temp = _impl_.cc_;
  _impl_.cc_ = nullptr;
  return temp;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::_internal_mutable_cc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.cc_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::AddressList>(GetArena());
    _impl_.cc_ = reinterpret_cast<::AstroidMessages::AddressList*>(p);
  }
  return _impl_.cc_;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::mutable_cc()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00002000U);
  ::AstroidMessages::AddressList* _msg = _internal_mutable_cc();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.cc)
  return _msg;
}
inline void Message::set_allocated_cc(::AstroidMessages::AddressList* 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_.cc_);
  }

  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_.cc_ = reinterpret_cast<::AstroidMessages::AddressList*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.cc)
}

// .AstroidMessages.AddressList bcc = 5;
inline bool Message::has_bcc() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00004000U);
  PROTOBUF_ASSUME(!value || _impl_.bcc_ != nullptr);
  return value;
}
inline void Message::clear_bcc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.bcc_ != nullptr) _impl_.bcc_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
}
inline const ::AstroidMessages::AddressList& Message::_internal_bcc() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::AddressList* p = _impl_.bcc_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::AddressList>(&::AstroidMessages::AddressList_globals_);
}
inline const ::AstroidMessages::AddressList& Message::bcc() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.bcc)
  return _internal_bcc();
}
inline void Message::unsafe_arena_set_allocated_bcc(
    ::AstroidMessages::AddressList* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.bcc_);
  }
  _impl_.bcc_ = reinterpret_cast<::AstroidMessages::AddressList*>(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:AstroidMessages.Message.bcc)
}
inline ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::release_bcc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::AstroidMessages::AddressList* released = _impl_.bcc_;
  _impl_.bcc_ = 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 ::AstroidMessages::AddressList* PROTOBUF_NULLABLE Message::unsafe_arena_release_bcc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.bcc)

  ClearHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::AstroidMessages::AddressList* temp = _impl_.bcc_;
  _impl_.bcc_ = nullptr;
  return temp;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::_internal_mutable_bcc() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.bcc_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::AddressList>(GetArena());
    _impl_.bcc_ = reinterpret_cast<::AstroidMessages::AddressList*>(p);
  }
  return _impl_.bcc_;
}
inline ::AstroidMessages::AddressList* PROTOBUF_NONNULL Message::mutable_bcc()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00004000U);
  ::AstroidMessages::AddressList* _msg = _internal_mutable_bcc();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.bcc)
  return _msg;
}
inline void Message::set_allocated_bcc(::AstroidMessages::AddressList* 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_.bcc_);
  }

  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_.bcc_ = reinterpret_cast<::AstroidMessages::AddressList*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.bcc)
}

// .AstroidMessages.Address reply_to = 20;
inline bool Message::has_reply_to() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00008000U);
  PROTOBUF_ASSUME(!value || _impl_.reply_to_ != nullptr);
  return value;
}
inline void Message::clear_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.reply_to_ != nullptr) _impl_.reply_to_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
}
inline const ::AstroidMessages::Address& Message::_internal_reply_to() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Address* p = _impl_.reply_to_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Address>(&::AstroidMessages::Address_globals_);
}
inline const ::AstroidMessages::Address& Message::reply_to() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.reply_to)
  return _internal_reply_to();
}
inline void Message::unsafe_arena_set_allocated_reply_to(
    ::AstroidMessages::Address* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reply_to_);
  }
  _impl_.reply_to_ = reinterpret_cast<::AstroidMessages::Address*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00008000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.reply_to)
}
inline ::AstroidMessages::Address* PROTOBUF_NULLABLE Message::release_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
  ::AstroidMessages::Address* released = _impl_.reply_to_;
  _impl_.reply_to_ = 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 ::AstroidMessages::Address* PROTOBUF_NULLABLE Message::unsafe_arena_release_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.reply_to)

  ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
  ::AstroidMessages::Address* temp = _impl_.reply_to_;
  _impl_.reply_to_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL Message::_internal_mutable_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.reply_to_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Address>(GetArena());
    _impl_.reply_to_ = reinterpret_cast<::AstroidMessages::Address*>(p);
  }
  return _impl_.reply_to_;
}
inline ::AstroidMessages::Address* PROTOBUF_NONNULL Message::mutable_reply_to()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00008000U);
  ::AstroidMessages::Address* _msg = _internal_mutable_reply_to();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.reply_to)
  return _msg;
}
inline void Message::set_allocated_reply_to(::AstroidMessages::Address* 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_.reply_to_);
  }

  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], 0x00008000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00008000U);
  }

  _impl_.reply_to_ = reinterpret_cast<::AstroidMessages::Address*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.reply_to)
}

// string date_pretty = 6;
inline void Message::clear_date_pretty() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_pretty_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
}
inline const ::std::string& Message::date_pretty() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.date_pretty)
  return _internal_date_pretty();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_date_pretty(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  _impl_.date_pretty_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.date_pretty)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_date_pretty()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  ::std::string* _s = _internal_mutable_date_pretty();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.date_pretty)
  return _s;
}
inline const ::std::string& Message::_internal_date_pretty() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_pretty_.Get();
}
inline void Message::_internal_set_date_pretty(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_pretty_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_date_pretty() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.date_pretty_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_date_pretty() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.date_pretty)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000010U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  auto* released = _impl_.date_pretty_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.date_pretty_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_date_pretty(::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_.date_pretty_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.date_pretty_.IsDefault()) {
    _impl_.date_pretty_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.date_pretty)
}

// string date_verbose = 7;
inline void Message::clear_date_verbose() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_verbose_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
}
inline const ::std::string& Message::date_verbose() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.date_verbose)
  return _internal_date_verbose();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_date_verbose(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  _impl_.date_verbose_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.date_verbose)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_date_verbose()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::std::string* _s = _internal_mutable_date_verbose();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.date_verbose)
  return _s;
}
inline const ::std::string& Message::_internal_date_verbose() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.date_verbose_.Get();
}
inline void Message::_internal_set_date_verbose(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.date_verbose_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_date_verbose() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.date_verbose_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_date_verbose() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.date_verbose)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000020U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  auto* released = _impl_.date_verbose_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.date_verbose_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_date_verbose(::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_.date_verbose_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.date_verbose_.IsDefault()) {
    _impl_.date_verbose_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.date_verbose)
}

// string subject = 9;
inline void Message::clear_subject() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.subject_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
}
inline const ::std::string& Message::subject() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.subject)
  return _internal_subject();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_subject(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  _impl_.subject_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.subject)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_subject()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::std::string* _s = _internal_mutable_subject();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.subject)
  return _s;
}
inline const ::std::string& Message::_internal_subject() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.subject_.Get();
}
inline void Message::_internal_set_subject(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.subject_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_subject() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.subject_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_subject() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.subject)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000040U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  auto* released = _impl_.subject_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.subject_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_subject(::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_.subject_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.subject_.IsDefault()) {
    _impl_.subject_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.subject)
}

// repeated string tags = 10;
inline int Message::_internal_tags_size() const {
  return _internal_tags().size();
}
inline int Message::tags_size() const {
  return _internal_tags_size();
}
inline void Message::clear_tags() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tags_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline ::std::string* PROTOBUF_NONNULL Message::add_tags()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_tags()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add_mutable:AstroidMessages.Message.tags)
  return _s;
}
inline const ::std::string& Message::tags(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.tags)
  return _internal_tags().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_tags(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.tags)
  return _internal_mutable_tags()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void Message::set_tags(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(
      *_internal_mutable_tags()->Mutable(index),
      ::std::forward<Arg_>(value), args... );
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.tags)
}
template <typename Arg_, typename... Args_>
inline void Message::add_tags(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_tags(), ::std::forward<Arg_>(value),
      args... );
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.tags)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& Message::tags()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.tags)
  return _internal_tags();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message::mutable_tags() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.tags)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_tags();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
Message::_internal_tags() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tags_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
Message::_internal_mutable_tags() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.tags_;
}

// string tag_string = 21;
inline void Message::clear_tag_string() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tag_string_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
}
inline const ::std::string& Message::tag_string() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.tag_string)
  return _internal_tag_string();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_tag_string(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  _impl_.tag_string_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.tag_string)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_tag_string()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000400U);
  ::std::string* _s = _internal_mutable_tag_string();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.tag_string)
  return _s;
}
inline const ::std::string& Message::_internal_tag_string() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.tag_string_.Get();
}
inline void Message::_internal_set_tag_string(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.tag_string_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_tag_string() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.tag_string_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_tag_string() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.tag_string)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000400U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000400U);
  auto* released = _impl_.tag_string_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.tag_string_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_tag_string(::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_.tag_string_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.tag_string_.IsDefault()) {
    _impl_.tag_string_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.tag_string)
}

// string gravatar = 11;
inline void Message::clear_gravatar() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.gravatar_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
}
inline const ::std::string& Message::gravatar() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.gravatar)
  return _internal_gravatar();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_gravatar(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  _impl_.gravatar_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.gravatar)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_gravatar()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::std::string* _s = _internal_mutable_gravatar();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.gravatar)
  return _s;
}
inline const ::std::string& Message::_internal_gravatar() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.gravatar_.Get();
}
inline void Message::_internal_set_gravatar(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.gravatar_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_gravatar() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.gravatar_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_gravatar() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.gravatar)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000080U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  auto* released = _impl_.gravatar_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.gravatar_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_gravatar(::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_.gravatar_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.gravatar_.IsDefault()) {
    _impl_.gravatar_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.gravatar)
}

// bool missing_content = 13;
inline void Message::clear_missing_content() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.missing_content_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00040000U);
}
inline bool Message::missing_content() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.missing_content)
  return _internal_missing_content();
}
inline void Message::set_missing_content(bool value) {
  _internal_set_missing_content(value);
  SetHasBit(_impl_._has_bits_[0], 0x00040000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.missing_content)
}
inline bool Message::_internal_missing_content() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.missing_content_;
}
inline void Message::_internal_set_missing_content(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.missing_content_ = value;
}

// bool patch = 14;
inline void Message::clear_patch() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.patch_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00080000U);
}
inline bool Message::patch() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.patch)
  return _internal_patch();
}
inline void Message::set_patch(bool value) {
  _internal_set_patch(value);
  SetHasBit(_impl_._has_bits_[0], 0x00080000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.patch)
}
inline bool Message::_internal_patch() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.patch_;
}
inline void Message::_internal_set_patch(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.patch_ = value;
}

// bool different_subject = 22;
inline void Message::clear_different_subject() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.different_subject_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00100000U);
}
inline bool Message::different_subject() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.different_subject)
  return _internal_different_subject();
}
inline void Message::set_different_subject(bool value) {
  _internal_set_different_subject(value);
  SetHasBit(_impl_._has_bits_[0], 0x00100000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.different_subject)
}
inline bool Message::_internal_different_subject() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.different_subject_;
}
inline void Message::_internal_set_different_subject(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.different_subject_ = value;
}

// int32 level = 15;
inline void Message::clear_level() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.level_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00020000U);
}
inline ::int32_t Message::level() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.level)
  return _internal_level();
}
inline void Message::set_level(::int32_t value) {
  _internal_set_level(value);
  SetHasBit(_impl_._has_bits_[0], 0x00020000U);
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.level)
}
inline ::int32_t Message::_internal_level() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.level_;
}
inline void Message::_internal_set_level(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.level_ = value;
}

// string in_reply_to = 16;
inline void Message::clear_in_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_reply_to_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
}
inline const ::std::string& Message::in_reply_to() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.in_reply_to)
  return _internal_in_reply_to();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_in_reply_to(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  _impl_.in_reply_to_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.in_reply_to)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_in_reply_to()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::std::string* _s = _internal_mutable_in_reply_to();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.in_reply_to)
  return _s;
}
inline const ::std::string& Message::_internal_in_reply_to() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.in_reply_to_.Get();
}
inline void Message::_internal_set_in_reply_to(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.in_reply_to_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_in_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.in_reply_to_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_in_reply_to() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.in_reply_to)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000100U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  auto* released = _impl_.in_reply_to_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.in_reply_to_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_in_reply_to(::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_.in_reply_to_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.in_reply_to_.IsDefault()) {
    _impl_.in_reply_to_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.in_reply_to)
}

// string preview = 17;
inline void Message::clear_preview() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preview_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
}
inline const ::std::string& Message::preview() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.preview)
  return _internal_preview();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Message::set_preview(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  _impl_.preview_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.Message.preview)
}
inline ::std::string* PROTOBUF_NONNULL Message::mutable_preview()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000200U);
  ::std::string* _s = _internal_mutable_preview();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.preview)
  return _s;
}
inline const ::std::string& Message::_internal_preview() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.preview_.Get();
}
inline void Message::_internal_set_preview(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.preview_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Message::_internal_mutable_preview() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.preview_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Message::release_preview() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.preview)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000200U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000200U);
  auto* released = _impl_.preview_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.preview_.Set("", GetArena());
  }
  return released;
}
inline void Message::set_allocated_preview(::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_.preview_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.preview_.IsDefault()) {
    _impl_.preview_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.preview)
}

// .AstroidMessages.Message.Chunk root = 23;
inline bool Message::has_root() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00010000U);
  PROTOBUF_ASSUME(!value || _impl_.root_ != nullptr);
  return value;
}
inline void Message::clear_root() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.root_ != nullptr) _impl_.root_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
}
inline const ::AstroidMessages::Message_Chunk& Message::_internal_root() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Message_Chunk* p = _impl_.root_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Message_Chunk>(&::AstroidMessages::Message_Chunk_globals_);
}
inline const ::AstroidMessages::Message_Chunk& Message::root() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.root)
  return _internal_root();
}
inline void Message::unsafe_arena_set_allocated_root(
    ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.root_);
  }
  _impl_.root_ = reinterpret_cast<::AstroidMessages::Message_Chunk*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00010000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:AstroidMessages.Message.root)
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE Message::release_root() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
  ::AstroidMessages::Message_Chunk* released = _impl_.root_;
  _impl_.root_ = 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 ::AstroidMessages::Message_Chunk* PROTOBUF_NULLABLE Message::unsafe_arena_release_root() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.Message.root)

  ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
  ::AstroidMessages::Message_Chunk* temp = _impl_.root_;
  _impl_.root_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::_internal_mutable_root() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.root_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Message_Chunk>(GetArena());
    _impl_.root_ = reinterpret_cast<::AstroidMessages::Message_Chunk*>(p);
  }
  return _impl_.root_;
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::mutable_root()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00010000U);
  ::AstroidMessages::Message_Chunk* _msg = _internal_mutable_root();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.root)
  return _msg;
}
inline void Message::set_allocated_root(::AstroidMessages::Message_Chunk* 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_.root_);
  }

  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], 0x00010000U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00010000U);
  }

  _impl_.root_ = reinterpret_cast<::AstroidMessages::Message_Chunk*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.Message.root)
}

// repeated .AstroidMessages.Message.Chunk mime_messages = 18;
inline int Message::_internal_mime_messages_size() const {
  return _internal_mime_messages().size();
}
inline int Message::mime_messages_size() const {
  return _internal_mime_messages_size();
}
inline void Message::clear_mime_messages() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mime_messages_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline const ::AstroidMessages::Message_Chunk& Message::mime_messages(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.mime_messages)
  return _internal_mime_messages().Get(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::mutable_mime_messages(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.mime_messages)
  return _internal_mutable_mime_messages()->Mutable(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::add_mime_messages()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::Message_Chunk* _add =
      _internal_mutable_mime_messages()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.mime_messages)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& Message::mime_messages() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.mime_messages)
  return _internal_mime_messages();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message::mutable_mime_messages() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.mime_messages)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_mime_messages();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
Message::_internal_mime_messages() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mime_messages_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message::_internal_mutable_mime_messages() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.mime_messages_;
}

// repeated .AstroidMessages.Message.Chunk attachments = 19;
inline int Message::_internal_attachments_size() const {
  return _internal_attachments().size();
}
inline int Message::attachments_size() const {
  return _internal_attachments_size();
}
inline void Message::clear_attachments() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.attachments_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::AstroidMessages::Message_Chunk& Message::attachments(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.Message.attachments)
  return _internal_attachments().Get(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::mutable_attachments(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.Message.attachments)
  return _internal_mutable_attachments()->Mutable(index);
}
inline ::AstroidMessages::Message_Chunk* PROTOBUF_NONNULL Message::add_attachments()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::Message_Chunk* _add =
      _internal_mutable_attachments()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_add:AstroidMessages.Message.attachments)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>& Message::attachments() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.Message.attachments)
  return _internal_attachments();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message::mutable_attachments() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.Message.attachments)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_attachments();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>&
Message::_internal_attachments() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.attachments_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::Message_Chunk>* PROTOBUF_NONNULL
Message::_internal_mutable_attachments() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.attachments_;
}

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

// State_MessageState_Element

// .AstroidMessages.State.MessageState.Element.Type type = 1;
inline void State_MessageState_Element::clear_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::AstroidMessages::State_MessageState_Element_Type State_MessageState_Element::type() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.Element.type)
  return _internal_type();
}
inline void State_MessageState_Element::set_type(::AstroidMessages::State_MessageState_Element_Type value) {
  _internal_set_type(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.Element.type)
}
inline ::AstroidMessages::State_MessageState_Element_Type State_MessageState_Element::_internal_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::AstroidMessages::State_MessageState_Element_Type>(_impl_.type_);
}
inline void State_MessageState_Element::_internal_set_type(::AstroidMessages::State_MessageState_Element_Type value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = value;
}

// int32 id = 2;
inline void State_MessageState_Element::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline ::int32_t State_MessageState_Element::id() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.Element.id)
  return _internal_id();
}
inline void State_MessageState_Element::set_id(::int32_t value) {
  _internal_set_id(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.Element.id)
}
inline ::int32_t State_MessageState_Element::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_;
}
inline void State_MessageState_Element::_internal_set_id(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_ = value;
}

// string sid = 3;
inline void State_MessageState_Element::clear_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& State_MessageState_Element::sid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.Element.sid)
  return _internal_sid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void State_MessageState_Element::set_sid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.sid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.Element.sid)
}
inline ::std::string* PROTOBUF_NONNULL State_MessageState_Element::mutable_sid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_sid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.State.MessageState.Element.sid)
  return _s;
}
inline const ::std::string& State_MessageState_Element::_internal_sid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sid_.Get();
}
inline void State_MessageState_Element::_internal_set_sid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL State_MessageState_Element::_internal_mutable_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE State_MessageState_Element::release_sid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.State.MessageState.Element.sid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.sid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sid_.Set("", GetArena());
  }
  return released;
}
inline void State_MessageState_Element::set_allocated_sid(::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_.sid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sid_.IsDefault()) {
    _impl_.sid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.State.MessageState.Element.sid)
}

// bool focusable = 4;
inline void State_MessageState_Element::clear_focusable() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focusable_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
}
inline bool State_MessageState_Element::focusable() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.Element.focusable)
  return _internal_focusable();
}
inline void State_MessageState_Element::set_focusable(bool value) {
  _internal_set_focusable(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.Element.focusable)
}
inline bool State_MessageState_Element::_internal_focusable() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.focusable_;
}
inline void State_MessageState_Element::_internal_set_focusable(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.focusable_ = value;
}

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

// State_MessageState

// string mid = 1;
inline void State_MessageState::clear_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::std::string& State_MessageState::mid() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.mid)
  return _internal_mid();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void State_MessageState::set_mid(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.mid_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.mid)
}
inline ::std::string* PROTOBUF_NONNULL State_MessageState::mutable_mid()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_mid();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.State.MessageState.mid)
  return _s;
}
inline const ::std::string& State_MessageState::_internal_mid() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.mid_.Get();
}
inline void State_MessageState::_internal_set_mid(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.mid_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL State_MessageState::_internal_mutable_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.mid_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE State_MessageState::release_mid() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.State.MessageState.mid)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.mid_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.mid_.Set("", GetArena());
  }
  return released;
}
inline void State_MessageState::set_allocated_mid(::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_.mid_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.mid_.IsDefault()) {
    _impl_.mid_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.State.MessageState.mid)
}

// repeated .AstroidMessages.State.MessageState.Element elements = 5;
inline int State_MessageState::_internal_elements_size() const {
  return _internal_elements().size();
}
inline int State_MessageState::elements_size() const {
  return _internal_elements_size();
}
inline void State_MessageState::clear_elements() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.elements_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
inline const ::AstroidMessages::State_MessageState_Element& State_MessageState::elements(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.elements)
  return _internal_elements().Get(index);
}
inline ::AstroidMessages::State_MessageState_Element* PROTOBUF_NONNULL State_MessageState::mutable_elements(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.State.MessageState.elements)
  return _internal_mutable_elements()->Mutable(index);
}
inline ::AstroidMessages::State_MessageState_Element* PROTOBUF_NONNULL State_MessageState::add_elements()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::State_MessageState_Element* _add =
      _internal_mutable_elements()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_add:AstroidMessages.State.MessageState.elements)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>& State_MessageState::elements() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.State.MessageState.elements)
  return _internal_elements();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>* PROTOBUF_NONNULL
State_MessageState::mutable_elements() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.State.MessageState.elements)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_elements();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>&
State_MessageState::_internal_elements() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.elements_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState_Element>* PROTOBUF_NONNULL
State_MessageState::_internal_mutable_elements() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.elements_;
}

// int32 level = 6;
inline void State_MessageState::clear_level() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.level_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::int32_t State_MessageState::level() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.MessageState.level)
  return _internal_level();
}
inline void State_MessageState::set_level(::int32_t value) {
  _internal_set_level(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.State.MessageState.level)
}
inline ::int32_t State_MessageState::_internal_level() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.level_;
}
inline void State_MessageState::_internal_set_level(::int32_t value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.level_ = value;
}

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

// State

// repeated .AstroidMessages.State.MessageState messages = 2;
inline int State::_internal_messages_size() const {
  return _internal_messages().size();
}
inline int State::messages_size() const {
  return _internal_messages_size();
}
inline void State::clear_messages() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.messages_.Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::AstroidMessages::State_MessageState& State::messages(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.messages)
  return _internal_messages().Get(index);
}
inline ::AstroidMessages::State_MessageState* PROTOBUF_NONNULL State::mutable_messages(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:AstroidMessages.State.messages)
  return _internal_mutable_messages()->Mutable(index);
}
inline ::AstroidMessages::State_MessageState* PROTOBUF_NONNULL State::add_messages()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::AstroidMessages::State_MessageState* _add =
      _internal_mutable_messages()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:AstroidMessages.State.messages)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>& State::messages() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:AstroidMessages.State.messages)
  return _internal_messages();
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>* PROTOBUF_NONNULL
State::mutable_messages() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:AstroidMessages.State.messages)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_messages();
}
inline const ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>&
State::_internal_messages() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.messages_;
}
inline ::google::protobuf::RepeatedPtrField<::AstroidMessages::State_MessageState>* PROTOBUF_NONNULL
State::_internal_mutable_messages() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.messages_;
}

// bool edit_mode = 3;
inline void State::clear_edit_mode() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.edit_mode_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline bool State::edit_mode() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.State.edit_mode)
  return _internal_edit_mode();
}
inline void State::set_edit_mode(bool value) {
  _internal_set_edit_mode(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.State.edit_mode)
}
inline bool State::_internal_edit_mode() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.edit_mode_;
}
inline void State::_internal_set_edit_mode(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.edit_mode_ = value;
}

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

// UpdateMessage

// .AstroidMessages.Message m = 1;
inline bool UpdateMessage::has_m() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.m_ != nullptr);
  return value;
}
inline void UpdateMessage::clear_m() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.m_ != nullptr) _impl_.m_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline const ::AstroidMessages::Message& UpdateMessage::_internal_m() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::AstroidMessages::Message* p = _impl_.m_;
  return p != nullptr ? *p : *::google::protobuf::internal::MessageGlobalsBase::ToDefaultInstance<::AstroidMessages::Message>(&::AstroidMessages::Message_globals_);
}
inline const ::AstroidMessages::Message& UpdateMessage::m() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:AstroidMessages.UpdateMessage.m)
  return _internal_m();
}
inline void UpdateMessage::unsafe_arena_set_allocated_m(
    ::AstroidMessages::Message* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.m_);
  }
  _impl_.m_ = reinterpret_cast<::AstroidMessages::Message*>(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:AstroidMessages.UpdateMessage.m)
}
inline ::AstroidMessages::Message* PROTOBUF_NULLABLE UpdateMessage::release_m() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Message* released = _impl_.m_;
  _impl_.m_ = 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 ::AstroidMessages::Message* PROTOBUF_NULLABLE UpdateMessage::unsafe_arena_release_m() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:AstroidMessages.UpdateMessage.m)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Message* temp = _impl_.m_;
  _impl_.m_ = nullptr;
  return temp;
}
inline ::AstroidMessages::Message* PROTOBUF_NONNULL UpdateMessage::_internal_mutable_m() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.m_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::AstroidMessages::Message>(GetArena());
    _impl_.m_ = reinterpret_cast<::AstroidMessages::Message*>(p);
  }
  return _impl_.m_;
}
inline ::AstroidMessages::Message* PROTOBUF_NONNULL UpdateMessage::mutable_m()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::AstroidMessages::Message* _msg = _internal_mutable_m();
  // @@protoc_insertion_point(field_mutable:AstroidMessages.UpdateMessage.m)
  return _msg;
}
inline void UpdateMessage::set_allocated_m(::AstroidMessages::Message* 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_.m_);
  }

  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_.m_ = reinterpret_cast<::AstroidMessages::Message*>(value);
  // @@protoc_insertion_point(field_set_allocated:AstroidMessages.UpdateMessage.m)
}

// .AstroidMessages.UpdateMessage.Type type = 2;
inline void UpdateMessage::clear_type() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = 0;
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
inline ::AstroidMessages::UpdateMessage_Type UpdateMessage::type() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.UpdateMessage.type)
  return _internal_type();
}
inline void UpdateMessage::set_type(::AstroidMessages::UpdateMessage_Type value) {
  _internal_set_type(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  // @@protoc_insertion_point(field_set:AstroidMessages.UpdateMessage.type)
}
inline ::AstroidMessages::UpdateMessage_Type UpdateMessage::_internal_type() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return static_cast<::AstroidMessages::UpdateMessage_Type>(_impl_.type_);
}
inline void UpdateMessage::_internal_set_type(::AstroidMessages::UpdateMessage_Type value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.type_ = value;
}

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

// ClearMessage

// bool yes = 1;
inline void ClearMessage::clear_yes() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.yes_ = false;
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
}
inline bool ClearMessage::yes() const {
  // @@protoc_insertion_point(field_get:AstroidMessages.ClearMessage.yes)
  return _internal_yes();
}
inline void ClearMessage::set_yes(bool value) {
  _internal_set_yes(value);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_set:AstroidMessages.ClearMessage.yes)
}
inline bool ClearMessage::_internal_yes() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.yes_;
}
inline void ClearMessage::_internal_set_yes(bool value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.yes_ = value;
}

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

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


namespace google {
namespace protobuf {

template <>
struct is_proto_enum<::AstroidMessages::Navigate_Direction> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::AstroidMessages::Navigate_Direction>() {
  return ::AstroidMessages::Navigate_Direction_descriptor();
}
template <>
struct is_proto_enum<::AstroidMessages::Navigate_Type> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::AstroidMessages::Navigate_Type>() {
  return ::AstroidMessages::Navigate_Type_descriptor();
}
template <>
struct is_proto_enum<::AstroidMessages::State_MessageState_Element_Type> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::AstroidMessages::State_MessageState_Element_Type>() {
  return ::AstroidMessages::State_MessageState_Element_Type_descriptor();
}
template <>
struct is_proto_enum<::AstroidMessages::UpdateMessage_Type> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::AstroidMessages::UpdateMessage_Type>() {
  return ::AstroidMessages::UpdateMessage_Type_descriptor();
}

}  // namespace protobuf
}  // namespace google

// @@protoc_insertion_point(global_scope)

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

#endif  // messages_2eproto_2epb_2eh
