// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1 // protoc v3.19.1 // source: machine/machine.proto package machine import ( reflect "reflect" sync "sync" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" anypb "google.golang.org/protobuf/types/known/anypb" durationpb "google.golang.org/protobuf/types/known/durationpb" emptypb "google.golang.org/protobuf/types/known/emptypb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" common "github.com/talos-systems/talos/pkg/machinery/api/common" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type ApplyConfigurationRequest_Mode int32 const ( ApplyConfigurationRequest_REBOOT ApplyConfigurationRequest_Mode = 0 ApplyConfigurationRequest_AUTO ApplyConfigurationRequest_Mode = 1 ApplyConfigurationRequest_NO_REBOOT ApplyConfigurationRequest_Mode = 2 ApplyConfigurationRequest_STAGED ApplyConfigurationRequest_Mode = 3 ) // Enum value maps for ApplyConfigurationRequest_Mode. var ( ApplyConfigurationRequest_Mode_name = map[int32]string{ 0: "REBOOT", 1: "AUTO", 2: "NO_REBOOT", 3: "STAGED", } ApplyConfigurationRequest_Mode_value = map[string]int32{ "REBOOT": 0, "AUTO": 1, "NO_REBOOT": 2, "STAGED": 3, } ) func (x ApplyConfigurationRequest_Mode) Enum() *ApplyConfigurationRequest_Mode { p := new(ApplyConfigurationRequest_Mode) *p = x return p } func (x ApplyConfigurationRequest_Mode) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ApplyConfigurationRequest_Mode) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[0].Descriptor() } func (ApplyConfigurationRequest_Mode) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[0] } func (x ApplyConfigurationRequest_Mode) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ApplyConfigurationRequest_Mode.Descriptor instead. func (ApplyConfigurationRequest_Mode) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{0, 0} } type RebootRequest_Mode int32 const ( RebootRequest_DEFAULT RebootRequest_Mode = 0 RebootRequest_POWERCYCLE RebootRequest_Mode = 1 ) // Enum value maps for RebootRequest_Mode. var ( RebootRequest_Mode_name = map[int32]string{ 0: "DEFAULT", 1: "POWERCYCLE", } RebootRequest_Mode_value = map[string]int32{ "DEFAULT": 0, "POWERCYCLE": 1, } ) func (x RebootRequest_Mode) Enum() *RebootRequest_Mode { p := new(RebootRequest_Mode) *p = x return p } func (x RebootRequest_Mode) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (RebootRequest_Mode) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[1].Descriptor() } func (RebootRequest_Mode) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[1] } func (x RebootRequest_Mode) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use RebootRequest_Mode.Descriptor instead. func (RebootRequest_Mode) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{3, 0} } type SequenceEvent_Action int32 const ( SequenceEvent_NOOP SequenceEvent_Action = 0 SequenceEvent_START SequenceEvent_Action = 1 SequenceEvent_STOP SequenceEvent_Action = 2 ) // Enum value maps for SequenceEvent_Action. var ( SequenceEvent_Action_name = map[int32]string{ 0: "NOOP", 1: "START", 2: "STOP", } SequenceEvent_Action_value = map[string]int32{ "NOOP": 0, "START": 1, "STOP": 2, } ) func (x SequenceEvent_Action) Enum() *SequenceEvent_Action { p := new(SequenceEvent_Action) *p = x return p } func (x SequenceEvent_Action) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (SequenceEvent_Action) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[2].Descriptor() } func (SequenceEvent_Action) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[2] } func (x SequenceEvent_Action) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use SequenceEvent_Action.Descriptor instead. func (SequenceEvent_Action) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{9, 0} } type PhaseEvent_Action int32 const ( PhaseEvent_START PhaseEvent_Action = 0 PhaseEvent_STOP PhaseEvent_Action = 1 ) // Enum value maps for PhaseEvent_Action. var ( PhaseEvent_Action_name = map[int32]string{ 0: "START", 1: "STOP", } PhaseEvent_Action_value = map[string]int32{ "START": 0, "STOP": 1, } ) func (x PhaseEvent_Action) Enum() *PhaseEvent_Action { p := new(PhaseEvent_Action) *p = x return p } func (x PhaseEvent_Action) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (PhaseEvent_Action) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[3].Descriptor() } func (PhaseEvent_Action) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[3] } func (x PhaseEvent_Action) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use PhaseEvent_Action.Descriptor instead. func (PhaseEvent_Action) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{10, 0} } type TaskEvent_Action int32 const ( TaskEvent_START TaskEvent_Action = 0 TaskEvent_STOP TaskEvent_Action = 1 ) // Enum value maps for TaskEvent_Action. var ( TaskEvent_Action_name = map[int32]string{ 0: "START", 1: "STOP", } TaskEvent_Action_value = map[string]int32{ "START": 0, "STOP": 1, } ) func (x TaskEvent_Action) Enum() *TaskEvent_Action { p := new(TaskEvent_Action) *p = x return p } func (x TaskEvent_Action) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (TaskEvent_Action) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[4].Descriptor() } func (TaskEvent_Action) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[4] } func (x TaskEvent_Action) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use TaskEvent_Action.Descriptor instead. func (TaskEvent_Action) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{11, 0} } type ServiceStateEvent_Action int32 const ( ServiceStateEvent_INITIALIZED ServiceStateEvent_Action = 0 ServiceStateEvent_PREPARING ServiceStateEvent_Action = 1 ServiceStateEvent_WAITING ServiceStateEvent_Action = 2 ServiceStateEvent_RUNNING ServiceStateEvent_Action = 3 ServiceStateEvent_STOPPING ServiceStateEvent_Action = 4 ServiceStateEvent_FINISHED ServiceStateEvent_Action = 5 ServiceStateEvent_FAILED ServiceStateEvent_Action = 6 ServiceStateEvent_SKIPPED ServiceStateEvent_Action = 7 ) // Enum value maps for ServiceStateEvent_Action. var ( ServiceStateEvent_Action_name = map[int32]string{ 0: "INITIALIZED", 1: "PREPARING", 2: "WAITING", 3: "RUNNING", 4: "STOPPING", 5: "FINISHED", 6: "FAILED", 7: "SKIPPED", } ServiceStateEvent_Action_value = map[string]int32{ "INITIALIZED": 0, "PREPARING": 1, "WAITING": 2, "RUNNING": 3, "STOPPING": 4, "FINISHED": 5, "FAILED": 6, "SKIPPED": 7, } ) func (x ServiceStateEvent_Action) Enum() *ServiceStateEvent_Action { p := new(ServiceStateEvent_Action) *p = x return p } func (x ServiceStateEvent_Action) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ServiceStateEvent_Action) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[5].Descriptor() } func (ServiceStateEvent_Action) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[5] } func (x ServiceStateEvent_Action) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ServiceStateEvent_Action.Descriptor instead. func (ServiceStateEvent_Action) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{12, 0} } // File type. type ListRequest_Type int32 const ( // Regular file (not directory, symlink, etc). ListRequest_REGULAR ListRequest_Type = 0 // Directory. ListRequest_DIRECTORY ListRequest_Type = 1 // Symbolic link. ListRequest_SYMLINK ListRequest_Type = 2 ) // Enum value maps for ListRequest_Type. var ( ListRequest_Type_name = map[int32]string{ 0: "REGULAR", 1: "DIRECTORY", 2: "SYMLINK", } ListRequest_Type_value = map[string]int32{ "REGULAR": 0, "DIRECTORY": 1, "SYMLINK": 2, } ) func (x ListRequest_Type) Enum() *ListRequest_Type { p := new(ListRequest_Type) *p = x return p } func (x ListRequest_Type) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ListRequest_Type) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[6].Descriptor() } func (ListRequest_Type) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[6] } func (x ListRequest_Type) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ListRequest_Type.Descriptor instead. func (ListRequest_Type) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{44, 0} } type MachineConfig_MachineType int32 const ( MachineConfig_TYPE_UNKNOWN MachineConfig_MachineType = 0 MachineConfig_TYPE_INIT MachineConfig_MachineType = 1 MachineConfig_TYPE_CONTROL_PLANE MachineConfig_MachineType = 2 MachineConfig_TYPE_WORKER MachineConfig_MachineType = 3 ) // Enum value maps for MachineConfig_MachineType. var ( MachineConfig_MachineType_name = map[int32]string{ 0: "TYPE_UNKNOWN", 1: "TYPE_INIT", 2: "TYPE_CONTROL_PLANE", 3: "TYPE_WORKER", } MachineConfig_MachineType_value = map[string]int32{ "TYPE_UNKNOWN": 0, "TYPE_INIT": 1, "TYPE_CONTROL_PLANE": 2, "TYPE_WORKER": 3, } ) func (x MachineConfig_MachineType) Enum() *MachineConfig_MachineType { p := new(MachineConfig_MachineType) *p = x return p } func (x MachineConfig_MachineType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (MachineConfig_MachineType) Descriptor() protoreflect.EnumDescriptor { return file_machine_machine_proto_enumTypes[7].Descriptor() } func (MachineConfig_MachineType) Type() protoreflect.EnumType { return &file_machine_machine_proto_enumTypes[7] } func (x MachineConfig_MachineType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use MachineConfig_MachineType.Descriptor instead. func (MachineConfig_MachineType) EnumDescriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{117, 0} } // rpc applyConfiguration // ApplyConfiguration describes a request to assert a new configuration upon a // node. type ApplyConfigurationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` // replaced by mode // // Deprecated: Do not use. OnReboot bool `protobuf:"varint,2,opt,name=on_reboot,json=onReboot,proto3" json:"on_reboot,omitempty"` // replaced by mode // // Deprecated: Do not use. Immediate bool `protobuf:"varint,3,opt,name=immediate,proto3" json:"immediate,omitempty"` Mode ApplyConfigurationRequest_Mode `protobuf:"varint,4,opt,name=mode,proto3,enum=machine.ApplyConfigurationRequest_Mode" json:"mode,omitempty"` } func (x *ApplyConfigurationRequest) Reset() { *x = ApplyConfigurationRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ApplyConfigurationRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ApplyConfigurationRequest) ProtoMessage() {} func (x *ApplyConfigurationRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[0] 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 ApplyConfigurationRequest.ProtoReflect.Descriptor instead. func (*ApplyConfigurationRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{0} } func (x *ApplyConfigurationRequest) GetData() []byte { if x != nil { return x.Data } return nil } // Deprecated: Do not use. func (x *ApplyConfigurationRequest) GetOnReboot() bool { if x != nil { return x.OnReboot } return false } // Deprecated: Do not use. func (x *ApplyConfigurationRequest) GetImmediate() bool { if x != nil { return x.Immediate } return false } func (x *ApplyConfigurationRequest) GetMode() ApplyConfigurationRequest_Mode { if x != nil { return x.Mode } return ApplyConfigurationRequest_REBOOT } // ApplyConfigurationResponse describes the response to a configuration request. type ApplyConfiguration struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` // Configuration validation warnings. Warnings []string `protobuf:"bytes,2,rep,name=warnings,proto3" json:"warnings,omitempty"` // States which mode was actually chosen. Mode ApplyConfigurationRequest_Mode `protobuf:"varint,3,opt,name=mode,proto3,enum=machine.ApplyConfigurationRequest_Mode" json:"mode,omitempty"` // Human-readable message explaining the result of the apply configuration call. ModeDetails string `protobuf:"bytes,4,opt,name=mode_details,json=modeDetails,proto3" json:"mode_details,omitempty"` } func (x *ApplyConfiguration) Reset() { *x = ApplyConfiguration{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ApplyConfiguration) String() string { return protoimpl.X.MessageStringOf(x) } func (*ApplyConfiguration) ProtoMessage() {} func (x *ApplyConfiguration) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[1] 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 ApplyConfiguration.ProtoReflect.Descriptor instead. func (*ApplyConfiguration) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{1} } func (x *ApplyConfiguration) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *ApplyConfiguration) GetWarnings() []string { if x != nil { return x.Warnings } return nil } func (x *ApplyConfiguration) GetMode() ApplyConfigurationRequest_Mode { if x != nil { return x.Mode } return ApplyConfigurationRequest_REBOOT } func (x *ApplyConfiguration) GetModeDetails() string { if x != nil { return x.ModeDetails } return "" } type ApplyConfigurationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*ApplyConfiguration `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ApplyConfigurationResponse) Reset() { *x = ApplyConfigurationResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ApplyConfigurationResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ApplyConfigurationResponse) ProtoMessage() {} func (x *ApplyConfigurationResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[2] 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 ApplyConfigurationResponse.ProtoReflect.Descriptor instead. func (*ApplyConfigurationResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{2} } func (x *ApplyConfigurationResponse) GetMessages() []*ApplyConfiguration { if x != nil { return x.Messages } return nil } // rpc reboot type RebootRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Mode RebootRequest_Mode `protobuf:"varint,1,opt,name=mode,proto3,enum=machine.RebootRequest_Mode" json:"mode,omitempty"` } func (x *RebootRequest) Reset() { *x = RebootRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RebootRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RebootRequest) ProtoMessage() {} func (x *RebootRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_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 RebootRequest.ProtoReflect.Descriptor instead. func (*RebootRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{3} } func (x *RebootRequest) GetMode() RebootRequest_Mode { if x != nil { return x.Mode } return RebootRequest_DEFAULT } // The reboot message containing the reboot status. type Reboot struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Reboot) Reset() { *x = Reboot{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Reboot) String() string { return protoimpl.X.MessageStringOf(x) } func (*Reboot) ProtoMessage() {} func (x *Reboot) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[4] 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 Reboot.ProtoReflect.Descriptor instead. func (*Reboot) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{4} } func (x *Reboot) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type RebootResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Reboot `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *RebootResponse) Reset() { *x = RebootResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RebootResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RebootResponse) ProtoMessage() {} func (x *RebootResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[5] 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 RebootResponse.ProtoReflect.Descriptor instead. func (*RebootResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{5} } func (x *RebootResponse) GetMessages() []*Reboot { if x != nil { return x.Messages } return nil } // rpc Bootstrap type BootstrapRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Enable etcd recovery from the snapshot. // // Snapshot should be uploaded before this call via EtcdRecover RPC. RecoverEtcd bool `protobuf:"varint,1,opt,name=recover_etcd,json=recoverEtcd,proto3" json:"recover_etcd,omitempty"` // Skip hash check on the snapshot (etcd). // // Enable this when recovering from data directory copy to skip integrity check. RecoverSkipHashCheck bool `protobuf:"varint,2,opt,name=recover_skip_hash_check,json=recoverSkipHashCheck,proto3" json:"recover_skip_hash_check,omitempty"` } func (x *BootstrapRequest) Reset() { *x = BootstrapRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BootstrapRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*BootstrapRequest) ProtoMessage() {} func (x *BootstrapRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[6] 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 BootstrapRequest.ProtoReflect.Descriptor instead. func (*BootstrapRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{6} } func (x *BootstrapRequest) GetRecoverEtcd() bool { if x != nil { return x.RecoverEtcd } return false } func (x *BootstrapRequest) GetRecoverSkipHashCheck() bool { if x != nil { return x.RecoverSkipHashCheck } return false } // The bootstrap message containing the bootstrap status. type Bootstrap struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Bootstrap) Reset() { *x = Bootstrap{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Bootstrap) String() string { return protoimpl.X.MessageStringOf(x) } func (*Bootstrap) ProtoMessage() {} func (x *Bootstrap) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[7] 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 Bootstrap.ProtoReflect.Descriptor instead. func (*Bootstrap) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{7} } func (x *Bootstrap) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type BootstrapResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Bootstrap `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *BootstrapResponse) Reset() { *x = BootstrapResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BootstrapResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*BootstrapResponse) ProtoMessage() {} func (x *BootstrapResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[8] 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 BootstrapResponse.ProtoReflect.Descriptor instead. func (*BootstrapResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{8} } func (x *BootstrapResponse) GetMessages() []*Bootstrap { if x != nil { return x.Messages } return nil } // rpc events type SequenceEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Sequence string `protobuf:"bytes,1,opt,name=sequence,proto3" json:"sequence,omitempty"` Action SequenceEvent_Action `protobuf:"varint,2,opt,name=action,proto3,enum=machine.SequenceEvent_Action" json:"action,omitempty"` Error *common.Error `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"` } func (x *SequenceEvent) Reset() { *x = SequenceEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SequenceEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*SequenceEvent) ProtoMessage() {} func (x *SequenceEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[9] 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 SequenceEvent.ProtoReflect.Descriptor instead. func (*SequenceEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{9} } func (x *SequenceEvent) GetSequence() string { if x != nil { return x.Sequence } return "" } func (x *SequenceEvent) GetAction() SequenceEvent_Action { if x != nil { return x.Action } return SequenceEvent_NOOP } func (x *SequenceEvent) GetError() *common.Error { if x != nil { return x.Error } return nil } type PhaseEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Phase string `protobuf:"bytes,1,opt,name=phase,proto3" json:"phase,omitempty"` Action PhaseEvent_Action `protobuf:"varint,2,opt,name=action,proto3,enum=machine.PhaseEvent_Action" json:"action,omitempty"` } func (x *PhaseEvent) Reset() { *x = PhaseEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PhaseEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*PhaseEvent) ProtoMessage() {} func (x *PhaseEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[10] 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 PhaseEvent.ProtoReflect.Descriptor instead. func (*PhaseEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{10} } func (x *PhaseEvent) GetPhase() string { if x != nil { return x.Phase } return "" } func (x *PhaseEvent) GetAction() PhaseEvent_Action { if x != nil { return x.Action } return PhaseEvent_START } type TaskEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Task string `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"` Action TaskEvent_Action `protobuf:"varint,2,opt,name=action,proto3,enum=machine.TaskEvent_Action" json:"action,omitempty"` } func (x *TaskEvent) Reset() { *x = TaskEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TaskEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*TaskEvent) ProtoMessage() {} func (x *TaskEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[11] 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 TaskEvent.ProtoReflect.Descriptor instead. func (*TaskEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{11} } func (x *TaskEvent) GetTask() string { if x != nil { return x.Task } return "" } func (x *TaskEvent) GetAction() TaskEvent_Action { if x != nil { return x.Action } return TaskEvent_START } type ServiceStateEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` Action ServiceStateEvent_Action `protobuf:"varint,2,opt,name=action,proto3,enum=machine.ServiceStateEvent_Action" json:"action,omitempty"` Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` Health *ServiceHealth `protobuf:"bytes,4,opt,name=health,proto3" json:"health,omitempty"` } func (x *ServiceStateEvent) Reset() { *x = ServiceStateEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStateEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStateEvent) ProtoMessage() {} func (x *ServiceStateEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[12] 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 ServiceStateEvent.ProtoReflect.Descriptor instead. func (*ServiceStateEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{12} } func (x *ServiceStateEvent) GetService() string { if x != nil { return x.Service } return "" } func (x *ServiceStateEvent) GetAction() ServiceStateEvent_Action { if x != nil { return x.Action } return ServiceStateEvent_INITIALIZED } func (x *ServiceStateEvent) GetMessage() string { if x != nil { return x.Message } return "" } func (x *ServiceStateEvent) GetHealth() *ServiceHealth { if x != nil { return x.Health } return nil } type RestartEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Cmd int64 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` } func (x *RestartEvent) Reset() { *x = RestartEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RestartEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*RestartEvent) ProtoMessage() {} func (x *RestartEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[13] 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 RestartEvent.ProtoReflect.Descriptor instead. func (*RestartEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{13} } func (x *RestartEvent) GetCmd() int64 { if x != nil { return x.Cmd } return 0 } // ConfigLoadErrorEvent is reported when the config loading has failed. type ConfigLoadErrorEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` } func (x *ConfigLoadErrorEvent) Reset() { *x = ConfigLoadErrorEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ConfigLoadErrorEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*ConfigLoadErrorEvent) ProtoMessage() {} func (x *ConfigLoadErrorEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[14] 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 ConfigLoadErrorEvent.ProtoReflect.Descriptor instead. func (*ConfigLoadErrorEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{14} } func (x *ConfigLoadErrorEvent) GetError() string { if x != nil { return x.Error } return "" } // ConfigValidationErrorEvent is reported when config validation has failed. type ConfigValidationErrorEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` } func (x *ConfigValidationErrorEvent) Reset() { *x = ConfigValidationErrorEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ConfigValidationErrorEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*ConfigValidationErrorEvent) ProtoMessage() {} func (x *ConfigValidationErrorEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[15] 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 ConfigValidationErrorEvent.ProtoReflect.Descriptor instead. func (*ConfigValidationErrorEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{15} } func (x *ConfigValidationErrorEvent) GetError() string { if x != nil { return x.Error } return "" } // AddressEvent reports node endpoints aggregated from k8s.Endpoints and network.Hostname. type AddressEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"` Addresses []string `protobuf:"bytes,2,rep,name=addresses,proto3" json:"addresses,omitempty"` } func (x *AddressEvent) Reset() { *x = AddressEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AddressEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddressEvent) ProtoMessage() {} func (x *AddressEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[16] 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 AddressEvent.ProtoReflect.Descriptor instead. func (*AddressEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{16} } func (x *AddressEvent) GetHostname() string { if x != nil { return x.Hostname } return "" } func (x *AddressEvent) GetAddresses() []string { if x != nil { return x.Addresses } return nil } type EventsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields TailEvents int32 `protobuf:"varint,1,opt,name=tail_events,json=tailEvents,proto3" json:"tail_events,omitempty"` TailId string `protobuf:"bytes,2,opt,name=tail_id,json=tailId,proto3" json:"tail_id,omitempty"` TailSeconds int32 `protobuf:"varint,3,opt,name=tail_seconds,json=tailSeconds,proto3" json:"tail_seconds,omitempty"` } func (x *EventsRequest) Reset() { *x = EventsRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EventsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EventsRequest) ProtoMessage() {} func (x *EventsRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[17] 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 EventsRequest.ProtoReflect.Descriptor instead. func (*EventsRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{17} } func (x *EventsRequest) GetTailEvents() int32 { if x != nil { return x.TailEvents } return 0 } func (x *EventsRequest) GetTailId() string { if x != nil { return x.TailId } return "" } func (x *EventsRequest) GetTailSeconds() int32 { if x != nil { return x.TailSeconds } return 0 } type Event struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Data *anypb.Any `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` } func (x *Event) Reset() { *x = Event{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Event) String() string { return protoimpl.X.MessageStringOf(x) } func (*Event) ProtoMessage() {} func (x *Event) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[18] 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 Event.ProtoReflect.Descriptor instead. func (*Event) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{18} } func (x *Event) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Event) GetData() *anypb.Any { if x != nil { return x.Data } return nil } func (x *Event) GetId() string { if x != nil { return x.Id } return "" } // rpc reset type ResetPartitionSpec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"` Wipe bool `protobuf:"varint,2,opt,name=wipe,proto3" json:"wipe,omitempty"` } func (x *ResetPartitionSpec) Reset() { *x = ResetPartitionSpec{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ResetPartitionSpec) String() string { return protoimpl.X.MessageStringOf(x) } func (*ResetPartitionSpec) ProtoMessage() {} func (x *ResetPartitionSpec) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[19] 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 ResetPartitionSpec.ProtoReflect.Descriptor instead. func (*ResetPartitionSpec) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{19} } func (x *ResetPartitionSpec) GetLabel() string { if x != nil { return x.Label } return "" } func (x *ResetPartitionSpec) GetWipe() bool { if x != nil { return x.Wipe } return false } type ResetRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Graceful indicates whether node should leave etcd before the upgrade, it also // enforces etcd checks before leaving. Graceful bool `protobuf:"varint,1,opt,name=graceful,proto3" json:"graceful,omitempty"` // Reboot indicates whether node should reboot or halt after resetting. Reboot bool `protobuf:"varint,2,opt,name=reboot,proto3" json:"reboot,omitempty"` // System_partitions_to_wipe lists specific system disk partitions to be reset (wiped). // If system_partitions_to_wipe is empty, all the partitions are erased. SystemPartitionsToWipe []*ResetPartitionSpec `protobuf:"bytes,3,rep,name=system_partitions_to_wipe,json=systemPartitionsToWipe,proto3" json:"system_partitions_to_wipe,omitempty"` } func (x *ResetRequest) Reset() { *x = ResetRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ResetRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ResetRequest) ProtoMessage() {} func (x *ResetRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[20] 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 ResetRequest.ProtoReflect.Descriptor instead. func (*ResetRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{20} } func (x *ResetRequest) GetGraceful() bool { if x != nil { return x.Graceful } return false } func (x *ResetRequest) GetReboot() bool { if x != nil { return x.Reboot } return false } func (x *ResetRequest) GetSystemPartitionsToWipe() []*ResetPartitionSpec { if x != nil { return x.SystemPartitionsToWipe } return nil } // The reset message containing the restart status. type Reset struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Reset) Reset() { *x = Reset{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Reset) String() string { return protoimpl.X.MessageStringOf(x) } func (*Reset) ProtoMessage() {} func (x *Reset) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[21] 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 Reset.ProtoReflect.Descriptor instead. func (*Reset) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{21} } func (x *Reset) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type ResetResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Reset `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ResetResponse) Reset() { *x = ResetResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ResetResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ResetResponse) ProtoMessage() {} func (x *ResetResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[22] 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 ResetResponse.ProtoReflect.Descriptor instead. func (*ResetResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{22} } func (x *ResetResponse) GetMessages() []*Reset { if x != nil { return x.Messages } return nil } // rpc shutdown // The messages message containing the shutdown status. type Shutdown struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Shutdown) Reset() { *x = Shutdown{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Shutdown) String() string { return protoimpl.X.MessageStringOf(x) } func (*Shutdown) ProtoMessage() {} func (x *Shutdown) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[23] 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 Shutdown.ProtoReflect.Descriptor instead. func (*Shutdown) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{23} } func (x *Shutdown) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type ShutdownResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Shutdown `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ShutdownResponse) Reset() { *x = ShutdownResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ShutdownResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ShutdownResponse) ProtoMessage() {} func (x *ShutdownResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[24] 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 ShutdownResponse.ProtoReflect.Descriptor instead. func (*ShutdownResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{24} } func (x *ShutdownResponse) GetMessages() []*Shutdown { if x != nil { return x.Messages } return nil } // rpc upgrade type UpgradeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Image string `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"` Preserve bool `protobuf:"varint,2,opt,name=preserve,proto3" json:"preserve,omitempty"` Stage bool `protobuf:"varint,3,opt,name=stage,proto3" json:"stage,omitempty"` Force bool `protobuf:"varint,4,opt,name=force,proto3" json:"force,omitempty"` } func (x *UpgradeRequest) Reset() { *x = UpgradeRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpgradeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpgradeRequest) ProtoMessage() {} func (x *UpgradeRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[25] 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 UpgradeRequest.ProtoReflect.Descriptor instead. func (*UpgradeRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{25} } func (x *UpgradeRequest) GetImage() string { if x != nil { return x.Image } return "" } func (x *UpgradeRequest) GetPreserve() bool { if x != nil { return x.Preserve } return false } func (x *UpgradeRequest) GetStage() bool { if x != nil { return x.Stage } return false } func (x *UpgradeRequest) GetForce() bool { if x != nil { return x.Force } return false } type Upgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Ack string `protobuf:"bytes,2,opt,name=ack,proto3" json:"ack,omitempty"` } func (x *Upgrade) Reset() { *x = Upgrade{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Upgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*Upgrade) ProtoMessage() {} func (x *Upgrade) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[26] 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 Upgrade.ProtoReflect.Descriptor instead. func (*Upgrade) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{26} } func (x *Upgrade) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Upgrade) GetAck() string { if x != nil { return x.Ack } return "" } type UpgradeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Upgrade `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *UpgradeResponse) Reset() { *x = UpgradeResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UpgradeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*UpgradeResponse) ProtoMessage() {} func (x *UpgradeResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[27] 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 UpgradeResponse.ProtoReflect.Descriptor instead. func (*UpgradeResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{27} } func (x *UpgradeResponse) GetMessages() []*Upgrade { if x != nil { return x.Messages } return nil } // rpc servicelist type ServiceList struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Services []*ServiceInfo `protobuf:"bytes,2,rep,name=services,proto3" json:"services,omitempty"` } func (x *ServiceList) Reset() { *x = ServiceList{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceList) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceList) ProtoMessage() {} func (x *ServiceList) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[28] 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 ServiceList.ProtoReflect.Descriptor instead. func (*ServiceList) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{28} } func (x *ServiceList) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *ServiceList) GetServices() []*ServiceInfo { if x != nil { return x.Services } return nil } type ServiceListResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*ServiceList `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ServiceListResponse) Reset() { *x = ServiceListResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceListResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceListResponse) ProtoMessage() {} func (x *ServiceListResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[29] 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 ServiceListResponse.ProtoReflect.Descriptor instead. func (*ServiceListResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{29} } func (x *ServiceListResponse) GetMessages() []*ServiceList { if x != nil { return x.Messages } return nil } type ServiceInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` Events *ServiceEvents `protobuf:"bytes,3,opt,name=events,proto3" json:"events,omitempty"` Health *ServiceHealth `protobuf:"bytes,4,opt,name=health,proto3" json:"health,omitempty"` } func (x *ServiceInfo) Reset() { *x = ServiceInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceInfo) ProtoMessage() {} func (x *ServiceInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[30] 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 ServiceInfo.ProtoReflect.Descriptor instead. func (*ServiceInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{30} } func (x *ServiceInfo) GetId() string { if x != nil { return x.Id } return "" } func (x *ServiceInfo) GetState() string { if x != nil { return x.State } return "" } func (x *ServiceInfo) GetEvents() *ServiceEvents { if x != nil { return x.Events } return nil } func (x *ServiceInfo) GetHealth() *ServiceHealth { if x != nil { return x.Health } return nil } type ServiceEvents struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Events []*ServiceEvent `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` } func (x *ServiceEvents) Reset() { *x = ServiceEvents{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceEvents) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceEvents) ProtoMessage() {} func (x *ServiceEvents) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[31] 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 ServiceEvents.ProtoReflect.Descriptor instead. func (*ServiceEvents) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{31} } func (x *ServiceEvents) GetEvents() []*ServiceEvent { if x != nil { return x.Events } return nil } type ServiceEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` Ts *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=ts,proto3" json:"ts,omitempty"` } func (x *ServiceEvent) Reset() { *x = ServiceEvent{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceEvent) ProtoMessage() {} func (x *ServiceEvent) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[32] 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 ServiceEvent.ProtoReflect.Descriptor instead. func (*ServiceEvent) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{32} } func (x *ServiceEvent) GetMsg() string { if x != nil { return x.Msg } return "" } func (x *ServiceEvent) GetState() string { if x != nil { return x.State } return "" } func (x *ServiceEvent) GetTs() *timestamppb.Timestamp { if x != nil { return x.Ts } return nil } type ServiceHealth struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Unknown bool `protobuf:"varint,1,opt,name=unknown,proto3" json:"unknown,omitempty"` Healthy bool `protobuf:"varint,2,opt,name=healthy,proto3" json:"healthy,omitempty"` LastMessage string `protobuf:"bytes,3,opt,name=last_message,json=lastMessage,proto3" json:"last_message,omitempty"` LastChange *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=last_change,json=lastChange,proto3" json:"last_change,omitempty"` } func (x *ServiceHealth) Reset() { *x = ServiceHealth{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceHealth) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceHealth) ProtoMessage() {} func (x *ServiceHealth) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[33] 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 ServiceHealth.ProtoReflect.Descriptor instead. func (*ServiceHealth) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{33} } func (x *ServiceHealth) GetUnknown() bool { if x != nil { return x.Unknown } return false } func (x *ServiceHealth) GetHealthy() bool { if x != nil { return x.Healthy } return false } func (x *ServiceHealth) GetLastMessage() string { if x != nil { return x.LastMessage } return "" } func (x *ServiceHealth) GetLastChange() *timestamppb.Timestamp { if x != nil { return x.LastChange } return nil } // rpc servicestart type ServiceStartRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *ServiceStartRequest) Reset() { *x = ServiceStartRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStartRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStartRequest) ProtoMessage() {} func (x *ServiceStartRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[34] 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 ServiceStartRequest.ProtoReflect.Descriptor instead. func (*ServiceStartRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{34} } func (x *ServiceStartRequest) GetId() string { if x != nil { return x.Id } return "" } type ServiceStart struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Resp string `protobuf:"bytes,2,opt,name=resp,proto3" json:"resp,omitempty"` } func (x *ServiceStart) Reset() { *x = ServiceStart{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStart) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStart) ProtoMessage() {} func (x *ServiceStart) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[35] 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 ServiceStart.ProtoReflect.Descriptor instead. func (*ServiceStart) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{35} } func (x *ServiceStart) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *ServiceStart) GetResp() string { if x != nil { return x.Resp } return "" } type ServiceStartResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*ServiceStart `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ServiceStartResponse) Reset() { *x = ServiceStartResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStartResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStartResponse) ProtoMessage() {} func (x *ServiceStartResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[36] 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 ServiceStartResponse.ProtoReflect.Descriptor instead. func (*ServiceStartResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{36} } func (x *ServiceStartResponse) GetMessages() []*ServiceStart { if x != nil { return x.Messages } return nil } type ServiceStopRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *ServiceStopRequest) Reset() { *x = ServiceStopRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStopRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStopRequest) ProtoMessage() {} func (x *ServiceStopRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[37] 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 ServiceStopRequest.ProtoReflect.Descriptor instead. func (*ServiceStopRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{37} } func (x *ServiceStopRequest) GetId() string { if x != nil { return x.Id } return "" } type ServiceStop struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Resp string `protobuf:"bytes,2,opt,name=resp,proto3" json:"resp,omitempty"` } func (x *ServiceStop) Reset() { *x = ServiceStop{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStop) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStop) ProtoMessage() {} func (x *ServiceStop) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[38] 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 ServiceStop.ProtoReflect.Descriptor instead. func (*ServiceStop) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{38} } func (x *ServiceStop) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *ServiceStop) GetResp() string { if x != nil { return x.Resp } return "" } type ServiceStopResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*ServiceStop `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ServiceStopResponse) Reset() { *x = ServiceStopResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceStopResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceStopResponse) ProtoMessage() {} func (x *ServiceStopResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[39] 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 ServiceStopResponse.ProtoReflect.Descriptor instead. func (*ServiceStopResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{39} } func (x *ServiceStopResponse) GetMessages() []*ServiceStop { if x != nil { return x.Messages } return nil } type ServiceRestartRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *ServiceRestartRequest) Reset() { *x = ServiceRestartRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceRestartRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceRestartRequest) ProtoMessage() {} func (x *ServiceRestartRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[40] 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 ServiceRestartRequest.ProtoReflect.Descriptor instead. func (*ServiceRestartRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{40} } func (x *ServiceRestartRequest) GetId() string { if x != nil { return x.Id } return "" } type ServiceRestart struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Resp string `protobuf:"bytes,2,opt,name=resp,proto3" json:"resp,omitempty"` } func (x *ServiceRestart) Reset() { *x = ServiceRestart{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceRestart) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceRestart) ProtoMessage() {} func (x *ServiceRestart) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[41] 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 ServiceRestart.ProtoReflect.Descriptor instead. func (*ServiceRestart) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{41} } func (x *ServiceRestart) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *ServiceRestart) GetResp() string { if x != nil { return x.Resp } return "" } type ServiceRestartResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*ServiceRestart `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ServiceRestartResponse) Reset() { *x = ServiceRestartResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ServiceRestartResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ServiceRestartResponse) ProtoMessage() {} func (x *ServiceRestartResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[42] 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 ServiceRestartResponse.ProtoReflect.Descriptor instead. func (*ServiceRestartResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{42} } func (x *ServiceRestartResponse) GetMessages() []*ServiceRestart { if x != nil { return x.Messages } return nil } // CopyRequest describes a request to copy data out of Talos node // // Copy produces .tar.gz archive which is streamed back to the caller type CopyRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Root path to start copying data out, it might be either a file or directory RootPath string `protobuf:"bytes,1,opt,name=root_path,json=rootPath,proto3" json:"root_path,omitempty"` } func (x *CopyRequest) Reset() { *x = CopyRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CopyRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CopyRequest) ProtoMessage() {} func (x *CopyRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[43] 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 CopyRequest.ProtoReflect.Descriptor instead. func (*CopyRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{43} } func (x *CopyRequest) GetRootPath() string { if x != nil { return x.RootPath } return "" } // ListRequest describes a request to list the contents of a directory. type ListRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Root indicates the root directory for the list. If not indicated, '/' is // presumed. Root string `protobuf:"bytes,1,opt,name=root,proto3" json:"root,omitempty"` // Recurse indicates that subdirectories should be recursed. Recurse bool `protobuf:"varint,2,opt,name=recurse,proto3" json:"recurse,omitempty"` // RecursionDepth indicates how many levels of subdirectories should be // recursed. The default (0) indicates that no limit should be enforced. RecursionDepth int32 `protobuf:"varint,3,opt,name=recursion_depth,json=recursionDepth,proto3" json:"recursion_depth,omitempty"` // Types indicates what file type should be returned. If not indicated, // all files will be returned. Types []ListRequest_Type `protobuf:"varint,4,rep,packed,name=types,proto3,enum=machine.ListRequest_Type" json:"types,omitempty"` } func (x *ListRequest) Reset() { *x = ListRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ListRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRequest) ProtoMessage() {} func (x *ListRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[44] 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 ListRequest.ProtoReflect.Descriptor instead. func (*ListRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{44} } func (x *ListRequest) GetRoot() string { if x != nil { return x.Root } return "" } func (x *ListRequest) GetRecurse() bool { if x != nil { return x.Recurse } return false } func (x *ListRequest) GetRecursionDepth() int32 { if x != nil { return x.RecursionDepth } return 0 } func (x *ListRequest) GetTypes() []ListRequest_Type { if x != nil { return x.Types } return nil } // DiskUsageRequest describes a request to list disk usage of directories and regular files type DiskUsageRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // RecursionDepth indicates how many levels of subdirectories should be // recursed. The default (0) indicates that no limit should be enforced. RecursionDepth int32 `protobuf:"varint,1,opt,name=recursion_depth,json=recursionDepth,proto3" json:"recursion_depth,omitempty"` // All write sizes for all files, not just directories. All bool `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"` // Threshold exclude entries smaller than SIZE if positive, // or entries greater than SIZE if negative. Threshold int64 `protobuf:"varint,3,opt,name=threshold,proto3" json:"threshold,omitempty"` // DiskUsagePaths is the list of directories to calculate disk usage for. Paths []string `protobuf:"bytes,4,rep,name=paths,proto3" json:"paths,omitempty"` } func (x *DiskUsageRequest) Reset() { *x = DiskUsageRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DiskUsageRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DiskUsageRequest) ProtoMessage() {} func (x *DiskUsageRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[45] 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 DiskUsageRequest.ProtoReflect.Descriptor instead. func (*DiskUsageRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{45} } func (x *DiskUsageRequest) GetRecursionDepth() int32 { if x != nil { return x.RecursionDepth } return 0 } func (x *DiskUsageRequest) GetAll() bool { if x != nil { return x.All } return false } func (x *DiskUsageRequest) GetThreshold() int64 { if x != nil { return x.Threshold } return 0 } func (x *DiskUsageRequest) GetPaths() []string { if x != nil { return x.Paths } return nil } // FileInfo describes a file or directory's information type FileInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` // Name is the name (including prefixed path) of the file or directory Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // Size indicates the number of bytes contained within the file Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` // Mode is the bitmap of UNIX mode/permission flags of the file Mode uint32 `protobuf:"varint,4,opt,name=mode,proto3" json:"mode,omitempty"` // Modified indicates the UNIX timestamp at which the file was last modified Modified int64 `protobuf:"varint,5,opt,name=modified,proto3" json:"modified,omitempty"` // IsDir indicates that the file is a directory IsDir bool `protobuf:"varint,6,opt,name=is_dir,json=isDir,proto3" json:"is_dir,omitempty"` // Error describes any error encountered while trying to read the file // information. Error string `protobuf:"bytes,7,opt,name=error,proto3" json:"error,omitempty"` // Link is filled with symlink target Link string `protobuf:"bytes,8,opt,name=link,proto3" json:"link,omitempty"` // RelativeName is the name of the file or directory relative to the RootPath RelativeName string `protobuf:"bytes,9,opt,name=relative_name,json=relativeName,proto3" json:"relative_name,omitempty"` // Owner uid Uid uint32 `protobuf:"varint,10,opt,name=uid,proto3" json:"uid,omitempty"` // Owner gid Gid uint32 `protobuf:"varint,11,opt,name=gid,proto3" json:"gid,omitempty"` } func (x *FileInfo) Reset() { *x = FileInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FileInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*FileInfo) ProtoMessage() {} func (x *FileInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[46] 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 FileInfo.ProtoReflect.Descriptor instead. func (*FileInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{46} } func (x *FileInfo) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *FileInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *FileInfo) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *FileInfo) GetMode() uint32 { if x != nil { return x.Mode } return 0 } func (x *FileInfo) GetModified() int64 { if x != nil { return x.Modified } return 0 } func (x *FileInfo) GetIsDir() bool { if x != nil { return x.IsDir } return false } func (x *FileInfo) GetError() string { if x != nil { return x.Error } return "" } func (x *FileInfo) GetLink() string { if x != nil { return x.Link } return "" } func (x *FileInfo) GetRelativeName() string { if x != nil { return x.RelativeName } return "" } func (x *FileInfo) GetUid() uint32 { if x != nil { return x.Uid } return 0 } func (x *FileInfo) GetGid() uint32 { if x != nil { return x.Gid } return 0 } // DiskUsageInfo describes a file or directory's information for du command type DiskUsageInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` // Name is the name (including prefixed path) of the file or directory Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // Size indicates the number of bytes contained within the file Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` // Error describes any error encountered while trying to read the file // information. Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"` // RelativeName is the name of the file or directory relative to the RootPath RelativeName string `protobuf:"bytes,5,opt,name=relative_name,json=relativeName,proto3" json:"relative_name,omitempty"` } func (x *DiskUsageInfo) Reset() { *x = DiskUsageInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DiskUsageInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*DiskUsageInfo) ProtoMessage() {} func (x *DiskUsageInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[47] 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 DiskUsageInfo.ProtoReflect.Descriptor instead. func (*DiskUsageInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{47} } func (x *DiskUsageInfo) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *DiskUsageInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *DiskUsageInfo) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *DiskUsageInfo) GetError() string { if x != nil { return x.Error } return "" } func (x *DiskUsageInfo) GetRelativeName() string { if x != nil { return x.RelativeName } return "" } // The messages message containing the requested df stats. type Mounts struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Stats []*MountStat `protobuf:"bytes,2,rep,name=stats,proto3" json:"stats,omitempty"` } func (x *Mounts) Reset() { *x = Mounts{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Mounts) String() string { return protoimpl.X.MessageStringOf(x) } func (*Mounts) ProtoMessage() {} func (x *Mounts) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[48] 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 Mounts.ProtoReflect.Descriptor instead. func (*Mounts) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{48} } func (x *Mounts) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Mounts) GetStats() []*MountStat { if x != nil { return x.Stats } return nil } type MountsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Mounts `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *MountsResponse) Reset() { *x = MountsResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MountsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MountsResponse) ProtoMessage() {} func (x *MountsResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[49] 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 MountsResponse.ProtoReflect.Descriptor instead. func (*MountsResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{49} } func (x *MountsResponse) GetMessages() []*Mounts { if x != nil { return x.Messages } return nil } // The messages message containing the requested processes. type MountStat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Filesystem string `protobuf:"bytes,1,opt,name=filesystem,proto3" json:"filesystem,omitempty"` Size uint64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"` Available uint64 `protobuf:"varint,3,opt,name=available,proto3" json:"available,omitempty"` MountedOn string `protobuf:"bytes,4,opt,name=mounted_on,json=mountedOn,proto3" json:"mounted_on,omitempty"` } func (x *MountStat) Reset() { *x = MountStat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MountStat) String() string { return protoimpl.X.MessageStringOf(x) } func (*MountStat) ProtoMessage() {} func (x *MountStat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[50] 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 MountStat.ProtoReflect.Descriptor instead. func (*MountStat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{50} } func (x *MountStat) GetFilesystem() string { if x != nil { return x.Filesystem } return "" } func (x *MountStat) GetSize() uint64 { if x != nil { return x.Size } return 0 } func (x *MountStat) GetAvailable() uint64 { if x != nil { return x.Available } return 0 } func (x *MountStat) GetMountedOn() string { if x != nil { return x.MountedOn } return "" } type Version struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Version *VersionInfo `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` Platform *PlatformInfo `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"` // Features describe individual Talos features that can be switched on or off. Features *FeaturesInfo `protobuf:"bytes,4,opt,name=features,proto3" json:"features,omitempty"` } func (x *Version) Reset() { *x = Version{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Version) String() string { return protoimpl.X.MessageStringOf(x) } func (*Version) ProtoMessage() {} func (x *Version) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[51] 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 Version.ProtoReflect.Descriptor instead. func (*Version) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{51} } func (x *Version) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Version) GetVersion() *VersionInfo { if x != nil { return x.Version } return nil } func (x *Version) GetPlatform() *PlatformInfo { if x != nil { return x.Platform } return nil } func (x *Version) GetFeatures() *FeaturesInfo { if x != nil { return x.Features } return nil } type VersionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Version `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *VersionResponse) Reset() { *x = VersionResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VersionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*VersionResponse) ProtoMessage() {} func (x *VersionResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[52] 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 VersionResponse.ProtoReflect.Descriptor instead. func (*VersionResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{52} } func (x *VersionResponse) GetMessages() []*Version { if x != nil { return x.Messages } return nil } type VersionInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"` Sha string `protobuf:"bytes,2,opt,name=sha,proto3" json:"sha,omitempty"` Built string `protobuf:"bytes,3,opt,name=built,proto3" json:"built,omitempty"` GoVersion string `protobuf:"bytes,4,opt,name=go_version,json=goVersion,proto3" json:"go_version,omitempty"` Os string `protobuf:"bytes,5,opt,name=os,proto3" json:"os,omitempty"` Arch string `protobuf:"bytes,6,opt,name=arch,proto3" json:"arch,omitempty"` } func (x *VersionInfo) Reset() { *x = VersionInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VersionInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*VersionInfo) ProtoMessage() {} func (x *VersionInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[53] 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 VersionInfo.ProtoReflect.Descriptor instead. func (*VersionInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{53} } func (x *VersionInfo) GetTag() string { if x != nil { return x.Tag } return "" } func (x *VersionInfo) GetSha() string { if x != nil { return x.Sha } return "" } func (x *VersionInfo) GetBuilt() string { if x != nil { return x.Built } return "" } func (x *VersionInfo) GetGoVersion() string { if x != nil { return x.GoVersion } return "" } func (x *VersionInfo) GetOs() string { if x != nil { return x.Os } return "" } func (x *VersionInfo) GetArch() string { if x != nil { return x.Arch } return "" } type PlatformInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Mode string `protobuf:"bytes,2,opt,name=mode,proto3" json:"mode,omitempty"` } func (x *PlatformInfo) Reset() { *x = PlatformInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PlatformInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*PlatformInfo) ProtoMessage() {} func (x *PlatformInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[54] 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 PlatformInfo.ProtoReflect.Descriptor instead. func (*PlatformInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{54} } func (x *PlatformInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *PlatformInfo) GetMode() string { if x != nil { return x.Mode } return "" } // FeaturesInfo describes individual Talos features that can be switched on or off. type FeaturesInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // RBAC is true if role-based access control is enabled. Rbac bool `protobuf:"varint,1,opt,name=rbac,proto3" json:"rbac,omitempty"` } func (x *FeaturesInfo) Reset() { *x = FeaturesInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FeaturesInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*FeaturesInfo) ProtoMessage() {} func (x *FeaturesInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[55] 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 FeaturesInfo.ProtoReflect.Descriptor instead. func (*FeaturesInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{55} } func (x *FeaturesInfo) GetRbac() bool { if x != nil { return x.Rbac } return false } // rpc logs // The request message containing the process name. type LogsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` // driver might be default "containerd" or "cri" Driver common.ContainerDriver `protobuf:"varint,3,opt,name=driver,proto3,enum=common.ContainerDriver" json:"driver,omitempty"` Follow bool `protobuf:"varint,4,opt,name=follow,proto3" json:"follow,omitempty"` TailLines int32 `protobuf:"varint,5,opt,name=tail_lines,json=tailLines,proto3" json:"tail_lines,omitempty"` } func (x *LogsRequest) Reset() { *x = LogsRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *LogsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*LogsRequest) ProtoMessage() {} func (x *LogsRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[56] 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 LogsRequest.ProtoReflect.Descriptor instead. func (*LogsRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{56} } func (x *LogsRequest) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *LogsRequest) GetId() string { if x != nil { return x.Id } return "" } func (x *LogsRequest) GetDriver() common.ContainerDriver { if x != nil { return x.Driver } return common.ContainerDriver(0) } func (x *LogsRequest) GetFollow() bool { if x != nil { return x.Follow } return false } func (x *LogsRequest) GetTailLines() int32 { if x != nil { return x.TailLines } return 0 } type ReadRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` } func (x *ReadRequest) Reset() { *x = ReadRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ReadRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ReadRequest) ProtoMessage() {} func (x *ReadRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[57] 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 ReadRequest.ProtoReflect.Descriptor instead. func (*ReadRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{57} } func (x *ReadRequest) GetPath() string { if x != nil { return x.Path } return "" } // rpc rollback type RollbackRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *RollbackRequest) Reset() { *x = RollbackRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RollbackRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RollbackRequest) ProtoMessage() {} func (x *RollbackRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[58] 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 RollbackRequest.ProtoReflect.Descriptor instead. func (*RollbackRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{58} } type Rollback struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Rollback) Reset() { *x = Rollback{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Rollback) String() string { return protoimpl.X.MessageStringOf(x) } func (*Rollback) ProtoMessage() {} func (x *Rollback) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[59] 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 Rollback.ProtoReflect.Descriptor instead. func (*Rollback) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{59} } func (x *Rollback) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type RollbackResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Rollback `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *RollbackResponse) Reset() { *x = RollbackResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RollbackResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RollbackResponse) ProtoMessage() {} func (x *RollbackResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[60] 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 RollbackResponse.ProtoReflect.Descriptor instead. func (*RollbackResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{60} } func (x *RollbackResponse) GetMessages() []*Rollback { if x != nil { return x.Messages } return nil } type ContainersRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` // driver might be default "containerd" or "cri" Driver common.ContainerDriver `protobuf:"varint,2,opt,name=driver,proto3,enum=common.ContainerDriver" json:"driver,omitempty"` } func (x *ContainersRequest) Reset() { *x = ContainersRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContainersRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContainersRequest) ProtoMessage() {} func (x *ContainersRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[61] 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 ContainersRequest.ProtoReflect.Descriptor instead. func (*ContainersRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{61} } func (x *ContainersRequest) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *ContainersRequest) GetDriver() common.ContainerDriver { if x != nil { return x.Driver } return common.ContainerDriver(0) } // The messages message containing the requested containers. type ContainerInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` Image string `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"` Pid uint32 `protobuf:"varint,4,opt,name=pid,proto3" json:"pid,omitempty"` Status string `protobuf:"bytes,5,opt,name=status,proto3" json:"status,omitempty"` PodId string `protobuf:"bytes,6,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"` Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` } func (x *ContainerInfo) Reset() { *x = ContainerInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContainerInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContainerInfo) ProtoMessage() {} func (x *ContainerInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[62] 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 ContainerInfo.ProtoReflect.Descriptor instead. func (*ContainerInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{62} } func (x *ContainerInfo) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *ContainerInfo) GetId() string { if x != nil { return x.Id } return "" } func (x *ContainerInfo) GetImage() string { if x != nil { return x.Image } return "" } func (x *ContainerInfo) GetPid() uint32 { if x != nil { return x.Pid } return 0 } func (x *ContainerInfo) GetStatus() string { if x != nil { return x.Status } return "" } func (x *ContainerInfo) GetPodId() string { if x != nil { return x.PodId } return "" } func (x *ContainerInfo) GetName() string { if x != nil { return x.Name } return "" } // The messages message containing the requested containers. type Container struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Containers []*ContainerInfo `protobuf:"bytes,2,rep,name=containers,proto3" json:"containers,omitempty"` } func (x *Container) Reset() { *x = Container{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Container) String() string { return protoimpl.X.MessageStringOf(x) } func (*Container) ProtoMessage() {} func (x *Container) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[63] 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 Container.ProtoReflect.Descriptor instead. func (*Container) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{63} } func (x *Container) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Container) GetContainers() []*ContainerInfo { if x != nil { return x.Containers } return nil } type ContainersResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Container `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ContainersResponse) Reset() { *x = ContainersResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContainersResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContainersResponse) ProtoMessage() {} func (x *ContainersResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[64] 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 ContainersResponse.ProtoReflect.Descriptor instead. func (*ContainersResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{64} } func (x *ContainersResponse) GetMessages() []*Container { if x != nil { return x.Messages } return nil } // dmesg type DmesgRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Follow bool `protobuf:"varint,1,opt,name=follow,proto3" json:"follow,omitempty"` Tail bool `protobuf:"varint,2,opt,name=tail,proto3" json:"tail,omitempty"` } func (x *DmesgRequest) Reset() { *x = DmesgRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DmesgRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DmesgRequest) ProtoMessage() {} func (x *DmesgRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[65] 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 DmesgRequest.ProtoReflect.Descriptor instead. func (*DmesgRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{65} } func (x *DmesgRequest) GetFollow() bool { if x != nil { return x.Follow } return false } func (x *DmesgRequest) GetTail() bool { if x != nil { return x.Tail } return false } // rpc processes type ProcessesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Process `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *ProcessesResponse) Reset() { *x = ProcessesResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ProcessesResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ProcessesResponse) ProtoMessage() {} func (x *ProcessesResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[66] 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 ProcessesResponse.ProtoReflect.Descriptor instead. func (*ProcessesResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{66} } func (x *ProcessesResponse) GetMessages() []*Process { if x != nil { return x.Messages } return nil } type Process struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Processes []*ProcessInfo `protobuf:"bytes,2,rep,name=processes,proto3" json:"processes,omitempty"` } func (x *Process) Reset() { *x = Process{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Process) String() string { return protoimpl.X.MessageStringOf(x) } func (*Process) ProtoMessage() {} func (x *Process) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[67] 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 Process.ProtoReflect.Descriptor instead. func (*Process) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{67} } func (x *Process) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Process) GetProcesses() []*ProcessInfo { if x != nil { return x.Processes } return nil } type ProcessInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Pid int32 `protobuf:"varint,1,opt,name=pid,proto3" json:"pid,omitempty"` Ppid int32 `protobuf:"varint,2,opt,name=ppid,proto3" json:"ppid,omitempty"` State string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"` Threads int32 `protobuf:"varint,4,opt,name=threads,proto3" json:"threads,omitempty"` CpuTime float64 `protobuf:"fixed64,5,opt,name=cpu_time,json=cpuTime,proto3" json:"cpu_time,omitempty"` VirtualMemory uint64 `protobuf:"varint,6,opt,name=virtual_memory,json=virtualMemory,proto3" json:"virtual_memory,omitempty"` ResidentMemory uint64 `protobuf:"varint,7,opt,name=resident_memory,json=residentMemory,proto3" json:"resident_memory,omitempty"` Command string `protobuf:"bytes,8,opt,name=command,proto3" json:"command,omitempty"` Executable string `protobuf:"bytes,9,opt,name=executable,proto3" json:"executable,omitempty"` Args string `protobuf:"bytes,10,opt,name=args,proto3" json:"args,omitempty"` } func (x *ProcessInfo) Reset() { *x = ProcessInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ProcessInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*ProcessInfo) ProtoMessage() {} func (x *ProcessInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[68] 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 ProcessInfo.ProtoReflect.Descriptor instead. func (*ProcessInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{68} } func (x *ProcessInfo) GetPid() int32 { if x != nil { return x.Pid } return 0 } func (x *ProcessInfo) GetPpid() int32 { if x != nil { return x.Ppid } return 0 } func (x *ProcessInfo) GetState() string { if x != nil { return x.State } return "" } func (x *ProcessInfo) GetThreads() int32 { if x != nil { return x.Threads } return 0 } func (x *ProcessInfo) GetCpuTime() float64 { if x != nil { return x.CpuTime } return 0 } func (x *ProcessInfo) GetVirtualMemory() uint64 { if x != nil { return x.VirtualMemory } return 0 } func (x *ProcessInfo) GetResidentMemory() uint64 { if x != nil { return x.ResidentMemory } return 0 } func (x *ProcessInfo) GetCommand() string { if x != nil { return x.Command } return "" } func (x *ProcessInfo) GetExecutable() string { if x != nil { return x.Executable } return "" } func (x *ProcessInfo) GetArgs() string { if x != nil { return x.Args } return "" } // rpc restart // The request message containing the process to restart. type RestartRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` // driver might be default "containerd" or "cri" Driver common.ContainerDriver `protobuf:"varint,3,opt,name=driver,proto3,enum=common.ContainerDriver" json:"driver,omitempty"` } func (x *RestartRequest) Reset() { *x = RestartRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RestartRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RestartRequest) ProtoMessage() {} func (x *RestartRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[69] 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 RestartRequest.ProtoReflect.Descriptor instead. func (*RestartRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{69} } func (x *RestartRequest) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *RestartRequest) GetId() string { if x != nil { return x.Id } return "" } func (x *RestartRequest) GetDriver() common.ContainerDriver { if x != nil { return x.Driver } return common.ContainerDriver(0) } type Restart struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *Restart) Reset() { *x = Restart{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Restart) String() string { return protoimpl.X.MessageStringOf(x) } func (*Restart) ProtoMessage() {} func (x *Restart) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[70] 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 Restart.ProtoReflect.Descriptor instead. func (*Restart) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{70} } func (x *Restart) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } // The messages message containing the restart status. type RestartResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Restart `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *RestartResponse) Reset() { *x = RestartResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RestartResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RestartResponse) ProtoMessage() {} func (x *RestartResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[71] 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 RestartResponse.ProtoReflect.Descriptor instead. func (*RestartResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{71} } func (x *RestartResponse) GetMessages() []*Restart { if x != nil { return x.Messages } return nil } // The request message containing the containerd namespace. type StatsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` // driver might be default "containerd" or "cri" Driver common.ContainerDriver `protobuf:"varint,2,opt,name=driver,proto3,enum=common.ContainerDriver" json:"driver,omitempty"` } func (x *StatsRequest) Reset() { *x = StatsRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatsRequest) ProtoMessage() {} func (x *StatsRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[72] 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 StatsRequest.ProtoReflect.Descriptor instead. func (*StatsRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{72} } func (x *StatsRequest) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *StatsRequest) GetDriver() common.ContainerDriver { if x != nil { return x.Driver } return common.ContainerDriver(0) } // The messages message containing the requested stats. type Stats struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Stats []*Stat `protobuf:"bytes,2,rep,name=stats,proto3" json:"stats,omitempty"` } func (x *Stats) Reset() { *x = Stats{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Stats) String() string { return protoimpl.X.MessageStringOf(x) } func (*Stats) ProtoMessage() {} func (x *Stats) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[73] 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 Stats.ProtoReflect.Descriptor instead. func (*Stats) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{73} } func (x *Stats) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Stats) GetStats() []*Stat { if x != nil { return x.Stats } return nil } type StatsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Stats `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *StatsResponse) Reset() { *x = StatsResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatsResponse) ProtoMessage() {} func (x *StatsResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[74] 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 StatsResponse.ProtoReflect.Descriptor instead. func (*StatsResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{74} } func (x *StatsResponse) GetMessages() []*Stats { if x != nil { return x.Messages } return nil } // The messages message containing the requested stat. type Stat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` MemoryUsage uint64 `protobuf:"varint,4,opt,name=memory_usage,json=memoryUsage,proto3" json:"memory_usage,omitempty"` CpuUsage uint64 `protobuf:"varint,5,opt,name=cpu_usage,json=cpuUsage,proto3" json:"cpu_usage,omitempty"` PodId string `protobuf:"bytes,6,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"` Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` } func (x *Stat) Reset() { *x = Stat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Stat) String() string { return protoimpl.X.MessageStringOf(x) } func (*Stat) ProtoMessage() {} func (x *Stat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[75] 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 Stat.ProtoReflect.Descriptor instead. func (*Stat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{75} } func (x *Stat) GetNamespace() string { if x != nil { return x.Namespace } return "" } func (x *Stat) GetId() string { if x != nil { return x.Id } return "" } func (x *Stat) GetMemoryUsage() uint64 { if x != nil { return x.MemoryUsage } return 0 } func (x *Stat) GetCpuUsage() uint64 { if x != nil { return x.CpuUsage } return 0 } func (x *Stat) GetPodId() string { if x != nil { return x.PodId } return "" } func (x *Stat) GetName() string { if x != nil { return x.Name } return "" } type Memory struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Meminfo *MemInfo `protobuf:"bytes,2,opt,name=meminfo,proto3" json:"meminfo,omitempty"` } func (x *Memory) Reset() { *x = Memory{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Memory) String() string { return protoimpl.X.MessageStringOf(x) } func (*Memory) ProtoMessage() {} func (x *Memory) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[76] 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 Memory.ProtoReflect.Descriptor instead. func (*Memory) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{76} } func (x *Memory) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Memory) GetMeminfo() *MemInfo { if x != nil { return x.Meminfo } return nil } type MemoryResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Memory `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *MemoryResponse) Reset() { *x = MemoryResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MemoryResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MemoryResponse) ProtoMessage() {} func (x *MemoryResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[77] 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 MemoryResponse.ProtoReflect.Descriptor instead. func (*MemoryResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{77} } func (x *MemoryResponse) GetMessages() []*Memory { if x != nil { return x.Messages } return nil } type MemInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Memtotal uint64 `protobuf:"varint,1,opt,name=memtotal,proto3" json:"memtotal,omitempty"` Memfree uint64 `protobuf:"varint,2,opt,name=memfree,proto3" json:"memfree,omitempty"` Memavailable uint64 `protobuf:"varint,3,opt,name=memavailable,proto3" json:"memavailable,omitempty"` Buffers uint64 `protobuf:"varint,4,opt,name=buffers,proto3" json:"buffers,omitempty"` Cached uint64 `protobuf:"varint,5,opt,name=cached,proto3" json:"cached,omitempty"` Swapcached uint64 `protobuf:"varint,6,opt,name=swapcached,proto3" json:"swapcached,omitempty"` Active uint64 `protobuf:"varint,7,opt,name=active,proto3" json:"active,omitempty"` Inactive uint64 `protobuf:"varint,8,opt,name=inactive,proto3" json:"inactive,omitempty"` Activeanon uint64 `protobuf:"varint,9,opt,name=activeanon,proto3" json:"activeanon,omitempty"` Inactiveanon uint64 `protobuf:"varint,10,opt,name=inactiveanon,proto3" json:"inactiveanon,omitempty"` Activefile uint64 `protobuf:"varint,11,opt,name=activefile,proto3" json:"activefile,omitempty"` Inactivefile uint64 `protobuf:"varint,12,opt,name=inactivefile,proto3" json:"inactivefile,omitempty"` Unevictable uint64 `protobuf:"varint,13,opt,name=unevictable,proto3" json:"unevictable,omitempty"` Mlocked uint64 `protobuf:"varint,14,opt,name=mlocked,proto3" json:"mlocked,omitempty"` Swaptotal uint64 `protobuf:"varint,15,opt,name=swaptotal,proto3" json:"swaptotal,omitempty"` Swapfree uint64 `protobuf:"varint,16,opt,name=swapfree,proto3" json:"swapfree,omitempty"` Dirty uint64 `protobuf:"varint,17,opt,name=dirty,proto3" json:"dirty,omitempty"` Writeback uint64 `protobuf:"varint,18,opt,name=writeback,proto3" json:"writeback,omitempty"` Anonpages uint64 `protobuf:"varint,19,opt,name=anonpages,proto3" json:"anonpages,omitempty"` Mapped uint64 `protobuf:"varint,20,opt,name=mapped,proto3" json:"mapped,omitempty"` Shmem uint64 `protobuf:"varint,21,opt,name=shmem,proto3" json:"shmem,omitempty"` Slab uint64 `protobuf:"varint,22,opt,name=slab,proto3" json:"slab,omitempty"` Sreclaimable uint64 `protobuf:"varint,23,opt,name=sreclaimable,proto3" json:"sreclaimable,omitempty"` Sunreclaim uint64 `protobuf:"varint,24,opt,name=sunreclaim,proto3" json:"sunreclaim,omitempty"` Kernelstack uint64 `protobuf:"varint,25,opt,name=kernelstack,proto3" json:"kernelstack,omitempty"` Pagetables uint64 `protobuf:"varint,26,opt,name=pagetables,proto3" json:"pagetables,omitempty"` Nfsunstable uint64 `protobuf:"varint,27,opt,name=nfsunstable,proto3" json:"nfsunstable,omitempty"` Bounce uint64 `protobuf:"varint,28,opt,name=bounce,proto3" json:"bounce,omitempty"` Writebacktmp uint64 `protobuf:"varint,29,opt,name=writebacktmp,proto3" json:"writebacktmp,omitempty"` Commitlimit uint64 `protobuf:"varint,30,opt,name=commitlimit,proto3" json:"commitlimit,omitempty"` Committedas uint64 `protobuf:"varint,31,opt,name=committedas,proto3" json:"committedas,omitempty"` Vmalloctotal uint64 `protobuf:"varint,32,opt,name=vmalloctotal,proto3" json:"vmalloctotal,omitempty"` Vmallocused uint64 `protobuf:"varint,33,opt,name=vmallocused,proto3" json:"vmallocused,omitempty"` Vmallocchunk uint64 `protobuf:"varint,34,opt,name=vmallocchunk,proto3" json:"vmallocchunk,omitempty"` Hardwarecorrupted uint64 `protobuf:"varint,35,opt,name=hardwarecorrupted,proto3" json:"hardwarecorrupted,omitempty"` Anonhugepages uint64 `protobuf:"varint,36,opt,name=anonhugepages,proto3" json:"anonhugepages,omitempty"` Shmemhugepages uint64 `protobuf:"varint,37,opt,name=shmemhugepages,proto3" json:"shmemhugepages,omitempty"` Shmempmdmapped uint64 `protobuf:"varint,38,opt,name=shmempmdmapped,proto3" json:"shmempmdmapped,omitempty"` Cmatotal uint64 `protobuf:"varint,39,opt,name=cmatotal,proto3" json:"cmatotal,omitempty"` Cmafree uint64 `protobuf:"varint,40,opt,name=cmafree,proto3" json:"cmafree,omitempty"` Hugepagestotal uint64 `protobuf:"varint,41,opt,name=hugepagestotal,proto3" json:"hugepagestotal,omitempty"` Hugepagesfree uint64 `protobuf:"varint,42,opt,name=hugepagesfree,proto3" json:"hugepagesfree,omitempty"` Hugepagesrsvd uint64 `protobuf:"varint,43,opt,name=hugepagesrsvd,proto3" json:"hugepagesrsvd,omitempty"` Hugepagessurp uint64 `protobuf:"varint,44,opt,name=hugepagessurp,proto3" json:"hugepagessurp,omitempty"` Hugepagesize uint64 `protobuf:"varint,45,opt,name=hugepagesize,proto3" json:"hugepagesize,omitempty"` Directmap4K uint64 `protobuf:"varint,46,opt,name=directmap4k,proto3" json:"directmap4k,omitempty"` Directmap2M uint64 `protobuf:"varint,47,opt,name=directmap2m,proto3" json:"directmap2m,omitempty"` Directmap1G uint64 `protobuf:"varint,48,opt,name=directmap1g,proto3" json:"directmap1g,omitempty"` } func (x *MemInfo) Reset() { *x = MemInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MemInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*MemInfo) ProtoMessage() {} func (x *MemInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[78] 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 MemInfo.ProtoReflect.Descriptor instead. func (*MemInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{78} } func (x *MemInfo) GetMemtotal() uint64 { if x != nil { return x.Memtotal } return 0 } func (x *MemInfo) GetMemfree() uint64 { if x != nil { return x.Memfree } return 0 } func (x *MemInfo) GetMemavailable() uint64 { if x != nil { return x.Memavailable } return 0 } func (x *MemInfo) GetBuffers() uint64 { if x != nil { return x.Buffers } return 0 } func (x *MemInfo) GetCached() uint64 { if x != nil { return x.Cached } return 0 } func (x *MemInfo) GetSwapcached() uint64 { if x != nil { return x.Swapcached } return 0 } func (x *MemInfo) GetActive() uint64 { if x != nil { return x.Active } return 0 } func (x *MemInfo) GetInactive() uint64 { if x != nil { return x.Inactive } return 0 } func (x *MemInfo) GetActiveanon() uint64 { if x != nil { return x.Activeanon } return 0 } func (x *MemInfo) GetInactiveanon() uint64 { if x != nil { return x.Inactiveanon } return 0 } func (x *MemInfo) GetActivefile() uint64 { if x != nil { return x.Activefile } return 0 } func (x *MemInfo) GetInactivefile() uint64 { if x != nil { return x.Inactivefile } return 0 } func (x *MemInfo) GetUnevictable() uint64 { if x != nil { return x.Unevictable } return 0 } func (x *MemInfo) GetMlocked() uint64 { if x != nil { return x.Mlocked } return 0 } func (x *MemInfo) GetSwaptotal() uint64 { if x != nil { return x.Swaptotal } return 0 } func (x *MemInfo) GetSwapfree() uint64 { if x != nil { return x.Swapfree } return 0 } func (x *MemInfo) GetDirty() uint64 { if x != nil { return x.Dirty } return 0 } func (x *MemInfo) GetWriteback() uint64 { if x != nil { return x.Writeback } return 0 } func (x *MemInfo) GetAnonpages() uint64 { if x != nil { return x.Anonpages } return 0 } func (x *MemInfo) GetMapped() uint64 { if x != nil { return x.Mapped } return 0 } func (x *MemInfo) GetShmem() uint64 { if x != nil { return x.Shmem } return 0 } func (x *MemInfo) GetSlab() uint64 { if x != nil { return x.Slab } return 0 } func (x *MemInfo) GetSreclaimable() uint64 { if x != nil { return x.Sreclaimable } return 0 } func (x *MemInfo) GetSunreclaim() uint64 { if x != nil { return x.Sunreclaim } return 0 } func (x *MemInfo) GetKernelstack() uint64 { if x != nil { return x.Kernelstack } return 0 } func (x *MemInfo) GetPagetables() uint64 { if x != nil { return x.Pagetables } return 0 } func (x *MemInfo) GetNfsunstable() uint64 { if x != nil { return x.Nfsunstable } return 0 } func (x *MemInfo) GetBounce() uint64 { if x != nil { return x.Bounce } return 0 } func (x *MemInfo) GetWritebacktmp() uint64 { if x != nil { return x.Writebacktmp } return 0 } func (x *MemInfo) GetCommitlimit() uint64 { if x != nil { return x.Commitlimit } return 0 } func (x *MemInfo) GetCommittedas() uint64 { if x != nil { return x.Committedas } return 0 } func (x *MemInfo) GetVmalloctotal() uint64 { if x != nil { return x.Vmalloctotal } return 0 } func (x *MemInfo) GetVmallocused() uint64 { if x != nil { return x.Vmallocused } return 0 } func (x *MemInfo) GetVmallocchunk() uint64 { if x != nil { return x.Vmallocchunk } return 0 } func (x *MemInfo) GetHardwarecorrupted() uint64 { if x != nil { return x.Hardwarecorrupted } return 0 } func (x *MemInfo) GetAnonhugepages() uint64 { if x != nil { return x.Anonhugepages } return 0 } func (x *MemInfo) GetShmemhugepages() uint64 { if x != nil { return x.Shmemhugepages } return 0 } func (x *MemInfo) GetShmempmdmapped() uint64 { if x != nil { return x.Shmempmdmapped } return 0 } func (x *MemInfo) GetCmatotal() uint64 { if x != nil { return x.Cmatotal } return 0 } func (x *MemInfo) GetCmafree() uint64 { if x != nil { return x.Cmafree } return 0 } func (x *MemInfo) GetHugepagestotal() uint64 { if x != nil { return x.Hugepagestotal } return 0 } func (x *MemInfo) GetHugepagesfree() uint64 { if x != nil { return x.Hugepagesfree } return 0 } func (x *MemInfo) GetHugepagesrsvd() uint64 { if x != nil { return x.Hugepagesrsvd } return 0 } func (x *MemInfo) GetHugepagessurp() uint64 { if x != nil { return x.Hugepagessurp } return 0 } func (x *MemInfo) GetHugepagesize() uint64 { if x != nil { return x.Hugepagesize } return 0 } func (x *MemInfo) GetDirectmap4K() uint64 { if x != nil { return x.Directmap4K } return 0 } func (x *MemInfo) GetDirectmap2M() uint64 { if x != nil { return x.Directmap2M } return 0 } func (x *MemInfo) GetDirectmap1G() uint64 { if x != nil { return x.Directmap1G } return 0 } type HostnameResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*Hostname `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *HostnameResponse) Reset() { *x = HostnameResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HostnameResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*HostnameResponse) ProtoMessage() {} func (x *HostnameResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[79] 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 HostnameResponse.ProtoReflect.Descriptor instead. func (*HostnameResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{79} } func (x *HostnameResponse) GetMessages() []*Hostname { if x != nil { return x.Messages } return nil } type Hostname struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"` } func (x *Hostname) Reset() { *x = Hostname{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Hostname) String() string { return protoimpl.X.MessageStringOf(x) } func (*Hostname) ProtoMessage() {} func (x *Hostname) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[80] 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 Hostname.ProtoReflect.Descriptor instead. func (*Hostname) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{80} } func (x *Hostname) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *Hostname) GetHostname() string { if x != nil { return x.Hostname } return "" } type LoadAvgResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*LoadAvg `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *LoadAvgResponse) Reset() { *x = LoadAvgResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *LoadAvgResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*LoadAvgResponse) ProtoMessage() {} func (x *LoadAvgResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[81] 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 LoadAvgResponse.ProtoReflect.Descriptor instead. func (*LoadAvgResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{81} } func (x *LoadAvgResponse) GetMessages() []*LoadAvg { if x != nil { return x.Messages } return nil } type LoadAvg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Load1 float64 `protobuf:"fixed64,2,opt,name=load1,proto3" json:"load1,omitempty"` Load5 float64 `protobuf:"fixed64,3,opt,name=load5,proto3" json:"load5,omitempty"` Load15 float64 `protobuf:"fixed64,4,opt,name=load15,proto3" json:"load15,omitempty"` } func (x *LoadAvg) Reset() { *x = LoadAvg{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *LoadAvg) String() string { return protoimpl.X.MessageStringOf(x) } func (*LoadAvg) ProtoMessage() {} func (x *LoadAvg) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[82] 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 LoadAvg.ProtoReflect.Descriptor instead. func (*LoadAvg) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{82} } func (x *LoadAvg) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *LoadAvg) GetLoad1() float64 { if x != nil { return x.Load1 } return 0 } func (x *LoadAvg) GetLoad5() float64 { if x != nil { return x.Load5 } return 0 } func (x *LoadAvg) GetLoad15() float64 { if x != nil { return x.Load15 } return 0 } type SystemStatResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*SystemStat `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *SystemStatResponse) Reset() { *x = SystemStatResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SystemStatResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SystemStatResponse) ProtoMessage() {} func (x *SystemStatResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[83] 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 SystemStatResponse.ProtoReflect.Descriptor instead. func (*SystemStatResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{83} } func (x *SystemStatResponse) GetMessages() []*SystemStat { if x != nil { return x.Messages } return nil } type SystemStat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` BootTime uint64 `protobuf:"varint,2,opt,name=boot_time,json=bootTime,proto3" json:"boot_time,omitempty"` CpuTotal *CPUStat `protobuf:"bytes,3,opt,name=cpu_total,json=cpuTotal,proto3" json:"cpu_total,omitempty"` Cpu []*CPUStat `protobuf:"bytes,4,rep,name=cpu,proto3" json:"cpu,omitempty"` IrqTotal uint64 `protobuf:"varint,5,opt,name=irq_total,json=irqTotal,proto3" json:"irq_total,omitempty"` Irq []uint64 `protobuf:"varint,6,rep,packed,name=irq,proto3" json:"irq,omitempty"` ContextSwitches uint64 `protobuf:"varint,7,opt,name=context_switches,json=contextSwitches,proto3" json:"context_switches,omitempty"` ProcessCreated uint64 `protobuf:"varint,8,opt,name=process_created,json=processCreated,proto3" json:"process_created,omitempty"` ProcessRunning uint64 `protobuf:"varint,9,opt,name=process_running,json=processRunning,proto3" json:"process_running,omitempty"` ProcessBlocked uint64 `protobuf:"varint,10,opt,name=process_blocked,json=processBlocked,proto3" json:"process_blocked,omitempty"` SoftIrqTotal uint64 `protobuf:"varint,11,opt,name=soft_irq_total,json=softIrqTotal,proto3" json:"soft_irq_total,omitempty"` SoftIrq *SoftIRQStat `protobuf:"bytes,12,opt,name=soft_irq,json=softIrq,proto3" json:"soft_irq,omitempty"` } func (x *SystemStat) Reset() { *x = SystemStat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SystemStat) String() string { return protoimpl.X.MessageStringOf(x) } func (*SystemStat) ProtoMessage() {} func (x *SystemStat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[84] 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 SystemStat.ProtoReflect.Descriptor instead. func (*SystemStat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{84} } func (x *SystemStat) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *SystemStat) GetBootTime() uint64 { if x != nil { return x.BootTime } return 0 } func (x *SystemStat) GetCpuTotal() *CPUStat { if x != nil { return x.CpuTotal } return nil } func (x *SystemStat) GetCpu() []*CPUStat { if x != nil { return x.Cpu } return nil } func (x *SystemStat) GetIrqTotal() uint64 { if x != nil { return x.IrqTotal } return 0 } func (x *SystemStat) GetIrq() []uint64 { if x != nil { return x.Irq } return nil } func (x *SystemStat) GetContextSwitches() uint64 { if x != nil { return x.ContextSwitches } return 0 } func (x *SystemStat) GetProcessCreated() uint64 { if x != nil { return x.ProcessCreated } return 0 } func (x *SystemStat) GetProcessRunning() uint64 { if x != nil { return x.ProcessRunning } return 0 } func (x *SystemStat) GetProcessBlocked() uint64 { if x != nil { return x.ProcessBlocked } return 0 } func (x *SystemStat) GetSoftIrqTotal() uint64 { if x != nil { return x.SoftIrqTotal } return 0 } func (x *SystemStat) GetSoftIrq() *SoftIRQStat { if x != nil { return x.SoftIrq } return nil } type CPUStat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields User float64 `protobuf:"fixed64,1,opt,name=user,proto3" json:"user,omitempty"` Nice float64 `protobuf:"fixed64,2,opt,name=nice,proto3" json:"nice,omitempty"` System float64 `protobuf:"fixed64,3,opt,name=system,proto3" json:"system,omitempty"` Idle float64 `protobuf:"fixed64,4,opt,name=idle,proto3" json:"idle,omitempty"` Iowait float64 `protobuf:"fixed64,5,opt,name=iowait,proto3" json:"iowait,omitempty"` Irq float64 `protobuf:"fixed64,6,opt,name=irq,proto3" json:"irq,omitempty"` SoftIrq float64 `protobuf:"fixed64,7,opt,name=soft_irq,json=softIrq,proto3" json:"soft_irq,omitempty"` Steal float64 `protobuf:"fixed64,8,opt,name=steal,proto3" json:"steal,omitempty"` Guest float64 `protobuf:"fixed64,9,opt,name=guest,proto3" json:"guest,omitempty"` GuestNice float64 `protobuf:"fixed64,10,opt,name=guest_nice,json=guestNice,proto3" json:"guest_nice,omitempty"` } func (x *CPUStat) Reset() { *x = CPUStat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CPUStat) String() string { return protoimpl.X.MessageStringOf(x) } func (*CPUStat) ProtoMessage() {} func (x *CPUStat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[85] 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 CPUStat.ProtoReflect.Descriptor instead. func (*CPUStat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{85} } func (x *CPUStat) GetUser() float64 { if x != nil { return x.User } return 0 } func (x *CPUStat) GetNice() float64 { if x != nil { return x.Nice } return 0 } func (x *CPUStat) GetSystem() float64 { if x != nil { return x.System } return 0 } func (x *CPUStat) GetIdle() float64 { if x != nil { return x.Idle } return 0 } func (x *CPUStat) GetIowait() float64 { if x != nil { return x.Iowait } return 0 } func (x *CPUStat) GetIrq() float64 { if x != nil { return x.Irq } return 0 } func (x *CPUStat) GetSoftIrq() float64 { if x != nil { return x.SoftIrq } return 0 } func (x *CPUStat) GetSteal() float64 { if x != nil { return x.Steal } return 0 } func (x *CPUStat) GetGuest() float64 { if x != nil { return x.Guest } return 0 } func (x *CPUStat) GetGuestNice() float64 { if x != nil { return x.GuestNice } return 0 } type SoftIRQStat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hi uint64 `protobuf:"varint,1,opt,name=hi,proto3" json:"hi,omitempty"` Timer uint64 `protobuf:"varint,2,opt,name=timer,proto3" json:"timer,omitempty"` NetTx uint64 `protobuf:"varint,3,opt,name=net_tx,json=netTx,proto3" json:"net_tx,omitempty"` NetRx uint64 `protobuf:"varint,4,opt,name=net_rx,json=netRx,proto3" json:"net_rx,omitempty"` Block uint64 `protobuf:"varint,5,opt,name=block,proto3" json:"block,omitempty"` BlockIoPoll uint64 `protobuf:"varint,6,opt,name=block_io_poll,json=blockIoPoll,proto3" json:"block_io_poll,omitempty"` Tasklet uint64 `protobuf:"varint,7,opt,name=tasklet,proto3" json:"tasklet,omitempty"` Sched uint64 `protobuf:"varint,8,opt,name=sched,proto3" json:"sched,omitempty"` Hrtimer uint64 `protobuf:"varint,9,opt,name=hrtimer,proto3" json:"hrtimer,omitempty"` Rcu uint64 `protobuf:"varint,10,opt,name=rcu,proto3" json:"rcu,omitempty"` } func (x *SoftIRQStat) Reset() { *x = SoftIRQStat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SoftIRQStat) String() string { return protoimpl.X.MessageStringOf(x) } func (*SoftIRQStat) ProtoMessage() {} func (x *SoftIRQStat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[86] 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 SoftIRQStat.ProtoReflect.Descriptor instead. func (*SoftIRQStat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{86} } func (x *SoftIRQStat) GetHi() uint64 { if x != nil { return x.Hi } return 0 } func (x *SoftIRQStat) GetTimer() uint64 { if x != nil { return x.Timer } return 0 } func (x *SoftIRQStat) GetNetTx() uint64 { if x != nil { return x.NetTx } return 0 } func (x *SoftIRQStat) GetNetRx() uint64 { if x != nil { return x.NetRx } return 0 } func (x *SoftIRQStat) GetBlock() uint64 { if x != nil { return x.Block } return 0 } func (x *SoftIRQStat) GetBlockIoPoll() uint64 { if x != nil { return x.BlockIoPoll } return 0 } func (x *SoftIRQStat) GetTasklet() uint64 { if x != nil { return x.Tasklet } return 0 } func (x *SoftIRQStat) GetSched() uint64 { if x != nil { return x.Sched } return 0 } func (x *SoftIRQStat) GetHrtimer() uint64 { if x != nil { return x.Hrtimer } return 0 } func (x *SoftIRQStat) GetRcu() uint64 { if x != nil { return x.Rcu } return 0 } type CPUInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*CPUsInfo `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *CPUInfoResponse) Reset() { *x = CPUInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CPUInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CPUInfoResponse) ProtoMessage() {} func (x *CPUInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[87] 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 CPUInfoResponse.ProtoReflect.Descriptor instead. func (*CPUInfoResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{87} } func (x *CPUInfoResponse) GetMessages() []*CPUsInfo { if x != nil { return x.Messages } return nil } type CPUsInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` CpuInfo []*CPUInfo `protobuf:"bytes,2,rep,name=cpu_info,json=cpuInfo,proto3" json:"cpu_info,omitempty"` } func (x *CPUsInfo) Reset() { *x = CPUsInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CPUsInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CPUsInfo) ProtoMessage() {} func (x *CPUsInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[88] 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 CPUsInfo.ProtoReflect.Descriptor instead. func (*CPUsInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{88} } func (x *CPUsInfo) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *CPUsInfo) GetCpuInfo() []*CPUInfo { if x != nil { return x.CpuInfo } return nil } type CPUInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Processor uint32 `protobuf:"varint,1,opt,name=processor,proto3" json:"processor,omitempty"` VendorId string `protobuf:"bytes,2,opt,name=vendor_id,json=vendorId,proto3" json:"vendor_id,omitempty"` CpuFamily string `protobuf:"bytes,3,opt,name=cpu_family,json=cpuFamily,proto3" json:"cpu_family,omitempty"` Model string `protobuf:"bytes,4,opt,name=model,proto3" json:"model,omitempty"` ModelName string `protobuf:"bytes,5,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` Stepping string `protobuf:"bytes,6,opt,name=stepping,proto3" json:"stepping,omitempty"` Microcode string `protobuf:"bytes,7,opt,name=microcode,proto3" json:"microcode,omitempty"` CpuMhz float64 `protobuf:"fixed64,8,opt,name=cpu_mhz,json=cpuMhz,proto3" json:"cpu_mhz,omitempty"` CacheSize string `protobuf:"bytes,9,opt,name=cache_size,json=cacheSize,proto3" json:"cache_size,omitempty"` PhysicalId string `protobuf:"bytes,10,opt,name=physical_id,json=physicalId,proto3" json:"physical_id,omitempty"` Siblings uint32 `protobuf:"varint,11,opt,name=siblings,proto3" json:"siblings,omitempty"` CoreId string `protobuf:"bytes,12,opt,name=core_id,json=coreId,proto3" json:"core_id,omitempty"` CpuCores uint32 `protobuf:"varint,13,opt,name=cpu_cores,json=cpuCores,proto3" json:"cpu_cores,omitempty"` ApicId string `protobuf:"bytes,14,opt,name=apic_id,json=apicId,proto3" json:"apic_id,omitempty"` InitialApicId string `protobuf:"bytes,15,opt,name=initial_apic_id,json=initialApicId,proto3" json:"initial_apic_id,omitempty"` Fpu string `protobuf:"bytes,16,opt,name=fpu,proto3" json:"fpu,omitempty"` FpuException string `protobuf:"bytes,17,opt,name=fpu_exception,json=fpuException,proto3" json:"fpu_exception,omitempty"` CpuIdLevel uint32 `protobuf:"varint,18,opt,name=cpu_id_level,json=cpuIdLevel,proto3" json:"cpu_id_level,omitempty"` Wp string `protobuf:"bytes,19,opt,name=wp,proto3" json:"wp,omitempty"` Flags []string `protobuf:"bytes,20,rep,name=flags,proto3" json:"flags,omitempty"` Bugs []string `protobuf:"bytes,21,rep,name=bugs,proto3" json:"bugs,omitempty"` BogoMips float64 `protobuf:"fixed64,22,opt,name=bogo_mips,json=bogoMips,proto3" json:"bogo_mips,omitempty"` ClFlushSize uint32 `protobuf:"varint,23,opt,name=cl_flush_size,json=clFlushSize,proto3" json:"cl_flush_size,omitempty"` CacheAlignment uint32 `protobuf:"varint,24,opt,name=cache_alignment,json=cacheAlignment,proto3" json:"cache_alignment,omitempty"` AddressSizes string `protobuf:"bytes,25,opt,name=address_sizes,json=addressSizes,proto3" json:"address_sizes,omitempty"` PowerManagement string `protobuf:"bytes,26,opt,name=power_management,json=powerManagement,proto3" json:"power_management,omitempty"` } func (x *CPUInfo) Reset() { *x = CPUInfo{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CPUInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CPUInfo) ProtoMessage() {} func (x *CPUInfo) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[89] 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 CPUInfo.ProtoReflect.Descriptor instead. func (*CPUInfo) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{89} } func (x *CPUInfo) GetProcessor() uint32 { if x != nil { return x.Processor } return 0 } func (x *CPUInfo) GetVendorId() string { if x != nil { return x.VendorId } return "" } func (x *CPUInfo) GetCpuFamily() string { if x != nil { return x.CpuFamily } return "" } func (x *CPUInfo) GetModel() string { if x != nil { return x.Model } return "" } func (x *CPUInfo) GetModelName() string { if x != nil { return x.ModelName } return "" } func (x *CPUInfo) GetStepping() string { if x != nil { return x.Stepping } return "" } func (x *CPUInfo) GetMicrocode() string { if x != nil { return x.Microcode } return "" } func (x *CPUInfo) GetCpuMhz() float64 { if x != nil { return x.CpuMhz } return 0 } func (x *CPUInfo) GetCacheSize() string { if x != nil { return x.CacheSize } return "" } func (x *CPUInfo) GetPhysicalId() string { if x != nil { return x.PhysicalId } return "" } func (x *CPUInfo) GetSiblings() uint32 { if x != nil { return x.Siblings } return 0 } func (x *CPUInfo) GetCoreId() string { if x != nil { return x.CoreId } return "" } func (x *CPUInfo) GetCpuCores() uint32 { if x != nil { return x.CpuCores } return 0 } func (x *CPUInfo) GetApicId() string { if x != nil { return x.ApicId } return "" } func (x *CPUInfo) GetInitialApicId() string { if x != nil { return x.InitialApicId } return "" } func (x *CPUInfo) GetFpu() string { if x != nil { return x.Fpu } return "" } func (x *CPUInfo) GetFpuException() string { if x != nil { return x.FpuException } return "" } func (x *CPUInfo) GetCpuIdLevel() uint32 { if x != nil { return x.CpuIdLevel } return 0 } func (x *CPUInfo) GetWp() string { if x != nil { return x.Wp } return "" } func (x *CPUInfo) GetFlags() []string { if x != nil { return x.Flags } return nil } func (x *CPUInfo) GetBugs() []string { if x != nil { return x.Bugs } return nil } func (x *CPUInfo) GetBogoMips() float64 { if x != nil { return x.BogoMips } return 0 } func (x *CPUInfo) GetClFlushSize() uint32 { if x != nil { return x.ClFlushSize } return 0 } func (x *CPUInfo) GetCacheAlignment() uint32 { if x != nil { return x.CacheAlignment } return 0 } func (x *CPUInfo) GetAddressSizes() string { if x != nil { return x.AddressSizes } return "" } func (x *CPUInfo) GetPowerManagement() string { if x != nil { return x.PowerManagement } return "" } type NetworkDeviceStatsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*NetworkDeviceStats `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *NetworkDeviceStatsResponse) Reset() { *x = NetworkDeviceStatsResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkDeviceStatsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkDeviceStatsResponse) ProtoMessage() {} func (x *NetworkDeviceStatsResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[90] 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 NetworkDeviceStatsResponse.ProtoReflect.Descriptor instead. func (*NetworkDeviceStatsResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{90} } func (x *NetworkDeviceStatsResponse) GetMessages() []*NetworkDeviceStats { if x != nil { return x.Messages } return nil } type NetworkDeviceStats struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Total *NetDev `protobuf:"bytes,2,opt,name=total,proto3" json:"total,omitempty"` Devices []*NetDev `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"` } func (x *NetworkDeviceStats) Reset() { *x = NetworkDeviceStats{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkDeviceStats) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkDeviceStats) ProtoMessage() {} func (x *NetworkDeviceStats) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[91] 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 NetworkDeviceStats.ProtoReflect.Descriptor instead. func (*NetworkDeviceStats) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{91} } func (x *NetworkDeviceStats) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *NetworkDeviceStats) GetTotal() *NetDev { if x != nil { return x.Total } return nil } func (x *NetworkDeviceStats) GetDevices() []*NetDev { if x != nil { return x.Devices } return nil } type NetDev struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` RxBytes uint64 `protobuf:"varint,2,opt,name=rx_bytes,json=rxBytes,proto3" json:"rx_bytes,omitempty"` RxPackets uint64 `protobuf:"varint,3,opt,name=rx_packets,json=rxPackets,proto3" json:"rx_packets,omitempty"` RxErrors uint64 `protobuf:"varint,4,opt,name=rx_errors,json=rxErrors,proto3" json:"rx_errors,omitempty"` RxDropped uint64 `protobuf:"varint,5,opt,name=rx_dropped,json=rxDropped,proto3" json:"rx_dropped,omitempty"` RxFifo uint64 `protobuf:"varint,6,opt,name=rx_fifo,json=rxFifo,proto3" json:"rx_fifo,omitempty"` RxFrame uint64 `protobuf:"varint,7,opt,name=rx_frame,json=rxFrame,proto3" json:"rx_frame,omitempty"` RxCompressed uint64 `protobuf:"varint,8,opt,name=rx_compressed,json=rxCompressed,proto3" json:"rx_compressed,omitempty"` RxMulticast uint64 `protobuf:"varint,9,opt,name=rx_multicast,json=rxMulticast,proto3" json:"rx_multicast,omitempty"` TxBytes uint64 `protobuf:"varint,10,opt,name=tx_bytes,json=txBytes,proto3" json:"tx_bytes,omitempty"` TxPackets uint64 `protobuf:"varint,11,opt,name=tx_packets,json=txPackets,proto3" json:"tx_packets,omitempty"` TxErrors uint64 `protobuf:"varint,12,opt,name=tx_errors,json=txErrors,proto3" json:"tx_errors,omitempty"` TxDropped uint64 `protobuf:"varint,13,opt,name=tx_dropped,json=txDropped,proto3" json:"tx_dropped,omitempty"` TxFifo uint64 `protobuf:"varint,14,opt,name=tx_fifo,json=txFifo,proto3" json:"tx_fifo,omitempty"` TxCollisions uint64 `protobuf:"varint,15,opt,name=tx_collisions,json=txCollisions,proto3" json:"tx_collisions,omitempty"` TxCarrier uint64 `protobuf:"varint,16,opt,name=tx_carrier,json=txCarrier,proto3" json:"tx_carrier,omitempty"` TxCompressed uint64 `protobuf:"varint,17,opt,name=tx_compressed,json=txCompressed,proto3" json:"tx_compressed,omitempty"` } func (x *NetDev) Reset() { *x = NetDev{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetDev) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetDev) ProtoMessage() {} func (x *NetDev) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[92] 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 NetDev.ProtoReflect.Descriptor instead. func (*NetDev) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{92} } func (x *NetDev) GetName() string { if x != nil { return x.Name } return "" } func (x *NetDev) GetRxBytes() uint64 { if x != nil { return x.RxBytes } return 0 } func (x *NetDev) GetRxPackets() uint64 { if x != nil { return x.RxPackets } return 0 } func (x *NetDev) GetRxErrors() uint64 { if x != nil { return x.RxErrors } return 0 } func (x *NetDev) GetRxDropped() uint64 { if x != nil { return x.RxDropped } return 0 } func (x *NetDev) GetRxFifo() uint64 { if x != nil { return x.RxFifo } return 0 } func (x *NetDev) GetRxFrame() uint64 { if x != nil { return x.RxFrame } return 0 } func (x *NetDev) GetRxCompressed() uint64 { if x != nil { return x.RxCompressed } return 0 } func (x *NetDev) GetRxMulticast() uint64 { if x != nil { return x.RxMulticast } return 0 } func (x *NetDev) GetTxBytes() uint64 { if x != nil { return x.TxBytes } return 0 } func (x *NetDev) GetTxPackets() uint64 { if x != nil { return x.TxPackets } return 0 } func (x *NetDev) GetTxErrors() uint64 { if x != nil { return x.TxErrors } return 0 } func (x *NetDev) GetTxDropped() uint64 { if x != nil { return x.TxDropped } return 0 } func (x *NetDev) GetTxFifo() uint64 { if x != nil { return x.TxFifo } return 0 } func (x *NetDev) GetTxCollisions() uint64 { if x != nil { return x.TxCollisions } return 0 } func (x *NetDev) GetTxCarrier() uint64 { if x != nil { return x.TxCarrier } return 0 } func (x *NetDev) GetTxCompressed() uint64 { if x != nil { return x.TxCompressed } return 0 } type DiskStatsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*DiskStats `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *DiskStatsResponse) Reset() { *x = DiskStatsResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DiskStatsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*DiskStatsResponse) ProtoMessage() {} func (x *DiskStatsResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[93] 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 DiskStatsResponse.ProtoReflect.Descriptor instead. func (*DiskStatsResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{93} } func (x *DiskStatsResponse) GetMessages() []*DiskStats { if x != nil { return x.Messages } return nil } type DiskStats struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Total *DiskStat `protobuf:"bytes,2,opt,name=total,proto3" json:"total,omitempty"` Devices []*DiskStat `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"` } func (x *DiskStats) Reset() { *x = DiskStats{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DiskStats) String() string { return protoimpl.X.MessageStringOf(x) } func (*DiskStats) ProtoMessage() {} func (x *DiskStats) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[94] 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 DiskStats.ProtoReflect.Descriptor instead. func (*DiskStats) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{94} } func (x *DiskStats) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *DiskStats) GetTotal() *DiskStat { if x != nil { return x.Total } return nil } func (x *DiskStats) GetDevices() []*DiskStat { if x != nil { return x.Devices } return nil } type DiskStat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` ReadCompleted uint64 `protobuf:"varint,2,opt,name=read_completed,json=readCompleted,proto3" json:"read_completed,omitempty"` ReadMerged uint64 `protobuf:"varint,3,opt,name=read_merged,json=readMerged,proto3" json:"read_merged,omitempty"` ReadSectors uint64 `protobuf:"varint,4,opt,name=read_sectors,json=readSectors,proto3" json:"read_sectors,omitempty"` ReadTimeMs uint64 `protobuf:"varint,5,opt,name=read_time_ms,json=readTimeMs,proto3" json:"read_time_ms,omitempty"` WriteCompleted uint64 `protobuf:"varint,6,opt,name=write_completed,json=writeCompleted,proto3" json:"write_completed,omitempty"` WriteMerged uint64 `protobuf:"varint,7,opt,name=write_merged,json=writeMerged,proto3" json:"write_merged,omitempty"` WriteSectors uint64 `protobuf:"varint,8,opt,name=write_sectors,json=writeSectors,proto3" json:"write_sectors,omitempty"` WriteTimeMs uint64 `protobuf:"varint,9,opt,name=write_time_ms,json=writeTimeMs,proto3" json:"write_time_ms,omitempty"` IoInProgress uint64 `protobuf:"varint,10,opt,name=io_in_progress,json=ioInProgress,proto3" json:"io_in_progress,omitempty"` IoTimeMs uint64 `protobuf:"varint,11,opt,name=io_time_ms,json=ioTimeMs,proto3" json:"io_time_ms,omitempty"` IoTimeWeightedMs uint64 `protobuf:"varint,12,opt,name=io_time_weighted_ms,json=ioTimeWeightedMs,proto3" json:"io_time_weighted_ms,omitempty"` DiscardCompleted uint64 `protobuf:"varint,13,opt,name=discard_completed,json=discardCompleted,proto3" json:"discard_completed,omitempty"` DiscardMerged uint64 `protobuf:"varint,14,opt,name=discard_merged,json=discardMerged,proto3" json:"discard_merged,omitempty"` DiscardSectors uint64 `protobuf:"varint,15,opt,name=discard_sectors,json=discardSectors,proto3" json:"discard_sectors,omitempty"` DiscardTimeMs uint64 `protobuf:"varint,16,opt,name=discard_time_ms,json=discardTimeMs,proto3" json:"discard_time_ms,omitempty"` } func (x *DiskStat) Reset() { *x = DiskStat{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DiskStat) String() string { return protoimpl.X.MessageStringOf(x) } func (*DiskStat) ProtoMessage() {} func (x *DiskStat) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[95] 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 DiskStat.ProtoReflect.Descriptor instead. func (*DiskStat) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{95} } func (x *DiskStat) GetName() string { if x != nil { return x.Name } return "" } func (x *DiskStat) GetReadCompleted() uint64 { if x != nil { return x.ReadCompleted } return 0 } func (x *DiskStat) GetReadMerged() uint64 { if x != nil { return x.ReadMerged } return 0 } func (x *DiskStat) GetReadSectors() uint64 { if x != nil { return x.ReadSectors } return 0 } func (x *DiskStat) GetReadTimeMs() uint64 { if x != nil { return x.ReadTimeMs } return 0 } func (x *DiskStat) GetWriteCompleted() uint64 { if x != nil { return x.WriteCompleted } return 0 } func (x *DiskStat) GetWriteMerged() uint64 { if x != nil { return x.WriteMerged } return 0 } func (x *DiskStat) GetWriteSectors() uint64 { if x != nil { return x.WriteSectors } return 0 } func (x *DiskStat) GetWriteTimeMs() uint64 { if x != nil { return x.WriteTimeMs } return 0 } func (x *DiskStat) GetIoInProgress() uint64 { if x != nil { return x.IoInProgress } return 0 } func (x *DiskStat) GetIoTimeMs() uint64 { if x != nil { return x.IoTimeMs } return 0 } func (x *DiskStat) GetIoTimeWeightedMs() uint64 { if x != nil { return x.IoTimeWeightedMs } return 0 } func (x *DiskStat) GetDiscardCompleted() uint64 { if x != nil { return x.DiscardCompleted } return 0 } func (x *DiskStat) GetDiscardMerged() uint64 { if x != nil { return x.DiscardMerged } return 0 } func (x *DiskStat) GetDiscardSectors() uint64 { if x != nil { return x.DiscardSectors } return 0 } func (x *DiskStat) GetDiscardTimeMs() uint64 { if x != nil { return x.DiscardTimeMs } return 0 } type EtcdLeaveClusterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *EtcdLeaveClusterRequest) Reset() { *x = EtcdLeaveClusterRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdLeaveClusterRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdLeaveClusterRequest) ProtoMessage() {} func (x *EtcdLeaveClusterRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[96] 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 EtcdLeaveClusterRequest.ProtoReflect.Descriptor instead. func (*EtcdLeaveClusterRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{96} } type EtcdLeaveCluster struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *EtcdLeaveCluster) Reset() { *x = EtcdLeaveCluster{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdLeaveCluster) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdLeaveCluster) ProtoMessage() {} func (x *EtcdLeaveCluster) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[97] 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 EtcdLeaveCluster.ProtoReflect.Descriptor instead. func (*EtcdLeaveCluster) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{97} } func (x *EtcdLeaveCluster) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type EtcdLeaveClusterResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*EtcdLeaveCluster `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *EtcdLeaveClusterResponse) Reset() { *x = EtcdLeaveClusterResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdLeaveClusterResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdLeaveClusterResponse) ProtoMessage() {} func (x *EtcdLeaveClusterResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[98] 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 EtcdLeaveClusterResponse.ProtoReflect.Descriptor instead. func (*EtcdLeaveClusterResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{98} } func (x *EtcdLeaveClusterResponse) GetMessages() []*EtcdLeaveCluster { if x != nil { return x.Messages } return nil } type EtcdRemoveMemberRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Member string `protobuf:"bytes,1,opt,name=member,proto3" json:"member,omitempty"` } func (x *EtcdRemoveMemberRequest) Reset() { *x = EtcdRemoveMemberRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdRemoveMemberRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdRemoveMemberRequest) ProtoMessage() {} func (x *EtcdRemoveMemberRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[99] 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 EtcdRemoveMemberRequest.ProtoReflect.Descriptor instead. func (*EtcdRemoveMemberRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{99} } func (x *EtcdRemoveMemberRequest) GetMember() string { if x != nil { return x.Member } return "" } type EtcdRemoveMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *EtcdRemoveMember) Reset() { *x = EtcdRemoveMember{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdRemoveMember) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdRemoveMember) ProtoMessage() {} func (x *EtcdRemoveMember) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[100] 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 EtcdRemoveMember.ProtoReflect.Descriptor instead. func (*EtcdRemoveMember) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{100} } func (x *EtcdRemoveMember) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type EtcdRemoveMemberResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*EtcdRemoveMember `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *EtcdRemoveMemberResponse) Reset() { *x = EtcdRemoveMemberResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdRemoveMemberResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdRemoveMemberResponse) ProtoMessage() {} func (x *EtcdRemoveMemberResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[101] 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 EtcdRemoveMemberResponse.ProtoReflect.Descriptor instead. func (*EtcdRemoveMemberResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{101} } func (x *EtcdRemoveMemberResponse) GetMessages() []*EtcdRemoveMember { if x != nil { return x.Messages } return nil } type EtcdForfeitLeadershipRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *EtcdForfeitLeadershipRequest) Reset() { *x = EtcdForfeitLeadershipRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdForfeitLeadershipRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdForfeitLeadershipRequest) ProtoMessage() {} func (x *EtcdForfeitLeadershipRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[102] 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 EtcdForfeitLeadershipRequest.ProtoReflect.Descriptor instead. func (*EtcdForfeitLeadershipRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{102} } type EtcdForfeitLeadership struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Member string `protobuf:"bytes,2,opt,name=member,proto3" json:"member,omitempty"` } func (x *EtcdForfeitLeadership) Reset() { *x = EtcdForfeitLeadership{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdForfeitLeadership) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdForfeitLeadership) ProtoMessage() {} func (x *EtcdForfeitLeadership) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[103] 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 EtcdForfeitLeadership.ProtoReflect.Descriptor instead. func (*EtcdForfeitLeadership) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{103} } func (x *EtcdForfeitLeadership) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *EtcdForfeitLeadership) GetMember() string { if x != nil { return x.Member } return "" } type EtcdForfeitLeadershipResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*EtcdForfeitLeadership `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *EtcdForfeitLeadershipResponse) Reset() { *x = EtcdForfeitLeadershipResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdForfeitLeadershipResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdForfeitLeadershipResponse) ProtoMessage() {} func (x *EtcdForfeitLeadershipResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[104] 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 EtcdForfeitLeadershipResponse.ProtoReflect.Descriptor instead. func (*EtcdForfeitLeadershipResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{104} } func (x *EtcdForfeitLeadershipResponse) GetMessages() []*EtcdForfeitLeadership { if x != nil { return x.Messages } return nil } type EtcdMemberListRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields QueryLocal bool `protobuf:"varint,1,opt,name=query_local,json=queryLocal,proto3" json:"query_local,omitempty"` } func (x *EtcdMemberListRequest) Reset() { *x = EtcdMemberListRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdMemberListRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdMemberListRequest) ProtoMessage() {} func (x *EtcdMemberListRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[105] 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 EtcdMemberListRequest.ProtoReflect.Descriptor instead. func (*EtcdMemberListRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{105} } func (x *EtcdMemberListRequest) GetQueryLocal() bool { if x != nil { return x.QueryLocal } return false } // EtcdMember describes a single etcd member. type EtcdMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // member ID. Id uint64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"` // human-readable name of the member. Hostname string `protobuf:"bytes,3,opt,name=hostname,proto3" json:"hostname,omitempty"` // the list of URLs the member exposes to clients for communication. PeerUrls []string `protobuf:"bytes,4,rep,name=peer_urls,json=peerUrls,proto3" json:"peer_urls,omitempty"` // the list of URLs the member exposes to the cluster for communication. ClientUrls []string `protobuf:"bytes,5,rep,name=client_urls,json=clientUrls,proto3" json:"client_urls,omitempty"` // learner flag IsLearner bool `protobuf:"varint,6,opt,name=is_learner,json=isLearner,proto3" json:"is_learner,omitempty"` } func (x *EtcdMember) Reset() { *x = EtcdMember{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdMember) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdMember) ProtoMessage() {} func (x *EtcdMember) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[106] 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 EtcdMember.ProtoReflect.Descriptor instead. func (*EtcdMember) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{106} } func (x *EtcdMember) GetId() uint64 { if x != nil { return x.Id } return 0 } func (x *EtcdMember) GetHostname() string { if x != nil { return x.Hostname } return "" } func (x *EtcdMember) GetPeerUrls() []string { if x != nil { return x.PeerUrls } return nil } func (x *EtcdMember) GetClientUrls() []string { if x != nil { return x.ClientUrls } return nil } func (x *EtcdMember) GetIsLearner() bool { if x != nil { return x.IsLearner } return false } // EtcdMembers contains the list of members registered on the host. type EtcdMembers struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` // list of member hostnames. LegacyMembers []string `protobuf:"bytes,2,rep,name=legacy_members,json=legacyMembers,proto3" json:"legacy_members,omitempty"` // the list of etcd members registered on the node. Members []*EtcdMember `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` } func (x *EtcdMembers) Reset() { *x = EtcdMembers{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdMembers) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdMembers) ProtoMessage() {} func (x *EtcdMembers) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[107] 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 EtcdMembers.ProtoReflect.Descriptor instead. func (*EtcdMembers) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{107} } func (x *EtcdMembers) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *EtcdMembers) GetLegacyMembers() []string { if x != nil { return x.LegacyMembers } return nil } func (x *EtcdMembers) GetMembers() []*EtcdMember { if x != nil { return x.Members } return nil } type EtcdMemberListResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*EtcdMembers `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *EtcdMemberListResponse) Reset() { *x = EtcdMemberListResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdMemberListResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdMemberListResponse) ProtoMessage() {} func (x *EtcdMemberListResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[108] 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 EtcdMemberListResponse.ProtoReflect.Descriptor instead. func (*EtcdMemberListResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{108} } func (x *EtcdMemberListResponse) GetMessages() []*EtcdMembers { if x != nil { return x.Messages } return nil } type EtcdSnapshotRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *EtcdSnapshotRequest) Reset() { *x = EtcdSnapshotRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdSnapshotRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdSnapshotRequest) ProtoMessage() {} func (x *EtcdSnapshotRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[109] 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 EtcdSnapshotRequest.ProtoReflect.Descriptor instead. func (*EtcdSnapshotRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{109} } type EtcdRecover struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *EtcdRecover) Reset() { *x = EtcdRecover{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdRecover) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdRecover) ProtoMessage() {} func (x *EtcdRecover) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[110] 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 EtcdRecover.ProtoReflect.Descriptor instead. func (*EtcdRecover) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{110} } func (x *EtcdRecover) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } type EtcdRecoverResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*EtcdRecover `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *EtcdRecoverResponse) Reset() { *x = EtcdRecoverResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EtcdRecoverResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EtcdRecoverResponse) ProtoMessage() {} func (x *EtcdRecoverResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[111] 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 EtcdRecoverResponse.ProtoReflect.Descriptor instead. func (*EtcdRecoverResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{111} } func (x *EtcdRecoverResponse) GetMessages() []*EtcdRecover { if x != nil { return x.Messages } return nil } type RouteConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` Gateway string `protobuf:"bytes,2,opt,name=gateway,proto3" json:"gateway,omitempty"` Metric uint32 `protobuf:"varint,3,opt,name=metric,proto3" json:"metric,omitempty"` } func (x *RouteConfig) Reset() { *x = RouteConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RouteConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*RouteConfig) ProtoMessage() {} func (x *RouteConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[112] 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 RouteConfig.ProtoReflect.Descriptor instead. func (*RouteConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{112} } func (x *RouteConfig) GetNetwork() string { if x != nil { return x.Network } return "" } func (x *RouteConfig) GetGateway() string { if x != nil { return x.Gateway } return "" } func (x *RouteConfig) GetMetric() uint32 { if x != nil { return x.Metric } return 0 } type DHCPOptionsConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields RouteMetric uint32 `protobuf:"varint,1,opt,name=route_metric,json=routeMetric,proto3" json:"route_metric,omitempty"` } func (x *DHCPOptionsConfig) Reset() { *x = DHCPOptionsConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DHCPOptionsConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*DHCPOptionsConfig) ProtoMessage() {} func (x *DHCPOptionsConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[113] 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 DHCPOptionsConfig.ProtoReflect.Descriptor instead. func (*DHCPOptionsConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{113} } func (x *DHCPOptionsConfig) GetRouteMetric() uint32 { if x != nil { return x.RouteMetric } return 0 } type NetworkDeviceConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Interface string `protobuf:"bytes,1,opt,name=interface,proto3" json:"interface,omitempty"` Cidr string `protobuf:"bytes,2,opt,name=cidr,proto3" json:"cidr,omitempty"` Mtu int32 `protobuf:"varint,3,opt,name=mtu,proto3" json:"mtu,omitempty"` Dhcp bool `protobuf:"varint,4,opt,name=dhcp,proto3" json:"dhcp,omitempty"` Ignore bool `protobuf:"varint,5,opt,name=ignore,proto3" json:"ignore,omitempty"` DhcpOptions *DHCPOptionsConfig `protobuf:"bytes,6,opt,name=dhcp_options,json=dhcpOptions,proto3" json:"dhcp_options,omitempty"` Routes []*RouteConfig `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` } func (x *NetworkDeviceConfig) Reset() { *x = NetworkDeviceConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkDeviceConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkDeviceConfig) ProtoMessage() {} func (x *NetworkDeviceConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[114] 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 NetworkDeviceConfig.ProtoReflect.Descriptor instead. func (*NetworkDeviceConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{114} } func (x *NetworkDeviceConfig) GetInterface() string { if x != nil { return x.Interface } return "" } func (x *NetworkDeviceConfig) GetCidr() string { if x != nil { return x.Cidr } return "" } func (x *NetworkDeviceConfig) GetMtu() int32 { if x != nil { return x.Mtu } return 0 } func (x *NetworkDeviceConfig) GetDhcp() bool { if x != nil { return x.Dhcp } return false } func (x *NetworkDeviceConfig) GetIgnore() bool { if x != nil { return x.Ignore } return false } func (x *NetworkDeviceConfig) GetDhcpOptions() *DHCPOptionsConfig { if x != nil { return x.DhcpOptions } return nil } func (x *NetworkDeviceConfig) GetRoutes() []*RouteConfig { if x != nil { return x.Routes } return nil } type NetworkConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"` Interfaces []*NetworkDeviceConfig `protobuf:"bytes,2,rep,name=interfaces,proto3" json:"interfaces,omitempty"` } func (x *NetworkConfig) Reset() { *x = NetworkConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkConfig) ProtoMessage() {} func (x *NetworkConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[115] 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 NetworkConfig.ProtoReflect.Descriptor instead. func (*NetworkConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{115} } func (x *NetworkConfig) GetHostname() string { if x != nil { return x.Hostname } return "" } func (x *NetworkConfig) GetInterfaces() []*NetworkDeviceConfig { if x != nil { return x.Interfaces } return nil } type InstallConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields InstallDisk string `protobuf:"bytes,1,opt,name=install_disk,json=installDisk,proto3" json:"install_disk,omitempty"` InstallImage string `protobuf:"bytes,2,opt,name=install_image,json=installImage,proto3" json:"install_image,omitempty"` } func (x *InstallConfig) Reset() { *x = InstallConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InstallConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*InstallConfig) ProtoMessage() {} func (x *InstallConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[116] 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 InstallConfig.ProtoReflect.Descriptor instead. func (*InstallConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{116} } func (x *InstallConfig) GetInstallDisk() string { if x != nil { return x.InstallDisk } return "" } func (x *InstallConfig) GetInstallImage() string { if x != nil { return x.InstallImage } return "" } type MachineConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type MachineConfig_MachineType `protobuf:"varint,1,opt,name=type,proto3,enum=machine.MachineConfig_MachineType" json:"type,omitempty"` InstallConfig *InstallConfig `protobuf:"bytes,2,opt,name=install_config,json=installConfig,proto3" json:"install_config,omitempty"` NetworkConfig *NetworkConfig `protobuf:"bytes,3,opt,name=network_config,json=networkConfig,proto3" json:"network_config,omitempty"` KubernetesVersion string `protobuf:"bytes,4,opt,name=kubernetes_version,json=kubernetesVersion,proto3" json:"kubernetes_version,omitempty"` } func (x *MachineConfig) Reset() { *x = MachineConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MachineConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*MachineConfig) ProtoMessage() {} func (x *MachineConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[117] 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 MachineConfig.ProtoReflect.Descriptor instead. func (*MachineConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{117} } func (x *MachineConfig) GetType() MachineConfig_MachineType { if x != nil { return x.Type } return MachineConfig_TYPE_UNKNOWN } func (x *MachineConfig) GetInstallConfig() *InstallConfig { if x != nil { return x.InstallConfig } return nil } func (x *MachineConfig) GetNetworkConfig() *NetworkConfig { if x != nil { return x.NetworkConfig } return nil } func (x *MachineConfig) GetKubernetesVersion() string { if x != nil { return x.KubernetesVersion } return "" } type ControlPlaneConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"` } func (x *ControlPlaneConfig) Reset() { *x = ControlPlaneConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ControlPlaneConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*ControlPlaneConfig) ProtoMessage() {} func (x *ControlPlaneConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[118] 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 ControlPlaneConfig.ProtoReflect.Descriptor instead. func (*ControlPlaneConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{118} } func (x *ControlPlaneConfig) GetEndpoint() string { if x != nil { return x.Endpoint } return "" } type CNIConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Urls []string `protobuf:"bytes,2,rep,name=urls,proto3" json:"urls,omitempty"` } func (x *CNIConfig) Reset() { *x = CNIConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CNIConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*CNIConfig) ProtoMessage() {} func (x *CNIConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[119] 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 CNIConfig.ProtoReflect.Descriptor instead. func (*CNIConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{119} } func (x *CNIConfig) GetName() string { if x != nil { return x.Name } return "" } func (x *CNIConfig) GetUrls() []string { if x != nil { return x.Urls } return nil } type ClusterNetworkConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields DnsDomain string `protobuf:"bytes,1,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"` CniConfig *CNIConfig `protobuf:"bytes,2,opt,name=cni_config,json=cniConfig,proto3" json:"cni_config,omitempty"` } func (x *ClusterNetworkConfig) Reset() { *x = ClusterNetworkConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ClusterNetworkConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*ClusterNetworkConfig) ProtoMessage() {} func (x *ClusterNetworkConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[120] 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 ClusterNetworkConfig.ProtoReflect.Descriptor instead. func (*ClusterNetworkConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{120} } func (x *ClusterNetworkConfig) GetDnsDomain() string { if x != nil { return x.DnsDomain } return "" } func (x *ClusterNetworkConfig) GetCniConfig() *CNIConfig { if x != nil { return x.CniConfig } return nil } type ClusterConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` ControlPlane *ControlPlaneConfig `protobuf:"bytes,2,opt,name=control_plane,json=controlPlane,proto3" json:"control_plane,omitempty"` ClusterNetwork *ClusterNetworkConfig `protobuf:"bytes,3,opt,name=cluster_network,json=clusterNetwork,proto3" json:"cluster_network,omitempty"` AllowSchedulingOnMasters bool `protobuf:"varint,4,opt,name=allow_scheduling_on_masters,json=allowSchedulingOnMasters,proto3" json:"allow_scheduling_on_masters,omitempty"` } func (x *ClusterConfig) Reset() { *x = ClusterConfig{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ClusterConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*ClusterConfig) ProtoMessage() {} func (x *ClusterConfig) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[121] 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 ClusterConfig.ProtoReflect.Descriptor instead. func (*ClusterConfig) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{121} } func (x *ClusterConfig) GetName() string { if x != nil { return x.Name } return "" } func (x *ClusterConfig) GetControlPlane() *ControlPlaneConfig { if x != nil { return x.ControlPlane } return nil } func (x *ClusterConfig) GetClusterNetwork() *ClusterNetworkConfig { if x != nil { return x.ClusterNetwork } return nil } func (x *ClusterConfig) GetAllowSchedulingOnMasters() bool { if x != nil { return x.AllowSchedulingOnMasters } return false } // GenerateConfigurationRequest describes a request to generate a new configuration // on a node. type GenerateConfigurationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ConfigVersion string `protobuf:"bytes,1,opt,name=config_version,json=configVersion,proto3" json:"config_version,omitempty"` ClusterConfig *ClusterConfig `protobuf:"bytes,2,opt,name=cluster_config,json=clusterConfig,proto3" json:"cluster_config,omitempty"` MachineConfig *MachineConfig `protobuf:"bytes,3,opt,name=machine_config,json=machineConfig,proto3" json:"machine_config,omitempty"` OverrideTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=override_time,json=overrideTime,proto3" json:"override_time,omitempty"` } func (x *GenerateConfigurationRequest) Reset() { *x = GenerateConfigurationRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateConfigurationRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateConfigurationRequest) ProtoMessage() {} func (x *GenerateConfigurationRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[122] 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 GenerateConfigurationRequest.ProtoReflect.Descriptor instead. func (*GenerateConfigurationRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{122} } func (x *GenerateConfigurationRequest) GetConfigVersion() string { if x != nil { return x.ConfigVersion } return "" } func (x *GenerateConfigurationRequest) GetClusterConfig() *ClusterConfig { if x != nil { return x.ClusterConfig } return nil } func (x *GenerateConfigurationRequest) GetMachineConfig() *MachineConfig { if x != nil { return x.MachineConfig } return nil } func (x *GenerateConfigurationRequest) GetOverrideTime() *timestamppb.Timestamp { if x != nil { return x.OverrideTime } return nil } // GenerateConfiguration describes the response to a generate configuration request. type GenerateConfiguration struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Data [][]byte `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` Talosconfig []byte `protobuf:"bytes,3,opt,name=talosconfig,proto3" json:"talosconfig,omitempty"` } func (x *GenerateConfiguration) Reset() { *x = GenerateConfiguration{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateConfiguration) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateConfiguration) ProtoMessage() {} func (x *GenerateConfiguration) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[123] 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 GenerateConfiguration.ProtoReflect.Descriptor instead. func (*GenerateConfiguration) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{123} } func (x *GenerateConfiguration) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *GenerateConfiguration) GetData() [][]byte { if x != nil { return x.Data } return nil } func (x *GenerateConfiguration) GetTalosconfig() []byte { if x != nil { return x.Talosconfig } return nil } type GenerateConfigurationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*GenerateConfiguration `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *GenerateConfigurationResponse) Reset() { *x = GenerateConfigurationResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateConfigurationResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateConfigurationResponse) ProtoMessage() {} func (x *GenerateConfigurationResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[124] 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 GenerateConfigurationResponse.ProtoReflect.Descriptor instead. func (*GenerateConfigurationResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{124} } func (x *GenerateConfigurationResponse) GetMessages() []*GenerateConfiguration { if x != nil { return x.Messages } return nil } type GenerateClientConfigurationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Roles in the generated client certificate. Roles []string `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` // Client certificate TTL. CrtTtl *durationpb.Duration `protobuf:"bytes,2,opt,name=crt_ttl,json=crtTtl,proto3" json:"crt_ttl,omitempty"` } func (x *GenerateClientConfigurationRequest) Reset() { *x = GenerateClientConfigurationRequest{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateClientConfigurationRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateClientConfigurationRequest) ProtoMessage() {} func (x *GenerateClientConfigurationRequest) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[125] 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 GenerateClientConfigurationRequest.ProtoReflect.Descriptor instead. func (*GenerateClientConfigurationRequest) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{125} } func (x *GenerateClientConfigurationRequest) GetRoles() []string { if x != nil { return x.Roles } return nil } func (x *GenerateClientConfigurationRequest) GetCrtTtl() *durationpb.Duration { if x != nil { return x.CrtTtl } return nil } type GenerateClientConfiguration struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Metadata *common.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` // PEM-encoded CA certificate. Ca []byte `protobuf:"bytes,2,opt,name=ca,proto3" json:"ca,omitempty"` // PEM-encoded generated client certificate. Crt []byte `protobuf:"bytes,3,opt,name=crt,proto3" json:"crt,omitempty"` // PEM-encoded generated client key. Key []byte `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"` // Client configuration (talosconfig) file content. Talosconfig []byte `protobuf:"bytes,5,opt,name=talosconfig,proto3" json:"talosconfig,omitempty"` } func (x *GenerateClientConfiguration) Reset() { *x = GenerateClientConfiguration{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateClientConfiguration) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateClientConfiguration) ProtoMessage() {} func (x *GenerateClientConfiguration) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[126] 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 GenerateClientConfiguration.ProtoReflect.Descriptor instead. func (*GenerateClientConfiguration) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{126} } func (x *GenerateClientConfiguration) GetMetadata() *common.Metadata { if x != nil { return x.Metadata } return nil } func (x *GenerateClientConfiguration) GetCa() []byte { if x != nil { return x.Ca } return nil } func (x *GenerateClientConfiguration) GetCrt() []byte { if x != nil { return x.Crt } return nil } func (x *GenerateClientConfiguration) GetKey() []byte { if x != nil { return x.Key } return nil } func (x *GenerateClientConfiguration) GetTalosconfig() []byte { if x != nil { return x.Talosconfig } return nil } type GenerateClientConfigurationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Messages []*GenerateClientConfiguration `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` } func (x *GenerateClientConfigurationResponse) Reset() { *x = GenerateClientConfigurationResponse{} if protoimpl.UnsafeEnabled { mi := &file_machine_machine_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GenerateClientConfigurationResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GenerateClientConfigurationResponse) ProtoMessage() {} func (x *GenerateClientConfigurationResponse) ProtoReflect() protoreflect.Message { mi := &file_machine_machine_proto_msgTypes[127] 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 GenerateClientConfigurationResponse.ProtoReflect.Descriptor instead. func (*GenerateClientConfigurationResponse) Descriptor() ([]byte, []int) { return file_machine_machine_proto_rawDescGZIP(), []int{127} } func (x *GenerateClientConfigurationResponse) GetMessages() []*GenerateClientConfiguration { if x != nil { return x.Messages } return nil } var File_machine_machine_proto protoreflect.FileDescriptor var file_machine_machine_proto_rawDesc = []byte{ 0x0a, 0x15, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x1a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfa, 0x01, 0x0a, 0x19, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x09, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x0b, 0x18, 0x01, 0xea, 0xbb, 0x2d, 0x05, 0x76, 0x30, 0x2e, 0x31, 0x36, 0x52, 0x08, 0x6f, 0x6e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x12, 0x29, 0x0a, 0x09, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x0b, 0x18, 0x01, 0xea, 0xbb, 0x2d, 0x05, 0x76, 0x30, 0x2e, 0x31, 0x36, 0x52, 0x09, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x37, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x42, 0x4f, 0x4f, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x52, 0x45, 0x42, 0x4f, 0x4f, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x41, 0x47, 0x45, 0x44, 0x10, 0x03, 0x22, 0xbe, 0x01, 0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x3b, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x55, 0x0a, 0x1a, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x65, 0x0a, 0x0d, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x23, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x10, 0x01, 0x22, 0x36, 0x0a, 0x06, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3d, 0x0a, 0x0e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x10, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x65, 0x74, 0x63, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x45, 0x74, 0x63, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x6b, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x22, 0x39, 0x0a, 0x09, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x43, 0x0a, 0x11, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x0d, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x27, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4f, 0x50, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x02, 0x22, 0x75, 0x0a, 0x0a, 0x50, 0x68, 0x61, 0x73, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x68, 0x61, 0x73, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1d, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x22, 0x71, 0x0a, 0x09, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x73, 0x6b, 0x12, 0x31, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1d, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x22, 0xab, 0x02, 0x0a, 0x11, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x52, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x22, 0x77, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x07, 0x22, 0x20, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0x2c, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4c, 0x6f, 0x61, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x32, 0x0a, 0x1a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x48, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x0d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x69, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x69, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x6f, 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x77, 0x69, 0x70, 0x65, 0x22, 0x9a, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x72, 0x61, 0x63, 0x65, 0x66, 0x75, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x67, 0x72, 0x61, 0x63, 0x65, 0x66, 0x75, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x12, 0x56, 0x0a, 0x19, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x77, 0x69, 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x16, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x6f, 0x57, 0x69, 0x70, 0x65, 0x22, 0x35, 0x0a, 0x05, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3b, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x38, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x41, 0x0a, 0x10, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6e, 0x0a, 0x0e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x49, 0x0a, 0x07, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x61, 0x63, 0x6b, 0x22, 0x3f, 0x0a, 0x0f, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x93, 0x01, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x52, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x22, 0x3e, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x62, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x02, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x02, 0x74, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x25, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x50, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x73, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x73, 0x70, 0x22, 0x49, 0x0a, 0x14, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x24, 0x0a, 0x12, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x73, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x73, 0x70, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x27, 0x0a, 0x15, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x52, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x73, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x73, 0x70, 0x22, 0x4d, 0x0a, 0x16, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x2a, 0x0a, 0x0b, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x50, 0x61, 0x74, 0x68, 0x22, 0xc6, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x70, 0x74, 0x68, 0x12, 0x2f, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22, 0x2f, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x47, 0x55, 0x4c, 0x41, 0x52, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x59, 0x4d, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x02, 0x22, 0x81, 0x01, 0x0a, 0x10, 0x44, 0x69, 0x73, 0x6b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x70, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x22, 0x9a, 0x02, 0x0a, 0x08, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x44, 0x69, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x69, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x6b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x06, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x3d, 0x0a, 0x0e, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x7c, 0x0a, 0x09, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x4f, 0x6e, 0x22, 0xcd, 0x01, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x31, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x0f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x0b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x68, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x68, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x6f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x63, 0x68, 0x22, 0x36, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x22, 0x0a, 0x0c, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x62, 0x61, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x72, 0x62, 0x61, 0x63, 0x22, 0xa3, 0x01, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x21, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x38, 0x0a, 0x08, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x41, 0x0a, 0x10, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x62, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x22, 0xa8, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x22, 0x44, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x3a, 0x0a, 0x0c, 0x44, 0x6d, 0x65, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x41, 0x0a, 0x11, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6b, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x32, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x22, 0x9c, 0x02, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x70, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x70, 0x75, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x63, 0x70, 0x75, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x22, 0x6f, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x22, 0x37, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3f, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x5d, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x06, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x22, 0x5a, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x3b, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x70, 0x75, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x63, 0x70, 0x75, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x62, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x3d, 0x0a, 0x0e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x8b, 0x0c, 0x0a, 0x07, 0x4d, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x6d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x66, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x66, 0x72, 0x65, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x77, 0x61, 0x70, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x73, 0x77, 0x61, 0x70, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x75, 0x6e, 0x65, 0x76, 0x69, 0x63, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x75, 0x6e, 0x65, 0x76, 0x69, 0x63, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x77, 0x61, 0x70, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x73, 0x77, 0x61, 0x70, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x77, 0x61, 0x70, 0x66, 0x72, 0x65, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x77, 0x61, 0x70, 0x66, 0x72, 0x65, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x69, 0x72, 0x74, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x64, 0x69, 0x72, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6e, 0x6f, 0x6e, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x6e, 0x6f, 0x6e, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x18, 0x15, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x61, 0x62, 0x18, 0x16, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6c, 0x61, 0x62, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x18, 0x18, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x73, 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x19, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x66, 0x73, 0x75, 0x6e, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6e, 0x66, 0x73, 0x75, 0x6e, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x62, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x6d, 0x70, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x6d, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x61, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x61, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x20, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x75, 0x73, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x75, 0x73, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x22, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x76, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x2c, 0x0a, 0x11, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x72, 0x75, 0x70, 0x74, 0x65, 0x64, 0x18, 0x23, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x72, 0x75, 0x70, 0x74, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6e, 0x6f, 0x6e, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x6e, 0x6f, 0x6e, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x70, 0x6d, 0x64, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x70, 0x6d, 0x64, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6d, 0x61, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x27, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x63, 0x6d, 0x61, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6d, 0x61, 0x66, 0x72, 0x65, 0x65, 0x18, 0x28, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6d, 0x61, 0x66, 0x72, 0x65, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x29, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x66, 0x72, 0x65, 0x65, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x66, 0x72, 0x65, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x72, 0x73, 0x76, 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x72, 0x73, 0x76, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x73, 0x75, 0x72, 0x70, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x73, 0x75, 0x72, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x68, 0x75, 0x67, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x34, 0x6b, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x34, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x32, 0x6d, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x32, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x31, 0x67, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x70, 0x31, 0x67, 0x22, 0x41, 0x0a, 0x10, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x54, 0x0a, 0x08, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x0f, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x76, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x76, 0x67, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x7b, 0x0a, 0x07, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x76, 0x67, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x61, 0x64, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x6c, 0x6f, 0x61, 0x64, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x61, 0x64, 0x35, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x6c, 0x6f, 0x61, 0x64, 0x35, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x61, 0x64, 0x31, 0x35, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x6c, 0x6f, 0x61, 0x64, 0x31, 0x35, 0x22, 0x45, 0x0a, 0x12, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xd6, 0x03, 0x0a, 0x0a, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x09, 0x63, 0x70, 0x75, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x50, 0x55, 0x53, 0x74, 0x61, 0x74, 0x52, 0x08, 0x63, 0x70, 0x75, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x22, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x50, 0x55, 0x53, 0x74, 0x61, 0x74, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x72, 0x71, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x69, 0x72, 0x71, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x72, 0x71, 0x18, 0x06, 0x20, 0x03, 0x28, 0x04, 0x52, 0x03, 0x69, 0x72, 0x71, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x69, 0x72, 0x71, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x66, 0x74, 0x49, 0x72, 0x71, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x08, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x69, 0x72, 0x71, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x6f, 0x66, 0x74, 0x49, 0x52, 0x51, 0x53, 0x74, 0x61, 0x74, 0x52, 0x07, 0x73, 0x6f, 0x66, 0x74, 0x49, 0x72, 0x71, 0x22, 0xed, 0x01, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x53, 0x74, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x6e, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x64, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x69, 0x64, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x69, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x72, 0x71, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x69, 0x72, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x69, 0x72, 0x71, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x73, 0x6f, 0x66, 0x74, 0x49, 0x72, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x75, 0x65, 0x73, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x67, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x69, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x67, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x69, 0x63, 0x65, 0x22, 0xf7, 0x01, 0x0a, 0x0b, 0x53, 0x6f, 0x66, 0x74, 0x49, 0x52, 0x51, 0x53, 0x74, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x68, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x65, 0x74, 0x5f, 0x74, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x65, 0x74, 0x54, 0x78, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x65, 0x74, 0x5f, 0x72, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x65, 0x74, 0x52, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x69, 0x6f, 0x5f, 0x70, 0x6f, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x6f, 0x50, 0x6f, 0x6c, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x6c, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x6c, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x68, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x73, 0x63, 0x68, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x68, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x63, 0x75, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x72, 0x63, 0x75, 0x22, 0x40, 0x0a, 0x0f, 0x43, 0x50, 0x55, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x50, 0x55, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x65, 0x0a, 0x08, 0x43, 0x50, 0x55, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x08, 0x63, 0x70, 0x75, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x50, 0x55, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x63, 0x70, 0x75, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x8b, 0x06, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x70, 0x75, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x65, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75, 0x5f, 0x6d, 0x68, 0x7a, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x63, 0x70, 0x75, 0x4d, 0x68, 0x7a, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x69, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x69, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x72, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x70, 0x75, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x63, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x61, 0x70, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x70, 0x69, 0x63, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x70, 0x75, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x70, 0x75, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x70, 0x75, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x70, 0x75, 0x45, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x70, 0x75, 0x5f, 0x69, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x70, 0x75, 0x49, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x77, 0x70, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x77, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x75, 0x67, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x62, 0x75, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x6f, 0x67, 0x6f, 0x5f, 0x6d, 0x69, 0x70, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x62, 0x6f, 0x67, 0x6f, 0x4d, 0x69, 0x70, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x6c, 0x5f, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6c, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x1a, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x44, 0x65, 0x76, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x29, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x44, 0x65, 0x76, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x86, 0x04, 0x0a, 0x06, 0x4e, 0x65, 0x74, 0x44, 0x65, 0x76, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x72, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x78, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x72, 0x78, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x72, 0x78, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x78, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x72, 0x78, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x78, 0x5f, 0x66, 0x69, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x78, 0x46, 0x69, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x72, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x72, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x78, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x78, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x78, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x78, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x78, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x78, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x78, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x66, 0x69, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x78, 0x46, 0x69, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x78, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, 0x78, 0x43, 0x6f, 0x6c, 0x6c, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x78, 0x5f, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x78, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x22, 0x43, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x09, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2b, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0xd8, 0x04, 0x0a, 0x08, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x53, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x77, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x53, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x6f, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6f, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x0a, 0x69, 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x69, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x69, 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x69, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x4d, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x40, 0x0a, 0x10, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x51, 0x0a, 0x18, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x31, 0x0a, 0x17, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x40, 0x0a, 0x10, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x51, 0x0a, 0x18, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x1e, 0x0a, 0x1c, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5d, 0x0a, 0x15, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x1d, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x38, 0x0a, 0x15, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x95, 0x01, 0x0a, 0x0a, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x72, 0x22, 0x91, 0x01, 0x0a, 0x0b, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x4a, 0x0a, 0x16, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x45, 0x74, 0x63, 0x64, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x0b, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x47, 0x0a, 0x13, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x59, 0x0a, 0x0b, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x22, 0x36, 0x0a, 0x11, 0x44, 0x48, 0x43, 0x50, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x22, 0xf2, 0x01, 0x0a, 0x13, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x64, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x68, 0x63, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x68, 0x63, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x48, 0x43, 0x50, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x64, 0x68, 0x63, 0x70, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0x69, 0x0a, 0x0d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x22, 0x57, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xcd, 0x02, 0x0a, 0x0d, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2d, 0x0a, 0x12, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x57, 0x0a, 0x0b, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x45, 0x52, 0x10, 0x03, 0x22, 0x30, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x33, 0x0a, 0x09, 0x43, 0x4e, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x22, 0x68, 0x0a, 0x14, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x31, 0x0a, 0x0a, 0x63, 0x6e, 0x69, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x4e, 0x49, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x63, 0x6e, 0x69, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xec, 0x01, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x4f, 0x6e, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x22, 0x84, 0x02, 0x0a, 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x0e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3f, 0x0a, 0x0d, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x7b, 0x0a, 0x15, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x5b, 0x0a, 0x1d, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6e, 0x0a, 0x22, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x63, 0x72, 0x74, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x63, 0x72, 0x74, 0x54, 0x74, 0x6c, 0x22, 0xa1, 0x01, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x63, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x63, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x63, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x67, 0x0a, 0x23, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x32, 0xb7, 0x15, 0x0a, 0x0e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5d, 0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x12, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x43, 0x6f, 0x70, 0x79, 0x12, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x3b, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x43, 0x50, 0x55, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x09, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x44, 0x6d, 0x65, 0x73, 0x67, 0x12, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x6d, 0x65, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x32, 0x0a, 0x06, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x30, 0x01, 0x12, 0x51, 0x0a, 0x0e, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x10, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x10, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x15, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x25, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x46, 0x6f, 0x72, 0x66, 0x65, 0x69, 0x74, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x12, 0x3c, 0x0a, 0x0c, 0x45, 0x74, 0x63, 0x64, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x45, 0x74, 0x63, 0x64, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x66, 0x0a, 0x15, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x4b, 0x75, 0x62, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x31, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x30, 0x01, 0x12, 0x40, 0x0a, 0x09, 0x44, 0x69, 0x73, 0x6b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x30, 0x01, 0x12, 0x3b, 0x0a, 0x07, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x76, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x76, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x39, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x23, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x52, 0x65, 0x61, 0x64, 0x12, 0x14, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0x39, 0x0a, 0x06, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x12, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1e, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x19, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x15, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0a, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x17, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x18, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x2d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x2f, 0x74, 0x61, 0x6c, 0x6f, 0x73, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_machine_machine_proto_rawDescOnce sync.Once file_machine_machine_proto_rawDescData = file_machine_machine_proto_rawDesc ) func file_machine_machine_proto_rawDescGZIP() []byte { file_machine_machine_proto_rawDescOnce.Do(func() { file_machine_machine_proto_rawDescData = protoimpl.X.CompressGZIP(file_machine_machine_proto_rawDescData) }) return file_machine_machine_proto_rawDescData } var ( file_machine_machine_proto_enumTypes = make([]protoimpl.EnumInfo, 8) file_machine_machine_proto_msgTypes = make([]protoimpl.MessageInfo, 128) file_machine_machine_proto_goTypes = []interface{}{ (ApplyConfigurationRequest_Mode)(0), // 0: machine.ApplyConfigurationRequest.Mode (RebootRequest_Mode)(0), // 1: machine.RebootRequest.Mode (SequenceEvent_Action)(0), // 2: machine.SequenceEvent.Action (PhaseEvent_Action)(0), // 3: machine.PhaseEvent.Action (TaskEvent_Action)(0), // 4: machine.TaskEvent.Action (ServiceStateEvent_Action)(0), // 5: machine.ServiceStateEvent.Action (ListRequest_Type)(0), // 6: machine.ListRequest.Type (MachineConfig_MachineType)(0), // 7: machine.MachineConfig.MachineType (*ApplyConfigurationRequest)(nil), // 8: machine.ApplyConfigurationRequest (*ApplyConfiguration)(nil), // 9: machine.ApplyConfiguration (*ApplyConfigurationResponse)(nil), // 10: machine.ApplyConfigurationResponse (*RebootRequest)(nil), // 11: machine.RebootRequest (*Reboot)(nil), // 12: machine.Reboot (*RebootResponse)(nil), // 13: machine.RebootResponse (*BootstrapRequest)(nil), // 14: machine.BootstrapRequest (*Bootstrap)(nil), // 15: machine.Bootstrap (*BootstrapResponse)(nil), // 16: machine.BootstrapResponse (*SequenceEvent)(nil), // 17: machine.SequenceEvent (*PhaseEvent)(nil), // 18: machine.PhaseEvent (*TaskEvent)(nil), // 19: machine.TaskEvent (*ServiceStateEvent)(nil), // 20: machine.ServiceStateEvent (*RestartEvent)(nil), // 21: machine.RestartEvent (*ConfigLoadErrorEvent)(nil), // 22: machine.ConfigLoadErrorEvent (*ConfigValidationErrorEvent)(nil), // 23: machine.ConfigValidationErrorEvent (*AddressEvent)(nil), // 24: machine.AddressEvent (*EventsRequest)(nil), // 25: machine.EventsRequest (*Event)(nil), // 26: machine.Event (*ResetPartitionSpec)(nil), // 27: machine.ResetPartitionSpec (*ResetRequest)(nil), // 28: machine.ResetRequest (*Reset)(nil), // 29: machine.Reset (*ResetResponse)(nil), // 30: machine.ResetResponse (*Shutdown)(nil), // 31: machine.Shutdown (*ShutdownResponse)(nil), // 32: machine.ShutdownResponse (*UpgradeRequest)(nil), // 33: machine.UpgradeRequest (*Upgrade)(nil), // 34: machine.Upgrade (*UpgradeResponse)(nil), // 35: machine.UpgradeResponse (*ServiceList)(nil), // 36: machine.ServiceList (*ServiceListResponse)(nil), // 37: machine.ServiceListResponse (*ServiceInfo)(nil), // 38: machine.ServiceInfo (*ServiceEvents)(nil), // 39: machine.ServiceEvents (*ServiceEvent)(nil), // 40: machine.ServiceEvent (*ServiceHealth)(nil), // 41: machine.ServiceHealth (*ServiceStartRequest)(nil), // 42: machine.ServiceStartRequest (*ServiceStart)(nil), // 43: machine.ServiceStart (*ServiceStartResponse)(nil), // 44: machine.ServiceStartResponse (*ServiceStopRequest)(nil), // 45: machine.ServiceStopRequest (*ServiceStop)(nil), // 46: machine.ServiceStop (*ServiceStopResponse)(nil), // 47: machine.ServiceStopResponse (*ServiceRestartRequest)(nil), // 48: machine.ServiceRestartRequest (*ServiceRestart)(nil), // 49: machine.ServiceRestart (*ServiceRestartResponse)(nil), // 50: machine.ServiceRestartResponse (*CopyRequest)(nil), // 51: machine.CopyRequest (*ListRequest)(nil), // 52: machine.ListRequest (*DiskUsageRequest)(nil), // 53: machine.DiskUsageRequest (*FileInfo)(nil), // 54: machine.FileInfo (*DiskUsageInfo)(nil), // 55: machine.DiskUsageInfo (*Mounts)(nil), // 56: machine.Mounts (*MountsResponse)(nil), // 57: machine.MountsResponse (*MountStat)(nil), // 58: machine.MountStat (*Version)(nil), // 59: machine.Version (*VersionResponse)(nil), // 60: machine.VersionResponse (*VersionInfo)(nil), // 61: machine.VersionInfo (*PlatformInfo)(nil), // 62: machine.PlatformInfo (*FeaturesInfo)(nil), // 63: machine.FeaturesInfo (*LogsRequest)(nil), // 64: machine.LogsRequest (*ReadRequest)(nil), // 65: machine.ReadRequest (*RollbackRequest)(nil), // 66: machine.RollbackRequest (*Rollback)(nil), // 67: machine.Rollback (*RollbackResponse)(nil), // 68: machine.RollbackResponse (*ContainersRequest)(nil), // 69: machine.ContainersRequest (*ContainerInfo)(nil), // 70: machine.ContainerInfo (*Container)(nil), // 71: machine.Container (*ContainersResponse)(nil), // 72: machine.ContainersResponse (*DmesgRequest)(nil), // 73: machine.DmesgRequest (*ProcessesResponse)(nil), // 74: machine.ProcessesResponse (*Process)(nil), // 75: machine.Process (*ProcessInfo)(nil), // 76: machine.ProcessInfo (*RestartRequest)(nil), // 77: machine.RestartRequest (*Restart)(nil), // 78: machine.Restart (*RestartResponse)(nil), // 79: machine.RestartResponse (*StatsRequest)(nil), // 80: machine.StatsRequest (*Stats)(nil), // 81: machine.Stats (*StatsResponse)(nil), // 82: machine.StatsResponse (*Stat)(nil), // 83: machine.Stat (*Memory)(nil), // 84: machine.Memory (*MemoryResponse)(nil), // 85: machine.MemoryResponse (*MemInfo)(nil), // 86: machine.MemInfo (*HostnameResponse)(nil), // 87: machine.HostnameResponse (*Hostname)(nil), // 88: machine.Hostname (*LoadAvgResponse)(nil), // 89: machine.LoadAvgResponse (*LoadAvg)(nil), // 90: machine.LoadAvg (*SystemStatResponse)(nil), // 91: machine.SystemStatResponse (*SystemStat)(nil), // 92: machine.SystemStat (*CPUStat)(nil), // 93: machine.CPUStat (*SoftIRQStat)(nil), // 94: machine.SoftIRQStat (*CPUInfoResponse)(nil), // 95: machine.CPUInfoResponse (*CPUsInfo)(nil), // 96: machine.CPUsInfo (*CPUInfo)(nil), // 97: machine.CPUInfo (*NetworkDeviceStatsResponse)(nil), // 98: machine.NetworkDeviceStatsResponse (*NetworkDeviceStats)(nil), // 99: machine.NetworkDeviceStats (*NetDev)(nil), // 100: machine.NetDev (*DiskStatsResponse)(nil), // 101: machine.DiskStatsResponse (*DiskStats)(nil), // 102: machine.DiskStats (*DiskStat)(nil), // 103: machine.DiskStat (*EtcdLeaveClusterRequest)(nil), // 104: machine.EtcdLeaveClusterRequest (*EtcdLeaveCluster)(nil), // 105: machine.EtcdLeaveCluster (*EtcdLeaveClusterResponse)(nil), // 106: machine.EtcdLeaveClusterResponse (*EtcdRemoveMemberRequest)(nil), // 107: machine.EtcdRemoveMemberRequest (*EtcdRemoveMember)(nil), // 108: machine.EtcdRemoveMember (*EtcdRemoveMemberResponse)(nil), // 109: machine.EtcdRemoveMemberResponse (*EtcdForfeitLeadershipRequest)(nil), // 110: machine.EtcdForfeitLeadershipRequest (*EtcdForfeitLeadership)(nil), // 111: machine.EtcdForfeitLeadership (*EtcdForfeitLeadershipResponse)(nil), // 112: machine.EtcdForfeitLeadershipResponse (*EtcdMemberListRequest)(nil), // 113: machine.EtcdMemberListRequest (*EtcdMember)(nil), // 114: machine.EtcdMember (*EtcdMembers)(nil), // 115: machine.EtcdMembers (*EtcdMemberListResponse)(nil), // 116: machine.EtcdMemberListResponse (*EtcdSnapshotRequest)(nil), // 117: machine.EtcdSnapshotRequest (*EtcdRecover)(nil), // 118: machine.EtcdRecover (*EtcdRecoverResponse)(nil), // 119: machine.EtcdRecoverResponse (*RouteConfig)(nil), // 120: machine.RouteConfig (*DHCPOptionsConfig)(nil), // 121: machine.DHCPOptionsConfig (*NetworkDeviceConfig)(nil), // 122: machine.NetworkDeviceConfig (*NetworkConfig)(nil), // 123: machine.NetworkConfig (*InstallConfig)(nil), // 124: machine.InstallConfig (*MachineConfig)(nil), // 125: machine.MachineConfig (*ControlPlaneConfig)(nil), // 126: machine.ControlPlaneConfig (*CNIConfig)(nil), // 127: machine.CNIConfig (*ClusterNetworkConfig)(nil), // 128: machine.ClusterNetworkConfig (*ClusterConfig)(nil), // 129: machine.ClusterConfig (*GenerateConfigurationRequest)(nil), // 130: machine.GenerateConfigurationRequest (*GenerateConfiguration)(nil), // 131: machine.GenerateConfiguration (*GenerateConfigurationResponse)(nil), // 132: machine.GenerateConfigurationResponse (*GenerateClientConfigurationRequest)(nil), // 133: machine.GenerateClientConfigurationRequest (*GenerateClientConfiguration)(nil), // 134: machine.GenerateClientConfiguration (*GenerateClientConfigurationResponse)(nil), // 135: machine.GenerateClientConfigurationResponse (*common.Metadata)(nil), // 136: common.Metadata (*common.Error)(nil), // 137: common.Error (*anypb.Any)(nil), // 138: google.protobuf.Any (*timestamppb.Timestamp)(nil), // 139: google.protobuf.Timestamp (common.ContainerDriver)(0), // 140: common.ContainerDriver (*durationpb.Duration)(nil), // 141: google.protobuf.Duration (*emptypb.Empty)(nil), // 142: google.protobuf.Empty (*common.Data)(nil), // 143: common.Data } ) var file_machine_machine_proto_depIdxs = []int32{ 0, // 0: machine.ApplyConfigurationRequest.mode:type_name -> machine.ApplyConfigurationRequest.Mode 136, // 1: machine.ApplyConfiguration.metadata:type_name -> common.Metadata 0, // 2: machine.ApplyConfiguration.mode:type_name -> machine.ApplyConfigurationRequest.Mode 9, // 3: machine.ApplyConfigurationResponse.messages:type_name -> machine.ApplyConfiguration 1, // 4: machine.RebootRequest.mode:type_name -> machine.RebootRequest.Mode 136, // 5: machine.Reboot.metadata:type_name -> common.Metadata 12, // 6: machine.RebootResponse.messages:type_name -> machine.Reboot 136, // 7: machine.Bootstrap.metadata:type_name -> common.Metadata 15, // 8: machine.BootstrapResponse.messages:type_name -> machine.Bootstrap 2, // 9: machine.SequenceEvent.action:type_name -> machine.SequenceEvent.Action 137, // 10: machine.SequenceEvent.error:type_name -> common.Error 3, // 11: machine.PhaseEvent.action:type_name -> machine.PhaseEvent.Action 4, // 12: machine.TaskEvent.action:type_name -> machine.TaskEvent.Action 5, // 13: machine.ServiceStateEvent.action:type_name -> machine.ServiceStateEvent.Action 41, // 14: machine.ServiceStateEvent.health:type_name -> machine.ServiceHealth 136, // 15: machine.Event.metadata:type_name -> common.Metadata 138, // 16: machine.Event.data:type_name -> google.protobuf.Any 27, // 17: machine.ResetRequest.system_partitions_to_wipe:type_name -> machine.ResetPartitionSpec 136, // 18: machine.Reset.metadata:type_name -> common.Metadata 29, // 19: machine.ResetResponse.messages:type_name -> machine.Reset 136, // 20: machine.Shutdown.metadata:type_name -> common.Metadata 31, // 21: machine.ShutdownResponse.messages:type_name -> machine.Shutdown 136, // 22: machine.Upgrade.metadata:type_name -> common.Metadata 34, // 23: machine.UpgradeResponse.messages:type_name -> machine.Upgrade 136, // 24: machine.ServiceList.metadata:type_name -> common.Metadata 38, // 25: machine.ServiceList.services:type_name -> machine.ServiceInfo 36, // 26: machine.ServiceListResponse.messages:type_name -> machine.ServiceList 39, // 27: machine.ServiceInfo.events:type_name -> machine.ServiceEvents 41, // 28: machine.ServiceInfo.health:type_name -> machine.ServiceHealth 40, // 29: machine.ServiceEvents.events:type_name -> machine.ServiceEvent 139, // 30: machine.ServiceEvent.ts:type_name -> google.protobuf.Timestamp 139, // 31: machine.ServiceHealth.last_change:type_name -> google.protobuf.Timestamp 136, // 32: machine.ServiceStart.metadata:type_name -> common.Metadata 43, // 33: machine.ServiceStartResponse.messages:type_name -> machine.ServiceStart 136, // 34: machine.ServiceStop.metadata:type_name -> common.Metadata 46, // 35: machine.ServiceStopResponse.messages:type_name -> machine.ServiceStop 136, // 36: machine.ServiceRestart.metadata:type_name -> common.Metadata 49, // 37: machine.ServiceRestartResponse.messages:type_name -> machine.ServiceRestart 6, // 38: machine.ListRequest.types:type_name -> machine.ListRequest.Type 136, // 39: machine.FileInfo.metadata:type_name -> common.Metadata 136, // 40: machine.DiskUsageInfo.metadata:type_name -> common.Metadata 136, // 41: machine.Mounts.metadata:type_name -> common.Metadata 58, // 42: machine.Mounts.stats:type_name -> machine.MountStat 56, // 43: machine.MountsResponse.messages:type_name -> machine.Mounts 136, // 44: machine.Version.metadata:type_name -> common.Metadata 61, // 45: machine.Version.version:type_name -> machine.VersionInfo 62, // 46: machine.Version.platform:type_name -> machine.PlatformInfo 63, // 47: machine.Version.features:type_name -> machine.FeaturesInfo 59, // 48: machine.VersionResponse.messages:type_name -> machine.Version 140, // 49: machine.LogsRequest.driver:type_name -> common.ContainerDriver 136, // 50: machine.Rollback.metadata:type_name -> common.Metadata 67, // 51: machine.RollbackResponse.messages:type_name -> machine.Rollback 140, // 52: machine.ContainersRequest.driver:type_name -> common.ContainerDriver 136, // 53: machine.Container.metadata:type_name -> common.Metadata 70, // 54: machine.Container.containers:type_name -> machine.ContainerInfo 71, // 55: machine.ContainersResponse.messages:type_name -> machine.Container 75, // 56: machine.ProcessesResponse.messages:type_name -> machine.Process 136, // 57: machine.Process.metadata:type_name -> common.Metadata 76, // 58: machine.Process.processes:type_name -> machine.ProcessInfo 140, // 59: machine.RestartRequest.driver:type_name -> common.ContainerDriver 136, // 60: machine.Restart.metadata:type_name -> common.Metadata 78, // 61: machine.RestartResponse.messages:type_name -> machine.Restart 140, // 62: machine.StatsRequest.driver:type_name -> common.ContainerDriver 136, // 63: machine.Stats.metadata:type_name -> common.Metadata 83, // 64: machine.Stats.stats:type_name -> machine.Stat 81, // 65: machine.StatsResponse.messages:type_name -> machine.Stats 136, // 66: machine.Memory.metadata:type_name -> common.Metadata 86, // 67: machine.Memory.meminfo:type_name -> machine.MemInfo 84, // 68: machine.MemoryResponse.messages:type_name -> machine.Memory 88, // 69: machine.HostnameResponse.messages:type_name -> machine.Hostname 136, // 70: machine.Hostname.metadata:type_name -> common.Metadata 90, // 71: machine.LoadAvgResponse.messages:type_name -> machine.LoadAvg 136, // 72: machine.LoadAvg.metadata:type_name -> common.Metadata 92, // 73: machine.SystemStatResponse.messages:type_name -> machine.SystemStat 136, // 74: machine.SystemStat.metadata:type_name -> common.Metadata 93, // 75: machine.SystemStat.cpu_total:type_name -> machine.CPUStat 93, // 76: machine.SystemStat.cpu:type_name -> machine.CPUStat 94, // 77: machine.SystemStat.soft_irq:type_name -> machine.SoftIRQStat 96, // 78: machine.CPUInfoResponse.messages:type_name -> machine.CPUsInfo 136, // 79: machine.CPUsInfo.metadata:type_name -> common.Metadata 97, // 80: machine.CPUsInfo.cpu_info:type_name -> machine.CPUInfo 99, // 81: machine.NetworkDeviceStatsResponse.messages:type_name -> machine.NetworkDeviceStats 136, // 82: machine.NetworkDeviceStats.metadata:type_name -> common.Metadata 100, // 83: machine.NetworkDeviceStats.total:type_name -> machine.NetDev 100, // 84: machine.NetworkDeviceStats.devices:type_name -> machine.NetDev 102, // 85: machine.DiskStatsResponse.messages:type_name -> machine.DiskStats 136, // 86: machine.DiskStats.metadata:type_name -> common.Metadata 103, // 87: machine.DiskStats.total:type_name -> machine.DiskStat 103, // 88: machine.DiskStats.devices:type_name -> machine.DiskStat 136, // 89: machine.EtcdLeaveCluster.metadata:type_name -> common.Metadata 105, // 90: machine.EtcdLeaveClusterResponse.messages:type_name -> machine.EtcdLeaveCluster 136, // 91: machine.EtcdRemoveMember.metadata:type_name -> common.Metadata 108, // 92: machine.EtcdRemoveMemberResponse.messages:type_name -> machine.EtcdRemoveMember 136, // 93: machine.EtcdForfeitLeadership.metadata:type_name -> common.Metadata 111, // 94: machine.EtcdForfeitLeadershipResponse.messages:type_name -> machine.EtcdForfeitLeadership 136, // 95: machine.EtcdMembers.metadata:type_name -> common.Metadata 114, // 96: machine.EtcdMembers.members:type_name -> machine.EtcdMember 115, // 97: machine.EtcdMemberListResponse.messages:type_name -> machine.EtcdMembers 136, // 98: machine.EtcdRecover.metadata:type_name -> common.Metadata 118, // 99: machine.EtcdRecoverResponse.messages:type_name -> machine.EtcdRecover 121, // 100: machine.NetworkDeviceConfig.dhcp_options:type_name -> machine.DHCPOptionsConfig 120, // 101: machine.NetworkDeviceConfig.routes:type_name -> machine.RouteConfig 122, // 102: machine.NetworkConfig.interfaces:type_name -> machine.NetworkDeviceConfig 7, // 103: machine.MachineConfig.type:type_name -> machine.MachineConfig.MachineType 124, // 104: machine.MachineConfig.install_config:type_name -> machine.InstallConfig 123, // 105: machine.MachineConfig.network_config:type_name -> machine.NetworkConfig 127, // 106: machine.ClusterNetworkConfig.cni_config:type_name -> machine.CNIConfig 126, // 107: machine.ClusterConfig.control_plane:type_name -> machine.ControlPlaneConfig 128, // 108: machine.ClusterConfig.cluster_network:type_name -> machine.ClusterNetworkConfig 129, // 109: machine.GenerateConfigurationRequest.cluster_config:type_name -> machine.ClusterConfig 125, // 110: machine.GenerateConfigurationRequest.machine_config:type_name -> machine.MachineConfig 139, // 111: machine.GenerateConfigurationRequest.override_time:type_name -> google.protobuf.Timestamp 136, // 112: machine.GenerateConfiguration.metadata:type_name -> common.Metadata 131, // 113: machine.GenerateConfigurationResponse.messages:type_name -> machine.GenerateConfiguration 141, // 114: machine.GenerateClientConfigurationRequest.crt_ttl:type_name -> google.protobuf.Duration 136, // 115: machine.GenerateClientConfiguration.metadata:type_name -> common.Metadata 134, // 116: machine.GenerateClientConfigurationResponse.messages:type_name -> machine.GenerateClientConfiguration 8, // 117: machine.MachineService.ApplyConfiguration:input_type -> machine.ApplyConfigurationRequest 14, // 118: machine.MachineService.Bootstrap:input_type -> machine.BootstrapRequest 69, // 119: machine.MachineService.Containers:input_type -> machine.ContainersRequest 51, // 120: machine.MachineService.Copy:input_type -> machine.CopyRequest 142, // 121: machine.MachineService.CPUInfo:input_type -> google.protobuf.Empty 142, // 122: machine.MachineService.DiskStats:input_type -> google.protobuf.Empty 73, // 123: machine.MachineService.Dmesg:input_type -> machine.DmesgRequest 25, // 124: machine.MachineService.Events:input_type -> machine.EventsRequest 113, // 125: machine.MachineService.EtcdMemberList:input_type -> machine.EtcdMemberListRequest 107, // 126: machine.MachineService.EtcdRemoveMember:input_type -> machine.EtcdRemoveMemberRequest 104, // 127: machine.MachineService.EtcdLeaveCluster:input_type -> machine.EtcdLeaveClusterRequest 110, // 128: machine.MachineService.EtcdForfeitLeadership:input_type -> machine.EtcdForfeitLeadershipRequest 143, // 129: machine.MachineService.EtcdRecover:input_type -> common.Data 117, // 130: machine.MachineService.EtcdSnapshot:input_type -> machine.EtcdSnapshotRequest 130, // 131: machine.MachineService.GenerateConfiguration:input_type -> machine.GenerateConfigurationRequest 142, // 132: machine.MachineService.Hostname:input_type -> google.protobuf.Empty 142, // 133: machine.MachineService.Kubeconfig:input_type -> google.protobuf.Empty 52, // 134: machine.MachineService.List:input_type -> machine.ListRequest 53, // 135: machine.MachineService.DiskUsage:input_type -> machine.DiskUsageRequest 142, // 136: machine.MachineService.LoadAvg:input_type -> google.protobuf.Empty 64, // 137: machine.MachineService.Logs:input_type -> machine.LogsRequest 142, // 138: machine.MachineService.Memory:input_type -> google.protobuf.Empty 142, // 139: machine.MachineService.Mounts:input_type -> google.protobuf.Empty 142, // 140: machine.MachineService.NetworkDeviceStats:input_type -> google.protobuf.Empty 142, // 141: machine.MachineService.Processes:input_type -> google.protobuf.Empty 65, // 142: machine.MachineService.Read:input_type -> machine.ReadRequest 11, // 143: machine.MachineService.Reboot:input_type -> machine.RebootRequest 77, // 144: machine.MachineService.Restart:input_type -> machine.RestartRequest 66, // 145: machine.MachineService.Rollback:input_type -> machine.RollbackRequest 28, // 146: machine.MachineService.Reset:input_type -> machine.ResetRequest 142, // 147: machine.MachineService.ServiceList:input_type -> google.protobuf.Empty 48, // 148: machine.MachineService.ServiceRestart:input_type -> machine.ServiceRestartRequest 42, // 149: machine.MachineService.ServiceStart:input_type -> machine.ServiceStartRequest 45, // 150: machine.MachineService.ServiceStop:input_type -> machine.ServiceStopRequest 142, // 151: machine.MachineService.Shutdown:input_type -> google.protobuf.Empty 80, // 152: machine.MachineService.Stats:input_type -> machine.StatsRequest 142, // 153: machine.MachineService.SystemStat:input_type -> google.protobuf.Empty 33, // 154: machine.MachineService.Upgrade:input_type -> machine.UpgradeRequest 142, // 155: machine.MachineService.Version:input_type -> google.protobuf.Empty 133, // 156: machine.MachineService.GenerateClientConfiguration:input_type -> machine.GenerateClientConfigurationRequest 10, // 157: machine.MachineService.ApplyConfiguration:output_type -> machine.ApplyConfigurationResponse 16, // 158: machine.MachineService.Bootstrap:output_type -> machine.BootstrapResponse 72, // 159: machine.MachineService.Containers:output_type -> machine.ContainersResponse 143, // 160: machine.MachineService.Copy:output_type -> common.Data 95, // 161: machine.MachineService.CPUInfo:output_type -> machine.CPUInfoResponse 101, // 162: machine.MachineService.DiskStats:output_type -> machine.DiskStatsResponse 143, // 163: machine.MachineService.Dmesg:output_type -> common.Data 26, // 164: machine.MachineService.Events:output_type -> machine.Event 116, // 165: machine.MachineService.EtcdMemberList:output_type -> machine.EtcdMemberListResponse 109, // 166: machine.MachineService.EtcdRemoveMember:output_type -> machine.EtcdRemoveMemberResponse 106, // 167: machine.MachineService.EtcdLeaveCluster:output_type -> machine.EtcdLeaveClusterResponse 112, // 168: machine.MachineService.EtcdForfeitLeadership:output_type -> machine.EtcdForfeitLeadershipResponse 119, // 169: machine.MachineService.EtcdRecover:output_type -> machine.EtcdRecoverResponse 143, // 170: machine.MachineService.EtcdSnapshot:output_type -> common.Data 132, // 171: machine.MachineService.GenerateConfiguration:output_type -> machine.GenerateConfigurationResponse 87, // 172: machine.MachineService.Hostname:output_type -> machine.HostnameResponse 143, // 173: machine.MachineService.Kubeconfig:output_type -> common.Data 54, // 174: machine.MachineService.List:output_type -> machine.FileInfo 55, // 175: machine.MachineService.DiskUsage:output_type -> machine.DiskUsageInfo 89, // 176: machine.MachineService.LoadAvg:output_type -> machine.LoadAvgResponse 143, // 177: machine.MachineService.Logs:output_type -> common.Data 85, // 178: machine.MachineService.Memory:output_type -> machine.MemoryResponse 57, // 179: machine.MachineService.Mounts:output_type -> machine.MountsResponse 98, // 180: machine.MachineService.NetworkDeviceStats:output_type -> machine.NetworkDeviceStatsResponse 74, // 181: machine.MachineService.Processes:output_type -> machine.ProcessesResponse 143, // 182: machine.MachineService.Read:output_type -> common.Data 13, // 183: machine.MachineService.Reboot:output_type -> machine.RebootResponse 79, // 184: machine.MachineService.Restart:output_type -> machine.RestartResponse 68, // 185: machine.MachineService.Rollback:output_type -> machine.RollbackResponse 30, // 186: machine.MachineService.Reset:output_type -> machine.ResetResponse 37, // 187: machine.MachineService.ServiceList:output_type -> machine.ServiceListResponse 50, // 188: machine.MachineService.ServiceRestart:output_type -> machine.ServiceRestartResponse 44, // 189: machine.MachineService.ServiceStart:output_type -> machine.ServiceStartResponse 47, // 190: machine.MachineService.ServiceStop:output_type -> machine.ServiceStopResponse 32, // 191: machine.MachineService.Shutdown:output_type -> machine.ShutdownResponse 82, // 192: machine.MachineService.Stats:output_type -> machine.StatsResponse 91, // 193: machine.MachineService.SystemStat:output_type -> machine.SystemStatResponse 35, // 194: machine.MachineService.Upgrade:output_type -> machine.UpgradeResponse 60, // 195: machine.MachineService.Version:output_type -> machine.VersionResponse 135, // 196: machine.MachineService.GenerateClientConfiguration:output_type -> machine.GenerateClientConfigurationResponse 157, // [157:197] is the sub-list for method output_type 117, // [117:157] is the sub-list for method input_type 117, // [117:117] is the sub-list for extension type_name 117, // [117:117] is the sub-list for extension extendee 0, // [0:117] is the sub-list for field type_name } func init() { file_machine_machine_proto_init() } func file_machine_machine_proto_init() { if File_machine_machine_proto != nil { return } if !protoimpl.UnsafeEnabled { file_machine_machine_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApplyConfigurationRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApplyConfiguration); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApplyConfigurationResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RebootRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Reboot); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RebootResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BootstrapRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Bootstrap); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BootstrapResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SequenceEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PhaseEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TaskEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStateEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RestartEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ConfigLoadErrorEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ConfigValidationErrorEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddressEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EventsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Event); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ResetPartitionSpec); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ResetRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Reset); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ResetResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Shutdown); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ShutdownResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpgradeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Upgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpgradeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceList); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceListResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceEvents); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceHealth); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStartRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStart); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStartResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStopRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStop); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceStopResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceRestartRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceRestart); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ServiceRestartResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CopyRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DiskUsageRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FileInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DiskUsageInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Mounts); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MountsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MountStat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Version); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VersionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VersionInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PlatformInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FeaturesInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LogsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReadRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RollbackRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Rollback); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RollbackResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContainersRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContainerInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Container); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContainersResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DmesgRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ProcessesResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Process); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ProcessInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RestartRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Restart); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RestartResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Stats); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Stat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Memory); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MemoryResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MemInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HostnameResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Hostname); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LoadAvgResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LoadAvg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SystemStatResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SystemStat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CPUStat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SoftIRQStat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CPUInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CPUsInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CPUInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkDeviceStatsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkDeviceStats); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetDev); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DiskStatsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DiskStats); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DiskStat); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdLeaveClusterRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdLeaveCluster); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdLeaveClusterResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdRemoveMemberRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdRemoveMember); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdRemoveMemberResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdForfeitLeadershipRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdForfeitLeadership); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdForfeitLeadershipResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdMemberListRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdMember); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdMembers); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdMemberListResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdSnapshotRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdRecover); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EtcdRecoverResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RouteConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DHCPOptionsConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkDeviceConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InstallConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MachineConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ControlPlaneConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CNIConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClusterNetworkConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClusterConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateConfigurationRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateConfiguration); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateConfigurationResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateClientConfigurationRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateClientConfiguration); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_machine_machine_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateClientConfigurationResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_machine_machine_proto_rawDesc, NumEnums: 8, NumMessages: 128, NumExtensions: 0, NumServices: 1, }, GoTypes: file_machine_machine_proto_goTypes, DependencyIndexes: file_machine_machine_proto_depIdxs, EnumInfos: file_machine_machine_proto_enumTypes, MessageInfos: file_machine_machine_proto_msgTypes, }.Build() File_machine_machine_proto = out.File file_machine_machine_proto_rawDesc = nil file_machine_machine_proto_goTypes = nil file_machine_machine_proto_depIdxs = nil }