From d3f4c0623c48d216998fa8260d37fefa311d0fb1 Mon Sep 17 00:00:00 2001
From: suntianyu <xuepengqiang@aiotlink.com>
Date: 星期一, 26 七月 2021 15:44:26 +0800
Subject: [PATCH] update

---
 lib/utils/protomsg.pb.cc |  910 ++++++++++++++++++++++++++++++--------------------------
 1 files changed, 489 insertions(+), 421 deletions(-)

diff --git a/lib/utils/protomsg.pb.cc b/lib/utils/protomsg.pb.cc
index 39ae935..e8ea9f8 100644
--- a/lib/utils/protomsg.pb.cc
+++ b/lib/utils/protomsg.pb.cc
@@ -14,104 +14,90 @@
 #include <google/protobuf/wire_format.h>
 // @@protoc_insertion_point(includes)
 #include <google/protobuf/port_def.inc>
-extern PROTOBUF_INTERNAL_EXPORT_protomsg_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Rect_protomsg_2eproto;
-extern PROTOBUF_INTERNAL_EXPORT_protomsg_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SDKMessage_protomsg_2eproto;
-extern PROTOBUF_INTERNAL_EXPORT_protomsg_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Target_protomsg_2eproto;
+
+PROTOBUF_PRAGMA_INIT_SEG
 namespace protomsg {
-class ImageDefaultTypeInternal {
- public:
-  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Image> _instance;
-} _Image_default_instance_;
-class RectDefaultTypeInternal {
- public:
-  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Rect> _instance;
-} _Rect_default_instance_;
-class TargetDefaultTypeInternal {
- public:
-  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Target> _instance;
-} _Target_default_instance_;
-class SDKMessageDefaultTypeInternal {
- public:
-  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SDKMessage> _instance;
-} _SDKMessage_default_instance_;
-class RuleMessageDefaultTypeInternal {
- public:
-  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RuleMessage> _instance;
-} _RuleMessage_default_instance_;
+constexpr Image::Image(
+  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
+  : data_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , timestamp_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , cid_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , cname_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , width_(0)
+  , height_(0)
+  , id_(int64_t{0}){}
+struct ImageDefaultTypeInternal {
+  constexpr ImageDefaultTypeInternal()
+    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
+  ~ImageDefaultTypeInternal() {}
+  union {
+    Image _instance;
+  };
+};
+PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ImageDefaultTypeInternal _Image_default_instance_;
+constexpr Rect::Rect(
+  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
+  : left_(0)
+  , top_(0)
+  , right_(0)
+  , bottom_(0){}
+struct RectDefaultTypeInternal {
+  constexpr RectDefaultTypeInternal()
+    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
+  ~RectDefaultTypeInternal() {}
+  union {
+    Rect _instance;
+  };
+};
+PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RectDefaultTypeInternal _Rect_default_instance_;
+constexpr Target::Target(
+  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
+  : type_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , feature_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , attribute_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , rect_(nullptr)
+  , id_(uint64_t{0u})
+  , confidence_(0){}
+struct TargetDefaultTypeInternal {
+  constexpr TargetDefaultTypeInternal()
+    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
+  ~TargetDefaultTypeInternal() {}
+  union {
+    Target _instance;
+  };
+};
+PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT TargetDefaultTypeInternal _Target_default_instance_;
+constexpr SDKMessage::SDKMessage(
+  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
+  : target_()
+  , sdkid_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , sdktype_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , sdkname_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , timestamp_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string){}
+struct SDKMessageDefaultTypeInternal {
+  constexpr SDKMessageDefaultTypeInternal()
+    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
+  ~SDKMessageDefaultTypeInternal() {}
+  union {
+    SDKMessage _instance;
+  };
+};
+PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT SDKMessageDefaultTypeInternal _SDKMessage_default_instance_;
+constexpr RuleMessage::RuleMessage(
+  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
+  : message_()
+  , datatype_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
+  , handletrack_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string){}
+struct RuleMessageDefaultTypeInternal {
+  constexpr RuleMessageDefaultTypeInternal()
+    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
+  ~RuleMessageDefaultTypeInternal() {}
+  union {
+    RuleMessage _instance;
+  };
+};
+PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT RuleMessageDefaultTypeInternal _RuleMessage_default_instance_;
 }  // namespace protomsg
-static void InitDefaultsscc_info_Image_protomsg_2eproto() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::protomsg::_Image_default_instance_;
-    new (ptr) ::protomsg::Image();
-    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::protomsg::Image::InitAsDefaultInstance();
-}
-
-::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Image_protomsg_2eproto =
-    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Image_protomsg_2eproto}, {}};
-
-static void InitDefaultsscc_info_Rect_protomsg_2eproto() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::protomsg::_Rect_default_instance_;
-    new (ptr) ::protomsg::Rect();
-    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::protomsg::Rect::InitAsDefaultInstance();
-}
-
-::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Rect_protomsg_2eproto =
-    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Rect_protomsg_2eproto}, {}};
-
-static void InitDefaultsscc_info_RuleMessage_protomsg_2eproto() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::protomsg::_RuleMessage_default_instance_;
-    new (ptr) ::protomsg::RuleMessage();
-    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::protomsg::RuleMessage::InitAsDefaultInstance();
-}
-
-::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RuleMessage_protomsg_2eproto =
-    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_RuleMessage_protomsg_2eproto}, {
-      &scc_info_SDKMessage_protomsg_2eproto.base,}};
-
-static void InitDefaultsscc_info_SDKMessage_protomsg_2eproto() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::protomsg::_SDKMessage_default_instance_;
-    new (ptr) ::protomsg::SDKMessage();
-    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::protomsg::SDKMessage::InitAsDefaultInstance();
-}
-
-::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SDKMessage_protomsg_2eproto =
-    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SDKMessage_protomsg_2eproto}, {
-      &scc_info_Target_protomsg_2eproto.base,}};
-
-static void InitDefaultsscc_info_Target_protomsg_2eproto() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::protomsg::_Target_default_instance_;
-    new (ptr) ::protomsg::Target();
-    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::protomsg::Target::InitAsDefaultInstance();
-}
-
-::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Target_protomsg_2eproto =
-    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_Target_protomsg_2eproto}, {
-      &scc_info_Rect_protomsg_2eproto.base,}};
-
 static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_protomsg_2eproto[5];
 static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_protomsg_2eproto = nullptr;
 static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_protomsg_2eproto = nullptr;
@@ -200,60 +186,55 @@
   "handleTrack\030\002 \001(\t\022%\n\007message\030\003 \003(\0132\024.pro"
   "tomsg.SDKMessageb\006proto3"
   ;
-static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_protomsg_2eproto_deps[1] = {
-};
-static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_protomsg_2eproto_sccs[5] = {
-  &scc_info_Image_protomsg_2eproto.base,
-  &scc_info_Rect_protomsg_2eproto.base,
-  &scc_info_RuleMessage_protomsg_2eproto.base,
-  &scc_info_SDKMessage_protomsg_2eproto.base,
-  &scc_info_Target_protomsg_2eproto.base,
-};
 static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_protomsg_2eproto_once;
-static bool descriptor_table_protomsg_2eproto_initialized = false;
 const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_protomsg_2eproto = {
-  &descriptor_table_protomsg_2eproto_initialized, descriptor_table_protodef_protomsg_2eproto, "protomsg.proto", 544,
-  &descriptor_table_protomsg_2eproto_once, descriptor_table_protomsg_2eproto_sccs, descriptor_table_protomsg_2eproto_deps, 5, 0,
+  false, false, 544, descriptor_table_protodef_protomsg_2eproto, "protomsg.proto", 
+  &descriptor_table_protomsg_2eproto_once, nullptr, 0, 5,
   schemas, file_default_instances, TableStruct_protomsg_2eproto::offsets,
-  file_level_metadata_protomsg_2eproto, 5, file_level_enum_descriptors_protomsg_2eproto, file_level_service_descriptors_protomsg_2eproto,
+  file_level_metadata_protomsg_2eproto, file_level_enum_descriptors_protomsg_2eproto, file_level_service_descriptors_protomsg_2eproto,
 };
+PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_protomsg_2eproto_getter() {
+  return &descriptor_table_protomsg_2eproto;
+}
 
 // Force running AddDescriptors() at dynamic initialization time.
-static bool dynamic_init_dummy_protomsg_2eproto = (  ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_protomsg_2eproto), true);
+PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_protomsg_2eproto(&descriptor_table_protomsg_2eproto);
 namespace protomsg {
 
 // ===================================================================
 
-void Image::InitAsDefaultInstance() {
-}
 class Image::_Internal {
  public:
 };
 
-Image::Image()
-  : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
+Image::Image(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+  : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:protomsg.Image)
+  RegisterArenaDtor(arena);
+  // @@protoc_insertion_point(arena_constructor:protomsg.Image)
 }
 Image::Image(const Image& from)
-  : ::PROTOBUF_NAMESPACE_ID::Message(),
-      _internal_metadata_(nullptr) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  : ::PROTOBUF_NAMESPACE_ID::Message() {
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_data().empty()) {
-    data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
+    data_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_data(), 
+      GetArenaForAllocation());
   }
   timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_timestamp().empty()) {
-    timestamp_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timestamp_);
+    timestamp_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_timestamp(), 
+      GetArenaForAllocation());
   }
   cid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_cid().empty()) {
-    cid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cid_);
+    cid_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_cid(), 
+      GetArenaForAllocation());
   }
   cname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_cname().empty()) {
-    cname_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cname_);
+    cname_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_cname(), 
+      GetArenaForAllocation());
   }
   ::memcpy(&width_, &from.width_,
     static_cast<size_t>(reinterpret_cast<char*>(&id_) -
@@ -262,36 +243,39 @@
 }
 
 void Image::SharedCtor() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Image_protomsg_2eproto.base);
-  data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  cid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  cname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  ::memset(&width_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&id_) -
-      reinterpret_cast<char*>(&width_)) + sizeof(id_));
+data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+cid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+cname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
+    reinterpret_cast<char*>(&width_) - reinterpret_cast<char*>(this)),
+    0, static_cast<size_t>(reinterpret_cast<char*>(&id_) -
+    reinterpret_cast<char*>(&width_)) + sizeof(id_));
 }
 
 Image::~Image() {
   // @@protoc_insertion_point(destructor:protomsg.Image)
   SharedDtor();
+  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 void Image::SharedDtor() {
+  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
   data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   timestamp_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   cid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   cname_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
 }
 
+void Image::ArenaDtor(void* object) {
+  Image* _this = reinterpret_cast< Image* >(object);
+  (void)_this;
+}
+void Image::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
+}
 void Image::SetCachedSize(int size) const {
   _cached_size_.Set(size);
 }
-const Image& Image::default_instance() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Image_protomsg_2eproto.base);
-  return *internal_default_instance();
-}
-
 
 void Image::Clear() {
 // @@protoc_insertion_point(message_clear_start:protomsg.Image)
@@ -299,14 +283,14 @@
   // Prevent compiler warnings about cached_has_bits being unused
   (void) cached_has_bits;
 
-  data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  timestamp_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  cid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  cname_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  data_.ClearToEmpty();
+  timestamp_.ClearToEmpty();
+  cid_.ClearToEmpty();
+  cname_.ClearToEmpty();
   ::memset(&width_, 0, static_cast<size_t>(
       reinterpret_cast<char*>(&id_) -
       reinterpret_cast<char*>(&width_)) + sizeof(id_));
-  _internal_metadata_.Clear();
+  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 const char* Image::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
@@ -314,64 +298,73 @@
   while (!ctx->Done(&ptr)) {
     ::PROTOBUF_NAMESPACE_ID::uint32 tag;
     ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
-    CHK_(ptr);
     switch (tag >> 3) {
       // int32 width = 1;
       case 1:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
-          width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int32 height = 2;
       case 2:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
-          height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // bytes data = 3;
       case 3:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(_internal_mutable_data(), ptr, ctx);
+          auto str = _internal_mutable_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string timestamp = 4;
       case 4:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_timestamp(), ptr, ctx, "protomsg.Image.timestamp");
+          auto str = _internal_mutable_timestamp();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.Image.timestamp"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int64 id = 5;
       case 5:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
-          id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string cid = 6;
       case 6:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_cid(), ptr, ctx, "protomsg.Image.cid");
+          auto str = _internal_mutable_cid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.Image.cid"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string cname = 7;
       case 7:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_cname(), ptr, ctx, "protomsg.Image.cname");
+          auto str = _internal_mutable_cname();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.Image.cname"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       default: {
       handle_unusual:
-        if ((tag & 7) == 4 || tag == 0) {
+        if ((tag == 0) || ((tag & 7) == 4)) {
+          CHK_(ptr);
           ctx->SetLastTag(tag);
           goto success;
         }
-        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        ptr = UnknownFieldParse(tag,
+            _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
+            ptr, ctx);
         CHK_(ptr != nullptr);
         continue;
       }
@@ -385,7 +378,7 @@
 #undef CHK_
 }
 
-::PROTOBUF_NAMESPACE_ID::uint8* Image::InternalSerializeWithCachedSizesToArray(
+::PROTOBUF_NAMESPACE_ID::uint8* Image::_InternalSerialize(
     ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
   // @@protoc_insertion_point(serialize_to_array_start:protomsg.Image)
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
@@ -393,24 +386,24 @@
 
   // int32 width = 1;
   if (this->width() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_width(), target);
   }
 
   // int32 height = 2;
   if (this->height() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_height(), target);
   }
 
   // bytes data = 3;
-  if (this->data().size() > 0) {
+  if (!this->data().empty()) {
     target = stream->WriteBytesMaybeAliased(
         3, this->_internal_data(), target);
   }
 
   // string timestamp = 4;
-  if (this->timestamp().size() > 0) {
+  if (!this->timestamp().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_timestamp().data(), static_cast<int>(this->_internal_timestamp().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -421,12 +414,12 @@
 
   // int64 id = 5;
   if (this->id() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_id(), target);
   }
 
   // string cid = 6;
-  if (this->cid().size() > 0) {
+  if (!this->cid().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_cid().data(), static_cast<int>(this->_internal_cid().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -436,7 +429,7 @@
   }
 
   // string cname = 7;
-  if (this->cname().size() > 0) {
+  if (!this->cname().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_cname().data(), static_cast<int>(this->_internal_cname().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -447,7 +440,7 @@
 
   if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target, stream);
+        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
   }
   // @@protoc_insertion_point(serialize_to_array_end:protomsg.Image)
   return target;
@@ -462,28 +455,28 @@
   (void) cached_has_bits;
 
   // bytes data = 3;
-  if (this->data().size() > 0) {
+  if (!this->data().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
         this->_internal_data());
   }
 
   // string timestamp = 4;
-  if (this->timestamp().size() > 0) {
+  if (!this->timestamp().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_timestamp());
   }
 
   // string cid = 6;
-  if (this->cid().size() > 0) {
+  if (!this->cid().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_cid());
   }
 
   // string cname = 7;
-  if (this->cname().size() > 0) {
+  if (!this->cname().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_cname());
@@ -537,25 +530,21 @@
 void Image::MergeFrom(const Image& from) {
 // @@protoc_insertion_point(class_specific_merge_from_start:protomsg.Image)
   GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
-  if (from.data().size() > 0) {
-
-    data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
+  if (!from.data().empty()) {
+    _internal_set_data(from._internal_data());
   }
-  if (from.timestamp().size() > 0) {
-
-    timestamp_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timestamp_);
+  if (!from.timestamp().empty()) {
+    _internal_set_timestamp(from._internal_timestamp());
   }
-  if (from.cid().size() > 0) {
-
-    cid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cid_);
+  if (!from.cid().empty()) {
+    _internal_set_cid(from._internal_cid());
   }
-  if (from.cname().size() > 0) {
-
-    cname_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cname_);
+  if (!from.cname().empty()) {
+    _internal_set_cname(from._internal_cname());
   }
   if (from.width() != 0) {
     _internal_set_width(from._internal_width());
@@ -588,42 +577,56 @@
 
 void Image::InternalSwap(Image* other) {
   using std::swap;
-  _internal_metadata_.Swap(&other->_internal_metadata_);
-  data_.Swap(&other->data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  timestamp_.Swap(&other->timestamp_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  cid_.Swap(&other->cid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  cname_.Swap(&other->cname_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(width_, other->width_);
-  swap(height_, other->height_);
-  swap(id_, other->id_);
+  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &data_, GetArenaForAllocation(),
+      &other->data_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &timestamp_, GetArenaForAllocation(),
+      &other->timestamp_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &cid_, GetArenaForAllocation(),
+      &other->cid_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &cname_, GetArenaForAllocation(),
+      &other->cname_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
+      PROTOBUF_FIELD_OFFSET(Image, id_)
+      + sizeof(Image::id_)
+      - PROTOBUF_FIELD_OFFSET(Image, width_)>(
+          reinterpret_cast<char*>(&width_),
+          reinterpret_cast<char*>(&other->width_));
 }
 
 ::PROTOBUF_NAMESPACE_ID::Metadata Image::GetMetadata() const {
-  return GetMetadataStatic();
+  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
+      &descriptor_table_protomsg_2eproto_getter, &descriptor_table_protomsg_2eproto_once,
+      file_level_metadata_protomsg_2eproto[0]);
 }
-
 
 // ===================================================================
 
-void Rect::InitAsDefaultInstance() {
-}
 class Rect::_Internal {
  public:
 };
 
-Rect::Rect()
-  : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
+Rect::Rect(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+  : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:protomsg.Rect)
+  RegisterArenaDtor(arena);
+  // @@protoc_insertion_point(arena_constructor:protomsg.Rect)
 }
 Rect::Rect(const Rect& from)
-  : ::PROTOBUF_NAMESPACE_ID::Message(),
-      _internal_metadata_(nullptr) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  : ::PROTOBUF_NAMESPACE_ID::Message() {
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::memcpy(&left_, &from.left_,
     static_cast<size_t>(reinterpret_cast<char*>(&bottom_) -
     reinterpret_cast<char*>(&left_)) + sizeof(bottom_));
@@ -631,27 +634,31 @@
 }
 
 void Rect::SharedCtor() {
-  ::memset(&left_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&bottom_) -
-      reinterpret_cast<char*>(&left_)) + sizeof(bottom_));
+::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
+    reinterpret_cast<char*>(&left_) - reinterpret_cast<char*>(this)),
+    0, static_cast<size_t>(reinterpret_cast<char*>(&bottom_) -
+    reinterpret_cast<char*>(&left_)) + sizeof(bottom_));
 }
 
 Rect::~Rect() {
   // @@protoc_insertion_point(destructor:protomsg.Rect)
   SharedDtor();
+  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 void Rect::SharedDtor() {
+  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
 }
 
+void Rect::ArenaDtor(void* object) {
+  Rect* _this = reinterpret_cast< Rect* >(object);
+  (void)_this;
+}
+void Rect::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
+}
 void Rect::SetCachedSize(int size) const {
   _cached_size_.Set(size);
 }
-const Rect& Rect::default_instance() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Rect_protomsg_2eproto.base);
-  return *internal_default_instance();
-}
-
 
 void Rect::Clear() {
 // @@protoc_insertion_point(message_clear_start:protomsg.Rect)
@@ -662,7 +669,7 @@
   ::memset(&left_, 0, static_cast<size_t>(
       reinterpret_cast<char*>(&bottom_) -
       reinterpret_cast<char*>(&left_)) + sizeof(bottom_));
-  _internal_metadata_.Clear();
+  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 const char* Rect::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
@@ -670,43 +677,45 @@
   while (!ctx->Done(&ptr)) {
     ::PROTOBUF_NAMESPACE_ID::uint32 tag;
     ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
-    CHK_(ptr);
     switch (tag >> 3) {
       // int32 left = 1;
       case 1:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
-          left_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          left_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int32 top = 2;
       case 2:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
-          top_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          top_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int32 right = 3;
       case 3:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
-          right_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          right_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int32 bottom = 4;
       case 4:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
-          bottom_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          bottom_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       default: {
       handle_unusual:
-        if ((tag & 7) == 4 || tag == 0) {
+        if ((tag == 0) || ((tag & 7) == 4)) {
+          CHK_(ptr);
           ctx->SetLastTag(tag);
           goto success;
         }
-        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        ptr = UnknownFieldParse(tag,
+            _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
+            ptr, ctx);
         CHK_(ptr != nullptr);
         continue;
       }
@@ -720,7 +729,7 @@
 #undef CHK_
 }
 
-::PROTOBUF_NAMESPACE_ID::uint8* Rect::InternalSerializeWithCachedSizesToArray(
+::PROTOBUF_NAMESPACE_ID::uint8* Rect::_InternalSerialize(
     ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
   // @@protoc_insertion_point(serialize_to_array_start:protomsg.Rect)
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
@@ -728,31 +737,31 @@
 
   // int32 left = 1;
   if (this->left() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_left(), target);
   }
 
   // int32 top = 2;
   if (this->top() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_top(), target);
   }
 
   // int32 right = 3;
   if (this->right() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_right(), target);
   }
 
   // int32 bottom = 4;
   if (this->bottom() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_bottom(), target);
   }
 
   if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target, stream);
+        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
   }
   // @@protoc_insertion_point(serialize_to_array_end:protomsg.Rect)
   return target;
@@ -821,7 +830,7 @@
 void Rect::MergeFrom(const Rect& from) {
 // @@protoc_insertion_point(class_specific_merge_from_start:protomsg.Rect)
   GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
@@ -859,24 +868,23 @@
 
 void Rect::InternalSwap(Rect* other) {
   using std::swap;
-  _internal_metadata_.Swap(&other->_internal_metadata_);
-  swap(left_, other->left_);
-  swap(top_, other->top_);
-  swap(right_, other->right_);
-  swap(bottom_, other->bottom_);
+  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
+      PROTOBUF_FIELD_OFFSET(Rect, bottom_)
+      + sizeof(Rect::bottom_)
+      - PROTOBUF_FIELD_OFFSET(Rect, left_)>(
+          reinterpret_cast<char*>(&left_),
+          reinterpret_cast<char*>(&other->left_));
 }
 
 ::PROTOBUF_NAMESPACE_ID::Metadata Rect::GetMetadata() const {
-  return GetMetadataStatic();
+  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
+      &descriptor_table_protomsg_2eproto_getter, &descriptor_table_protomsg_2eproto_once,
+      file_level_metadata_protomsg_2eproto[1]);
 }
-
 
 // ===================================================================
 
-void Target::InitAsDefaultInstance() {
-  ::protomsg::_Target_default_instance_._instance.get_mutable()->rect_ = const_cast< ::protomsg::Rect*>(
-      ::protomsg::Rect::internal_default_instance());
-}
 class Target::_Internal {
  public:
   static const ::protomsg::Rect& rect(const Target* msg);
@@ -886,26 +894,29 @@
 Target::_Internal::rect(const Target* msg) {
   return *msg->rect_;
 }
-Target::Target()
-  : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
+Target::Target(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+  : ::PROTOBUF_NAMESPACE_ID::Message(arena) {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:protomsg.Target)
+  RegisterArenaDtor(arena);
+  // @@protoc_insertion_point(arena_constructor:protomsg.Target)
 }
 Target::Target(const Target& from)
-  : ::PROTOBUF_NAMESPACE_ID::Message(),
-      _internal_metadata_(nullptr) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  : ::PROTOBUF_NAMESPACE_ID::Message() {
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_type().empty()) {
-    type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+    type_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_type(), 
+      GetArenaForAllocation());
   }
   feature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_feature().empty()) {
-    feature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.feature_);
+    feature_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_feature(), 
+      GetArenaForAllocation());
   }
   attribute_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_attribute().empty()) {
-    attribute_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.attribute_);
+    attribute_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_attribute(), 
+      GetArenaForAllocation());
   }
   if (from._internal_has_rect()) {
     rect_ = new ::protomsg::Rect(*from.rect_);
@@ -919,35 +930,38 @@
 }
 
 void Target::SharedCtor() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Target_protomsg_2eproto.base);
-  type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  feature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  attribute_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  ::memset(&rect_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&confidence_) -
-      reinterpret_cast<char*>(&rect_)) + sizeof(confidence_));
+type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+feature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+attribute_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
+    reinterpret_cast<char*>(&rect_) - reinterpret_cast<char*>(this)),
+    0, static_cast<size_t>(reinterpret_cast<char*>(&confidence_) -
+    reinterpret_cast<char*>(&rect_)) + sizeof(confidence_));
 }
 
 Target::~Target() {
   // @@protoc_insertion_point(destructor:protomsg.Target)
   SharedDtor();
+  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 void Target::SharedDtor() {
+  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
   type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   feature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   attribute_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (this != internal_default_instance()) delete rect_;
 }
 
+void Target::ArenaDtor(void* object) {
+  Target* _this = reinterpret_cast< Target* >(object);
+  (void)_this;
+}
+void Target::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
+}
 void Target::SetCachedSize(int size) const {
   _cached_size_.Set(size);
 }
-const Target& Target::default_instance() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Target_protomsg_2eproto.base);
-  return *internal_default_instance();
-}
-
 
 void Target::Clear() {
 // @@protoc_insertion_point(message_clear_start:protomsg.Target)
@@ -955,17 +969,17 @@
   // Prevent compiler warnings about cached_has_bits being unused
   (void) cached_has_bits;
 
-  type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  feature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  attribute_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  if (GetArenaNoVirtual() == nullptr && rect_ != nullptr) {
+  type_.ClearToEmpty();
+  feature_.ClearToEmpty();
+  attribute_.ClearToEmpty();
+  if (GetArenaForAllocation() == nullptr && rect_ != nullptr) {
     delete rect_;
   }
   rect_ = nullptr;
   ::memset(&id_, 0, static_cast<size_t>(
       reinterpret_cast<char*>(&confidence_) -
       reinterpret_cast<char*>(&id_)) + sizeof(confidence_));
-  _internal_metadata_.Clear();
+  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 const char* Target::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
@@ -973,26 +987,27 @@
   while (!ctx->Done(&ptr)) {
     ::PROTOBUF_NAMESPACE_ID::uint32 tag;
     ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
-    CHK_(ptr);
     switch (tag >> 3) {
       // uint64 id = 1;
       case 1:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
-          id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string type = 2;
       case 2:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_type(), ptr, ctx, "protomsg.Target.type");
+          auto str = _internal_mutable_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.Target.type"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // int32 confidence = 3;
       case 3:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
-          confidence_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          confidence_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
@@ -1006,24 +1021,29 @@
       // bytes feature = 5;
       case 5:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(_internal_mutable_feature(), ptr, ctx);
+          auto str = _internal_mutable_feature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // bytes attribute = 6;
       case 6:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(_internal_mutable_attribute(), ptr, ctx);
+          auto str = _internal_mutable_attribute();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       default: {
       handle_unusual:
-        if ((tag & 7) == 4 || tag == 0) {
+        if ((tag == 0) || ((tag & 7) == 4)) {
+          CHK_(ptr);
           ctx->SetLastTag(tag);
           goto success;
         }
-        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        ptr = UnknownFieldParse(tag,
+            _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
+            ptr, ctx);
         CHK_(ptr != nullptr);
         continue;
       }
@@ -1037,7 +1057,7 @@
 #undef CHK_
 }
 
-::PROTOBUF_NAMESPACE_ID::uint8* Target::InternalSerializeWithCachedSizesToArray(
+::PROTOBUF_NAMESPACE_ID::uint8* Target::_InternalSerialize(
     ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
   // @@protoc_insertion_point(serialize_to_array_start:protomsg.Target)
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
@@ -1045,12 +1065,12 @@
 
   // uint64 id = 1;
   if (this->id() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(1, this->_internal_id(), target);
   }
 
   // string type = 2;
-  if (this->type().size() > 0) {
+  if (!this->type().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_type().data(), static_cast<int>(this->_internal_type().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1061,33 +1081,33 @@
 
   // int32 confidence = 3;
   if (this->confidence() != 0) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_confidence(), target);
   }
 
   // .protomsg.Rect rect = 4;
   if (this->has_rect()) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
-      InternalWriteMessageToArray(
+      InternalWriteMessage(
         4, _Internal::rect(this), target, stream);
   }
 
   // bytes feature = 5;
-  if (this->feature().size() > 0) {
+  if (!this->feature().empty()) {
     target = stream->WriteBytesMaybeAliased(
         5, this->_internal_feature(), target);
   }
 
   // bytes attribute = 6;
-  if (this->attribute().size() > 0) {
+  if (!this->attribute().empty()) {
     target = stream->WriteBytesMaybeAliased(
         6, this->_internal_attribute(), target);
   }
 
   if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target, stream);
+        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
   }
   // @@protoc_insertion_point(serialize_to_array_end:protomsg.Target)
   return target;
@@ -1102,21 +1122,21 @@
   (void) cached_has_bits;
 
   // string type = 2;
-  if (this->type().size() > 0) {
+  if (!this->type().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_type());
   }
 
   // bytes feature = 5;
-  if (this->feature().size() > 0) {
+  if (!this->feature().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
         this->_internal_feature());
   }
 
   // bytes attribute = 6;
-  if (this->attribute().size() > 0) {
+  if (!this->attribute().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
         this->_internal_attribute());
@@ -1170,21 +1190,18 @@
 void Target::MergeFrom(const Target& from) {
 // @@protoc_insertion_point(class_specific_merge_from_start:protomsg.Target)
   GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
-  if (from.type().size() > 0) {
-
-    type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+  if (!from.type().empty()) {
+    _internal_set_type(from._internal_type());
   }
-  if (from.feature().size() > 0) {
-
-    feature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.feature_);
+  if (!from.feature().empty()) {
+    _internal_set_feature(from._internal_feature());
   }
-  if (from.attribute().size() > 0) {
-
-    attribute_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.attribute_);
+  if (!from.attribute().empty()) {
+    _internal_set_attribute(from._internal_attribute());
   }
   if (from.has_rect()) {
     _internal_mutable_rect()->::protomsg::Rect::MergeFrom(from._internal_rect());
@@ -1217,88 +1234,106 @@
 
 void Target::InternalSwap(Target* other) {
   using std::swap;
-  _internal_metadata_.Swap(&other->_internal_metadata_);
-  type_.Swap(&other->type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  feature_.Swap(&other->feature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  attribute_.Swap(&other->attribute_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(rect_, other->rect_);
-  swap(id_, other->id_);
-  swap(confidence_, other->confidence_);
+  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &type_, GetArenaForAllocation(),
+      &other->type_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &feature_, GetArenaForAllocation(),
+      &other->feature_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &attribute_, GetArenaForAllocation(),
+      &other->attribute_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
+      PROTOBUF_FIELD_OFFSET(Target, confidence_)
+      + sizeof(Target::confidence_)
+      - PROTOBUF_FIELD_OFFSET(Target, rect_)>(
+          reinterpret_cast<char*>(&rect_),
+          reinterpret_cast<char*>(&other->rect_));
 }
 
 ::PROTOBUF_NAMESPACE_ID::Metadata Target::GetMetadata() const {
-  return GetMetadataStatic();
+  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
+      &descriptor_table_protomsg_2eproto_getter, &descriptor_table_protomsg_2eproto_once,
+      file_level_metadata_protomsg_2eproto[2]);
 }
-
 
 // ===================================================================
 
-void SDKMessage::InitAsDefaultInstance() {
-}
 class SDKMessage::_Internal {
  public:
 };
 
-SDKMessage::SDKMessage()
-  : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
+SDKMessage::SDKMessage(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+  : ::PROTOBUF_NAMESPACE_ID::Message(arena),
+  target_(arena) {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:protomsg.SDKMessage)
+  RegisterArenaDtor(arena);
+  // @@protoc_insertion_point(arena_constructor:protomsg.SDKMessage)
 }
 SDKMessage::SDKMessage(const SDKMessage& from)
   : ::PROTOBUF_NAMESPACE_ID::Message(),
-      _internal_metadata_(nullptr),
       target_(from.target_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   sdkid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_sdkid().empty()) {
-    sdkid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdkid_);
+    sdkid_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_sdkid(), 
+      GetArenaForAllocation());
   }
   sdktype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_sdktype().empty()) {
-    sdktype_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdktype_);
+    sdktype_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_sdktype(), 
+      GetArenaForAllocation());
   }
   sdkname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_sdkname().empty()) {
-    sdkname_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdkname_);
+    sdkname_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_sdkname(), 
+      GetArenaForAllocation());
   }
   timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_timestamp().empty()) {
-    timestamp_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timestamp_);
+    timestamp_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_timestamp(), 
+      GetArenaForAllocation());
   }
   // @@protoc_insertion_point(copy_constructor:protomsg.SDKMessage)
 }
 
 void SDKMessage::SharedCtor() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SDKMessage_protomsg_2eproto.base);
-  sdkid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  sdktype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  sdkname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+sdkid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+sdktype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+sdkname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+timestamp_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
 }
 
 SDKMessage::~SDKMessage() {
   // @@protoc_insertion_point(destructor:protomsg.SDKMessage)
   SharedDtor();
+  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 void SDKMessage::SharedDtor() {
+  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
   sdkid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   sdktype_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   sdkname_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   timestamp_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
 }
 
+void SDKMessage::ArenaDtor(void* object) {
+  SDKMessage* _this = reinterpret_cast< SDKMessage* >(object);
+  (void)_this;
+}
+void SDKMessage::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
+}
 void SDKMessage::SetCachedSize(int size) const {
   _cached_size_.Set(size);
 }
-const SDKMessage& SDKMessage::default_instance() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SDKMessage_protomsg_2eproto.base);
-  return *internal_default_instance();
-}
-
 
 void SDKMessage::Clear() {
 // @@protoc_insertion_point(message_clear_start:protomsg.SDKMessage)
@@ -1307,11 +1342,11 @@
   (void) cached_has_bits;
 
   target_.Clear();
-  sdkid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  sdktype_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  sdkname_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  timestamp_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  _internal_metadata_.Clear();
+  sdkid_.ClearToEmpty();
+  sdktype_.ClearToEmpty();
+  sdkname_.ClearToEmpty();
+  timestamp_.ClearToEmpty();
+  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 const char* SDKMessage::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
@@ -1319,26 +1354,31 @@
   while (!ctx->Done(&ptr)) {
     ::PROTOBUF_NAMESPACE_ID::uint32 tag;
     ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
-    CHK_(ptr);
     switch (tag >> 3) {
       // string sdkID = 1;
       case 1:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_sdkid(), ptr, ctx, "protomsg.SDKMessage.sdkID");
+          auto str = _internal_mutable_sdkid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.SDKMessage.sdkID"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string sdkType = 2;
       case 2:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_sdktype(), ptr, ctx, "protomsg.SDKMessage.sdkType");
+          auto str = _internal_mutable_sdktype();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.SDKMessage.sdkType"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string sdkName = 3;
       case 3:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_sdkname(), ptr, ctx, "protomsg.SDKMessage.sdkName");
+          auto str = _internal_mutable_sdkname();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.SDKMessage.sdkName"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
@@ -1357,17 +1397,22 @@
       // string timestamp = 5;
       case 5:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_timestamp(), ptr, ctx, "protomsg.SDKMessage.timestamp");
+          auto str = _internal_mutable_timestamp();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.SDKMessage.timestamp"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       default: {
       handle_unusual:
-        if ((tag & 7) == 4 || tag == 0) {
+        if ((tag == 0) || ((tag & 7) == 4)) {
+          CHK_(ptr);
           ctx->SetLastTag(tag);
           goto success;
         }
-        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        ptr = UnknownFieldParse(tag,
+            _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
+            ptr, ctx);
         CHK_(ptr != nullptr);
         continue;
       }
@@ -1381,14 +1426,14 @@
 #undef CHK_
 }
 
-::PROTOBUF_NAMESPACE_ID::uint8* SDKMessage::InternalSerializeWithCachedSizesToArray(
+::PROTOBUF_NAMESPACE_ID::uint8* SDKMessage::_InternalSerialize(
     ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
   // @@protoc_insertion_point(serialize_to_array_start:protomsg.SDKMessage)
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
   // string sdkID = 1;
-  if (this->sdkid().size() > 0) {
+  if (!this->sdkid().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_sdkid().data(), static_cast<int>(this->_internal_sdkid().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1398,7 +1443,7 @@
   }
 
   // string sdkType = 2;
-  if (this->sdktype().size() > 0) {
+  if (!this->sdktype().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_sdktype().data(), static_cast<int>(this->_internal_sdktype().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1408,7 +1453,7 @@
   }
 
   // string sdkName = 3;
-  if (this->sdkname().size() > 0) {
+  if (!this->sdkname().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_sdkname().data(), static_cast<int>(this->_internal_sdkname().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1420,13 +1465,13 @@
   // repeated .protomsg.Target target = 4;
   for (unsigned int i = 0,
       n = static_cast<unsigned int>(this->_internal_target_size()); i < n; i++) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
-      InternalWriteMessageToArray(4, this->_internal_target(i), target, stream);
+      InternalWriteMessage(4, this->_internal_target(i), target, stream);
   }
 
   // string timestamp = 5;
-  if (this->timestamp().size() > 0) {
+  if (!this->timestamp().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_timestamp().data(), static_cast<int>(this->_internal_timestamp().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1437,7 +1482,7 @@
 
   if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target, stream);
+        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
   }
   // @@protoc_insertion_point(serialize_to_array_end:protomsg.SDKMessage)
   return target;
@@ -1459,28 +1504,28 @@
   }
 
   // string sdkID = 1;
-  if (this->sdkid().size() > 0) {
+  if (!this->sdkid().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_sdkid());
   }
 
   // string sdkType = 2;
-  if (this->sdktype().size() > 0) {
+  if (!this->sdktype().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_sdktype());
   }
 
   // string sdkName = 3;
-  if (this->sdkname().size() > 0) {
+  if (!this->sdkname().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_sdkname());
   }
 
   // string timestamp = 5;
-  if (this->timestamp().size() > 0) {
+  if (!this->timestamp().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_timestamp());
@@ -1513,26 +1558,22 @@
 void SDKMessage::MergeFrom(const SDKMessage& from) {
 // @@protoc_insertion_point(class_specific_merge_from_start:protomsg.SDKMessage)
   GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
   target_.MergeFrom(from.target_);
-  if (from.sdkid().size() > 0) {
-
-    sdkid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdkid_);
+  if (!from.sdkid().empty()) {
+    _internal_set_sdkid(from._internal_sdkid());
   }
-  if (from.sdktype().size() > 0) {
-
-    sdktype_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdktype_);
+  if (!from.sdktype().empty()) {
+    _internal_set_sdktype(from._internal_sdktype());
   }
-  if (from.sdkname().size() > 0) {
-
-    sdkname_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sdkname_);
+  if (!from.sdkname().empty()) {
+    _internal_set_sdkname(from._internal_sdkname());
   }
-  if (from.timestamp().size() > 0) {
-
-    timestamp_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timestamp_);
+  if (!from.timestamp().empty()) {
+    _internal_set_timestamp(from._internal_timestamp());
   }
 }
 
@@ -1556,76 +1597,92 @@
 
 void SDKMessage::InternalSwap(SDKMessage* other) {
   using std::swap;
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
   target_.InternalSwap(&other->target_);
-  sdkid_.Swap(&other->sdkid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  sdktype_.Swap(&other->sdktype_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  sdkname_.Swap(&other->sdkname_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  timestamp_.Swap(&other->timestamp_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &sdkid_, GetArenaForAllocation(),
+      &other->sdkid_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &sdktype_, GetArenaForAllocation(),
+      &other->sdktype_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &sdkname_, GetArenaForAllocation(),
+      &other->sdkname_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &timestamp_, GetArenaForAllocation(),
+      &other->timestamp_, other->GetArenaForAllocation()
+  );
 }
 
 ::PROTOBUF_NAMESPACE_ID::Metadata SDKMessage::GetMetadata() const {
-  return GetMetadataStatic();
+  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
+      &descriptor_table_protomsg_2eproto_getter, &descriptor_table_protomsg_2eproto_once,
+      file_level_metadata_protomsg_2eproto[3]);
 }
-
 
 // ===================================================================
 
-void RuleMessage::InitAsDefaultInstance() {
-}
 class RuleMessage::_Internal {
  public:
 };
 
-RuleMessage::RuleMessage()
-  : ::PROTOBUF_NAMESPACE_ID::Message(), _internal_metadata_(nullptr) {
+RuleMessage::RuleMessage(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+  : ::PROTOBUF_NAMESPACE_ID::Message(arena),
+  message_(arena) {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:protomsg.RuleMessage)
+  RegisterArenaDtor(arena);
+  // @@protoc_insertion_point(arena_constructor:protomsg.RuleMessage)
 }
 RuleMessage::RuleMessage(const RuleMessage& from)
   : ::PROTOBUF_NAMESPACE_ID::Message(),
-      _internal_metadata_(nullptr),
       message_(from.message_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   datatype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_datatype().empty()) {
-    datatype_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.datatype_);
+    datatype_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_datatype(), 
+      GetArenaForAllocation());
   }
   handletrack_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   if (!from._internal_handletrack().empty()) {
-    handletrack_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.handletrack_);
+    handletrack_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_handletrack(), 
+      GetArenaForAllocation());
   }
   // @@protoc_insertion_point(copy_constructor:protomsg.RuleMessage)
 }
 
 void RuleMessage::SharedCtor() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RuleMessage_protomsg_2eproto.base);
-  datatype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  handletrack_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+datatype_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+handletrack_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
 }
 
 RuleMessage::~RuleMessage() {
   // @@protoc_insertion_point(destructor:protomsg.RuleMessage)
   SharedDtor();
+  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 void RuleMessage::SharedDtor() {
+  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
   datatype_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
   handletrack_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
 }
 
+void RuleMessage::ArenaDtor(void* object) {
+  RuleMessage* _this = reinterpret_cast< RuleMessage* >(object);
+  (void)_this;
+}
+void RuleMessage::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
+}
 void RuleMessage::SetCachedSize(int size) const {
   _cached_size_.Set(size);
 }
-const RuleMessage& RuleMessage::default_instance() {
-  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RuleMessage_protomsg_2eproto.base);
-  return *internal_default_instance();
-}
-
 
 void RuleMessage::Clear() {
 // @@protoc_insertion_point(message_clear_start:protomsg.RuleMessage)
@@ -1634,9 +1691,9 @@
   (void) cached_has_bits;
 
   message_.Clear();
-  datatype_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  handletrack_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
-  _internal_metadata_.Clear();
+  datatype_.ClearToEmpty();
+  handletrack_.ClearToEmpty();
+  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
 }
 
 const char* RuleMessage::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
@@ -1644,19 +1701,22 @@
   while (!ctx->Done(&ptr)) {
     ::PROTOBUF_NAMESPACE_ID::uint32 tag;
     ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
-    CHK_(ptr);
     switch (tag >> 3) {
       // string dataType = 1;
       case 1:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_datatype(), ptr, ctx, "protomsg.RuleMessage.dataType");
+          auto str = _internal_mutable_datatype();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.RuleMessage.dataType"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
       // string handleTrack = 2;
       case 2:
         if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
-          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(_internal_mutable_handletrack(), ptr, ctx, "protomsg.RuleMessage.handleTrack");
+          auto str = _internal_mutable_handletrack();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "protomsg.RuleMessage.handleTrack"));
           CHK_(ptr);
         } else goto handle_unusual;
         continue;
@@ -1674,11 +1734,14 @@
         continue;
       default: {
       handle_unusual:
-        if ((tag & 7) == 4 || tag == 0) {
+        if ((tag == 0) || ((tag & 7) == 4)) {
+          CHK_(ptr);
           ctx->SetLastTag(tag);
           goto success;
         }
-        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        ptr = UnknownFieldParse(tag,
+            _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
+            ptr, ctx);
         CHK_(ptr != nullptr);
         continue;
       }
@@ -1692,14 +1755,14 @@
 #undef CHK_
 }
 
-::PROTOBUF_NAMESPACE_ID::uint8* RuleMessage::InternalSerializeWithCachedSizesToArray(
+::PROTOBUF_NAMESPACE_ID::uint8* RuleMessage::_InternalSerialize(
     ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
   // @@protoc_insertion_point(serialize_to_array_start:protomsg.RuleMessage)
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
   // string dataType = 1;
-  if (this->datatype().size() > 0) {
+  if (!this->datatype().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_datatype().data(), static_cast<int>(this->_internal_datatype().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1709,7 +1772,7 @@
   }
 
   // string handleTrack = 2;
-  if (this->handletrack().size() > 0) {
+  if (!this->handletrack().empty()) {
     ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
       this->_internal_handletrack().data(), static_cast<int>(this->_internal_handletrack().length()),
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
@@ -1721,14 +1784,14 @@
   // repeated .protomsg.SDKMessage message = 3;
   for (unsigned int i = 0,
       n = static_cast<unsigned int>(this->_internal_message_size()); i < n; i++) {
-    stream->EnsureSpace(&target);
+    target = stream->EnsureSpace(target);
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
-      InternalWriteMessageToArray(3, this->_internal_message(i), target, stream);
+      InternalWriteMessage(3, this->_internal_message(i), target, stream);
   }
 
   if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
     target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target, stream);
+        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
   }
   // @@protoc_insertion_point(serialize_to_array_end:protomsg.RuleMessage)
   return target;
@@ -1750,14 +1813,14 @@
   }
 
   // string dataType = 1;
-  if (this->datatype().size() > 0) {
+  if (!this->datatype().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_datatype());
   }
 
   // string handleTrack = 2;
-  if (this->handletrack().size() > 0) {
+  if (!this->handletrack().empty()) {
     total_size += 1 +
       ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
         this->_internal_handletrack());
@@ -1790,18 +1853,16 @@
 void RuleMessage::MergeFrom(const RuleMessage& from) {
 // @@protoc_insertion_point(class_specific_merge_from_start:protomsg.RuleMessage)
   GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
   ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
   (void) cached_has_bits;
 
   message_.MergeFrom(from.message_);
-  if (from.datatype().size() > 0) {
-
-    datatype_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.datatype_);
+  if (!from.datatype().empty()) {
+    _internal_set_datatype(from._internal_datatype());
   }
-  if (from.handletrack().size() > 0) {
-
-    handletrack_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.handletrack_);
+  if (!from.handletrack().empty()) {
+    _internal_set_handletrack(from._internal_handletrack());
   }
 }
 
@@ -1825,36 +1886,43 @@
 
 void RuleMessage::InternalSwap(RuleMessage* other) {
   using std::swap;
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
   message_.InternalSwap(&other->message_);
-  datatype_.Swap(&other->datatype_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  handletrack_.Swap(&other->handletrack_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &datatype_, GetArenaForAllocation(),
+      &other->datatype_, other->GetArenaForAllocation()
+  );
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
+      &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      &handletrack_, GetArenaForAllocation(),
+      &other->handletrack_, other->GetArenaForAllocation()
+  );
 }
 
 ::PROTOBUF_NAMESPACE_ID::Metadata RuleMessage::GetMetadata() const {
-  return GetMetadataStatic();
+  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
+      &descriptor_table_protomsg_2eproto_getter, &descriptor_table_protomsg_2eproto_once,
+      file_level_metadata_protomsg_2eproto[4]);
 }
-
 
 // @@protoc_insertion_point(namespace_scope)
 }  // namespace protomsg
 PROTOBUF_NAMESPACE_OPEN
 template<> PROTOBUF_NOINLINE ::protomsg::Image* Arena::CreateMaybeMessage< ::protomsg::Image >(Arena* arena) {
-  return Arena::CreateInternal< ::protomsg::Image >(arena);
+  return Arena::CreateMessageInternal< ::protomsg::Image >(arena);
 }
 template<> PROTOBUF_NOINLINE ::protomsg::Rect* Arena::CreateMaybeMessage< ::protomsg::Rect >(Arena* arena) {
-  return Arena::CreateInternal< ::protomsg::Rect >(arena);
+  return Arena::CreateMessageInternal< ::protomsg::Rect >(arena);
 }
 template<> PROTOBUF_NOINLINE ::protomsg::Target* Arena::CreateMaybeMessage< ::protomsg::Target >(Arena* arena) {
-  return Arena::CreateInternal< ::protomsg::Target >(arena);
+  return Arena::CreateMessageInternal< ::protomsg::Target >(arena);
 }
 template<> PROTOBUF_NOINLINE ::protomsg::SDKMessage* Arena::CreateMaybeMessage< ::protomsg::SDKMessage >(Arena* arena) {
-  return Arena::CreateInternal< ::protomsg::SDKMessage >(arena);
+  return Arena::CreateMessageInternal< ::protomsg::SDKMessage >(arena);
 }
 template<> PROTOBUF_NOINLINE ::protomsg::RuleMessage* Arena::CreateMaybeMessage< ::protomsg::RuleMessage >(Arena* arena) {
-  return Arena::CreateInternal< ::protomsg::RuleMessage >(arena);
+  return Arena::CreateMessageInternal< ::protomsg::RuleMessage >(arena);
 }
 PROTOBUF_NAMESPACE_CLOSE
 

--
Gitblit v1.8.0