// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: client/v3beta/dto/message/model/operation.proto

#ifndef GOOGLE_PROTOBUF_INCLUDED_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto
#define GOOGLE_PROTOBUF_INCLUDED_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto

#include <limits>
#include <string>


#include <herogoogle/protobuf/stubs/common.h>
#if GOOGLE_PROTOBUF_VERSION < 3018000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers. Please update
#error your headers.
#endif
#if 3018000 < PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers. Please
#error regenerate this file with a newer version of protoc.
#endif


#include <herogoogle/protobuf/io/coded_stream.h>
#include <herogoogle/protobuf/arena.h>
#include <herogoogle/protobuf/arenastring.h>
#include <herogoogle/protobuf/generated_message_table_driven.h>
#include <herogoogle/protobuf/generated_message_util.h>
#include <herogoogle/protobuf/metadata_lite.h>
#include <herogoogle/protobuf/generated_message_reflection.h>
#include <herogoogle/protobuf/message.h>
#include <herogoogle/protobuf/repeated_field.h>  // IWYU pragma: export
#include <herogoogle/protobuf/extension_set.h>  // IWYU pragma: export
#include <herogoogle/protobuf/map.h>  // IWYU pragma: export
#include <herogoogle/protobuf/map_entry.h>
#include <herogoogle/protobuf/map_field_inl.h>
#include <herogoogle/protobuf/unknown_field_set.h>
#include "client/v3beta/dto/message/model/message_model.pb.h"
// @@protoc_insertion_point(includes)

#define PROTOBUF_INTERNAL_EXPORT_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto
PROTOBUF_NAMESPACE_OPEN
namespace internal {
class AnyMetadata;
}  // namespace internal
PROTOBUF_NAMESPACE_CLOSE

// Internal implementation detail -- do not use these members.
struct TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto {
  static const ::herogoogle::protobuf::internal::ParseTableField entries[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::AuxiliaryParseTableField aux[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::ParseTable schema[9]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::FieldMetadata field_metadata[];
  static const ::herogoogle::protobuf::internal::SerializationTable serialization_table[];
  static const ::herogoogle::protobuf::uint32 offsets[];
};
extern const ::herogoogle::protobuf::internal::DescriptorTable descriptor_table_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
namespace heroim {
namespace client {
namespace v3beta {
namespace dto {
namespace message {
namespace model {
class Command;
struct CommandDefaultTypeInternal;
extern CommandDefaultTypeInternal _Command_default_instance_;
class Command_PayloadEntry_DoNotUse;
struct Command_PayloadEntry_DoNotUseDefaultTypeInternal;
extern Command_PayloadEntry_DoNotUseDefaultTypeInternal _Command_PayloadEntry_DoNotUse_default_instance_;
class CustomEvent;
struct CustomEventDefaultTypeInternal;
extern CustomEventDefaultTypeInternal _CustomEvent_default_instance_;
class Event;
struct EventDefaultTypeInternal;
extern EventDefaultTypeInternal _Event_default_instance_;
class MessagePackage;
struct MessagePackageDefaultTypeInternal;
extern MessagePackageDefaultTypeInternal _MessagePackage_default_instance_;
class MessageRemind;
struct MessageRemindDefaultTypeInternal;
extern MessageRemindDefaultTypeInternal _MessageRemind_default_instance_;
class Notify;
struct NotifyDefaultTypeInternal;
extern NotifyDefaultTypeInternal _Notify_default_instance_;
class Notify_PayloadEntry_DoNotUse;
struct Notify_PayloadEntry_DoNotUseDefaultTypeInternal;
extern Notify_PayloadEntry_DoNotUseDefaultTypeInternal _Notify_PayloadEntry_DoNotUse_default_instance_;
class Notify_SdkExtraEntry_DoNotUse;
struct Notify_SdkExtraEntry_DoNotUseDefaultTypeInternal;
extern Notify_SdkExtraEntry_DoNotUseDefaultTypeInternal _Notify_SdkExtraEntry_DoNotUse_default_instance_;
}  // namespace model
}  // namespace message
}  // namespace dto
}  // namespace v3beta
}  // namespace client
}  // namespace heroim
PROTOBUF_NAMESPACE_OPEN
template<> ::heroim::client::v3beta::dto::message::model::Command* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Command>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::Command_PayloadEntry_DoNotUse* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Command_PayloadEntry_DoNotUse>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::CustomEvent* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::CustomEvent>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::Event* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Event>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::MessagePackage* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::MessagePackage>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::MessageRemind* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::MessageRemind>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::Notify* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Notify>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::Notify_PayloadEntry_DoNotUse* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Notify_PayloadEntry_DoNotUse>(Arena*);
template<> ::heroim::client::v3beta::dto::message::model::Notify_SdkExtraEntry_DoNotUse* Arena::CreateMaybeMessage<::heroim::client::v3beta::dto::message::model::Notify_SdkExtraEntry_DoNotUse>(Arena*);
PROTOBUF_NAMESPACE_CLOSE
namespace heroim {
namespace client {
namespace v3beta {
namespace dto {
namespace message {
namespace model {

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

class Event final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.Event) */ {
 public:
  inline Event() : Event(nullptr) {}
  ~Event() override;
  explicit constexpr Event(::herogoogle::protobuf::internal::ConstantInitialized);

  Event(const Event& from);
  Event(Event&& from) noexcept
    : Event() {
    *this = ::std::move(from);
  }

  inline Event& operator=(const Event& from) {
    CopyFrom(from);
    return *this;
  }
  inline Event& operator=(Event&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const Event& default_instance() {
    return *internal_default_instance();
  }
  static inline const Event* internal_default_instance() {
    return reinterpret_cast<const Event*>(
               &_Event_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  friend void swap(Event& a, Event& b) {
    a.Swap(&b);
  }
  inline void Swap(Event* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(Event* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline Event* New() const final {
    return new Event();
  }

  Event* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<Event>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const Event& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const Event& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(Event* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.Event";
  }
  protected:
  explicit Event(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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

  // accessors -------------------------------------------------------

  enum : int {
    kEventTypeFieldNumber = 1,
    kDataFieldNumber = 2,
  };
  // string eventType = 1;
  void clear_eventtype();
  const std::string& eventtype() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_eventtype(ArgT0&& arg0, ArgT... args);
  std::string* mutable_eventtype();
  PROTOBUF_MUST_USE_RESULT std::string* release_eventtype();
  void set_allocated_eventtype(std::string* eventtype);
  private:
  const std::string& _internal_eventtype() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_eventtype(const std::string& value);
  std::string* _internal_mutable_eventtype();
  public:

  // string data = 2;
  void clear_data();
  const std::string& data() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_data(ArgT0&& arg0, ArgT... args);
  std::string* mutable_data();
  PROTOBUF_MUST_USE_RESULT std::string* release_data();
  void set_allocated_data(std::string* data);
  private:
  const std::string& _internal_data() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_data(const std::string& value);
  std::string* _internal_mutable_data();
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.Event)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::ArenaStringPtr eventtype_;
  ::herogoogle::protobuf::internal::ArenaStringPtr data_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// -------------------------------------------------------------------

class Notify_PayloadEntry_DoNotUse : public ::herogoogle::protobuf::internal::MapEntry<Notify_PayloadEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> {
public:
  typedef ::herogoogle::protobuf::internal::MapEntry<Notify_PayloadEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> SuperType;
  Notify_PayloadEntry_DoNotUse();
  explicit constexpr Notify_PayloadEntry_DoNotUse(
      ::herogoogle::protobuf::internal::ConstantInitialized);
  explicit Notify_PayloadEntry_DoNotUse(::herogoogle::protobuf::Arena* arena);
  void MergeFrom(const Notify_PayloadEntry_DoNotUse& other);
  static const Notify_PayloadEntry_DoNotUse* internal_default_instance() { return reinterpret_cast<const Notify_PayloadEntry_DoNotUse*>(&_Notify_PayloadEntry_DoNotUse_default_instance_); }
  static bool ValidateKey(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Notify.PayloadEntry.key");
 }
  static bool ValidateValue(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Notify.PayloadEntry.value");
 }
  using ::herogoogle::protobuf::Message::MergeFrom;
  ::herogoogle::protobuf::Metadata GetMetadata() const final;
};

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

class Notify_SdkExtraEntry_DoNotUse : public ::herogoogle::protobuf::internal::MapEntry<Notify_SdkExtraEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> {
public:
  typedef ::herogoogle::protobuf::internal::MapEntry<Notify_SdkExtraEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> SuperType;
  Notify_SdkExtraEntry_DoNotUse();
  explicit constexpr Notify_SdkExtraEntry_DoNotUse(
      ::herogoogle::protobuf::internal::ConstantInitialized);
  explicit Notify_SdkExtraEntry_DoNotUse(::herogoogle::protobuf::Arena* arena);
  void MergeFrom(const Notify_SdkExtraEntry_DoNotUse& other);
  static const Notify_SdkExtraEntry_DoNotUse* internal_default_instance() { return reinterpret_cast<const Notify_SdkExtraEntry_DoNotUse*>(&_Notify_SdkExtraEntry_DoNotUse_default_instance_); }
  static bool ValidateKey(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Notify.SdkExtraEntry.key");
 }
  static bool ValidateValue(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Notify.SdkExtraEntry.value");
 }
  using ::herogoogle::protobuf::Message::MergeFrom;
  ::herogoogle::protobuf::Metadata GetMetadata() const final;
};

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

class Notify final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.Notify) */ {
 public:
  inline Notify() : Notify(nullptr) {}
  ~Notify() override;
  explicit constexpr Notify(::herogoogle::protobuf::internal::ConstantInitialized);

  Notify(const Notify& from);
  Notify(Notify&& from) noexcept
    : Notify() {
    *this = ::std::move(from);
  }

  inline Notify& operator=(const Notify& from) {
    CopyFrom(from);
    return *this;
  }
  inline Notify& operator=(Notify&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const Notify& default_instance() {
    return *internal_default_instance();
  }
  static inline const Notify* internal_default_instance() {
    return reinterpret_cast<const Notify*>(
               &_Notify_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  friend void swap(Notify& a, Notify& b) {
    a.Swap(&b);
  }
  inline void Swap(Notify* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(Notify* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline Notify* New() const final {
    return new Notify();
  }

  Notify* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<Notify>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const Notify& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const Notify& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(Notify* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.Notify";
  }
  protected:
  explicit Notify(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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


  // accessors -------------------------------------------------------

  enum : int {
    kPayloadFieldNumber = 9,
    kSdkExtraFieldNumber = 10,
    kEventTypeFieldNumber = 6,
    kDataFieldNumber = 7,
    kNotifyTypeFieldNumber = 1,
  };
  // map<string, string> payload = 9;
  int payload_size() const;
  private:
  int _internal_payload_size() const;
  public:
  void clear_payload();
  private:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      _internal_payload() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      _internal_mutable_payload();
  public:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      payload() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      mutable_payload();

  // map<string, string> sdkExtra = 10;
  int sdkextra_size() const;
  private:
  int _internal_sdkextra_size() const;
  public:
  void clear_sdkextra();
  private:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      _internal_sdkextra() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      _internal_mutable_sdkextra();
  public:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      sdkextra() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      mutable_sdkextra();

  // string eventType = 6;
  void clear_eventtype();
  const std::string& eventtype() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_eventtype(ArgT0&& arg0, ArgT... args);
  std::string* mutable_eventtype();
  PROTOBUF_MUST_USE_RESULT std::string* release_eventtype();
  void set_allocated_eventtype(std::string* eventtype);
  private:
  const std::string& _internal_eventtype() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_eventtype(const std::string& value);
  std::string* _internal_mutable_eventtype();
  public:

  // string data = 7;
  void clear_data();
  const std::string& data() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_data(ArgT0&& arg0, ArgT... args);
  std::string* mutable_data();
  PROTOBUF_MUST_USE_RESULT std::string* release_data();
  void set_allocated_data(std::string* data);
  private:
  const std::string& _internal_data() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_data(const std::string& value);
  std::string* _internal_mutable_data();
  public:

  // int32 notifyType = 1;
  void clear_notifytype();
  ::herogoogle::protobuf::int32 notifytype() const;
  void set_notifytype(::herogoogle::protobuf::int32 value);
  private:
  ::herogoogle::protobuf::int32 _internal_notifytype() const;
  void _internal_set_notifytype(::herogoogle::protobuf::int32 value);
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.Notify)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::MapField<
      Notify_PayloadEntry_DoNotUse,
      std::string, std::string,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> payload_;
  ::herogoogle::protobuf::internal::MapField<
      Notify_SdkExtraEntry_DoNotUse,
      std::string, std::string,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> sdkextra_;
  ::herogoogle::protobuf::internal::ArenaStringPtr eventtype_;
  ::herogoogle::protobuf::internal::ArenaStringPtr data_;
  ::herogoogle::protobuf::int32 notifytype_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// -------------------------------------------------------------------

class Command_PayloadEntry_DoNotUse : public ::herogoogle::protobuf::internal::MapEntry<Command_PayloadEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> {
public:
  typedef ::herogoogle::protobuf::internal::MapEntry<Command_PayloadEntry_DoNotUse, 
    std::string, std::string,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
    ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> SuperType;
  Command_PayloadEntry_DoNotUse();
  explicit constexpr Command_PayloadEntry_DoNotUse(
      ::herogoogle::protobuf::internal::ConstantInitialized);
  explicit Command_PayloadEntry_DoNotUse(::herogoogle::protobuf::Arena* arena);
  void MergeFrom(const Command_PayloadEntry_DoNotUse& other);
  static const Command_PayloadEntry_DoNotUse* internal_default_instance() { return reinterpret_cast<const Command_PayloadEntry_DoNotUse*>(&_Command_PayloadEntry_DoNotUse_default_instance_); }
  static bool ValidateKey(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Command.PayloadEntry.key");
 }
  static bool ValidateValue(std::string* s) {
    return ::herogoogle::protobuf::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast<int>(s->size()), ::herogoogle::protobuf::internal::WireFormatLite::PARSE, "heroim.client.v3beta.dto.message.model.Command.PayloadEntry.value");
 }
  using ::herogoogle::protobuf::Message::MergeFrom;
  ::herogoogle::protobuf::Metadata GetMetadata() const final;
};

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

class Command final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.Command) */ {
 public:
  inline Command() : Command(nullptr) {}
  ~Command() override;
  explicit constexpr Command(::herogoogle::protobuf::internal::ConstantInitialized);

  Command(const Command& from);
  Command(Command&& from) noexcept
    : Command() {
    *this = ::std::move(from);
  }

  inline Command& operator=(const Command& from) {
    CopyFrom(from);
    return *this;
  }
  inline Command& operator=(Command&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const Command& default_instance() {
    return *internal_default_instance();
  }
  static inline const Command* internal_default_instance() {
    return reinterpret_cast<const Command*>(
               &_Command_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    5;

  friend void swap(Command& a, Command& b) {
    a.Swap(&b);
  }
  inline void Swap(Command* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(Command* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline Command* New() const final {
    return new Command();
  }

  Command* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<Command>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const Command& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const Command& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(Command* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.Command";
  }
  protected:
  explicit Command(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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


  // accessors -------------------------------------------------------

  enum : int {
    kPayloadFieldNumber = 3,
    kCommandFieldNumber = 1,
    kDataFieldNumber = 2,
  };
  // map<string, string> payload = 3;
  int payload_size() const;
  private:
  int _internal_payload_size() const;
  public:
  void clear_payload();
  private:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      _internal_payload() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      _internal_mutable_payload();
  public:
  const ::herogoogle::protobuf::Map< std::string, std::string >&
      payload() const;
  ::herogoogle::protobuf::Map< std::string, std::string >*
      mutable_payload();

  // string command = 1;
  void clear_command();
  const std::string& command() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_command(ArgT0&& arg0, ArgT... args);
  std::string* mutable_command();
  PROTOBUF_MUST_USE_RESULT std::string* release_command();
  void set_allocated_command(std::string* command);
  private:
  const std::string& _internal_command() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_command(const std::string& value);
  std::string* _internal_mutable_command();
  public:

  // string data = 2;
  void clear_data();
  const std::string& data() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_data(ArgT0&& arg0, ArgT... args);
  std::string* mutable_data();
  PROTOBUF_MUST_USE_RESULT std::string* release_data();
  void set_allocated_data(std::string* data);
  private:
  const std::string& _internal_data() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_data(const std::string& value);
  std::string* _internal_mutable_data();
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.Command)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::MapField<
      Command_PayloadEntry_DoNotUse,
      std::string, std::string,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING,
      ::herogoogle::protobuf::internal::WireFormatLite::TYPE_STRING> payload_;
  ::herogoogle::protobuf::internal::ArenaStringPtr command_;
  ::herogoogle::protobuf::internal::ArenaStringPtr data_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// -------------------------------------------------------------------

class MessageRemind final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.MessageRemind) */ {
 public:
  inline MessageRemind() : MessageRemind(nullptr) {}
  ~MessageRemind() override;
  explicit constexpr MessageRemind(::herogoogle::protobuf::internal::ConstantInitialized);

  MessageRemind(const MessageRemind& from);
  MessageRemind(MessageRemind&& from) noexcept
    : MessageRemind() {
    *this = ::std::move(from);
  }

  inline MessageRemind& operator=(const MessageRemind& from) {
    CopyFrom(from);
    return *this;
  }
  inline MessageRemind& operator=(MessageRemind&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const MessageRemind& default_instance() {
    return *internal_default_instance();
  }
  static inline const MessageRemind* internal_default_instance() {
    return reinterpret_cast<const MessageRemind*>(
               &_MessageRemind_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    6;

  friend void swap(MessageRemind& a, MessageRemind& b) {
    a.Swap(&b);
  }
  inline void Swap(MessageRemind* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(MessageRemind* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline MessageRemind* New() const final {
    return new MessageRemind();
  }

  MessageRemind* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<MessageRemind>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const MessageRemind& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const MessageRemind& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(MessageRemind* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.MessageRemind";
  }
  protected:
  explicit MessageRemind(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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

  // accessors -------------------------------------------------------

  enum : int {
    kSessionIdFieldNumber = 1,
  };
  // string sessionId = 1;
  void clear_sessionid();
  const std::string& sessionid() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_sessionid(ArgT0&& arg0, ArgT... args);
  std::string* mutable_sessionid();
  PROTOBUF_MUST_USE_RESULT std::string* release_sessionid();
  void set_allocated_sessionid(std::string* sessionid);
  private:
  const std::string& _internal_sessionid() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_sessionid(const std::string& value);
  std::string* _internal_mutable_sessionid();
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.MessageRemind)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::ArenaStringPtr sessionid_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// -------------------------------------------------------------------

class MessagePackage final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.MessagePackage) */ {
 public:
  inline MessagePackage() : MessagePackage(nullptr) {}
  ~MessagePackage() override;
  explicit constexpr MessagePackage(::herogoogle::protobuf::internal::ConstantInitialized);

  MessagePackage(const MessagePackage& from);
  MessagePackage(MessagePackage&& from) noexcept
    : MessagePackage() {
    *this = ::std::move(from);
  }

  inline MessagePackage& operator=(const MessagePackage& from) {
    CopyFrom(from);
    return *this;
  }
  inline MessagePackage& operator=(MessagePackage&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const MessagePackage& default_instance() {
    return *internal_default_instance();
  }
  static inline const MessagePackage* internal_default_instance() {
    return reinterpret_cast<const MessagePackage*>(
               &_MessagePackage_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    7;

  friend void swap(MessagePackage& a, MessagePackage& b) {
    a.Swap(&b);
  }
  inline void Swap(MessagePackage* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(MessagePackage* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline MessagePackage* New() const final {
    return new MessagePackage();
  }

  MessagePackage* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<MessagePackage>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const MessagePackage& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const MessagePackage& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(MessagePackage* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.MessagePackage";
  }
  protected:
  explicit MessagePackage(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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

  // accessors -------------------------------------------------------

  enum : int {
    kListFieldNumber = 3,
    kSessionIdFieldNumber = 1,
    kChannelIdFieldNumber = 2,
  };
  // repeated .heroim.client.v3beta.dto.message.model.Message list = 3;
  int list_size() const;
  private:
  int _internal_list_size() const;
  public:
  void clear_list();
  ::heroim::client::v3beta::dto::message::model::Message* mutable_list(int index);
  ::herogoogle::protobuf::RepeatedPtrField< ::heroim::client::v3beta::dto::message::model::Message >*
      mutable_list();
  private:
  const ::heroim::client::v3beta::dto::message::model::Message& _internal_list(int index) const;
  ::heroim::client::v3beta::dto::message::model::Message* _internal_add_list();
  public:
  const ::heroim::client::v3beta::dto::message::model::Message& list(int index) const;
  ::heroim::client::v3beta::dto::message::model::Message* add_list();
  const ::herogoogle::protobuf::RepeatedPtrField< ::heroim::client::v3beta::dto::message::model::Message >&
      list() const;

  // string sessionId = 1;
  void clear_sessionid();
  const std::string& sessionid() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_sessionid(ArgT0&& arg0, ArgT... args);
  std::string* mutable_sessionid();
  PROTOBUF_MUST_USE_RESULT std::string* release_sessionid();
  void set_allocated_sessionid(std::string* sessionid);
  private:
  const std::string& _internal_sessionid() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_sessionid(const std::string& value);
  std::string* _internal_mutable_sessionid();
  public:

  // string channelId = 2;
  void clear_channelid();
  const std::string& channelid() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_channelid(ArgT0&& arg0, ArgT... args);
  std::string* mutable_channelid();
  PROTOBUF_MUST_USE_RESULT std::string* release_channelid();
  void set_allocated_channelid(std::string* channelid);
  private:
  const std::string& _internal_channelid() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_channelid(const std::string& value);
  std::string* _internal_mutable_channelid();
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.MessagePackage)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::RepeatedPtrField< ::heroim::client::v3beta::dto::message::model::Message > list_;
  ::herogoogle::protobuf::internal::ArenaStringPtr sessionid_;
  ::herogoogle::protobuf::internal::ArenaStringPtr channelid_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// -------------------------------------------------------------------

class CustomEvent final :
    public ::herogoogle::protobuf::Message /* @@protoc_insertion_point(class_definition:heroim.client.v3beta.dto.message.model.CustomEvent) */ {
 public:
  inline CustomEvent() : CustomEvent(nullptr) {}
  ~CustomEvent() override;
  explicit constexpr CustomEvent(::herogoogle::protobuf::internal::ConstantInitialized);

  CustomEvent(const CustomEvent& from);
  CustomEvent(CustomEvent&& from) noexcept
    : CustomEvent() {
    *this = ::std::move(from);
  }

  inline CustomEvent& operator=(const CustomEvent& from) {
    CopyFrom(from);
    return *this;
  }
  inline CustomEvent& operator=(CustomEvent&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::herogoogle::protobuf::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::herogoogle::protobuf::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::herogoogle::protobuf::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CustomEvent& default_instance() {
    return *internal_default_instance();
  }
  static inline const CustomEvent* internal_default_instance() {
    return reinterpret_cast<const CustomEvent*>(
               &_CustomEvent_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    8;

  friend void swap(CustomEvent& a, CustomEvent& b) {
    a.Swap(&b);
  }
  inline void Swap(CustomEvent* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(CustomEvent* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline CustomEvent* New() const final {
    return new CustomEvent();
  }

  CustomEvent* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<CustomEvent>(arena);
  }
  using ::herogoogle::protobuf::Message::CopyFrom;
  void CopyFrom(const CustomEvent& from);
  using ::herogoogle::protobuf::Message::MergeFrom;
  void MergeFrom(const CustomEvent& from);
  private:
  static void MergeImpl(::herogoogle::protobuf::Message* to, const ::herogoogle::protobuf::Message& from);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CustomEvent* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "heroim.client.v3beta.dto.message.model.CustomEvent";
  }
  protected:
  explicit CustomEvent(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  static const ClassData _class_data_;
  const ::herogoogle::protobuf::Message::ClassData*GetClassData() const final;

  ::herogoogle::protobuf::Metadata GetMetadata() const final;

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

  // accessors -------------------------------------------------------

  enum : int {
    kContentFieldNumber = 1,
  };
  // string content = 1;
  void clear_content();
  const std::string& content() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_content(ArgT0&& arg0, ArgT... args);
  std::string* mutable_content();
  PROTOBUF_MUST_USE_RESULT std::string* release_content();
  void set_allocated_content(std::string* content);
  private:
  const std::string& _internal_content() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_content(const std::string& value);
  std::string* _internal_mutable_content();
  public:

  // @@protoc_insertion_point(class_scope:heroim.client.v3beta.dto.message.model.CustomEvent)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::ArenaStringPtr content_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto;
};
// ===================================================================


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

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

// string eventType = 1;
inline void Event::clear_eventtype() {
  eventtype_.ClearToEmpty();
}
inline const std::string& Event::eventtype() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Event.eventType)
  return _internal_eventtype();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Event::set_eventtype(ArgT0&& arg0, ArgT... args) {
 
 eventtype_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Event.eventType)
}
inline std::string* Event::mutable_eventtype() {
  std::string* _s = _internal_mutable_eventtype();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Event.eventType)
  return _s;
}
inline const std::string& Event::_internal_eventtype() const {
  return eventtype_.Get();
}
inline void Event::_internal_set_eventtype(const std::string& value) {
  
  eventtype_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Event::_internal_mutable_eventtype() {
  
  return eventtype_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Event::release_eventtype() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Event.eventType)
  return eventtype_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Event::set_allocated_eventtype(std::string* eventtype) {
  if (eventtype != nullptr) {
    
  } else {
    
  }
  eventtype_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), eventtype,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Event.eventType)
}

// string data = 2;
inline void Event::clear_data() {
  data_.ClearToEmpty();
}
inline const std::string& Event::data() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Event.data)
  return _internal_data();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Event::set_data(ArgT0&& arg0, ArgT... args) {
 
 data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Event.data)
}
inline std::string* Event::mutable_data() {
  std::string* _s = _internal_mutable_data();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Event.data)
  return _s;
}
inline const std::string& Event::_internal_data() const {
  return data_.Get();
}
inline void Event::_internal_set_data(const std::string& value) {
  
  data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Event::_internal_mutable_data() {
  
  return data_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Event::release_data() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Event.data)
  return data_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Event::set_allocated_data(std::string* data) {
  if (data != nullptr) {
    
  } else {
    
  }
  data_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), data,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Event.data)
}

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

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

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

// Notify

// int32 notifyType = 1;
inline void Notify::clear_notifytype() {
  notifytype_ = 0;
}
inline ::herogoogle::protobuf::int32 Notify::_internal_notifytype() const {
  return notifytype_;
}
inline ::herogoogle::protobuf::int32 Notify::notifytype() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Notify.notifyType)
  return _internal_notifytype();
}
inline void Notify::_internal_set_notifytype(::herogoogle::protobuf::int32 value) {
  
  notifytype_ = value;
}
inline void Notify::set_notifytype(::herogoogle::protobuf::int32 value) {
  _internal_set_notifytype(value);
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Notify.notifyType)
}

// string eventType = 6;
inline void Notify::clear_eventtype() {
  eventtype_.ClearToEmpty();
}
inline const std::string& Notify::eventtype() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Notify.eventType)
  return _internal_eventtype();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Notify::set_eventtype(ArgT0&& arg0, ArgT... args) {
 
 eventtype_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Notify.eventType)
}
inline std::string* Notify::mutable_eventtype() {
  std::string* _s = _internal_mutable_eventtype();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Notify.eventType)
  return _s;
}
inline const std::string& Notify::_internal_eventtype() const {
  return eventtype_.Get();
}
inline void Notify::_internal_set_eventtype(const std::string& value) {
  
  eventtype_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Notify::_internal_mutable_eventtype() {
  
  return eventtype_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Notify::release_eventtype() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Notify.eventType)
  return eventtype_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Notify::set_allocated_eventtype(std::string* eventtype) {
  if (eventtype != nullptr) {
    
  } else {
    
  }
  eventtype_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), eventtype,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Notify.eventType)
}

// string data = 7;
inline void Notify::clear_data() {
  data_.ClearToEmpty();
}
inline const std::string& Notify::data() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Notify.data)
  return _internal_data();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Notify::set_data(ArgT0&& arg0, ArgT... args) {
 
 data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Notify.data)
}
inline std::string* Notify::mutable_data() {
  std::string* _s = _internal_mutable_data();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Notify.data)
  return _s;
}
inline const std::string& Notify::_internal_data() const {
  return data_.Get();
}
inline void Notify::_internal_set_data(const std::string& value) {
  
  data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Notify::_internal_mutable_data() {
  
  return data_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Notify::release_data() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Notify.data)
  return data_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Notify::set_allocated_data(std::string* data) {
  if (data != nullptr) {
    
  } else {
    
  }
  data_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), data,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Notify.data)
}

// map<string, string> payload = 9;
inline int Notify::_internal_payload_size() const {
  return payload_.size();
}
inline int Notify::payload_size() const {
  return _internal_payload_size();
}
inline void Notify::clear_payload() {
  payload_.Clear();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Notify::_internal_payload() const {
  return payload_.GetMap();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Notify::payload() const {
  // @@protoc_insertion_point(field_map:heroim.client.v3beta.dto.message.model.Notify.payload)
  return _internal_payload();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Notify::_internal_mutable_payload() {
  return payload_.MutableMap();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Notify::mutable_payload() {
  // @@protoc_insertion_point(field_mutable_map:heroim.client.v3beta.dto.message.model.Notify.payload)
  return _internal_mutable_payload();
}

// map<string, string> sdkExtra = 10;
inline int Notify::_internal_sdkextra_size() const {
  return sdkextra_.size();
}
inline int Notify::sdkextra_size() const {
  return _internal_sdkextra_size();
}
inline void Notify::clear_sdkextra() {
  sdkextra_.Clear();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Notify::_internal_sdkextra() const {
  return sdkextra_.GetMap();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Notify::sdkextra() const {
  // @@protoc_insertion_point(field_map:heroim.client.v3beta.dto.message.model.Notify.sdkExtra)
  return _internal_sdkextra();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Notify::_internal_mutable_sdkextra() {
  return sdkextra_.MutableMap();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Notify::mutable_sdkextra() {
  // @@protoc_insertion_point(field_mutable_map:heroim.client.v3beta.dto.message.model.Notify.sdkExtra)
  return _internal_mutable_sdkextra();
}

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

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

// Command

// string command = 1;
inline void Command::clear_command() {
  command_.ClearToEmpty();
}
inline const std::string& Command::command() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Command.command)
  return _internal_command();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Command::set_command(ArgT0&& arg0, ArgT... args) {
 
 command_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Command.command)
}
inline std::string* Command::mutable_command() {
  std::string* _s = _internal_mutable_command();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Command.command)
  return _s;
}
inline const std::string& Command::_internal_command() const {
  return command_.Get();
}
inline void Command::_internal_set_command(const std::string& value) {
  
  command_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Command::_internal_mutable_command() {
  
  return command_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Command::release_command() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Command.command)
  return command_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Command::set_allocated_command(std::string* command) {
  if (command != nullptr) {
    
  } else {
    
  }
  command_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), command,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Command.command)
}

// string data = 2;
inline void Command::clear_data() {
  data_.ClearToEmpty();
}
inline const std::string& Command::data() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.Command.data)
  return _internal_data();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void Command::set_data(ArgT0&& arg0, ArgT... args) {
 
 data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.Command.data)
}
inline std::string* Command::mutable_data() {
  std::string* _s = _internal_mutable_data();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.Command.data)
  return _s;
}
inline const std::string& Command::_internal_data() const {
  return data_.Get();
}
inline void Command::_internal_set_data(const std::string& value) {
  
  data_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* Command::_internal_mutable_data() {
  
  return data_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* Command::release_data() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.Command.data)
  return data_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void Command::set_allocated_data(std::string* data) {
  if (data != nullptr) {
    
  } else {
    
  }
  data_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), data,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.Command.data)
}

// map<string, string> payload = 3;
inline int Command::_internal_payload_size() const {
  return payload_.size();
}
inline int Command::payload_size() const {
  return _internal_payload_size();
}
inline void Command::clear_payload() {
  payload_.Clear();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Command::_internal_payload() const {
  return payload_.GetMap();
}
inline const ::herogoogle::protobuf::Map< std::string, std::string >&
Command::payload() const {
  // @@protoc_insertion_point(field_map:heroim.client.v3beta.dto.message.model.Command.payload)
  return _internal_payload();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Command::_internal_mutable_payload() {
  return payload_.MutableMap();
}
inline ::herogoogle::protobuf::Map< std::string, std::string >*
Command::mutable_payload() {
  // @@protoc_insertion_point(field_mutable_map:heroim.client.v3beta.dto.message.model.Command.payload)
  return _internal_mutable_payload();
}

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

// MessageRemind

// string sessionId = 1;
inline void MessageRemind::clear_sessionid() {
  sessionid_.ClearToEmpty();
}
inline const std::string& MessageRemind::sessionid() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.MessageRemind.sessionId)
  return _internal_sessionid();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void MessageRemind::set_sessionid(ArgT0&& arg0, ArgT... args) {
 
 sessionid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.MessageRemind.sessionId)
}
inline std::string* MessageRemind::mutable_sessionid() {
  std::string* _s = _internal_mutable_sessionid();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.MessageRemind.sessionId)
  return _s;
}
inline const std::string& MessageRemind::_internal_sessionid() const {
  return sessionid_.Get();
}
inline void MessageRemind::_internal_set_sessionid(const std::string& value) {
  
  sessionid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* MessageRemind::_internal_mutable_sessionid() {
  
  return sessionid_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* MessageRemind::release_sessionid() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.MessageRemind.sessionId)
  return sessionid_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void MessageRemind::set_allocated_sessionid(std::string* sessionid) {
  if (sessionid != nullptr) {
    
  } else {
    
  }
  sessionid_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), sessionid,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.MessageRemind.sessionId)
}

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

// MessagePackage

// string sessionId = 1;
inline void MessagePackage::clear_sessionid() {
  sessionid_.ClearToEmpty();
}
inline const std::string& MessagePackage::sessionid() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.MessagePackage.sessionId)
  return _internal_sessionid();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void MessagePackage::set_sessionid(ArgT0&& arg0, ArgT... args) {
 
 sessionid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.MessagePackage.sessionId)
}
inline std::string* MessagePackage::mutable_sessionid() {
  std::string* _s = _internal_mutable_sessionid();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.MessagePackage.sessionId)
  return _s;
}
inline const std::string& MessagePackage::_internal_sessionid() const {
  return sessionid_.Get();
}
inline void MessagePackage::_internal_set_sessionid(const std::string& value) {
  
  sessionid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* MessagePackage::_internal_mutable_sessionid() {
  
  return sessionid_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* MessagePackage::release_sessionid() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.MessagePackage.sessionId)
  return sessionid_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void MessagePackage::set_allocated_sessionid(std::string* sessionid) {
  if (sessionid != nullptr) {
    
  } else {
    
  }
  sessionid_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), sessionid,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.MessagePackage.sessionId)
}

// string channelId = 2;
inline void MessagePackage::clear_channelid() {
  channelid_.ClearToEmpty();
}
inline const std::string& MessagePackage::channelid() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.MessagePackage.channelId)
  return _internal_channelid();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void MessagePackage::set_channelid(ArgT0&& arg0, ArgT... args) {
 
 channelid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.MessagePackage.channelId)
}
inline std::string* MessagePackage::mutable_channelid() {
  std::string* _s = _internal_mutable_channelid();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.MessagePackage.channelId)
  return _s;
}
inline const std::string& MessagePackage::_internal_channelid() const {
  return channelid_.Get();
}
inline void MessagePackage::_internal_set_channelid(const std::string& value) {
  
  channelid_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* MessagePackage::_internal_mutable_channelid() {
  
  return channelid_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* MessagePackage::release_channelid() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.MessagePackage.channelId)
  return channelid_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void MessagePackage::set_allocated_channelid(std::string* channelid) {
  if (channelid != nullptr) {
    
  } else {
    
  }
  channelid_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), channelid,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.MessagePackage.channelId)
}

// repeated .heroim.client.v3beta.dto.message.model.Message list = 3;
inline int MessagePackage::_internal_list_size() const {
  return list_.size();
}
inline int MessagePackage::list_size() const {
  return _internal_list_size();
}
inline ::heroim::client::v3beta::dto::message::model::Message* MessagePackage::mutable_list(int index) {
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.MessagePackage.list)
  return list_.Mutable(index);
}
inline ::herogoogle::protobuf::RepeatedPtrField< ::heroim::client::v3beta::dto::message::model::Message >*
MessagePackage::mutable_list() {
  // @@protoc_insertion_point(field_mutable_list:heroim.client.v3beta.dto.message.model.MessagePackage.list)
  return &list_;
}
inline const ::heroim::client::v3beta::dto::message::model::Message& MessagePackage::_internal_list(int index) const {
  return list_.Get(index);
}
inline const ::heroim::client::v3beta::dto::message::model::Message& MessagePackage::list(int index) const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.MessagePackage.list)
  return _internal_list(index);
}
inline ::heroim::client::v3beta::dto::message::model::Message* MessagePackage::_internal_add_list() {
  return list_.Add();
}
inline ::heroim::client::v3beta::dto::message::model::Message* MessagePackage::add_list() {
  ::heroim::client::v3beta::dto::message::model::Message* _add = _internal_add_list();
  // @@protoc_insertion_point(field_add:heroim.client.v3beta.dto.message.model.MessagePackage.list)
  return _add;
}
inline const ::herogoogle::protobuf::RepeatedPtrField< ::heroim::client::v3beta::dto::message::model::Message >&
MessagePackage::list() const {
  // @@protoc_insertion_point(field_list:heroim.client.v3beta.dto.message.model.MessagePackage.list)
  return list_;
}

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

// CustomEvent

// string content = 1;
inline void CustomEvent::clear_content() {
  content_.ClearToEmpty();
}
inline const std::string& CustomEvent::content() const {
  // @@protoc_insertion_point(field_get:heroim.client.v3beta.dto.message.model.CustomEvent.content)
  return _internal_content();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void CustomEvent::set_content(ArgT0&& arg0, ArgT... args) {
 
 content_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:heroim.client.v3beta.dto.message.model.CustomEvent.content)
}
inline std::string* CustomEvent::mutable_content() {
  std::string* _s = _internal_mutable_content();
  // @@protoc_insertion_point(field_mutable:heroim.client.v3beta.dto.message.model.CustomEvent.content)
  return _s;
}
inline const std::string& CustomEvent::_internal_content() const {
  return content_.Get();
}
inline void CustomEvent::_internal_set_content(const std::string& value) {
  
  content_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* CustomEvent::_internal_mutable_content() {
  
  return content_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* CustomEvent::release_content() {
  // @@protoc_insertion_point(field_release:heroim.client.v3beta.dto.message.model.CustomEvent.content)
  return content_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void CustomEvent::set_allocated_content(std::string* content) {
  if (content != nullptr) {
    
  } else {
    
  }
  content_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), content,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:heroim.client.v3beta.dto.message.model.CustomEvent.content)
}

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

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

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

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

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

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

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

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


// @@protoc_insertion_point(namespace_scope)

}  // namespace model
}  // namespace message
}  // namespace dto
}  // namespace v3beta
}  // namespace client
}  // namespace heroim

// @@protoc_insertion_point(global_scope)


#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_client_2fv3beta_2fdto_2fmessage_2fmodel_2foperation_2eproto
