// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tdscmd.proto

#include "tdscmd.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>

PROTOBUF_PRAGMA_INIT_SEG

namespace _pb = ::PROTOBUF_NAMESPACE_ID;
namespace _pbi = _pb::internal;

PROTOBUF_CONSTEXPR TestParams::TestParams(
    ::_pbi::ConstantInitialized)
  : key_(&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{})
  , value_(&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}){}
struct TestParamsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR TestParamsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~TestParamsDefaultTypeInternal() {}
  union {
    TestParams _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TestParamsDefaultTypeInternal _TestParams_default_instance_;
PROTOBUF_CONSTEXPR Heartbeat_DevStatusEntry_DoNotUse::Heartbeat_DevStatusEntry_DoNotUse(
    ::_pbi::ConstantInitialized){}
struct Heartbeat_DevStatusEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR Heartbeat_DevStatusEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~Heartbeat_DevStatusEntry_DoNotUseDefaultTypeInternal() {}
  union {
    Heartbeat_DevStatusEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 Heartbeat_DevStatusEntry_DoNotUseDefaultTypeInternal _Heartbeat_DevStatusEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR Heartbeat::Heartbeat(
    ::_pbi::ConstantInitialized)
  : iid_list_()
  , _iid_list_cached_byte_size_(0)
  , dev_status_(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{})
  , suid_(0u){}
struct HeartbeatDefaultTypeInternal {
  PROTOBUF_CONSTEXPR HeartbeatDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~HeartbeatDefaultTypeInternal() {}
  union {
    Heartbeat _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HeartbeatDefaultTypeInternal _Heartbeat_default_instance_;
PROTOBUF_CONSTEXPR TDSCmd::TDSCmd(
    ::_pbi::ConstantInitialized)
  : parameters_()
  , ts_(nullptr)
  , interface_id_(0)

  , dst_suid_(0u)
  , src_suid_(0u)
  , forward_flag_(0u)
  , priority_(0u)
  , request_index_(0u){}
struct TDSCmdDefaultTypeInternal {
  PROTOBUF_CONSTEXPR TDSCmdDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~TDSCmdDefaultTypeInternal() {}
  union {
    TDSCmd _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TDSCmdDefaultTypeInternal _TDSCmd_default_instance_;
static ::_pb::Metadata file_level_metadata_tdscmd_2eproto[4];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_tdscmd_2eproto[5];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_tdscmd_2eproto = nullptr;

const uint32_t TableStruct_tdscmd_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::TestParams, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::TestParams, key_),
  PROTOBUF_FIELD_OFFSET(::TestParams, value_),
  PROTOBUF_FIELD_OFFSET(::Heartbeat_DevStatusEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::Heartbeat_DevStatusEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::Heartbeat_DevStatusEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::Heartbeat_DevStatusEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::Heartbeat, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::Heartbeat, suid_),
  PROTOBUF_FIELD_OFFSET(::Heartbeat, iid_list_),
  PROTOBUF_FIELD_OFFSET(::Heartbeat, dev_status_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::TDSCmd, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::TDSCmd, interface_id_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, dst_suid_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, src_suid_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, forward_flag_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, priority_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, request_index_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, ts_),
  PROTOBUF_FIELD_OFFSET(::TDSCmd, parameters_),
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::TestParams)},
  { 8, 16, -1, sizeof(::Heartbeat_DevStatusEntry_DoNotUse)},
  { 18, -1, -1, sizeof(::Heartbeat)},
  { 27, -1, -1, sizeof(::TDSCmd)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::_TestParams_default_instance_._instance,
  &::_Heartbeat_DevStatusEntry_DoNotUse_default_instance_._instance,
  &::_Heartbeat_default_instance_._instance,
  &::_TDSCmd_default_instance_._instance,
};

const char descriptor_table_protodef_tdscmd_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\014tdscmd.proto\032\031google/protobuf/any.prot"
  "o\032\037google/protobuf/timestamp.proto\"(\n\nTe"
  "stParams\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"\237\001\n"
  "\tHeartbeat\022\014\n\004suid\030\001 \001(\r\022\026\n\010iid_list\030\002 \003"
  "(\0162\004.IID\022-\n\nDev_status\030\003 \003(\0132\031.Heartbeat"
  ".DevStatusEntry\032=\n\016DevStatusEntry\022\013\n\003key"
  "\030\001 \001(\r\022\032\n\005value\030\002 \001(\0162\013.Devistatus:\0028\001\"\331"
  "\001\n\006TDSCmd\022\032\n\014interface_id\030\001 \001(\0162\004.IID\022\020\n"
  "\010dst_suid\030\002 \001(\r\022\020\n\010src_suid\030\003 \001(\r\022\024\n\014for"
  "ward_flag\030\004 \001(\r\022\020\n\010priority\030\005 \001(\r\022\025\n\rreq"
  "uest_index\030\006 \001(\r\022&\n\002ts\030\007 \001(\0132\032.google.pr"
  "otobuf.Timestamp\022(\n\nparameters\030\010 \003(\0132\024.g"
  "oogle.protobuf.Any*4\n\tCodeValue\022\016\n\nbase_"
  "start\020\000\022\013\n\007Succeed\020\001\022\n\n\006Failed\020\002*\221,\n\003IID"
  "\022\014\n\010IID_Base\020\000\022\024\n\017IID_Server_Base\020\220N\022\027\n\022"
  "IID_Server_SyncEnd\020\221N\022\035\n\030IID_Server_Sate"
  "lliteList\020\365N\022%\n IID_Server_SatelliteList"
  "_respond\020\366N\022#\n\036IID_Server_SatelliteBaseU"
  "pdate\020\367N\022+\n&IID_Server_SatelliteBaseUpda"
  "te_respond\020\370N\022\'\n\"IID_Server_SatellitePri"
  "orityUpdate\020\371N\022/\n*IID_Server_SatellitePr"
  "iorityUpdate_respond\020\372N\022%\n IID_Server_Sa"
  "tellitePriorityList\020\373N\022-\n(IID_Server_Sat"
  "ellitePriorityList_respond\020\374N\022(\n#IID_Ser"
  "ver_SatelliteAvailableUpdate\020\375N\0220\n+IID_S"
  "erver_SatelliteAvailableUpdate_respond\020\376"
  "N\022&\n!IID_Server_SatelliteElementUpdate\020\377"
  "N\022.\n)IID_Server_SatelliteElementUpdate_r"
  "espond\020\200O\022$\n\037IID_Server_SatelliteElement"
  "Load\020\201O\022,\n\'IID_Server_SatelliteElementLo"
  "ad_respond\020\202O\022\034\n\027IID_Server_SatelliteDel"
  "\020\203O\022$\n\037IID_Server_SatelliteDel_respond\020\204"
  "O\0220\n+IID_Server_SatelliteInstantaneousRo"
  "otUpdate\020\205O\0228\n3IID_Server_SatelliteInsta"
  "ntaneousRootUpdate_respond\020\206O\022!\n\034IID_Ser"
  "ver_SatelliteListSend\020\207O\022)\n$IID_Server_S"
  "atelliteListSend_respond\020\210O\022$\n\037IID_Serve"
  "r_SatelliteListReceive\020\211O\022,\n\'IID_Server_"
  "SatelliteListReceive_respond\020\212O\022&\n!IID_S"
  "erver_SatelliteWorkParamList\020\331O\022.\n)IID_S"
  "erver_SatelliteWorkParamList_respond\020\332O\022"
  "(\n#IID_Server_SatelliteWorkParamUpdate\020\333"
  "O\0220\n+IID_Server_SatelliteWorkParamUpdate"
  "_respond\020\334O\022%\n IID_Server_SatelliteWorkP"
  "aramDel\020\335O\022-\n(IID_Server_SatelliteWorkPa"
  "ramDel_respond\020\336O\022*\n%IID_Server_Satellit"
  "eWorkParamListSend\020\337O\0222\n-IID_Server_Sate"
  "lliteWorkParamListSend_respond\020\340O\022-\n(IID"
  "_Server_SatelliteWorkParamListReceive\020\341O"
  "\0225\n0IID_Server_SatelliteWorkParamListRec"
  "eive_respond\020\342O\022\030\n\023IID_Server_SiteList\020\275"
  "P\022 \n\033IID_Server_SiteList_respond\020\276P\022\032\n\025I"
  "ID_Server_SiteUpdate\020\277P\022\"\n\035IID_Server_Si"
  "teUpdate_respond\020\300P\022\037\n\032IID_Server_SitePa"
  "ramUpdate\020\301P\022\'\n\"IID_Server_SiteParamUpda"
  "te_respond\020\302P\022\027\n\022IID_Server_SiteDel\020\303P\022\037"
  "\n\032IID_Server_SiteDel_respond\020\304P\022\034\n\027IID_S"
  "erver_SiteListSend\020\305P\022$\n\037IID_Server_Site"
  "ListSend_respond\020\306P\022\037\n\032IID_Server_SiteLi"
  "stReceive\020\307P\022\'\n\"IID_Server_SiteListRecei"
  "ve_respond\020\310P\022\030\n\023IID_Server_TaskList\020\241Q\022"
  " \n\033IID_Server_TaskList_respond\020\242Q\022\034\n\027IID"
  "_Server_TaskForecast\020\243Q\022$\n\037IID_Server_Ta"
  "skForecast_respond\020\244Q\022\032\n\025IID_Server_Task"
  "Update\020\245Q\022\"\n\035IID_Server_TaskUpdate_respo"
  "nd\020\246Q\022\027\n\022IID_Server_TaskDel\020\247Q\022\037\n\032IID_Se"
  "rver_TaskDel_respond\020\250Q\022\035\n\030IID_Server_Ta"
  "skDetailDat\020\251Q\022%\n IID_Server_TaskDetailD"
  "at_respond\020\252Q\022\037\n\032IID_Server_TaskDetailPo"
  "int\020\253Q\022\'\n\"IID_Server_TaskDetailPoint_res"
  "pond\020\254Q\022\031\n\024IID_Server_TaskPause\020\255Q\022!\n\034II"
  "D_Server_TaskPause_respond\020\256Q\022\033\n\026IID_Ser"
  "ver_TaskRestart\020\257Q\022#\n\036IID_Server_TaskRes"
  "tart_respond\020\260Q\022\"\n\035IID_Server_TaskHandle"
  "Conflict\020\261Q\022*\n%IID_Server_TaskHandleConf"
  "lict_respond\020\262Q\022\"\n\035IID_Server_TaskHandMo"
  "deSwitch\020\263Q\022*\n%IID_Server_TaskHandModeSw"
  "itch_respond\020\264Q\022\031\n\024IID_Server_TaskIndex\020"
  "\265Q\022!\n\034IID_Server_TaskIndex_respond\020\266Q\022\034\n"
  "\027IID_Server_TaskListSend\020\267Q\022$\n\037IID_Serve"
  "r_TaskListSend_respond\020\270Q\022\037\n\032IID_Server_"
  "TaskListReceive\020\271Q\022\'\n\"IID_Server_TaskLis"
  "tReceive_respond\020\272Q\022\033\n\026IID_Server_FileRe"
  "ceive\020\273Q\022#\n\036IID_Server_FileReceive_respo"
  "nd\020\274Q\022%\n!IID_Server_TaskExecAnalysisResu"
  "lt\020i\022.\n)IID_Server_TaskExecAnalysisResul"
  "t_respond\020\206R\022\034\n\027IID_Server_TaskExecList\020"
  "\207R\022$\n\037IID_Server_TaskExecList_respond\020\210R"
  "\022\036\n\031IID_Server_MoreSettingSet\020\351R\022&\n!IID_"
  "Server_MoreSettingSet_respond\020\352R\022\036\n\031IID_"
  "Server_MoreSettingGet\020\353R\022&\n!IID_Server_M"
  "oreSettingGet_respond\020\354R\022%\n IID_Server_M"
  "oreSettingGetDefault\020\355R\022-\n(IID_Server_Mo"
  "reSettingGetDefault_respond\020\356R\022\"\n\035IID_Se"
  "rver_MoreSettingDataSet\020\357R\022*\n%IID_Server"
  "_MoreSettingDataSet_respond\020\360R\022\"\n\035IID_Se"
  "rver_MoreSettingDataDel\020\361R\022*\n%IID_Server"
  "_MoreSettingDataDel_respond\020\362R\022\025\n\020IID_Se"
  "rver_Login\020\315S\022\035\n\030IID_Server_Login_respon"
  "d\020\316S\022\032\n\025IID_Server_UserCreate\020\317S\022\"\n\035IID_"
  "Server_UserCreate_respond\020\320S\022\032\n\025IID_Serv"
  "er_UserUpdate\020\321S\022\"\n\035IID_Server_UserUpdat"
  "e_respond\020\322S\022\027\n\022IID_Server_UserDel\020\323S\022\037\n"
  "\032IID_Server_UserDel_respond\020\324S\022\030\n\023IID_Se"
  "rver_UserList\020\325S\022 \n\033IID_Server_UserList_"
  "respond\020\326S\022\021\n\013IID_UI_Base\020\240\234\001\022\020\n\nIID_UI_"
  "xxx\020\241\234\001\022\030\n\022IID_UI_xxx_respond\020\242\234\001\022\025\n\017IID"
  "_Device_Base\020\260\352\001\022\031\n\023IID_Device_DBC_CURD\020"
  "\261\352\001\022!\n\033IID_Device_DBC_CURD_respond\020\262\352\001\022\034"
  "\n\026IID_Device_Xpro_TX_cmd\020\263\352\001\022$\n\036IID_Devi"
  "ce_Xpro_TX_cmd_respond\020\264\352\001\022\034\n\026IID_Device"
  "_Xpro_RX_cmd\020\265\352\001\022$\n\036IID_Device_Xpro_RX_c"
  "md_respond\020\266\352\001\022\021\n\014IID_AGI_Base\020\240\037\022\020\n\013IID"
  "_AGI_TLE\020\241\037\022\030\n\023IID_AGI_TLE_respond\020\242\037\022\023\n"
  "\016IID_AGI_Report\020\243\037\022\033\n\026IID_AGI_Report_res"
  "pond\020\244\037\022\022\n\014IID_OAM_Base\020\320\206\003\022\032\n\024IID_OAM_H"
  "eartBeat_RX\020\321\206\003\022\024\n\016IID_OAM_LOG_RX\020\323\206\003\022\035\n"
  "\027IID_OAM_SysStatus_Relay\020\325\206\003\022%\n\037IID_OAM_"
  "SysStatus_Relay_Respond\020\326\206\003\022\037\n\031IID_OAM_P"
  "erformance_Relay\020\327\206\003\022\'\n!IID_OAM_Performa"
  "nce_Relay_Respond\020\330\206\003\022\037\n\031IID_OAM_Alert_S"
  "tart_Relay\020\331\206\003\022\'\n!IID_OAM_Alert_Start_Re"
  "lay_Respond\020\332\206\003\022\035\n\027IID_OAM_Alert_End_Rel"
  "ay\020\333\206\003\022%\n\037IID_OAM_Alert_End_Relay_Respon"
  "d\020\334\206\003\022\027\n\021IID_OAM_LOG_Relay\020\335\206\003\022\037\n\031IID_OA"
  "M_LOG_Relay_Respond\020\336\206\003\022\"\n\034IID_OAM_UI_Sy"
  "sStatus_Require\020\337\206\003\022\"\n\034IID_OAM_UI_SysSta"
  "tus_Respond\020\340\206\003\022!\n\033IID_OAM_UI_SysStatus_"
  "Update\020\341\206\003\022)\n#IID_OAM_UI_SysStatus_Updat"
  "e_Respond\020\342\206\003\022&\n IID_OAM_UI_CurrentAlarm"
  "s_Require\020\343\206\003\022&\n IID_OAM_UI_CurrentAlarm"
  "s_Respond\020\344\206\003\022+\n%IID_OAM_UI_CurrentAlarm"
  "s_Start_Update\020\345\206\003\0223\n-IID_OAM_UI_Current"
  "Alarms_Start_Update_Respond\020\346\206\003\022)\n#IID_O"
  "AM_UI_CurrentAlarms_End_Update\020\347\206\003\0221\n+II"
  "D_OAM_UI_CurrentAlarms_End_Update_Respon"
  "d\020\350\206\003\022&\n IID_OAM_UI_HistoryAlarms_Requir"
  "e\020\351\206\003\022&\n IID_OAM_UI_HistoryAlarms_Respon"
  "d\020\352\206\003\022)\n#IID_OAM_UI_AlarmAttribution_Req"
  "uire\020\353\206\003\022)\n#IID_OAM_UI_AlarmAttribution_"
  "Respond\020\354\206\003\0220\n*IID_OAM_UI_AlarmAttributi"
  "on_Update_Require\020\355\206\003\0220\n*IID_OAM_UI_Alar"
  "mAttribution_Update_Respond\020\356\206\003\022!\n\033IID_O"
  "AM_UI_PerInfos_Require\020\357\206\003\022!\n\033IID_OAM_UI"
  "_PerInfos_Respond\020\360\206\003\022\'\n!IID_OAM_UI_PerA"
  "ttribution_Require\020\361\206\003\022\'\n!IID_OAM_UI_Per"
  "Attribution_Respond\020\362\206\003\022.\n(IID_OAM_UI_Pe"
  "rAttribution_Update_Require\020\363\206\003\022.\n(IID_O"
  "AM_UI_PerAttribution_Update_Respond\020\364\206\003\022"
  "\034\n\026IID_OAM_UI_LOG_Require\020\365\206\003\022\034\n\026IID_OAM"
  "_UI_LOG_Respond\020\366\206\003\022 \n\032IID_OAM_Device_Al"
  "ert_Start\020\367\206\003\022(\n\"IID_OAM_Device_Alert_St"
  "art_Respond\020\370\206\003\022\036\n\030IID_OAM_Device_Alert_"
  "End\020\371\206\003\022&\n IID_OAM_Device_Alert_End_Resp"
  "ond\020\372\206\003\022#\n\035IID_OAM_Device_Performance_RX"
  "\020\373\206\003*\\\n\nBROKERAREA\022\024\n\020BROKERAREA_LOCAL\020\000"
  "\022\033\n\027BROKERAREA_CLOUD_LEVEL2\020\001\022\033\n\027BROKERA"
  "REA_CLOUD_LEVEL1\020\002*\232\001\n\tSUBSYSTEM\022\022\n\016SUBS"
  "YSTEM_base\020\000\022\024\n\020SUBSYSTEM_Server\020\001\022\020\n\014SU"
  "BSYSTEM_UI\020\002\022\024\n\020SUBSYSTEM_Device\020\003\022\021\n\rSU"
  "BSYSTEM_AGI\020\004\022\021\n\rSUBSYSTEM_OAM\020\005\022\025\n\021SUBS"
  "YSTEM_default\020\006*A\n\nDevistatus\022\017\n\013Init_st"
  "atus\020\000\022\n\n\006Online\020\001\022\013\n\007Offline\020\002\022\t\n\005Alarm"
  "\020\003B\014Z\n../protogob\006proto3"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_tdscmd_2eproto_deps[2] = {
  &::descriptor_table_google_2fprotobuf_2fany_2eproto,
  &::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto,
};
static ::_pbi::once_flag descriptor_table_tdscmd_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_tdscmd_2eproto = {
    false, false, 6544, descriptor_table_protodef_tdscmd_2eproto,
    "tdscmd.proto",
    &descriptor_table_tdscmd_2eproto_once, descriptor_table_tdscmd_2eproto_deps, 2, 4,
    schemas, file_default_instances, TableStruct_tdscmd_2eproto::offsets,
    file_level_metadata_tdscmd_2eproto, file_level_enum_descriptors_tdscmd_2eproto,
    file_level_service_descriptors_tdscmd_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_tdscmd_2eproto_getter() {
  return &descriptor_table_tdscmd_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_tdscmd_2eproto(&descriptor_table_tdscmd_2eproto);
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CodeValue_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_tdscmd_2eproto);
  return file_level_enum_descriptors_tdscmd_2eproto[0];
}
bool CodeValue_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IID_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_tdscmd_2eproto);
  return file_level_enum_descriptors_tdscmd_2eproto[1];
}
bool IID_IsValid(int value) {
  switch (value) {
    case 0:
    case 105:
    case 4000:
    case 4001:
    case 4002:
    case 4003:
    case 4004:
    case 10000:
    case 10001:
    case 10101:
    case 10102:
    case 10103:
    case 10104:
    case 10105:
    case 10106:
    case 10107:
    case 10108:
    case 10109:
    case 10110:
    case 10111:
    case 10112:
    case 10113:
    case 10114:
    case 10115:
    case 10116:
    case 10117:
    case 10118:
    case 10119:
    case 10120:
    case 10121:
    case 10122:
    case 10201:
    case 10202:
    case 10203:
    case 10204:
    case 10205:
    case 10206:
    case 10207:
    case 10208:
    case 10209:
    case 10210:
    case 10301:
    case 10302:
    case 10303:
    case 10304:
    case 10305:
    case 10306:
    case 10307:
    case 10308:
    case 10309:
    case 10310:
    case 10311:
    case 10312:
    case 10401:
    case 10402:
    case 10403:
    case 10404:
    case 10405:
    case 10406:
    case 10407:
    case 10408:
    case 10409:
    case 10410:
    case 10411:
    case 10412:
    case 10413:
    case 10414:
    case 10415:
    case 10416:
    case 10417:
    case 10418:
    case 10419:
    case 10420:
    case 10421:
    case 10422:
    case 10423:
    case 10424:
    case 10425:
    case 10426:
    case 10427:
    case 10428:
    case 10502:
    case 10503:
    case 10504:
    case 10601:
    case 10602:
    case 10603:
    case 10604:
    case 10605:
    case 10606:
    case 10607:
    case 10608:
    case 10609:
    case 10610:
    case 10701:
    case 10702:
    case 10703:
    case 10704:
    case 10705:
    case 10706:
    case 10707:
    case 10708:
    case 10709:
    case 10710:
    case 20000:
    case 20001:
    case 20002:
    case 30000:
    case 30001:
    case 30002:
    case 30003:
    case 30004:
    case 30005:
    case 30006:
    case 50000:
    case 50001:
    case 50003:
    case 50005:
    case 50006:
    case 50007:
    case 50008:
    case 50009:
    case 50010:
    case 50011:
    case 50012:
    case 50013:
    case 50014:
    case 50015:
    case 50016:
    case 50017:
    case 50018:
    case 50019:
    case 50020:
    case 50021:
    case 50022:
    case 50023:
    case 50024:
    case 50025:
    case 50026:
    case 50027:
    case 50028:
    case 50029:
    case 50030:
    case 50031:
    case 50032:
    case 50033:
    case 50034:
    case 50035:
    case 50036:
    case 50037:
    case 50038:
    case 50039:
    case 50040:
    case 50041:
    case 50042:
    case 50043:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BROKERAREA_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_tdscmd_2eproto);
  return file_level_enum_descriptors_tdscmd_2eproto[2];
}
bool BROKERAREA_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SUBSYSTEM_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_tdscmd_2eproto);
  return file_level_enum_descriptors_tdscmd_2eproto[3];
}
bool SUBSYSTEM_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Devistatus_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_tdscmd_2eproto);
  return file_level_enum_descriptors_tdscmd_2eproto[4];
}
bool Devistatus_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
      return true;
    default:
      return false;
  }
}


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

class TestParams::_Internal {
 public:
};

TestParams::TestParams(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor();
  // @@protoc_insertion_point(arena_constructor:TestParams)
}
TestParams::TestParams(const TestParams& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_key().empty()) {
    key_.Set(from._internal_key(), 
      GetArenaForAllocation());
  }
  value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_value().empty()) {
    value_.Set(from._internal_value(), 
      GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:TestParams)
}

inline void TestParams::SharedCtor() {
key_.InitDefault();
#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
  key_.Set("", GetArenaForAllocation());
#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
value_.InitDefault();
#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
  value_.Set("", GetArenaForAllocation());
#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

TestParams::~TestParams() {
  // @@protoc_insertion_point(destructor:TestParams)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void TestParams::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  key_.Destroy();
  value_.Destroy();
}

void TestParams::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

void TestParams::Clear() {
// @@protoc_insertion_point(message_clear_start:TestParams)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  key_.ClearToEmpty();
  value_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* TestParams::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string key = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_key();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "TestParams.key"));
        } else
          goto handle_unusual;
        continue;
      // string value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "TestParams.value"));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* TestParams::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:TestParams)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string key = 1;
  if (!this->_internal_key().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_key().data(), static_cast<int>(this->_internal_key().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "TestParams.key");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_key(), target);
  }

  // string value = 2;
  if (!this->_internal_value().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_value().data(), static_cast<int>(this->_internal_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "TestParams.value");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_value(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:TestParams)
  return target;
}

size_t TestParams::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:TestParams)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string key = 1;
  if (!this->_internal_key().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_key());
  }

  // string value = 2;
  if (!this->_internal_value().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_value());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData TestParams::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
    TestParams::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*TestParams::GetClassData() const { return &_class_data_; }

void TestParams::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<TestParams *>(to)->MergeFrom(
      static_cast<const TestParams &>(from));
}


void TestParams::MergeFrom(const TestParams& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:TestParams)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_key().empty()) {
    _internal_set_key(from._internal_key());
  }
  if (!from._internal_value().empty()) {
    _internal_set_value(from._internal_value());
  }
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void TestParams::CopyFrom(const TestParams& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:TestParams)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool TestParams::IsInitialized() const {
  return true;
}

void TestParams::InternalSwap(TestParams* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &key_, lhs_arena,
      &other->key_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &value_, lhs_arena,
      &other->value_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata TestParams::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_tdscmd_2eproto_getter, &descriptor_table_tdscmd_2eproto_once,
      file_level_metadata_tdscmd_2eproto[0]);
}

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

Heartbeat_DevStatusEntry_DoNotUse::Heartbeat_DevStatusEntry_DoNotUse() {}
Heartbeat_DevStatusEntry_DoNotUse::Heartbeat_DevStatusEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void Heartbeat_DevStatusEntry_DoNotUse::MergeFrom(const Heartbeat_DevStatusEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata Heartbeat_DevStatusEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_tdscmd_2eproto_getter, &descriptor_table_tdscmd_2eproto_once,
      file_level_metadata_tdscmd_2eproto[1]);
}

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

class Heartbeat::_Internal {
 public:
};

Heartbeat::Heartbeat(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  iid_list_(arena),
  dev_status_(arena) {
  SharedCtor();
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &Heartbeat::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:Heartbeat)
}
Heartbeat::Heartbeat(const Heartbeat& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      iid_list_(from.iid_list_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  dev_status_.MergeFrom(from.dev_status_);
  suid_ = from.suid_;
  // @@protoc_insertion_point(copy_constructor:Heartbeat)
}

inline void Heartbeat::SharedCtor() {
suid_ = 0u;
}

Heartbeat::~Heartbeat() {
  // @@protoc_insertion_point(destructor:Heartbeat)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void Heartbeat::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  dev_status_.Destruct();
}

void Heartbeat::ArenaDtor(void* object) {
  Heartbeat* _this = reinterpret_cast< Heartbeat* >(object);
  _this->dev_status_.Destruct();
}
void Heartbeat::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

void Heartbeat::Clear() {
// @@protoc_insertion_point(message_clear_start:Heartbeat)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  iid_list_.Clear();
  dev_status_.Clear();
  suid_ = 0u;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* Heartbeat::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // uint32 suid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          suid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .IID iid_list = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_iid_list(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 16) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_add_iid_list(static_cast<::IID>(val));
        } else
          goto handle_unusual;
        continue;
      // map<uint32, .Devistatus> Dev_status = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&dev_status_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* Heartbeat::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:Heartbeat)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // uint32 suid = 1;
  if (this->_internal_suid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_suid(), target);
  }

  // repeated .IID iid_list = 2;
  {
    int byte_size = _iid_list_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteEnumPacked(
          2, iid_list_, byte_size, target);
    }
  }

  // map<uint32, .Devistatus> Dev_status = 3;
  if (!this->_internal_dev_status().empty()) {
    using MapType = ::_pb::Map<uint32_t, ::Devistatus>;
    using WireHelper = Heartbeat_DevStatusEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_dev_status();

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterFlat<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(3, entry.first, entry.second, target, stream);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(3, entry.first, entry.second, target, stream);
      }
    }
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Heartbeat)
  return target;
}

size_t Heartbeat::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:Heartbeat)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .IID iid_list = 2;
  {
    size_t data_size = 0;
    unsigned int count = static_cast<unsigned int>(this->_internal_iid_list_size());for (unsigned int i = 0; i < count; i++) {
      data_size += ::_pbi::WireFormatLite::EnumSize(
        this->_internal_iid_list(static_cast<int>(i)));
    }
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _iid_list_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // map<uint32, .Devistatus> Dev_status = 3;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_dev_status_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< uint32_t, ::Devistatus >::const_iterator
      it = this->_internal_dev_status().begin();
      it != this->_internal_dev_status().end(); ++it) {
    total_size += Heartbeat_DevStatusEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

  // uint32 suid = 1;
  if (this->_internal_suid() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_suid());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Heartbeat::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
    Heartbeat::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Heartbeat::GetClassData() const { return &_class_data_; }

void Heartbeat::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<Heartbeat *>(to)->MergeFrom(
      static_cast<const Heartbeat &>(from));
}


void Heartbeat::MergeFrom(const Heartbeat& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Heartbeat)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  iid_list_.MergeFrom(from.iid_list_);
  dev_status_.MergeFrom(from.dev_status_);
  if (from._internal_suid() != 0) {
    _internal_set_suid(from._internal_suid());
  }
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void Heartbeat::CopyFrom(const Heartbeat& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:Heartbeat)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool Heartbeat::IsInitialized() const {
  return true;
}

void Heartbeat::InternalSwap(Heartbeat* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  iid_list_.InternalSwap(&other->iid_list_);
  dev_status_.InternalSwap(&other->dev_status_);
  swap(suid_, other->suid_);
}

::PROTOBUF_NAMESPACE_ID::Metadata Heartbeat::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_tdscmd_2eproto_getter, &descriptor_table_tdscmd_2eproto_once,
      file_level_metadata_tdscmd_2eproto[2]);
}

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

class TDSCmd::_Internal {
 public:
  static const ::PROTOBUF_NAMESPACE_ID::Timestamp& ts(const TDSCmd* msg);
};

const ::PROTOBUF_NAMESPACE_ID::Timestamp&
TDSCmd::_Internal::ts(const TDSCmd* msg) {
  return *msg->ts_;
}
void TDSCmd::clear_ts() {
  if (GetArenaForAllocation() == nullptr && ts_ != nullptr) {
    delete ts_;
  }
  ts_ = nullptr;
}
void TDSCmd::clear_parameters() {
  parameters_.Clear();
}
TDSCmd::TDSCmd(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  parameters_(arena) {
  SharedCtor();
  // @@protoc_insertion_point(arena_constructor:TDSCmd)
}
TDSCmd::TDSCmd(const TDSCmd& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      parameters_(from.parameters_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_ts()) {
    ts_ = new ::PROTOBUF_NAMESPACE_ID::Timestamp(*from.ts_);
  } else {
    ts_ = nullptr;
  }
  ::memcpy(&interface_id_, &from.interface_id_,
    static_cast<size_t>(reinterpret_cast<char*>(&request_index_) -
    reinterpret_cast<char*>(&interface_id_)) + sizeof(request_index_));
  // @@protoc_insertion_point(copy_constructor:TDSCmd)
}

inline void TDSCmd::SharedCtor() {
::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
    reinterpret_cast<char*>(&ts_) - reinterpret_cast<char*>(this)),
    0, static_cast<size_t>(reinterpret_cast<char*>(&request_index_) -
    reinterpret_cast<char*>(&ts_)) + sizeof(request_index_));
}

TDSCmd::~TDSCmd() {
  // @@protoc_insertion_point(destructor:TDSCmd)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void TDSCmd::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete ts_;
}

void TDSCmd::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

void TDSCmd::Clear() {
// @@protoc_insertion_point(message_clear_start:TDSCmd)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  parameters_.Clear();
  if (GetArenaForAllocation() == nullptr && ts_ != nullptr) {
    delete ts_;
  }
  ts_ = nullptr;
  ::memset(&interface_id_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&request_index_) -
      reinterpret_cast<char*>(&interface_id_)) + sizeof(request_index_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* TDSCmd::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .IID interface_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_interface_id(static_cast<::IID>(val));
        } else
          goto handle_unusual;
        continue;
      // uint32 dst_suid = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          dst_suid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // uint32 src_suid = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          src_suid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // uint32 forward_flag = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          forward_flag_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // uint32 priority = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          priority_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // uint32 request_index = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          request_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .google.protobuf.Timestamp ts = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_ts(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .google.protobuf.Any parameters = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_parameters(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* TDSCmd::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:TDSCmd)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .IID interface_id = 1;
  if (this->_internal_interface_id() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_interface_id(), target);
  }

  // uint32 dst_suid = 2;
  if (this->_internal_dst_suid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_dst_suid(), target);
  }

  // uint32 src_suid = 3;
  if (this->_internal_src_suid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_src_suid(), target);
  }

  // uint32 forward_flag = 4;
  if (this->_internal_forward_flag() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_forward_flag(), target);
  }

  // uint32 priority = 5;
  if (this->_internal_priority() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_priority(), target);
  }

  // uint32 request_index = 6;
  if (this->_internal_request_index() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_request_index(), target);
  }

  // .google.protobuf.Timestamp ts = 7;
  if (this->_internal_has_ts()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::ts(this),
        _Internal::ts(this).GetCachedSize(), target, stream);
  }

  // repeated .google.protobuf.Any parameters = 8;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_parameters_size()); i < n; i++) {
    const auto& repfield = this->_internal_parameters(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(8, repfield, repfield.GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:TDSCmd)
  return target;
}

size_t TDSCmd::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:TDSCmd)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .google.protobuf.Any parameters = 8;
  total_size += 1UL * this->_internal_parameters_size();
  for (const auto& msg : this->parameters_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // .google.protobuf.Timestamp ts = 7;
  if (this->_internal_has_ts()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *ts_);
  }

  // .IID interface_id = 1;
  if (this->_internal_interface_id() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_interface_id());
  }

  // uint32 dst_suid = 2;
  if (this->_internal_dst_suid() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_dst_suid());
  }

  // uint32 src_suid = 3;
  if (this->_internal_src_suid() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_src_suid());
  }

  // uint32 forward_flag = 4;
  if (this->_internal_forward_flag() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_forward_flag());
  }

  // uint32 priority = 5;
  if (this->_internal_priority() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_priority());
  }

  // uint32 request_index = 6;
  if (this->_internal_request_index() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_request_index());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData TDSCmd::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
    TDSCmd::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*TDSCmd::GetClassData() const { return &_class_data_; }

void TDSCmd::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<TDSCmd *>(to)->MergeFrom(
      static_cast<const TDSCmd &>(from));
}


void TDSCmd::MergeFrom(const TDSCmd& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:TDSCmd)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  parameters_.MergeFrom(from.parameters_);
  if (from._internal_has_ts()) {
    _internal_mutable_ts()->::PROTOBUF_NAMESPACE_ID::Timestamp::MergeFrom(from._internal_ts());
  }
  if (from._internal_interface_id() != 0) {
    _internal_set_interface_id(from._internal_interface_id());
  }
  if (from._internal_dst_suid() != 0) {
    _internal_set_dst_suid(from._internal_dst_suid());
  }
  if (from._internal_src_suid() != 0) {
    _internal_set_src_suid(from._internal_src_suid());
  }
  if (from._internal_forward_flag() != 0) {
    _internal_set_forward_flag(from._internal_forward_flag());
  }
  if (from._internal_priority() != 0) {
    _internal_set_priority(from._internal_priority());
  }
  if (from._internal_request_index() != 0) {
    _internal_set_request_index(from._internal_request_index());
  }
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void TDSCmd::CopyFrom(const TDSCmd& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:TDSCmd)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool TDSCmd::IsInitialized() const {
  return true;
}

void TDSCmd::InternalSwap(TDSCmd* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  parameters_.InternalSwap(&other->parameters_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(TDSCmd, request_index_)
      + sizeof(TDSCmd::request_index_)
      - PROTOBUF_FIELD_OFFSET(TDSCmd, ts_)>(
          reinterpret_cast<char*>(&ts_),
          reinterpret_cast<char*>(&other->ts_));
}

::PROTOBUF_NAMESPACE_ID::Metadata TDSCmd::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_tdscmd_2eproto_getter, &descriptor_table_tdscmd_2eproto_once,
      file_level_metadata_tdscmd_2eproto[3]);
}

// @@protoc_insertion_point(namespace_scope)
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::TestParams*
Arena::CreateMaybeMessage< ::TestParams >(Arena* arena) {
  return Arena::CreateMessageInternal< ::TestParams >(arena);
}
template<> PROTOBUF_NOINLINE ::Heartbeat_DevStatusEntry_DoNotUse*
Arena::CreateMaybeMessage< ::Heartbeat_DevStatusEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::Heartbeat_DevStatusEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::Heartbeat*
Arena::CreateMaybeMessage< ::Heartbeat >(Arena* arena) {
  return Arena::CreateMessageInternal< ::Heartbeat >(arena);
}
template<> PROTOBUF_NOINLINE ::TDSCmd*
Arena::CreateMaybeMessage< ::TDSCmd >(Arena* arena) {
  return Arena::CreateMessageInternal< ::TDSCmd >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
