Repository: open-telemetry/opamp-go
Pull request #22 (2021-11-30 01:55:56)

Eliminate DataForAgent message
The DataForAgent message is unnecessary. Moved all fields from DataForAgent
to ServertoAgent and deleted DataForAgent.

Implements spec change https://github.com/open-telemetry/opamp-spec/pull/42


Patch:
diff --git a/client/internal/receiver.go b/client/internal/receiver.go
index 4f36160..a994e4e 100644
--- a/client/internal/receiver.go
+++ b/client/internal/receiver.go
@@ -59,30 +59,22 @@ func (r *Receiver) receiveMessage(msg *protobufs.ServerToAgent) error {
 	return err
 }
 
-func (r *Receiver) processReceivedMessage(ctx context.Context, p *protobufs.ServerToAgent) {
-	data := p.GetDataForAgent()
-	if data != nil {
-		r.rcvDataForAgent(ctx, data)
-		return
-	}
-
-	err := p.GetErrorResponse()
-	if err != nil {
-		r.processErrorResponse(err)
-	}
-}
-
-func (r *Receiver) rcvDataForAgent(ctx context.Context, data *protobufs.DataForAgent) {
+func (r *Receiver) processReceivedMessage(ctx context.Context, msg *protobufs.ServerToAgent) {
 	if r.callbacks != nil {
-		reportStatus := r.rcvRemoteConfig(ctx, data.RemoteConfig)
+		reportStatus := r.rcvRemoteConfig(ctx, msg.RemoteConfig)
 
-		r.rcvConnectionSettings(ctx, data.ConnectionSettings)
-		r.rcvAddonsAvailable(data.AddonsAvailable)
+		r.rcvConnectionSettings(ctx, msg.ConnectionSettings)
+		r.rcvAddonsAvailable(msg.AddonsAvailable)
 
 		if reportStatus {
 			r.sender.ScheduleSend()
 		}
 	}
+
+	err := msg.GetErrorResponse()
+	if err != nil {
+		r.processErrorResponse(err)
+	}
 }
 
 func (r *Receiver) rcvRemoteConfig(ctx context.Context, config *protobufs.AgentRemoteConfig) (reportStatus bool) {
diff --git a/internal/proto/opamp.proto b/internal/proto/opamp.proto
index 4642b51..598a67d 100644
--- a/internal/proto/opamp.proto
+++ b/internal/proto/opamp.proto
@@ -73,52 +73,30 @@ message ServerToAgent {
     // Used for multiplexing messages from/to multiple agents using one message stream.
     string instance_uid = 1;
 
-    // There are two types of ServerToAgent messages: responses to an AgentToServer
-    // message and non-response messages, which are initiated by the server.
-    //
-    // If this message is a response to an AgentToServer message then sequence_num field
-    // here MUST be equal to the AgentToServer.sequence_num field. The sequential number
-    // allows to correctly match responses to requests even when the responses arrive
-    // re-ordered.
-    //
-    // If this message is non-response then the sequence_num field MUST be assigned
-    // by the server. The server SHOULD start with sequence_num=1 and increment it by 2
-    // for every new message that is not a response to an agent request (thus only
-    // odd numbers should appear in the non-response type messages from server to agent).
-    //fixed64 sequence_num = 2;
-
-    oneof Body {
-        DataForAgent data_for_agent = 2;
-        ServerErrorResponse error_response = 3;
-    }
-}
+    // error_response is set if the Server wants to indicate that something went wrong
+    // during processing of an AgentToServer message. If error_response is set then
+    // all other fields below must be unset and vice versa, if any of the fields below is
+    // set then error_response must be unset.
+    ServerErrorResponse error_response = 2;
 
-// DataForAgent message is sent from the server to the agent either in response to the
-// AgentToServer message or when the server has data to deliver to the agent.
-//
-// If the server receives an AgentToServer message and the server has nothing to
-// send back to the agent then DataForAgent message will still be sent, but all
-// fields will be unset (in that case DataForAgent serves simply as an acknowledgement
-// of receipt).
-message DataForAgent {
     // remote_config field is set when the server has a remote config offer for the agent.
-    AgentRemoteConfig remote_config = 1;
+    AgentRemoteConfig remote_config = 3;
 
     // This field is set when the Server wants the Agent to change one or more
     // of its client connection settings (destination, headers, certificate, etc).
-    ConnectionSettingsOffers connection_settings = 2;
+    ConnectionSettingsOffers connection_settings = 4;
 
     // addons_available field is set when the server has addons to offer to the agent.
-    AddonsAvailable addons_available = 3;
+    AddonsAvailable addons_available = 5;
 
     // agent_package_available field is set when the server has a different version
     // of an agent package available for download.
-    AgentPackageAvailable agent_package_available = 4;
+    AgentPackageAvailable agent_package_available = 6;
 
     enum Flags {
         FlagsUnspecified = 0;
 
-        // DataForAgentFlags is a bit mask. Values below define individual bits.
+        // Flags is a bit mask. Values below define individual bits.
 
         // Report* flags an be used by the server if the agent did not include the
         // particular bit of information in the last status report (which is an allowed
@@ -131,7 +109,7 @@ message DataForAgent {
         ReportAddonStatus     = 0x00000002;
     }
     // Bit flags as defined by Flags bit masks.
-    Flags flags = 5;
+    Flags flags = 7;
 }
 
 // The ConnectionSettings message is a collection of fields which comprise an
diff --git a/internal/protobufs/opamp.pb.go b/internal/protobufs/opamp.pb.go
index b81185d..08cdbfd 100644
--- a/internal/protobufs/opamp.pb.go
+++ b/internal/protobufs/opamp.pb.go
@@ -36,55 +36,55 @@ const (
 	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 )
 
-type DataForAgent_Flags int32
+type ServerToAgent_Flags int32
 
 const (
-	DataForAgent_FlagsUnspecified DataForAgent_Flags = 0
+	ServerToAgent_FlagsUnspecified ServerToAgent_Flags = 0
 	// The server asks the agent to report effective config.
-	DataForAgent_ReportEffectiveConfig DataForAgent_Flags = 1
+	ServerToAgent_ReportEffectiveConfig ServerToAgent_Flags = 1
 	// The server asks the agent to report addon statuses.
-	DataForAgent_ReportAddonStatus DataForAgent_Flags = 2
+	ServerToAgent_ReportAddonStatus ServerToAgent_Flags = 2
 )
 
-// Enum value maps for DataForAgent_Flags.
+// Enum value maps for ServerToAgent_Flags.
 var (
-	DataForAgent_Flags_name = map[int32]string{
+	ServerToAgent_Flags_name = map[int32]string{
 		0: "FlagsUnspecified",
 		1: "ReportEffectiveConfig",
 		2: "ReportAddonStatus",
 	}
-	DataForAgent_Flags_value = map[string]int32{
+	ServerToAgent_Flags_value = map[string]int32{
 		"FlagsUnspecified":      0,
 		"ReportEffectiveConfig": 1,
 		"ReportAddonStatus":     2,
 	}
 )
 
-func (x DataForAgent_Flags) Enum() *DataForAgent_Flags {
-	p := new(DataForAgent_Flags)
+func (x ServerToAgent_Flags) Enum() *ServerToAgent_Flags {
+	p := new(ServerToAgent_Flags)
 	*p = x
 	return p
 }
 
-func (x DataForAgent_Flags) String() string {
+func (x ServerToAgent_Flags) String() string {
 	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
-func (DataForAgent_Flags) Descriptor() protoreflect.EnumDescriptor {
+func (ServerToAgent_Flags) Descriptor() protoreflect.EnumDescriptor {
 	return file_opamp_proto_enumTypes[0].Descriptor()
 }
 
-func (DataForAgent_Flags) Type() protoreflect.EnumType {
+func (ServerToAgent_Flags) Type() protoreflect.EnumType {
 	return &file_opamp_proto_enumTypes[0]
 }
 
-func (x DataForAgent_Flags) Number() protoreflect.EnumNumber {
+func (x ServerToAgent_Flags) Number() protoreflect.EnumNumber {
 	return protoreflect.EnumNumber(x)
 }
 
-// Deprecated: Use DataForAgent_Flags.Descriptor instead.
-func (DataForAgent_Flags) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{3, 0}
+// Deprecated: Use ServerToAgent_Flags.Descriptor instead.
+func (ServerToAgent_Flags) EnumDescriptor() ([]byte, []int) {
+	return file_opamp_proto_rawDescGZIP(), []int{2, 0}
 }
 
 type ConnectionSettings_Flags int32
@@ -133,7 +133,7 @@ func (x ConnectionSettings_Flags) Number() protoreflect.EnumNumber {
 
 // Deprecated: Use ConnectionSettings_Flags.Descriptor instead.
 func (ConnectionSettings_Flags) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{4, 0}
+	return file_opamp_proto_rawDescGZIP(), []int{3, 0}
 }
 
 type ServerErrorResponse_Type int32
@@ -190,7 +190,7 @@ func (x ServerErrorResponse_Type) Number() protoreflect.EnumNumber {
 
 // Deprecated: Use ServerErrorResponse_Type.Descriptor instead.
 func (ServerErrorResponse_Type) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{12, 0}
+	return file_opamp_proto_rawDescGZIP(), []int{11, 0}
 }
 
 type RemoteConfigStatus_Status int32
@@ -243,7 +243,7 @@ func (x RemoteConfigStatus_Status) Number() protoreflect.EnumNumber {
 
 // Deprecated: Use RemoteConfigStatus_Status.Descriptor instead.
 func (RemoteConfigStatus_Status) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{18, 0}
+	return file_opamp_proto_rawDescGZIP(), []int{17, 0}
 }
 
 type AgentAddonStatus_Status int32
@@ -304,7 +304,7 @@ func (x AgentAddonStatus_Status) Number() protoreflect.EnumNumber {
 
 // Deprecated: Use AgentAddonStatus_Status.Descriptor instead.
 func (AgentAddonStatus_Status) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{20, 0}
+	return file_opamp_proto_rawDescGZIP(), []int{19, 0}
 }
 
 type AgentInstallStatus_Status int32
@@ -369,7 +369,7 @@ func (x AgentInstallStatus_Status) Number() protoreflect.EnumNumber {
 
 // Deprecated: Use AgentInstallStatus_Status.Descriptor instead.
 func (AgentInstallStatus_Status) EnumDescriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{21, 0}
+	return file_opamp_proto_rawDescGZIP(), []int{20, 0}
 }
 
 type AgentToServer struct {
@@ -550,10 +550,23 @@ type ServerToAgent struct {
 	// Agent instance uid. MUST match the instance_uid field in AgentToServer message.
 	// Used for multiplexing messages from/to multiple agents using one message stream.
 	InstanceUid string `protobuf:"bytes,1,opt,name=instance_uid,json=instanceUid,proto3" json:"instance_uid,omitempty"`
-	// Types that are assignable to Body:
-	//	*ServerToAgent_DataForAgent
-	//	*ServerToAgent_ErrorResponse
-	Body isServerToAgent_Body `protobuf_oneof:"Body"`
+	// error_response is set if the Server wants to indicate that something went wrong
+	// during processing of an AgentToServer message. If error_response is set then
+	// all other fields below must be unset and vice versa, if any of the fields below is
+	// set then error_response must be unset.
+	ErrorResponse *ServerErrorResponse `protobuf:"bytes,2,opt,name=error_response,json=errorResponse,proto3" json:"error_response,omitempty"`
+	// remote_config field is set when the server has a remote config offer for the agent.
+	RemoteConfig *AgentRemoteConfig `protobuf:"bytes,3,opt,name=remote_config,json=remoteConfig,proto3" json:"remote_config,omitempty"`
+	// This field is set when the Server wants the Agent to change one or more
+	// of its client connection settings (destination, headers, certificate, etc).
+	ConnectionSettings *ConnectionSettingsOffers `protobuf:"bytes,4,opt,name=connection_settings,json=connectionSettings,proto3" json:"connection_settings,omitempty"`
+	// addons_available field is set when the server has addons to offer to the agent.
+	AddonsAvailable *AddonsAvailable `protobuf:"bytes,5,opt,name=addons_available,json=addonsAvailable,proto3" json:"addons_available,omitempty"`
+	// agent_package_available field is set when the server has a different version
+	// of an agent package available for download.
+	AgentPackageAvailable *AgentPackageAvailable `protobuf:"bytes,6,opt,name=agent_package_available,json=agentPackageAvailable,proto3" json:"agent_package_available,omitempty"`
+	// Bit flags as defined by Flags bit masks.
+	Flags ServerToAgent_Flags `protobuf:"varint,7,opt,name=flags,proto3,enum=opamp.proto.ServerToAgent_Flags" json:"flags,omitempty"`
 }
 
 func (x *ServerToAgent) Reset() {
@@ -595,134 +608,46 @@ func (x *ServerToAgent) GetInstanceUid() string {
 	return ""
 }
 
-func (m *ServerToAgent) GetBody() isServerToAgent_Body {
-	if m != nil {
-		return m.Body
-	}
-	return nil
-}
-
-func (x *ServerToAgent) GetDataForAgent() *DataForAgent {
-	if x, ok := x.GetBody().(*ServerToAgent_DataForAgent); ok {
-		return x.DataForAgent
-	}
-	return nil
-}
-
 func (x *ServerToAgent) GetErrorResponse() *ServerErrorResponse {
-	if x, ok := x.GetBody().(*ServerToAgent_ErrorResponse); ok {
+	if x != nil {
 		return x.ErrorResponse
 	}
 	return nil
 }
 
-type isServerToAgent_Body interface {
-	isServerToAgent_Body()
-}
-
-type ServerToAgent_DataForAgent struct {
-	DataForAgent *DataForAgent `protobuf:"bytes,2,opt,name=data_for_agent,json=dataForAgent,proto3,oneof"`
-}
-
-type ServerToAgent_ErrorResponse struct {
-	ErrorResponse *ServerErrorResponse `protobuf:"bytes,3,opt,name=error_response,json=errorResponse,proto3,oneof"`
-}
-
-func (*ServerToAgent_DataForAgent) isServerToAgent_Body() {}
-
-func (*ServerToAgent_ErrorResponse) isServerToAgent_Body() {}
-
-// DataForAgent message is sent from the server to the agent either in response to the
-// AgentToServer message or when the server has data to deliver to the agent.
-//
-// If the server receives an AgentToServer message and the server has nothing to
-// send back to the agent then DataForAgent message will still be sent, but all
-// fields will be unset (in that case DataForAgent serves simply as an acknowledgement
-// of receipt).
-type DataForAgent struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	// remote_config field is set when the server has a remote config offer for the agent.
-	RemoteConfig *AgentRemoteConfig `protobuf:"bytes,1,opt,name=remote_config,json=remoteConfig,proto3" json:"remote_config,omitempty"`
-	// This field is set when the Server wants the Agent to change one or more
-	// of its client connection settings (destination, headers, certificate, etc).
-	ConnectionSettings *ConnectionSettingsOffers `protobuf:"bytes,2,opt,name=connection_settings,json=connectionSettings,proto3" json:"connection_settings,omitempty"`
-	// addons_available field is set when the server has addons to offer to the agent.
-	AddonsAvailable *AddonsAvailable `protobuf:"bytes,3,opt,name=addons_available,json=addonsAvailable,proto3" json:"addons_available,omitempty"`
-	// agent_package_available field is set when the server has a different version
-	// of an agent package available for download.
-	AgentPackageAvailable *AgentPackageAvailable `protobuf:"bytes,4,opt,name=agent_package_available,json=agentPackageAvailable,proto3" json:"agent_package_available,omitempty"`
-	// Bit flags as defined by Flags bit masks.
-	Flags DataForAgent_Flags `protobuf:"varint,5,opt,name=flags,proto3,enum=opamp.proto.DataForAgent_Flags" json:"flags,omitempty"`
-}
-
-func (x *DataForAgent) Reset() {
-	*x = DataForAgent{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[3]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *DataForAgent) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*DataForAgent) ProtoMessage() {}
-
-func (x *DataForAgent) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[3]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use DataForAgent.ProtoReflect.Descriptor instead.
-func (*DataForAgent) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{3}
-}
-
-func (x *DataForAgent) GetRemoteConfig() *AgentRemoteConfig {
+func (x *ServerToAgent) GetRemoteConfig() *AgentRemoteConfig {
 	if x != nil {
 		return x.RemoteConfig
 	}
 	return nil
 }
 
-func (x *DataForAgent) GetConnectionSettings() *ConnectionSettingsOffers {
+func (x *ServerToAgent) GetConnectionSettings() *ConnectionSettingsOffers {
 	if x != nil {
 		return x.ConnectionSettings
 	}
 	return nil
 }
 
-func (x *DataForAgent) GetAddonsAvailable() *AddonsAvailable {
+func (x *ServerToAgent) GetAddonsAvailable() *AddonsAvailable {
 	if x != nil {
 		return x.AddonsAvailable
 	}
 	return nil
 }
 
-func (x *DataForAgent) GetAgentPackageAvailable() *AgentPackageAvailable {
+func (x *ServerToAgent) GetAgentPackageAvailable() *AgentPackageAvailable {
 	if x != nil {
 		return x.AgentPackageAvailable
 	}
 	return nil
 }
 
-func (x *DataForAgent) GetFlags() DataForAgent_Flags {
+func (x *ServerToAgent) GetFlags() ServerToAgent_Flags {
 	if x != nil {
 		return x.Flags
 	}
-	return DataForAgent_FlagsUnspecified
+	return ServerToAgent_FlagsUnspecified
 }
 
 // The ConnectionSettings message is a collection of fields which comprise an
@@ -804,7 +729,7 @@ type ConnectionSettings struct {
 func (x *ConnectionSettings) Reset() {
 	*x = ConnectionSettings{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[4]
+		mi := &file_opamp_proto_msgTypes[3]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -817,7 +742,7 @@ func (x *ConnectionSettings) String() string {
 func (*ConnectionSettings) ProtoMessage() {}
 
 func (x *ConnectionSettings) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[4]
+	mi := &file_opamp_proto_msgTypes[3]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -830,7 +755,7 @@ func (x *ConnectionSettings) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ConnectionSettings.ProtoReflect.Descriptor instead.
 func (*ConnectionSettings) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{4}
+	return file_opamp_proto_rawDescGZIP(), []int{3}
 }
 
 func (x *ConnectionSettings) GetDestinationEndpoint() string {
@@ -886,7 +811,7 @@ type Headers struct {
 func (x *Headers) Reset() {
 	*x = Headers{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[5]
+		mi := &file_opamp_proto_msgTypes[4]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -899,7 +824,7 @@ func (x *Headers) String() string {
 func (*Headers) ProtoMessage() {}
 
 func (x *Headers) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[5]
+	mi := &file_opamp_proto_msgTypes[4]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -912,7 +837,7 @@ func (x *Headers) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use Headers.ProtoReflect.Descriptor instead.
 func (*Headers) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{5}
+	return file_opamp_proto_rawDescGZIP(), []int{4}
 }
 
 func (x *Headers) GetHeaders() []*Header {
@@ -934,7 +859,7 @@ type Header struct {
 func (x *Header) Reset() {
 	*x = Header{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[6]
+		mi := &file_opamp_proto_msgTypes[5]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -947,7 +872,7 @@ func (x *Header) String() string {
 func (*Header) ProtoMessage() {}
 
 func (x *Header) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[6]
+	mi := &file_opamp_proto_msgTypes[5]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -960,7 +885,7 @@ func (x *Header) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use Header.ProtoReflect.Descriptor instead.
 func (*Header) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{6}
+	return file_opamp_proto_rawDescGZIP(), []int{5}
 }
 
 func (x *Header) GetKey() string {
@@ -998,7 +923,7 @@ type TLSCertificate struct {
 func (x *TLSCertificate) Reset() {
 	*x = TLSCertificate{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[7]
+		mi := &file_opamp_proto_msgTypes[6]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1011,7 +936,7 @@ func (x *TLSCertificate) String() string {
 func (*TLSCertificate) ProtoMessage() {}
 
 func (x *TLSCertificate) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[7]
+	mi := &file_opamp_proto_msgTypes[6]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1024,7 +949,7 @@ func (x *TLSCertificate) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use TLSCertificate.ProtoReflect.Descriptor instead.
 func (*TLSCertificate) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{7}
+	return file_opamp_proto_rawDescGZIP(), []int{6}
 }
 
 func (x *TLSCertificate) GetPublicKey() []byte {
@@ -1102,7 +1027,7 @@ type ConnectionSettingsOffers struct {
 func (x *ConnectionSettingsOffers) Reset() {
 	*x = ConnectionSettingsOffers{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[8]
+		mi := &file_opamp_proto_msgTypes[7]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1115,7 +1040,7 @@ func (x *ConnectionSettingsOffers) String() string {
 func (*ConnectionSettingsOffers) ProtoMessage() {}
 
 func (x *ConnectionSettingsOffers) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[8]
+	mi := &file_opamp_proto_msgTypes[7]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1128,7 +1053,7 @@ func (x *ConnectionSettingsOffers) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ConnectionSettingsOffers.ProtoReflect.Descriptor instead.
 func (*ConnectionSettingsOffers) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{8}
+	return file_opamp_proto_rawDescGZIP(), []int{7}
 }
 
 func (x *ConnectionSettingsOffers) GetHash() []byte {
@@ -1196,7 +1121,7 @@ type AddonsAvailable struct {
 func (x *AddonsAvailable) Reset() {
 	*x = AddonsAvailable{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[9]
+		mi := &file_opamp_proto_msgTypes[8]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1209,7 +1134,7 @@ func (x *AddonsAvailable) String() string {
 func (*AddonsAvailable) ProtoMessage() {}
 
 func (x *AddonsAvailable) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[9]
+	mi := &file_opamp_proto_msgTypes[8]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1222,7 +1147,7 @@ func (x *AddonsAvailable) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AddonsAvailable.ProtoReflect.Descriptor instead.
 func (*AddonsAvailable) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{9}
+	return file_opamp_proto_rawDescGZIP(), []int{8}
 }
 
 func (x *AddonsAvailable) GetAddons() map[string]*AddonAvailable {
@@ -1268,7 +1193,7 @@ type AddonAvailable struct {
 func (x *AddonAvailable) Reset() {
 	*x = AddonAvailable{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[10]
+		mi := &file_opamp_proto_msgTypes[9]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1281,7 +1206,7 @@ func (x *AddonAvailable) String() string {
 func (*AddonAvailable) ProtoMessage() {}
 
 func (x *AddonAvailable) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[10]
+	mi := &file_opamp_proto_msgTypes[9]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1294,7 +1219,7 @@ func (x *AddonAvailable) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AddonAvailable.ProtoReflect.Descriptor instead.
 func (*AddonAvailable) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{10}
+	return file_opamp_proto_rawDescGZIP(), []int{9}
 }
 
 func (x *AddonAvailable) GetFile() *DownloadableFile {
@@ -1328,7 +1253,7 @@ type DownloadableFile struct {
 func (x *DownloadableFile) Reset() {
 	*x = DownloadableFile{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[11]
+		mi := &file_opamp_proto_msgTypes[10]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1341,7 +1266,7 @@ func (x *DownloadableFile) String() string {
 func (*DownloadableFile) ProtoMessage() {}
 
 func (x *DownloadableFile) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[11]
+	mi := &file_opamp_proto_msgTypes[10]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1354,7 +1279,7 @@ func (x *DownloadableFile) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use DownloadableFile.ProtoReflect.Descriptor instead.
 func (*DownloadableFile) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{11}
+	return file_opamp_proto_rawDescGZIP(), []int{10}
 }
 
 func (x *DownloadableFile) GetDownloadUrl() string {
@@ -1387,7 +1312,7 @@ type ServerErrorResponse struct {
 func (x *ServerErrorResponse) Reset() {
 	*x = ServerErrorResponse{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[12]
+		mi := &file_opamp_proto_msgTypes[11]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1400,7 +1325,7 @@ func (x *ServerErrorResponse) String() string {
 func (*ServerErrorResponse) ProtoMessage() {}
 
 func (x *ServerErrorResponse) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[12]
+	mi := &file_opamp_proto_msgTypes[11]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1413,7 +1338,7 @@ func (x *ServerErrorResponse) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ServerErrorResponse.ProtoReflect.Descriptor instead.
 func (*ServerErrorResponse) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{12}
+	return file_opamp_proto_rawDescGZIP(), []int{11}
 }
 
 func (x *ServerErrorResponse) GetType() ServerErrorResponse_Type {
@@ -1466,7 +1391,7 @@ type RetryInfo struct {
 func (x *RetryInfo) Reset() {
 	*x = RetryInfo{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[13]
+		mi := &file_opamp_proto_msgTypes[12]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1479,7 +1404,7 @@ func (x *RetryInfo) String() string {
 func (*RetryInfo) ProtoMessage() {}
 
 func (x *RetryInfo) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[13]
+	mi := &file_opamp_proto_msgTypes[12]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1492,7 +1417,7 @@ func (x *RetryInfo) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use RetryInfo.ProtoReflect.Descriptor instead.
 func (*RetryInfo) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{13}
+	return file_opamp_proto_rawDescGZIP(), []int{12}
 }
 
 func (x *RetryInfo) GetRetryAfterNanoseconds() uint64 {
@@ -1523,7 +1448,7 @@ type AgentPackageAvailable struct {
 func (x *AgentPackageAvailable) Reset() {
 	*x = AgentPackageAvailable{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[14]
+		mi := &file_opamp_proto_msgTypes[13]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1536,7 +1461,7 @@ func (x *AgentPackageAvailable) String() string {
 func (*AgentPackageAvailable) ProtoMessage() {}
 
 func (x *AgentPackageAvailable) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[14]
+	mi := &file_opamp_proto_msgTypes[13]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1549,7 +1474,7 @@ func (x *AgentPackageAvailable) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentPackageAvailable.ProtoReflect.Descriptor instead.
 func (*AgentPackageAvailable) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{14}
+	return file_opamp_proto_rawDescGZIP(), []int{13}
 }
 
 func (x *AgentPackageAvailable) GetVersion() string {
@@ -1598,7 +1523,7 @@ type AgentDescription struct {
 func (x *AgentDescription) Reset() {
 	*x = AgentDescription{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[15]
+		mi := &file_opamp_proto_msgTypes[14]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1611,7 +1536,7 @@ func (x *AgentDescription) String() string {
 func (*AgentDescription) ProtoMessage() {}
 
 func (x *AgentDescription) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[15]
+	mi := &file_opamp_proto_msgTypes[14]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1624,7 +1549,7 @@ func (x *AgentDescription) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentDescription.ProtoReflect.Descriptor instead.
 func (*AgentDescription) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{15}
+	return file_opamp_proto_rawDescGZIP(), []int{14}
 }
 
 func (x *AgentDescription) GetAgentType() string {
@@ -1678,7 +1603,7 @@ type StatusReport struct {
 func (x *StatusReport) Reset() {
 	*x = StatusReport{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[16]
+		mi := &file_opamp_proto_msgTypes[15]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1691,7 +1616,7 @@ func (x *StatusReport) String() string {
 func (*StatusReport) ProtoMessage() {}
 
 func (x *StatusReport) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[16]
+	mi := &file_opamp_proto_msgTypes[15]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1704,7 +1629,7 @@ func (x *StatusReport) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use StatusReport.ProtoReflect.Descriptor instead.
 func (*StatusReport) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{16}
+	return file_opamp_proto_rawDescGZIP(), []int{15}
 }
 
 func (x *StatusReport) GetAgentDescription() *AgentDescription {
@@ -1759,7 +1684,7 @@ type EffectiveConfig struct {
 func (x *EffectiveConfig) Reset() {
 	*x = EffectiveConfig{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[17]
+		mi := &file_opamp_proto_msgTypes[16]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1772,7 +1697,7 @@ func (x *EffectiveConfig) String() string {
 func (*EffectiveConfig) ProtoMessage() {}
 
 func (x *EffectiveConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[17]
+	mi := &file_opamp_proto_msgTypes[16]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1785,7 +1710,7 @@ func (x *EffectiveConfig) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use EffectiveConfig.ProtoReflect.Descriptor instead.
 func (*EffectiveConfig) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{17}
+	return file_opamp_proto_rawDescGZIP(), []int{16}
 }
 
 func (x *EffectiveConfig) GetHash() []byte {
@@ -1819,7 +1744,7 @@ type RemoteConfigStatus struct {
 func (x *RemoteConfigStatus) Reset() {
 	*x = RemoteConfigStatus{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[18]
+		mi := &file_opamp_proto_msgTypes[17]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1832,7 +1757,7 @@ func (x *RemoteConfigStatus) String() string {
 func (*RemoteConfigStatus) ProtoMessage() {}
 
 func (x *RemoteConfigStatus) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[18]
+	mi := &file_opamp_proto_msgTypes[17]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1845,7 +1770,7 @@ func (x *RemoteConfigStatus) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use RemoteConfigStatus.ProtoReflect.Descriptor instead.
 func (*RemoteConfigStatus) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{18}
+	return file_opamp_proto_rawDescGZIP(), []int{17}
 }
 
 func (x *RemoteConfigStatus) GetLastRemoteConfigHash() []byte {
@@ -1888,7 +1813,7 @@ type AgentAddonStatuses struct {
 func (x *AgentAddonStatuses) Reset() {
 	*x = AgentAddonStatuses{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[19]
+		mi := &file_opamp_proto_msgTypes[18]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1901,7 +1826,7 @@ func (x *AgentAddonStatuses) String() string {
 func (*AgentAddonStatuses) ProtoMessage() {}
 
 func (x *AgentAddonStatuses) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[19]
+	mi := &file_opamp_proto_msgTypes[18]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1914,7 +1839,7 @@ func (x *AgentAddonStatuses) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentAddonStatuses.ProtoReflect.Descriptor instead.
 func (*AgentAddonStatuses) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{19}
+	return file_opamp_proto_rawDescGZIP(), []int{18}
 }
 
 func (x *AgentAddonStatuses) GetAddons() map[string]*AgentAddonStatus {
@@ -1966,7 +1891,7 @@ type AgentAddonStatus struct {
 func (x *AgentAddonStatus) Reset() {
 	*x = AgentAddonStatus{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[20]
+		mi := &file_opamp_proto_msgTypes[19]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -1979,7 +1904,7 @@ func (x *AgentAddonStatus) String() string {
 func (*AgentAddonStatus) ProtoMessage() {}
 
 func (x *AgentAddonStatus) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[20]
+	mi := &file_opamp_proto_msgTypes[19]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -1992,7 +1917,7 @@ func (x *AgentAddonStatus) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentAddonStatus.ProtoReflect.Descriptor instead.
 func (*AgentAddonStatus) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{20}
+	return file_opamp_proto_rawDescGZIP(), []int{19}
 }
 
 func (x *AgentAddonStatus) GetName() string {
@@ -2051,7 +1976,7 @@ type AgentInstallStatus struct {
 func (x *AgentInstallStatus) Reset() {
 	*x = AgentInstallStatus{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[21]
+		mi := &file_opamp_proto_msgTypes[20]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -2064,7 +1989,7 @@ func (x *AgentInstallStatus) String() string {
 func (*AgentInstallStatus) ProtoMessage() {}
 
 func (x *AgentInstallStatus) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[21]
+	mi := &file_opamp_proto_msgTypes[20]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -2077,7 +2002,7 @@ func (x *AgentInstallStatus) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentInstallStatus.ProtoReflect.Descriptor instead.
 func (*AgentInstallStatus) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{21}
+	return file_opamp_proto_rawDescGZIP(), []int{20}
 }
 
 func (x *AgentInstallStatus) GetServerOfferedVersion() string {
@@ -2133,7 +2058,7 @@ type AgentRemoteConfig struct {
 func (x *AgentRemoteConfig) Reset() {
 	*x = AgentRemoteConfig{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[22]
+		mi := &file_opamp_proto_msgTypes[21]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -2146,7 +2071,7 @@ func (x *AgentRemoteConfig) String() string {
 func (*AgentRemoteConfig) ProtoMessage() {}
 
 func (x *AgentRemoteConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[22]
+	mi := &file_opamp_proto_msgTypes[21]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -2159,7 +2084,7 @@ func (x *AgentRemoteConfig) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentRemoteConfig.ProtoReflect.Descriptor instead.
 func (*AgentRemoteConfig) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{22}
+	return file_opamp_proto_rawDescGZIP(), []int{21}
 }
 
 func (x *AgentRemoteConfig) GetConfig() *AgentConfigMap {
@@ -2192,7 +2117,7 @@ type AgentConfigMap struct {
 func (x *AgentConfigMap) Reset() {
 	*x = AgentConfigMap{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[23]
+		mi := &file_opamp_proto_msgTypes[22]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -2205,7 +2130,7 @@ func (x *AgentConfigMap) String() string {
 func (*AgentConfigMap) ProtoMessage() {}
 
 func (x *AgentConfigMap) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[23]
+	mi := &file_opamp_proto_msgTypes[22]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -2218,7 +2143,7 @@ func (x *AgentConfigMap) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentConfigMap.ProtoReflect.Descriptor instead.
 func (*AgentConfigMap) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{23}
+	return file_opamp_proto_rawDescGZIP(), []int{22}
 }
 
 func (x *AgentConfigMap) GetConfigMap() map[string]*AgentConfigFile {
@@ -2244,7 +2169,7 @@ type AgentConfigFile struct {
 func (x *AgentConfigFile) Reset() {
 	*x = AgentConfigFile{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_opamp_proto_msgTypes[24]
+		mi := &file_opamp_proto_msgTypes[23]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -2257,7 +2182,7 @@ func (x *AgentConfigFile) String() string {
 func (*AgentConfigFile) ProtoMessage() {}
 
 func (x *AgentConfigFile) ProtoReflect() protoreflect.Message {
-	mi := &file_opamp_proto_msgTypes[24]
+	mi := &file_opamp_proto_msgTypes[23]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -2270,7 +2195,7 @@ func (x *AgentConfigFile) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AgentConfigFile.ProtoReflect.Descriptor instead.
 func (*AgentConfigFile) Descriptor() ([]byte, []int) {
-	return file_opamp_proto_rawDescGZIP(), []int{24}
+	return file_opamp_proto_rawDescGZIP(), []int{23}
 }
 
 func (x *AgentConfigFile) GetBody() []byte {
@@ -2316,302 +2241,296 @@ var file_opamp_proto_rawDesc = []byte{
 	0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x67, 0x65, 0x6e,
 	0x74, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x42,
 	0x6f, 0x64, 0x79, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x73, 0x63,
-	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x22, 0xc8, 0x01, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x65,
+	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x22, 0xc6, 0x04, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x65,
 	0x72, 0x54, 0x6f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74,
 	0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
-	0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x0e, 0x64,
-	0x61, 0x74, 0x61, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00,
-	0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x49,
-	0x0a, 0x0e, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72,
-	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x72, 0x72, 0x6f,
-	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x42, 0x6f, 0x64,
-	0x79, 0x22, 0xd8, 0x03, 0x0a, 0x0c, 0x44, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x41, 0x67, 0x65,
-	0x6e, 0x74, 0x12, 0x43, 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
-	0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
-	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d,
-	0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x74,
-	0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x56, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
-	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74,
-	0x74, 0x69, 0x6e, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x12, 0x63, 0x6f, 0x6e,
-	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12,
-	0x47, 0x0a, 0x10, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
-	0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
-	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41, 0x76,
-	0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x0f, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41,
-	0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x5a, 0x0a, 0x17, 0x61, 0x67, 0x65, 0x6e,
-	0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
-	0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
-	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x63,
-	0x6b, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x15, 0x61,
-	0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c,
-	0x61, 0x62, 0x6c, 0x65, 0x12, 0x35, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20,
-	0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x46,
-	0x6c, 0x61, 0x67, 0x73, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x4f, 0x0a, 0x05, 0x46,
-	0x6c, 0x61, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x55, 0x6e, 0x73,
-	0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x65,
-	0x70, 0x6f, 0x72, 0x74, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e,
-	0x66, 0x69, 0x67, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41,
-	0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x02, 0x22, 0x97, 0x03, 0x0a,
-	0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69,
-	0x6e, 0x67, 0x73, 0x12, 0x31, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
-	0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
-	0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
-	0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x07, 0x68,
-	0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f,
-	0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
-	0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a,
-	0x0d, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x78,
-	0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x65, 0x72, 0x74,
-	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e,
-	0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x54, 0x4c, 0x53, 0x43,
-	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74,
-	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73,
-	0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
+	0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x0e, 0x65,
+	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20,
+	0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73,
+	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70,
+	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70,
+	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52,
+	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x72, 0x65, 0x6d,
+	0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x56, 0x0a, 0x13, 0x63, 0x6f, 0x6e,
+	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
+	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
 	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53,
-	0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x05, 0x66,
-	0x6c, 0x61, 0x67, 0x73, 0x22, 0x40, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x05, 0x0a,
-	0x01, 0x5f, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
-	0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x10, 0x01,
-	0x12, 0x14, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
-	0x74, 0x53, 0x65, 0x74, 0x10, 0x02, 0x22, 0x38, 0x0a, 0x07, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
-	0x73, 0x12, 0x2d, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03,
-	0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
-	0x22, 0x30, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
-	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
-	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
-	0x75, 0x65, 0x22, 0x74, 0x0a, 0x0e, 0x54, 0x4c, 0x53, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
-	0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b,
-	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63,
-	0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b,
-	0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
-	0x65, 0x4b, 0x65, 0x79, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x61, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69,
-	0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x61, 0x50,
-	0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0xf3, 0x03, 0x0a, 0x18, 0x43, 0x6f, 0x6e,
-	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x4f,
-	0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x35, 0x0a, 0x05, 0x6f, 0x70, 0x61,
-	0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70,
+	0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x12, 0x63,
+	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
+	0x73, 0x12, 0x47, 0x0a, 0x10, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x76, 0x61, 0x69,
+	0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70,
+	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73,
+	0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x0f, 0x61, 0x64, 0x64, 0x6f, 0x6e,
+	0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x5a, 0x0a, 0x17, 0x61, 0x67,
+	0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x76, 0x61, 0x69,
+	0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6f, 0x70,
+	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50,
+	0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52,
+	0x15, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61,
+	0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18,
+	0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x41, 0x67, 0x65, 0x6e,
+	0x74, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x4f,
+	0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x6c, 0x61, 0x67, 0x73,
+	0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a,
+	0x15, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65,
+	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6f,
+	0x72, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x02, 0x22,
+	0x97, 0x03, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65,
+	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x31, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x68, 0x65, 0x61,
+	0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6f, 0x70, 0x61,
+	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
+	0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f,
+	0x78, 0x79, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
+	0x12, 0x39, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
+	0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x0c, 0x70,
+	0x72, 0x6f, 0x78, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3d, 0x0a, 0x0b, 0x63,
+	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
+	0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x54,
+	0x4c, 0x53, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x63,
+	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x05, 0x66, 0x6c,
+	0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
+	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
+	0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73,
+	0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x40, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73,
+	0x12, 0x05, 0x0a, 0x01, 0x5f, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x65, 0x73, 0x74, 0x69,
+	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x65,
+	0x74, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x64, 0x70,
+	0x6f, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x10, 0x02, 0x22, 0x38, 0x0a, 0x07, 0x48, 0x65, 0x61,
+	0x64, 0x65, 0x72, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18,
+	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64,
+	0x65, 0x72, 0x73, 0x22, 0x30, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a,
+	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
+	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+	0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x74, 0x0a, 0x0e, 0x54, 0x4c, 0x53, 0x43, 0x65, 0x72, 0x74,
+	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69,
+	0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62,
+	0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
+	0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x72, 0x69,
+	0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x61, 0x5f, 0x70, 0x75,
+	0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b,
+	0x63, 0x61, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0xf3, 0x03, 0x0a, 0x18,
+	0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,
+	0x67, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x35, 0x0a, 0x05,
+	0x6f, 0x70, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70,
+	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
+	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x6f, 0x70,
+	0x61, 0x6d, 0x70, 0x12, 0x40, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69,
+	0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70,
 	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f,
-	0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x6f, 0x70, 0x61, 0x6d, 0x70,
-	0x12, 0x40, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18,
-	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
-	0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65,
-	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0a, 0x6f, 0x77, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69,
-	0x63, 0x73, 0x12, 0x3e, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x73,
-	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53,
-	0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x54, 0x72, 0x61, 0x63,
-	0x65, 0x73, 0x12, 0x3a, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x05,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74,
-	0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x68,
-	0x0a, 0x11, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
-	0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
+	0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0a, 0x6f, 0x77, 0x6e, 0x4d, 0x65,
+	0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x3e, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x5f, 0x74, 0x72, 0x61,
+	0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
 	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
-	0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73,
-	0x2e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
-	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x43, 0x6f, 0x6e,
-	0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x64, 0x0a, 0x15, 0x4f, 0x74, 0x68, 0x65,
-	0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
-	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
-	0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
-	0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69,
-	0x6e, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd3,
-	0x01, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
-	0x6c, 0x65, 0x12, 0x40, 0x0a, 0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03,
-	0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
+	0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x54,
+	0x72, 0x61, 0x63, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x5f, 0x6c, 0x6f, 0x67,
+	0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+	0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x4c, 0x6f, 0x67,
+	0x73, 0x12, 0x68, 0x0a, 0x11, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
+	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x6f,
+	0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
+	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x4f, 0x66, 0x66,
+	0x65, 0x72, 0x73, 0x2e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
+	0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x6f, 0x74, 0x68, 0x65, 0x72,
+	0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x64, 0x0a, 0x15, 0x4f,
+	0x74, 0x68, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45,
+	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
+	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65,
+	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+	0x01, 0x22, 0xd3, 0x01, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41, 0x76, 0x61, 0x69,
+	0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x18,
+	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61,
+	0x62, 0x6c, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
+	0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x5f, 0x61,
+	0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
+	0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x68, 0x1a,
+	0x56, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
+	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+	0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+	0x1b, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x64,
+	0x64, 0x6f, 0x6e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x05, 0x76, 0x61,
+	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x57, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x6f, 0x6e,
+	0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x66, 0x69, 0x6c,
+	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62,
+	0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04,
+	0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68,
+	0x22, 0x58, 0x0a, 0x10, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65,
+	0x46, 0x69, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
+	0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x6f, 0x77, 0x6e,
+	0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63,
+	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x22, 0xef, 0x01, 0x0a, 0x13, 0x53,
+	0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+	0x73, 0x65, 0x12, 0x39, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
+	0x32, 0x25, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53,
+	0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+	0x73, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a,
+	0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61,
+	0x67, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
+	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
+	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00,
+	0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x34, 0x0a, 0x04, 0x54,
+	0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00,
+	0x12, 0x0e, 0x0a, 0x0a, 0x42, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x01,
+	0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10,
+	0x02, 0x42, 0x09, 0x0a, 0x07, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x43, 0x0a, 0x09,
+	0x52, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x74,
+	0x72, 0x79, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63,
+	0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x72, 0x65, 0x74, 0x72,
+	0x79, 0x41, 0x66, 0x74, 0x65, 0x72, 0x4e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64,
+	0x73, 0x22, 0x64, 0x0a, 0x15, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
+	0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
+	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72,
+	0x73, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
+	0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+	0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x6c,
+	0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x10, 0x41, 0x67, 0x65, 0x6e,
+	0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a,
+	0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61,
+	0x67, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+	0x12, 0x40, 0x0a, 0x10, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62,
+	0x75, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6f, 0x70, 0x61,
+	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75,
+	0x65, 0x52, 0x0f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
+	0x65, 0x73, 0x22, 0xbc, 0x02, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70,
+	0x6f, 0x72, 0x74, 0x12, 0x4a, 0x0a, 0x11, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x73,
+	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d,
+	0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65,
+	0x6e, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x61,
+	0x67, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+	0x47, 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
+	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76,
+	0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69,
+	0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x6d, 0x6f,
+	0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
+	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
+	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x44, 0x0a, 0x1f, 0x73,
+	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x5f, 0x61,
+	0x6c, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04,
+	0x20, 0x01, 0x28, 0x0c, 0x52, 0x1b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x76,
+	0x69, 0x64, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73,
+	0x68, 0x22, 0x61, 0x0a, 0x0f, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f,
+	0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
+	0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f,
+	0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74,
+	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x4d, 0x61, 0x70, 0x22, 0xe1, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x6c,
+	0x61, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x6c, 0x61,
+	0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x61,
+	0x73, 0x68, 0x12, 0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01,
+	0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+	0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x61,
+	0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+	0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73,
+	0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72,
+	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x2f, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75,
+	0x73, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c,
+	0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06,
+	0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x02, 0x22, 0xf9, 0x01, 0x0a, 0x12, 0x41, 0x67, 0x65,
+	0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12,
+	0x43, 0x0a, 0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+	0x2b, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67,
+	0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73,
 	0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x64,
-	0x64, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x6f,
-	0x6e, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x61,
-	0x6c, 0x6c, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x68, 0x1a, 0x56, 0x0a, 0x0b,
-	0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
-	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x31, 0x0a,
-	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f,
-	0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e,
-	0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
-	0x3a, 0x02, 0x38, 0x01, 0x22, 0x57, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x41, 0x76, 0x61,
-	0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
-	0x74, 0x6f, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x46,
-	0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73,
-	0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x58, 0x0a,
-	0x10, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x6c,
-	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x72,
-	0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
-	0x64, 0x55, 0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f,
-	0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74,
-	0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x22, 0xef, 0x01, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76,
-	0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
-	0x39, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e,
-	0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76,
-	0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
-	0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72,
-	0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
-	0x37, 0x0a, 0x0a, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x09, 0x72,
-	0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x34, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65,
-	0x12, 0x0b, 0x0a, 0x07, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x0e, 0x0a,
-	0x0a, 0x42, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x01, 0x12, 0x0f, 0x0a,
-	0x0b, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x02, 0x42, 0x09,
-	0x0a, 0x07, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x43, 0x0a, 0x09, 0x52, 0x65, 0x74,
-	0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f,
-	0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64,
-	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x72, 0x65, 0x74, 0x72, 0x79, 0x41, 0x66,
-	0x74, 0x65, 0x72, 0x4e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x64,
-	0x0a, 0x15, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x41, 0x76,
-	0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
-	0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
-	0x6e, 0x12, 0x31, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
-	0x1d, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x6f,
-	0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04,
-	0x66, 0x69, 0x6c, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x10, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x44, 0x65,
-	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x67, 0x65,
-	0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61,
-	0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e,
-	0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a,
-	0x10, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65,
-	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f,
-	0x61, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22,
-	0xbc, 0x02, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
-	0x12, 0x4a, 0x0a, 0x11, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
-	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70,
-	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x44,
-	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x61, 0x67, 0x65, 0x6e,
-	0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x10,
-	0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f,
-	0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f,
-	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74,
-	0x61, 0x74, 0x75, 0x73, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66,
-	0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x44, 0x0a, 0x1f, 0x73, 0x65, 0x72, 0x76,
-	0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x5f,
-	0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28,
-	0x0c, 0x52, 0x1b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
-	0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x68, 0x22, 0x61,
-	0x0a, 0x0f, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
-	0x67, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
-	0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f,
-	0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
+	0x64, 0x6f, 0x6e, 0x73, 0x12, 0x44, 0x0a, 0x1f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70,
+	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x6f,
+	0x6e, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1b, 0x73,
+	0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x41, 0x6c, 0x6c,
+	0x41, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x68, 0x1a, 0x58, 0x0a, 0x0b, 0x41, 0x64,
+	0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76,
+	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x61,
+	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x64,
+	0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+	0x3a, 0x02, 0x38, 0x01, 0x22, 0xaf, 0x02, 0x0a, 0x10, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x64,
+	0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a,
+	0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
+	0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x48,
+	0x61, 0x73, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66,
+	0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
+	0x52, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x48,
+	0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20,
+	0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74,
+	0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+	0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
+	0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d,
+	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x4e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
+	0x12, 0x0d, 0x0a, 0x09, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x00, 0x12,
+	0x12, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e,
+	0x67, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x69, 0x6e,
+	0x67, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x46, 0x61,
+	0x69, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x22, 0xb4, 0x02, 0x0a, 0x12, 0x41, 0x67, 0x65, 0x6e, 0x74,
+	0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x34, 0x0a,
+	0x16, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f,
+	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x73,
+	0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73,
+	0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66,
+	0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
+	0x52, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x48,
+	0x61, 0x73, 0x68, 0x12, 0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20,
+	0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74,
+	0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
+	0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73,
+	0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f,
+	0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x53, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74,
+	0x75, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x10,
+	0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x10,
+	0x01, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x46, 0x61, 0x69, 0x6c,
+	0x65, 0x64, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e,
+	0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x03, 0x22, 0x69, 0x0a,
+	0x11, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66,
+	0x69, 0x67, 0x12, 0x33, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+	0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52,
+	0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63, 0x6f,
+	0x6e, 0x66, 0x69, 0x67, 0x48, 0x61, 0x73, 0x68, 0x22, 0xb7, 0x01, 0x0a, 0x0e, 0x41, 0x67, 0x65,
+	0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x12, 0x49, 0x0a, 0x0a, 0x63,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+	0x2a, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67,
+	0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x2e, 0x43, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x63, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x1a, 0x5a, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+	0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61,
+	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x61, 0x6d,
 	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e,
-	0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61,
-	0x70, 0x22, 0xe1, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66,
-	0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x6c, 0x61, 0x73, 0x74,
-	0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x68,
-	0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x52,
-	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x61, 0x73, 0x68, 0x12,
-	0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
-	0x26, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65,
-	0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
-	0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73,
-	0x73, 0x61, 0x67, 0x65, 0x22, 0x2f, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b,
-	0x0a, 0x07, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41,
-	0x70, 0x70, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x61, 0x69,
-	0x6c, 0x65, 0x64, 0x10, 0x02, 0x22, 0xf9, 0x01, 0x0a, 0x12, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41,
-	0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x06,
-	0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6f,
-	0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74,
-	0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x2e, 0x41, 0x64,
-	0x64, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e,
-	0x73, 0x12, 0x44, 0x0a, 0x1f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x76,
-	0x69, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, 0x5f,
-	0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1b, 0x73, 0x65, 0x72, 0x76,
-	0x65, 0x72, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64,
-	0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x68, 0x1a, 0x58, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x6f, 0x6e,
-	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
-	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
-	0x01, 0x22, 0xaf, 0x02, 0x0a, 0x10, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x67,
-	0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01,
-	0x28, 0x0c, 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x48, 0x61, 0x73, 0x68,
-	0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
-	0x65, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x73,
-	0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68,
-	0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e,
-	0x32, 0x24, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41,
-	0x67, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
-	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23,
-	0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
-	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73,
-	0x61, 0x67, 0x65, 0x22, 0x4e, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0d, 0x0a,
-	0x09, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e,
-	0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x10, 0x01,
-	0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x10, 0x02,
-	0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65,
-	0x64, 0x10, 0x03, 0x22, 0xb4, 0x02, 0x0a, 0x12, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73,
-	0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65,
-	0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72,
-	0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76,
-	0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
-	0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
-	0x65, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x73,
-	0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68,
-	0x12, 0x3e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
-	0x32, 0x26, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41,
-	0x67, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75,
-	0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
-	0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
-	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65,
-	0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x53, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
-	0x0d, 0x0a, 0x09, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0e,
-	0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x11,
-	0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10,
-	0x02, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x50, 0x65,
-	0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x03, 0x22, 0x69, 0x0a, 0x11, 0x41, 0x67,
-	0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
-	0x33, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
-	0x1b, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67,
-	0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x06, 0x63, 0x6f,
-	0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x68,
-	0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69,
-	0x67, 0x48, 0x61, 0x73, 0x68, 0x22, 0xb7, 0x01, 0x0a, 0x0e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x12, 0x49, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
-	0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f,
-	0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74,
-	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
-	0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
-	0x4d, 0x61, 0x70, 0x1a, 0x5a, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70,
-	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
-	0x46, 0x69, 0x6c, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
-	0x48, 0x0a, 0x0f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69,
-	0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
-	0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
-	0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f,
-	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x69, 0x74,
-	0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x65, 0x6e, 0x2d, 0x74, 0x65, 0x6c,
-	0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2f, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2d, 0x67, 0x6f, 0x2f,
-	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
-	0x66, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
+	0x38, 0x01, 0x22, 0x48, 0x0a, 0x0f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x01, 0x20,
+	0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e,
+	0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x37, 0x5a, 0x35,
+	0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x65, 0x6e, 0x2d,
+	0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2f, 0x6f, 0x70, 0x61, 0x6d, 0x70, 0x2d,
+	0x67, 0x6f, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x62, 0x75, 0x66, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -2627,9 +2546,9 @@ func file_opamp_proto_rawDescGZIP() []byte {
 }
 
 var file_opamp_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
-var file_opamp_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
+var file_opamp_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
 var file_opamp_proto_goTypes = []interface{}{
-	(DataForAgent_Flags)(0),          // 0: opamp.proto.DataForAgent.Flags
+	(ServerToAgent_Flags)(0),         // 0: opamp.proto.ServerToAgent.Flags
 	(ConnectionSettings_Flags)(0),    // 1: opamp.proto.ConnectionSettings.Flags
 	(ServerErrorResponse_Type)(0),    // 2: opamp.proto.ServerErrorResponse.Type
 	(RemoteConfigStatus_Status)(0),   // 3: opamp.proto.RemoteConfigStatus.Status
@@ -2638,81 +2557,79 @@ var file_opamp_proto_goTypes = []interface{}{
 	(*AgentToServer)(nil),            // 6: opamp.proto.AgentToServer
 	(*AgentDisconnect)(nil),          // 7: opamp.proto.AgentDisconnect
 	(*ServerToAgent)(nil),            // 8: opamp.proto.ServerToAgent
-	(*DataForAgent)(nil),             // 9: opamp.proto.DataForAgent
-	(*ConnectionSettings)(nil),       // 10: opamp.proto.ConnectionSettings
-	(*Headers)(nil),                  // 11: opamp.proto.Headers
-	(*Header)(nil),                   // 12: opamp.proto.Header
-	(*TLSCertificate)(nil),           // 13: opamp.proto.TLSCertificate
-	(*ConnectionSettingsOffers)(nil), // 14: opamp.proto.ConnectionSettingsOffers
-	(*AddonsAvailable)(nil),          // 15: opamp.proto.AddonsAvailable
-	(*AddonAvailable)(nil),           // 16: opamp.proto.AddonAvailable
-	(*DownloadableFile)(nil),         // 17: opamp.proto.DownloadableFile
-	(*ServerErrorResponse)(nil),      // 18: opamp.proto.ServerErrorResponse
-	(*RetryInfo)(nil),                // 19: opamp.proto.RetryInfo
-	(*AgentPackageAvailable)(nil),    // 20: opamp.proto.AgentPackageAvailable
-	(*AgentDescription)(nil),         // 21: opamp.proto.AgentDescription
-	(*StatusReport)(nil),             // 22: opamp.proto.StatusReport
-	(*EffectiveConfig)(nil),          // 23: opamp.proto.EffectiveConfig
-	(*RemoteConfigStatus)(nil),       // 24: opamp.proto.RemoteConfigStatus
-	(*AgentAddonStatuses)(nil),       // 25: opamp.proto.AgentAddonStatuses
-	(*AgentAddonStatus)(nil),         // 26: opamp.proto.AgentAddonStatus
-	(*AgentInstallStatus)(nil),       // 27: opamp.proto.AgentInstallStatus
-	(*AgentRemoteConfig)(nil),        // 28: opamp.proto.AgentRemoteConfig
-	(*AgentConfigMap)(nil),           // 29: opamp.proto.AgentConfigMap
-	(*AgentConfigFile)(nil),          // 30: opamp.proto.AgentConfigFile
-	nil,                              // 31: opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry
-	nil,                              // 32: opamp.proto.AddonsAvailable.AddonsEntry
-	nil,                              // 33: opamp.proto.AgentAddonStatuses.AddonsEntry
-	nil,                              // 34: opamp.proto.AgentConfigMap.ConfigMapEntry
-	(*KeyValue)(nil),                 // 35: opamp.proto.KeyValue
+	(*ConnectionSettings)(nil),       // 9: opamp.proto.ConnectionSettings
+	(*Headers)(nil),                  // 10: opamp.proto.Headers
+	(*Header)(nil),                   // 11: opamp.proto.Header
+	(*TLSCertificate)(nil),           // 12: opamp.proto.TLSCertificate
+	(*ConnectionSettingsOffers)(nil), // 13: opamp.proto.ConnectionSettingsOffers
+	(*AddonsAvailable)(nil),          // 14: opamp.proto.AddonsAvailable
+	(*AddonAvailable)(nil),           // 15: opamp.proto.AddonAvailable
+	(*DownloadableFile)(nil),         // 16: opamp.proto.DownloadableFile
+	(*ServerErrorResponse)(nil),      // 17: opamp.proto.ServerErrorResponse
+	(*RetryInfo)(nil),                // 18: opamp.proto.RetryInfo
+	(*AgentPackageAvailable)(nil),    // 19: opamp.proto.AgentPackageAvailable
+	(*AgentDescription)(nil),         // 20: opamp.proto.AgentDescription
+	(*StatusReport)(nil),             // 21: opamp.proto.StatusReport
+	(*EffectiveConfig)(nil),          // 22: opamp.proto.EffectiveConfig
+	(*RemoteConfigStatus)(nil),       // 23: opamp.proto.RemoteConfigStatus
+	(*AgentAddonStatuses)(nil),       // 24: opamp.proto.AgentAddonStatuses
+	(*AgentAddonStatus)(nil),         // 25: opamp.proto.AgentAddonStatus
+	(*AgentInstallStatus)(nil),       // 26: opamp.proto.AgentInstallStatus
+	(*AgentRemoteConfig)(nil),        // 27: opamp.proto.AgentRemoteConfig
+	(*AgentConfigMap)(nil),           // 28: opamp.proto.AgentConfigMap
+	(*AgentConfigFile)(nil),          // 29: opamp.proto.AgentConfigFile
+	nil,                              // 30: opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry
+	nil,                              // 31: opamp.proto.AddonsAvailable.AddonsEntry
+	nil,                              // 32: opamp.proto.AgentAddonStatuses.AddonsEntry
+	nil,                              // 33: opamp.proto.AgentConfigMap.ConfigMapEntry
+	(*KeyValue)(nil),                 // 34: opamp.proto.KeyValue
 }
 var file_opamp_proto_depIdxs = []int32{
-	22, // 0: opamp.proto.AgentToServer.status_report:type_name -> opamp.proto.StatusReport
-	25, // 1: opamp.proto.AgentToServer.addon_statuses:type_name -> opamp.proto.AgentAddonStatuses
-	27, // 2: opamp.proto.AgentToServer.agent_install_status:type_name -> opamp.proto.AgentInstallStatus
+	21, // 0: opamp.proto.AgentToServer.status_report:type_name -> opamp.proto.StatusReport
+	24, // 1: opamp.proto.AgentToServer.addon_statuses:type_name -> opamp.proto.AgentAddonStatuses
+	26, // 2: opamp.proto.AgentToServer.agent_install_status:type_name -> opamp.proto.AgentInstallStatus
 	7,  // 3: opamp.proto.AgentToServer.agent_disconnect:type_name -> opamp.proto.AgentDisconnect
-	9,  // 4: opamp.proto.ServerToAgent.data_for_agent:type_name -> opamp.proto.DataForAgent
-	18, // 5: opamp.proto.ServerToAgent.error_response:type_name -> opamp.proto.ServerErrorResponse
-	28, // 6: opamp.proto.DataForAgent.remote_config:type_name -> opamp.proto.AgentRemoteConfig
-	14, // 7: opamp.proto.DataForAgent.connection_settings:type_name -> opamp.proto.ConnectionSettingsOffers
-	15, // 8: opamp.proto.DataForAgent.addons_available:type_name -> opamp.proto.AddonsAvailable
-	20, // 9: opamp.proto.DataForAgent.agent_package_available:type_name -> opamp.proto.AgentPackageAvailable
-	0,  // 10: opamp.proto.DataForAgent.flags:type_name -> opamp.proto.DataForAgent.Flags
-	11, // 11: opamp.proto.ConnectionSettings.headers:type_name -> opamp.proto.Headers
-	11, // 12: opamp.proto.ConnectionSettings.proxy_headers:type_name -> opamp.proto.Headers
-	13, // 13: opamp.proto.ConnectionSettings.certificate:type_name -> opamp.proto.TLSCertificate
-	1,  // 14: opamp.proto.ConnectionSettings.flags:type_name -> opamp.proto.ConnectionSettings.Flags
-	12, // 15: opamp.proto.Headers.headers:type_name -> opamp.proto.Header
-	10, // 16: opamp.proto.ConnectionSettingsOffers.opamp:type_name -> opamp.proto.ConnectionSettings
-	10, // 17: opamp.proto.ConnectionSettingsOffers.own_metrics:type_name -> opamp.proto.ConnectionSettings
-	10, // 18: opamp.proto.ConnectionSettingsOffers.own_traces:type_name -> opamp.proto.ConnectionSettings
-	10, // 19: opamp.proto.ConnectionSettingsOffers.own_logs:type_name -> opamp.proto.ConnectionSettings
-	31, // 20: opamp.proto.ConnectionSettingsOffers.other_connections:type_name -> opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry
-	32, // 21: opamp.proto.AddonsAvailable.addons:type_name -> opamp.proto.AddonsAvailable.AddonsEntry
-	17, // 22: opamp.proto.AddonAvailable.file:type_name -> opamp.proto.DownloadableFile
-	2,  // 23: opamp.proto.ServerErrorResponse.type:type_name -> opamp.proto.ServerErrorResponse.Type
-	19, // 24: opamp.proto.ServerErrorResponse.retry_info:type_name -> opamp.proto.RetryInfo
-	17, // 25: opamp.proto.AgentPackageAvailable.file:type_name -> opamp.proto.DownloadableFile
-	35, // 26: opamp.proto.AgentDescription.agent_attributes:type_name -> opamp.proto.KeyValue
-	21, // 27: opamp.proto.StatusReport.agent_description:type_name -> opamp.proto.AgentDescription
-	23, // 28: opamp.proto.StatusReport.effective_config:type_name -> opamp.proto.EffectiveConfig
-	24, // 29: opamp.proto.StatusReport.remote_config_status:type_name -> opamp.proto.RemoteConfigStatus
-	29, // 30: opamp.proto.EffectiveConfig.config_map:type_name -> opamp.proto.AgentConfigMap
-	3,  // 31: opamp.proto.RemoteConfigStatus.status:type_name -> opamp.proto.RemoteConfigStatus.Status
-	33, // 32: opamp.proto.AgentAddonStatuses.addons:type_name -> opamp.proto.AgentAddonStatuses.AddonsEntry
-	4,  // 33: opamp.proto.AgentAddonStatus.status:type_name -> opamp.proto.AgentAddonStatus.Status
-	5,  // 34: opamp.proto.AgentInstallStatus.status:type_name -> opamp.proto.AgentInstallStatus.Status
-	29, // 35: opamp.proto.AgentRemoteConfig.config:type_name -> opamp.proto.AgentConfigMap
-	34, // 36: opamp.proto.AgentConfigMap.config_map:type_name -> opamp.proto.AgentConfigMap.ConfigMapEntry
-	10, // 37: opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry.value:type_name -> opamp.proto.ConnectionSettings
-	16, // 38: opamp.proto.AddonsAvailable.AddonsEntry.value:type_name -> opamp.proto.AddonAvailable
-	26, // 39: opamp.proto.AgentAddonStatuses.AddonsEntry.value:type_name -> opamp.proto.AgentAddonStatus
-	30, // 40: opamp.proto.AgentConfigMap.ConfigMapEntry.value:type_name -> opamp.proto.AgentConfigFile
-	41, // [41:41] is the sub-list for method output_type
-	41, // [41:41] is the sub-list for method input_type
-	41, // [41:41] is the sub-list for extension type_name
-	41, // [41:41] is the sub-list for extension extendee
-	0,  // [0:41] is the sub-list for field type_name
+	17, // 4: opamp.proto.ServerToAgent.error_response:type_name -> opamp.proto.ServerErrorResponse
+	27, // 5: opamp.proto.ServerToAgent.remote_config:type_name -> opamp.proto.AgentRemoteConfig
+	13, // 6: opamp.proto.ServerToAgent.connection_settings:type_name -> opamp.proto.ConnectionSettingsOffers
+	14, // 7: opamp.proto.ServerToAgent.addons_available:type_name -> opamp.proto.AddonsAvailable
+	19, // 8: opamp.proto.ServerToAgent.agent_package_available:type_name -> opamp.proto.AgentPackageAvailable
+	0,  // 9: opamp.proto.ServerToAgent.flags:type_name -> opamp.proto.ServerToAgent.Flags
+	10, // 10: opamp.proto.ConnectionSettings.headers:type_name -> opamp.proto.Headers
+	10, // 11: opamp.proto.ConnectionSettings.proxy_headers:type_name -> opamp.proto.Headers
+	12, // 12: opamp.proto.ConnectionSettings.certificate:type_name -> opamp.proto.TLSCertificate
+	1,  // 13: opamp.proto.ConnectionSettings.flags:type_name -> opamp.proto.ConnectionSettings.Flags
+	11, // 14: opamp.proto.Headers.headers:type_name -> opamp.proto.Header
+	9,  // 15: opamp.proto.ConnectionSettingsOffers.opamp:type_name -> opamp.proto.ConnectionSettings
+	9,  // 16: opamp.proto.ConnectionSettingsOffers.own_metrics:type_name -> opamp.proto.ConnectionSettings
+	9,  // 17: opamp.proto.ConnectionSettingsOffers.own_traces:type_name -> opamp.proto.ConnectionSettings
+	9,  // 18: opamp.proto.ConnectionSettingsOffers.own_logs:type_name -> opamp.proto.ConnectionSettings
+	30, // 19: opamp.proto.ConnectionSettingsOffers.other_connections:type_name -> opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry
+	31, // 20: opamp.proto.AddonsAvailable.addons:type_name -> opamp.proto.AddonsAvailable.AddonsEntry
+	16, // 21: opamp.proto.AddonAvailable.file:type_name -> opamp.proto.DownloadableFile
+	2,  // 22: opamp.proto.ServerErrorResponse.type:type_name -> opamp.proto.ServerErrorResponse.Type
+	18, // 23: opamp.proto.ServerErrorResponse.retry_info:type_name -> opamp.proto.RetryInfo
+	16, // 24: opamp.proto.AgentPackageAvailable.file:type_name -> opamp.proto.DownloadableFile
+	34, // 25: opamp.proto.AgentDescription.agent_attributes:type_name -> opamp.proto.KeyValue
+	20, // 26: opamp.proto.StatusReport.agent_description:type_name -> opamp.proto.AgentDescription
+	22, // 27: opamp.proto.StatusReport.effective_config:type_name -> opamp.proto.EffectiveConfig
+	23, // 28: opamp.proto.StatusReport.remote_config_status:type_name -> opamp.proto.RemoteConfigStatus
+	28, // 29: opamp.proto.EffectiveConfig.config_map:type_name -> opamp.proto.AgentConfigMap
+	3,  // 30: opamp.proto.RemoteConfigStatus.status:type_name -> opamp.proto.RemoteConfigStatus.Status
+	32, // 31: opamp.proto.AgentAddonStatuses.addons:type_name -> opamp.proto.AgentAddonStatuses.AddonsEntry
+	4,  // 32: opamp.proto.AgentAddonStatus.status:type_name -> opamp.proto.AgentAddonStatus.Status
+	5,  // 33: opamp.proto.AgentInstallStatus.status:type_name -> opamp.proto.AgentInstallStatus.Status
+	28, // 34: opamp.proto.AgentRemoteConfig.config:type_name -> opamp.proto.AgentConfigMap
+	33, // 35: opamp.proto.AgentConfigMap.config_map:type_name -> opamp.proto.AgentConfigMap.ConfigMapEntry
+	9,  // 36: opamp.proto.ConnectionSettingsOffers.OtherConnectionsEntry.value:type_name -> opamp.proto.ConnectionSettings
+	15, // 37: opamp.proto.AddonsAvailable.AddonsEntry.value:type_name -> opamp.proto.AddonAvailable
+	25, // 38: opamp.proto.AgentAddonStatuses.AddonsEntry.value:type_name -> opamp.proto.AgentAddonStatus
+	29, // 39: opamp.proto.AgentConfigMap.ConfigMapEntry.value:type_name -> opamp.proto.AgentConfigFile
+	40, // [40:40] is the sub-list for method output_type
+	40, // [40:40] is the sub-list for method input_type
+	40, // [40:40] is the sub-list for extension type_name
+	40, // [40:40] is the sub-list for extension extendee
+	0,  // [0:40] is the sub-list for field type_name
 }
 
 func init() { file_opamp_proto_init() }
@@ -2759,18 +2676,6 @@ func file_opamp_proto_init() {
 			}
 		}
 		file_opamp_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*DataForAgent); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_opamp_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*ConnectionSettings); i {
 			case 0:
 				return &v.state
@@ -2782,7 +2687,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*Headers); i {
 			case 0:
 				return &v.state
@@ -2794,7 +2699,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*Header); i {
 			case 0:
 				return &v.state
@@ -2806,7 +2711,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*TLSCertificate); i {
 			case 0:
 				return &v.state
@@ -2818,7 +2723,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*ConnectionSettingsOffers); i {
 			case 0:
 				return &v.state
@@ -2830,7 +2735,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AddonsAvailable); i {
 			case 0:
 				return &v.state
@@ -2842,7 +2747,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AddonAvailable); i {
 			case 0:
 				return &v.state
@@ -2854,7 +2759,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*DownloadableFile); i {
 			case 0:
 				return &v.state
@@ -2866,7 +2771,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*ServerErrorResponse); i {
 			case 0:
 				return &v.state
@@ -2878,7 +2783,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*RetryInfo); i {
 			case 0:
 				return &v.state
@@ -2890,7 +2795,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentPackageAvailable); i {
 			case 0:
 				return &v.state
@@ -2902,7 +2807,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentDescription); i {
 			case 0:
 				return &v.state
@@ -2914,7 +2819,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*StatusReport); i {
 			case 0:
 				return &v.state
@@ -2926,7 +2831,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*EffectiveConfig); i {
 			case 0:
 				return &v.state
@@ -2938,7 +2843,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*RemoteConfigStatus); i {
 			case 0:
 				return &v.state
@@ -2950,7 +2855,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentAddonStatuses); i {
 			case 0:
 				return &v.state
@@ -2962,7 +2867,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentAddonStatus); i {
 			case 0:
 				return &v.state
@@ -2974,7 +2879,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentInstallStatus); i {
 			case 0:
 				return &v.state
@@ -2986,7 +2891,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentRemoteConfig); i {
 			case 0:
 				return &v.state
@@ -2998,7 +2903,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentConfigMap); i {
 			case 0:
 				return &v.state
@@ -3010,7 +2915,7 @@ func file_opamp_proto_init() {
 				return nil
 			}
 		}
-		file_opamp_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+		file_opamp_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AgentConfigFile); i {
 			case 0:
 				return &v.state
@@ -3029,11 +2934,7 @@ func file_opamp_proto_init() {
 		(*AgentToServer_AgentInstallStatus)(nil),
 		(*AgentToServer_AgentDisconnect)(nil),
 	}
-	file_opamp_proto_msgTypes[2].OneofWrappers = []interface{}{
-		(*ServerToAgent_DataForAgent)(nil),
-		(*ServerToAgent_ErrorResponse)(nil),
-	}
-	file_opamp_proto_msgTypes[12].OneofWrappers = []interface{}{
+	file_opamp_proto_msgTypes[11].OneofWrappers = []interface{}{
 		(*ServerErrorResponse_RetryInfo)(nil),
 	}
 	type x struct{}
@@ -3042,7 +2943,7 @@ func file_opamp_proto_init() {
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_opamp_proto_rawDesc,
 			NumEnums:      6,
-			NumMessages:   29,
+			NumMessages:   28,
 			NumExtensions: 0,
 			NumServices:   0,
 		},


Test patch:
diff --git a/client/clientimpl_test.go b/client/clientimpl_test.go
index b53308a..9fe0cb0 100644
--- a/client/clientimpl_test.go
+++ b/client/clientimpl_test.go
@@ -254,12 +254,8 @@ func TestFirstStatusReport(t *testing.T) {
 	srv := internal.StartMockServer(t)
 	srv.OnMessage = func(msg *protobufs.AgentToServer) *protobufs.ServerToAgent {
 		return &protobufs.ServerToAgent{
-			InstanceUid: msg.InstanceUid,
-			Body: &protobufs.ServerToAgent_DataForAgent{
-				DataForAgent: &protobufs.DataForAgent{
-					RemoteConfig: remoteConfig,
-				},
-			},
+			InstanceUid:  msg.InstanceUid,
+			RemoteConfig: remoteConfig,
 		}
 	}
 
@@ -365,18 +361,14 @@ func TestConnectionSettings(t *testing.T) {
 			atomic.AddInt64(&rcvStatus, 1)
 
 			return &protobufs.ServerToAgent{
-				Body: &protobufs.ServerToAgent_DataForAgent{
-					DataForAgent: &protobufs.DataForAgent{
-						ConnectionSettings: &protobufs.ConnectionSettingsOffers{
-							Hash:       hash,
-							Opamp:      opampSettings,
-							OwnMetrics: metricsSettings,
-							OwnTraces:  tracesSettings,
-							OwnLogs:    logsSettings,
-							OtherConnections: map[string]*protobufs.ConnectionSettings{
-								"other": otherSettings,
-							},
-						},
+				ConnectionSettings: &protobufs.ConnectionSettingsOffers{
+					Hash:       hash,
+					Opamp:      opampSettings,
+					OwnMetrics: metricsSettings,
+					OwnTraces:  tracesSettings,
+					OwnLogs:    logsSettings,
+					OtherConnections: map[string]*protobufs.ConnectionSettings{
+						"other": otherSettings,
 					},
 				},
 			}