text: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: es.proto
  
  #include "es.pb.h"
  
  #include <algorithm>
  
  #include <google/protobuf/io/coded_stream.h>
  #include <google/protobuf/extension_set.h>
  #include <google/protobuf/wire_format_lite.h>
  #include <google/protobuf/descriptor.h>
  #include <google/protobuf/generated_message_reflection.h>
  #include <google/protobuf/reflection_ops.h>
  #include <google/protobuf/wire_format.h>
  // @@protoc_insertion_point(includes)
  #include <google/protobuf/port_def.inc>
  extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftimestamp_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto;
  namespace es {
  class TopicRequestDefaultTypeInternal {
   public:
    ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TopicRequest> _instance;
  } _TopicRequest_default_instance_;
  class TopicDataDefaultTypeInternal {
   public:
    ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TopicData> _instance;
  } _TopicData_default_instance_;
  class NoUseDefaultTypeInternal {
   public:
    ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NoUse> _instance;
  } _NoUse_default_instance_;
  }  // namespace es
  static void InitDefaultsscc_info_NoUse_es_2eproto() {
    GOOGLE_PROTOBUF_VERIFY_VERSION;
  
    {
      void* ptr = &::es::_NoUse_default_instance_;
      new (ptr) ::es::NoUse();
      ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
    }
    ::es::NoUse::InitAsDefaultInstance();
  }
  
  ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NoUse_es_2eproto =
      {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NoUse_es_2eproto}, {}};
  
  static void InitDefaultsscc_info_TopicData_es_2eproto() {
    GOOGLE_PROTOBUF_VERIFY_VERSION;
  
    {
      void* ptr = &::es::_TopicData_default_instance_;
      new (ptr) ::es::TopicData();
      ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
    }
    ::es::TopicData::InitAsDefaultInstance();
  }
  
  ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_TopicData_es_2eproto =
      {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_TopicData_es_2eproto}, {
        &scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto.base,}};
  
  static void InitDefaultsscc_info_TopicRequest_es_2eproto() {
    GOOGLE_PROTOBUF_VERIFY_VERSION;
  
    {
      void* ptr = &::es::_TopicRequest_default_instance_;
      new (ptr) ::es::TopicRequest();
      ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
    }
    ::es::TopicRequest::InitAsDefaultInstance();
  }
  
  ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TopicRequest_es_2eproto =
      {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TopicRequest_es_2eproto}, {}};
  
  static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_es_2eproto[3];
  static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_es_2eproto = nullptr;
  static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_es_2eproto = nullptr;
  
  const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_es_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
    ~0u,  // no _has_bits_
    PROTOBUF_FIELD_OFFSET(::es::TopicRequest, _internal_metadata_),
    ~0u,  // no _extensions_
    ~0u,  // no _oneof_case_
    ~0u,  // no _weak_field_map_
    PROTOBUF_FIELD_OFFSET(::es::TopicRequest, topic_),
    ~0u,  // no _has_bits_
    PROTOBUF_FIELD_OFFSET(::es::TopicData, _internal_metadata_),
    ~0u,  // no _extensions_
    ~0u,  // no _oneof_case_
    ~0u,  // no _weak_field_map_
    PROTOBUF_FIELD_OFFSET(::es::TopicData, topic_),
    PROTOBUF_FIELD_OFFSET(::es::TopicData, data_),
    PROTOBUF_FIELD_OFFSET(::es::TopicData, timestamp_),
    ~0u,  // no _has_bits_
    PROTOBUF_FIELD_OFFSET(::es::NoUse, _internal_metadata_),
    ~0u,  // no _extensions_
    ~0u,  // no _oneof_case_
    ~0u,  // no _weak_field_map_
  };
  static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
    { 0, -1, sizeof(::es::TopicRequest)},
    { 6, -1, sizeof(::es::TopicData)},
    { 14, -1, sizeof(::es::NoUse)},
  };
  
  static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
    reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::es::_TopicRequest_default_instance_),
    reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::es::_TopicData_default_instance_),
    reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::es::_NoUse_default_instance_),
  };
  
  const char descriptor_table_protodef_es_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
    "\n\010es.proto\022\002es\032\037google/protobuf/timestam"
    "p.proto\"\035\n\014TopicRequest\022\r\n\005topic\030\002 \001(\t\"W"
    "\n\tTopicData\022\r\n\005topic\030\001 \001(\t\022\014\n\004data\030\002 \001(\t"
    "\022-\n\ttimestamp\030\003 \001(\0132\032.google.protobuf.Ti"
    "mestamp\"\007\n\005NoUse2i\n\014EventService\0220\n\tSubs"
    "cribe\022\020.es.TopicRequest\032\r.es.TopicData\"\000"
    "0\001\022\'\n\007Publish\022\r.es.TopicData\032\t.es.NoUse\""
    "\000(\001B&\n\nio.grpc.esB\021EventServiceProtoP\001\242\002"
    "\002ESP\000b\006proto3"
    ;
  static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_es_2eproto_deps[1] = {
    &::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto,
  };
  static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_es_2eproto_sccs[3] = {
    &scc_info_NoUse_es_2eproto.base,
    &scc_info_TopicData_es_2eproto.base,
    &scc_info_TopicRequest_es_2eproto.base,
  };
  static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_es_2eproto_once;
  static bool descriptor_table_es_2eproto_initialized = false;
  const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_es_2eproto = {
    &descriptor_table_es_2eproto_initialized, descriptor_table_protodef_es_2eproto, "es.proto", 333,
    &descriptor_table_es_2eproto_once, descriptor_table_es_2eproto_sccs, descriptor_table_es_2eproto_deps, 3, 1,
    schemas, file_default_instances, TableStruct_es_2eproto::offsets,
    file_level_metadata_es_2eproto, 3, file_level_enum_descriptors_es_2eproto, file_level_service_descriptors_es_2eproto,
  };
  
  // Force running AddDescriptors() at dynamic initialization time.
  static bool dynamic_init_dummy_es_2eproto = (  ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_es_2eproto), true);
  namespace es {
  
  // ===================================================================
  
  void TopicRequest::InitAsDefaultInstance() {
  }
  class TopicRequest::_Internal {
   public:
  };
  
  TopicRequest::TopicRequest()
    : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
    SharedCtor();
    // @@protoc_insertion_point(constructor:es.TopicRequest)
  }
  TopicRequest::TopicRequest(const TopicRequest& from)
    : ::PROTOBUF_NAMESPACE_ID::Message(),
        _internal_metadata_(nullptr) {
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    if (!from._internal_topic().empty()) {
      topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.topic_);
    }
    // @@protoc_insertion_point(copy_constructor:es.TopicRequest)
  }
  
  void TopicRequest::SharedCtor() {
    ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_TopicRequest_es_2eproto.base);
    topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
  }
  
  TopicRequest::~TopicRequest() {
    // @@protoc_insertion_point(destructor:es.TopicRequest)
    SharedDtor();
  }
  
  void TopicRequest::SharedDtor() {
    topic_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
  }
  
  void TopicRequest::SetCachedSize(int size) const {
    _cached_size_.Set(size);
  }
  const TopicRequest& TopicRequest::default_instance() {
    ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TopicRequest_es_2eproto.base);
    return *internal_default_instance();
  }
  
  
  void TopicRequest::Clear() {
  // @@protoc_insertion_point(message_clear_start:es.TopicRequest)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    topic_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    _internal_metadata_.Clear();
  }
  
  const char* TopicRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
  #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
    while (!ctx->Done(&ptr)) {
      ::PROTOBUF_NAMESPACE_ID::uint32 tag;
      ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
      CHK_(ptr);
      switch (tag >> 3) {
        // string topic = 2;
        case 2:
          if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
            auto str = _internal_mutable_topic();
            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "es.TopicRequest.topic"));
            CHK_(ptr);
          } else goto handle_unusual;
          continue;
        default: {
        handle_unusual:
          if ((tag & 7) == 4 || tag == 0) {
            ctx->SetLastTag(tag);
            goto success;
          }
          ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
          CHK_(ptr != nullptr);
          continue;
        }
      }  // switch
    }  // while
  success:
    return ptr;
  failure:
    ptr = nullptr;
    goto success;
  #undef CHK_
  }
  
  ::PROTOBUF_NAMESPACE_ID::uint8* TopicRequest::_InternalSerialize(
      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
    // @@protoc_insertion_point(serialize_to_array_start:es.TopicRequest)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
    // string topic = 2;
    if (this->topic().size() > 0) {
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        this->_internal_topic().data(), static_cast<int>(this->_internal_topic().length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "es.TopicRequest.topic");
      target = stream->WriteStringMaybeAliased(
          2, this->_internal_topic(), target);
    }
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
          _internal_metadata_.unknown_fields(), target, stream);
    }
    // @@protoc_insertion_point(serialize_to_array_end:es.TopicRequest)
    return target;
  }
  
  size_t TopicRequest::ByteSizeLong() const {
  // @@protoc_insertion_point(message_byte_size_start:es.TopicRequest)
    size_t total_size = 0;
  
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    // string topic = 2;
    if (this->topic().size() > 0) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_topic());
    }
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
          _internal_metadata_, total_size, &_cached_size_);
    }
    int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
    SetCachedSize(cached_size);
    return total_size;
  }
  
  void TopicRequest::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_merge_from_start:es.TopicRequest)
    GOOGLE_DCHECK_NE(&from, this);
    const TopicRequest* source =
        ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<TopicRequest>(
            &from);
    if (source == nullptr) {
    // @@protoc_insertion_point(generalized_merge_from_cast_fail:es.TopicRequest)
      ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
    } else {
    // @@protoc_insertion_point(generalized_merge_from_cast_success:es.TopicRequest)
      MergeFrom(*source);
    }
  }
  
  void TopicRequest::MergeFrom(const TopicRequest& from) {
  // @@protoc_insertion_point(class_specific_merge_from_start:es.TopicRequest)
    GOOGLE_DCHECK_NE(&from, this);
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
    if (from.topic().size() > 0) {
  
      topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.topic_);
    }
  }
  
  void TopicRequest::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_copy_from_start:es.TopicRequest)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  void TopicRequest::CopyFrom(const TopicRequest& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:es.TopicRequest)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  bool TopicRequest::IsInitialized() const {
    return true;
  }
  
  void TopicRequest::InternalSwap(TopicRequest* other) {
    using std::swap;
    _internal_metadata_.Swap(&other->_internal_metadata_);
    topic_.Swap(&other->topic_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
      GetArenaNoVirtual());
  }
  
  ::PROTOBUF_NAMESPACE_ID::Metadata TopicRequest::GetMetadata() const {
    return GetMetadataStatic();
  }
  
  
  // ===================================================================
  
  void TopicData::InitAsDefaultInstance() {
    ::es::_TopicData_default_instance_._instance.get_mutable()->timestamp_ = const_cast< PROTOBUF_NAMESPACE_ID::Timestamp*>(
        PROTOBUF_NAMESPACE_ID::Timestamp::internal_default_instance());
  }
  class TopicData::_Internal {
   public:
    static const PROTOBUF_NAMESPACE_ID::Timestamp& timestamp(const TopicData* msg);
  };
  
  const PROTOBUF_NAMESPACE_ID::Timestamp&
  TopicData::_Internal::timestamp(const TopicData* msg) {
    return *msg->timestamp_;
  }
  void TopicData::clear_timestamp() {
    if (GetArenaNoVirtual() == nullptr && timestamp_ != nullptr) {
      delete timestamp_;
    }
    timestamp_ = nullptr;
  }
  TopicData::TopicData()
    : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
    SharedCtor();
    // @@protoc_insertion_point(constructor:es.TopicData)
  }
  TopicData::TopicData(const TopicData& from)
    : ::PROTOBUF_NAMESPACE_ID::Message(),
        _internal_metadata_(nullptr) {
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    if (!from._internal_topic().empty()) {
      topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.topic_);
    }
    data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    if (!from._internal_data().empty()) {
      data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
    }
    if (from._internal_has_timestamp()) {
      timestamp_ = new PROTOBUF_NAMESPACE_ID::Timestamp(*from.timestamp_);
    } else {
      timestamp_ = nullptr;
    }
    // @@protoc_insertion_point(copy_constructor:es.TopicData)
  }
  
  void TopicData::SharedCtor() {
    ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_TopicData_es_2eproto.base);
    topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    timestamp_ = nullptr;
  }
  
  TopicData::~TopicData() {
    // @@protoc_insertion_point(destructor:es.TopicData)
    SharedDtor();
  }
  
  void TopicData::SharedDtor() {
    topic_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    if (this != internal_default_instance()) delete timestamp_;
  }
  
  void TopicData::SetCachedSize(int size) const {
    _cached_size_.Set(size);
  }
  const TopicData& TopicData::default_instance() {
    ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TopicData_es_2eproto.base);
    return *internal_default_instance();
  }
  
  
  void TopicData::Clear() {
  // @@protoc_insertion_point(message_clear_start:es.TopicData)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    topic_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
    if (GetArenaNoVirtual() == nullptr && timestamp_ != nullptr) {
      delete timestamp_;
    }
    timestamp_ = nullptr;
    _internal_metadata_.Clear();
  }
  
  const char* TopicData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
  #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
    while (!ctx->Done(&ptr)) {
      ::PROTOBUF_NAMESPACE_ID::uint32 tag;
      ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
      CHK_(ptr);
      switch (tag >> 3) {
        // string topic = 1;
        case 1:
          if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
            auto str = _internal_mutable_topic();
            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "es.TopicData.topic"));
            CHK_(ptr);
          } else goto handle_unusual;
          continue;
        // string data = 2;
        case 2:
          if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
            auto str = _internal_mutable_data();
            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "es.TopicData.data"));
            CHK_(ptr);
          } else goto handle_unusual;
          continue;
        // .google.protobuf.Timestamp timestamp = 3;
        case 3:
          if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
            ptr = ctx->ParseMessage(_internal_mutable_timestamp(), ptr);
            CHK_(ptr);
          } else goto handle_unusual;
          continue;
        default: {
        handle_unusual:
          if ((tag & 7) == 4 || tag == 0) {
            ctx->SetLastTag(tag);
            goto success;
          }
          ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
          CHK_(ptr != nullptr);
          continue;
        }
      }  // switch
    }  // while
  success:
    return ptr;
  failure:
    ptr = nullptr;
    goto success;
  #undef CHK_
  }
  
  ::PROTOBUF_NAMESPACE_ID::uint8* TopicData::_InternalSerialize(
      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
    // @@protoc_insertion_point(serialize_to_array_start:es.TopicData)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
    // string topic = 1;
    if (this->topic().size() > 0) {
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        this->_internal_topic().data(), static_cast<int>(this->_internal_topic().length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "es.TopicData.topic");
      target = stream->WriteStringMaybeAliased(
          1, this->_internal_topic(), target);
    }
  
    // string data = 2;
    if (this->data().size() > 0) {
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        this->_internal_data().data(), static_cast<int>(this->_internal_data().length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "es.TopicData.data");
      target = stream->WriteStringMaybeAliased(
          2, this->_internal_data(), target);
    }
  
    // .google.protobuf.Timestamp timestamp = 3;
    if (this->has_timestamp()) {
      target = stream->EnsureSpace(target);
      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(
          3, _Internal::timestamp(this), target, stream);
    }
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
          _internal_metadata_.unknown_fields(), target, stream);
    }
    // @@protoc_insertion_point(serialize_to_array_end:es.TopicData)
    return target;
  }
  
  size_t TopicData::ByteSizeLong() const {
  // @@protoc_insertion_point(message_byte_size_start:es.TopicData)
    size_t total_size = 0;
  
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    // string topic = 1;
    if (this->topic().size() > 0) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_topic());
    }
  
    // string data = 2;
    if (this->data().size() > 0) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_data());
    }
  
    // .google.protobuf.Timestamp timestamp = 3;
    if (this->has_timestamp()) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *timestamp_);
    }
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
          _internal_metadata_, total_size, &_cached_size_);
    }
    int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
    SetCachedSize(cached_size);
    return total_size;
  }
  
  void TopicData::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_merge_from_start:es.TopicData)
    GOOGLE_DCHECK_NE(&from, this);
    const TopicData* source =
        ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<TopicData>(
            &from);
    if (source == nullptr) {
    // @@protoc_insertion_point(generalized_merge_from_cast_fail:es.TopicData)
      ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
    } else {
    // @@protoc_insertion_point(generalized_merge_from_cast_success:es.TopicData)
      MergeFrom(*source);
    }
  }
  
  void TopicData::MergeFrom(const TopicData& from) {
  // @@protoc_insertion_point(class_specific_merge_from_start:es.TopicData)
    GOOGLE_DCHECK_NE(&from, this);
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
    if (from.topic().size() > 0) {
  
      topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.topic_);
    }
    if (from.data().size() > 0) {
  
      data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
    }
    if (from.has_timestamp()) {
      _internal_mutable_timestamp()->PROTOBUF_NAMESPACE_ID::Timestamp::MergeFrom(from._internal_timestamp());
    }
  }
  
  void TopicData::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_copy_from_start:es.TopicData)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  void TopicData::CopyFrom(const TopicData& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:es.TopicData)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  bool TopicData::IsInitialized() const {
    return true;
  }
  
  void TopicData::InternalSwap(TopicData* other) {
    using std::swap;
    _internal_metadata_.Swap(&other->_internal_metadata_);
    topic_.Swap(&other->topic_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
      GetArenaNoVirtual());
    data_.Swap(&other->data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
      GetArenaNoVirtual());
    swap(timestamp_, other->timestamp_);
  }
  
  ::PROTOBUF_NAMESPACE_ID::Metadata TopicData::GetMetadata() const {
    return GetMetadataStatic();
  }
  
  
  // ===================================================================
  
  void NoUse::InitAsDefaultInstance() {
  }
  class NoUse::_Internal {
   public:
  };
  
  NoUse::NoUse()
    : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
    SharedCtor();
    // @@protoc_insertion_point(constructor:es.NoUse)
  }
  NoUse::NoUse(const NoUse& from)
    : ::PROTOBUF_NAMESPACE_ID::Message(),
        _internal_metadata_(nullptr) {
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    // @@protoc_insertion_point(copy_constructor:es.NoUse)
  }
  
  void NoUse::SharedCtor() {
  }
  
  NoUse::~NoUse() {
    // @@protoc_insertion_point(destructor:es.NoUse)
    SharedDtor();
  }
  
  void NoUse::SharedDtor() {
  }
  
  void NoUse::SetCachedSize(int size) const {
    _cached_size_.Set(size);
  }
  const NoUse& NoUse::default_instance() {
    ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NoUse_es_2eproto.base);
    return *internal_default_instance();
  }
  
  
  void NoUse::Clear() {
  // @@protoc_insertion_point(message_clear_start:es.NoUse)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    _internal_metadata_.Clear();
  }
  
  const char* NoUse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
  #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
    while (!ctx->Done(&ptr)) {
      ::PROTOBUF_NAMESPACE_ID::uint32 tag;
      ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
      CHK_(ptr);
          if ((tag & 7) == 4 || tag == 0) {
            ctx->SetLastTag(tag);
            goto success;
          }
          ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
          CHK_(ptr != nullptr);
          continue;
    }  // while
  success:
    return ptr;
  failure:
    ptr = nullptr;
    goto success;
  #undef CHK_
  }
  
  ::PROTOBUF_NAMESPACE_ID::uint8* NoUse::_InternalSerialize(
      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
    // @@protoc_insertion_point(serialize_to_array_start:es.NoUse)
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
          _internal_metadata_.unknown_fields(), target, stream);
    }
    // @@protoc_insertion_point(serialize_to_array_end:es.NoUse)
    return target;
  }
  
  size_t NoUse::ByteSizeLong() const {
  // @@protoc_insertion_point(message_byte_size_start:es.NoUse)
    size_t total_size = 0;
  
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    // Prevent compiler warnings about cached_has_bits being unused
    (void) cached_has_bits;
  
    if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
      return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
          _internal_metadata_, total_size, &_cached_size_);
    }
    int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
    SetCachedSize(cached_size);
    return total_size;
  }
  
  void NoUse::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_merge_from_start:es.NoUse)
    GOOGLE_DCHECK_NE(&from, this);
    const NoUse* source =
        ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<NoUse>(
            &from);
    if (source == nullptr) {
    // @@protoc_insertion_point(generalized_merge_from_cast_fail:es.NoUse)
      ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
    } else {
    // @@protoc_insertion_point(generalized_merge_from_cast_success:es.NoUse)
      MergeFrom(*source);
    }
  }
  
  void NoUse::MergeFrom(const NoUse& from) {
  // @@protoc_insertion_point(class_specific_merge_from_start:es.NoUse)
    GOOGLE_DCHECK_NE(&from, this);
    _internal_metadata_.MergeFrom(from._internal_metadata_);
    ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
    (void) cached_has_bits;
  
  }
  
  void NoUse::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  // @@protoc_insertion_point(generalized_copy_from_start:es.NoUse)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  void NoUse::CopyFrom(const NoUse& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:es.NoUse)
    if (&from == this) return;
    Clear();
    MergeFrom(from);
  }
  
  bool NoUse::IsInitialized() const {
    return true;
  }
  
  void NoUse::InternalSwap(NoUse* other) {
    using std::swap;
    _internal_metadata_.Swap(&other->_internal_metadata_);
  }
  
  ::PROTOBUF_NAMESPACE_ID::Metadata NoUse::GetMetadata() const {
    return GetMetadataStatic();
  }
  
  
  // @@protoc_insertion_point(namespace_scope)
  }  // namespace es
  PROTOBUF_NAMESPACE_OPEN
  template<> PROTOBUF_NOINLINE ::es::TopicRequest* Arena::CreateMaybeMessage< ::es::TopicRequest >(Arena* arena) {
    return Arena::CreateInternal< ::es::TopicRequest >(arena);
  }
  template<> PROTOBUF_NOINLINE ::es::TopicData* Arena::CreateMaybeMessage< ::es::TopicData >(Arena* arena) {
    return Arena::CreateInternal< ::es::TopicData >(arena);
  }
  template<> PROTOBUF_NOINLINE ::es::NoUse* Arena::CreateMaybeMessage< ::es::NoUse >(Arena* arena) {
    return Arena::CreateInternal< ::es::NoUse >(arena);
  }
  PROTOBUF_NAMESPACE_CLOSE
  
  // @@protoc_insertion_point(global_scope)
  #include <google/protobuf/port_undef.inc>
  