diff --git a/api/cirrus_ci_service.pb.go b/api/cirrus_ci_service.pb.go index 1fa2d40..fad0eac 100644 --- a/api/cirrus_ci_service.pb.go +++ b/api/cirrus_ci_service.pb.go @@ -1736,6 +1736,7 @@ type ParseConfigRequest struct { Config string `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` Environment map[string]string `protobuf:"bytes,2,rep,name=environment,proto3" json:"environment,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` AffectedFiles []string `protobuf:"bytes,3,rep,name=affectedFiles,proto3" json:"affectedFiles,omitempty"` + FilesContents map[string]string `protobuf:"bytes,4,rep,name=filesContents,proto3" json:"filesContents,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } func (x *ParseConfigRequest) Reset() { @@ -1791,6 +1792,13 @@ func (x *ParseConfigRequest) GetAffectedFiles() []string { return nil } +func (x *ParseConfigRequest) GetFilesContents() map[string]string { + if x != nil { + return x.FilesContents + } + return nil +} + type ParseConfigResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2622,6 +2630,7 @@ type ContainerInstance struct { DockerfilePath string `protobuf:"bytes,6,opt,name=dockerfile_path,json=dockerfilePath,proto3" json:"dockerfile_path,omitempty"` OperationSystemVersion string `protobuf:"bytes,7,opt,name=operation_system_version,json=operationSystemVersion,proto3" json:"operation_system_version,omitempty"` DockerArguments map[string]string `protobuf:"bytes,9,rep,name=docker_arguments,json=dockerArguments,proto3" json:"docker_arguments,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Privileged bool `protobuf:"varint,10,opt,name=privileged,proto3" json:"privileged,omitempty"` } func (x *ContainerInstance) Reset() { @@ -2712,6 +2721,13 @@ func (x *ContainerInstance) GetDockerArguments() map[string]string { return nil } +func (x *ContainerInstance) GetPrivileged() bool { + if x != nil { + return x.Privileged + } + return false +} + type AdditionalContainer struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2831,6 +2847,69 @@ func (x *AdditionalContainer) GetHostPort() uint32 { return 0 } +type PrebuiltImageInstance struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Repository string `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"` + Reference string `protobuf:"bytes,2,opt,name=reference,proto3" json:"reference,omitempty"` + Platform Platform `protobuf:"varint,3,opt,name=platform,proto3,enum=org.cirruslabs.ci.services.cirruscigrpc.Platform" json:"platform,omitempty"` +} + +func (x *PrebuiltImageInstance) Reset() { + *x = PrebuiltImageInstance{} + if protoimpl.UnsafeEnabled { + mi := &file_cirrus_ci_service_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PrebuiltImageInstance) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PrebuiltImageInstance) ProtoMessage() {} + +func (x *PrebuiltImageInstance) ProtoReflect() protoreflect.Message { + mi := &file_cirrus_ci_service_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 PrebuiltImageInstance.ProtoReflect.Descriptor instead. +func (*PrebuiltImageInstance) Descriptor() ([]byte, []int) { + return file_cirrus_ci_service_proto_rawDescGZIP(), []int{39} +} + +func (x *PrebuiltImageInstance) GetRepository() string { + if x != nil { + return x.Repository + } + return "" +} + +func (x *PrebuiltImageInstance) GetReference() string { + if x != nil { + return x.Reference + } + return "" +} + +func (x *PrebuiltImageInstance) GetPlatform() Platform { + if x != nil { + return x.Platform + } + return Platform_LINUX +} + type LogEntry_LogKey struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2844,7 +2923,7 @@ type LogEntry_LogKey struct { func (x *LogEntry_LogKey) Reset() { *x = LogEntry_LogKey{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[39] + mi := &file_cirrus_ci_service_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2857,7 +2936,7 @@ func (x *LogEntry_LogKey) String() string { func (*LogEntry_LogKey) ProtoMessage() {} func (x *LogEntry_LogKey) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[39] + mi := &file_cirrus_ci_service_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2906,7 +2985,7 @@ type CacheEntry_CacheKey struct { func (x *CacheEntry_CacheKey) Reset() { *x = CacheEntry_CacheKey{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[40] + mi := &file_cirrus_ci_service_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2919,7 +2998,7 @@ func (x *CacheEntry_CacheKey) String() string { func (*CacheEntry_CacheKey) ProtoMessage() {} func (x *CacheEntry_CacheKey) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[40] + mi := &file_cirrus_ci_service_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2963,7 +3042,7 @@ type ArtifactEntry_ArtifactsUpload struct { func (x *ArtifactEntry_ArtifactsUpload) Reset() { *x = ArtifactEntry_ArtifactsUpload{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[41] + mi := &file_cirrus_ci_service_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2976,7 +3055,7 @@ func (x *ArtifactEntry_ArtifactsUpload) String() string { func (*ArtifactEntry_ArtifactsUpload) ProtoMessage() {} func (x *ArtifactEntry_ArtifactsUpload) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[41] + mi := &file_cirrus_ci_service_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3032,7 +3111,7 @@ type ArtifactEntry_ArtifactChunk struct { func (x *ArtifactEntry_ArtifactChunk) Reset() { *x = ArtifactEntry_ArtifactChunk{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[42] + mi := &file_cirrus_ci_service_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3045,7 +3124,7 @@ func (x *ArtifactEntry_ArtifactChunk) String() string { func (*ArtifactEntry_ArtifactChunk) ProtoMessage() {} func (x *ArtifactEntry_ArtifactChunk) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[42] + mi := &file_cirrus_ci_service_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3090,7 +3169,7 @@ type Annotation_FileLocation struct { func (x *Annotation_FileLocation) Reset() { *x = Annotation_FileLocation{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[45] + mi := &file_cirrus_ci_service_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3103,7 +3182,7 @@ func (x *Annotation_FileLocation) String() string { func (*Annotation_FileLocation) ProtoMessage() {} func (x *Annotation_FileLocation) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[45] + mi := &file_cirrus_ci_service_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3166,7 +3245,7 @@ type Task_Metadata struct { func (x *Task_Metadata) Reset() { *x = Task_Metadata{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[47] + mi := &file_cirrus_ci_service_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3179,7 +3258,7 @@ func (x *Task_Metadata) String() string { func (*Task_Metadata) ProtoMessage() {} func (x *Task_Metadata) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[47] + mi := &file_cirrus_ci_service_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3221,7 +3300,7 @@ type Task_Instance struct { func (x *Task_Instance) Reset() { *x = Task_Instance{} if protoimpl.UnsafeEnabled { - mi := &file_cirrus_ci_service_proto_msgTypes[48] + mi := &file_cirrus_ci_service_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3234,7 +3313,7 @@ func (x *Task_Instance) String() string { func (*Task_Instance) ProtoMessage() {} func (x *Task_Instance) ProtoReflect() protoreflect.Message { - mi := &file_cirrus_ci_service_proto_msgTypes[48] + mi := &file_cirrus_ci_service_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3585,7 +3664,7 @@ var file_cirrus_ci_service_proto_rawDesc = []byte{ 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x22, 0x82, 0x02, 0x0a, 0x12, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x22, 0xba, 0x03, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6e, 0x0a, 0x0b, 0x65, 0x6e, @@ -3598,411 +3677,435 @@ var file_cirrus_ci_service_proto_rawDesc = []byte{ 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, - 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x5a, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, + 0x12, 0x74, 0x0a, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, + 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, + 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x40, 0x0a, 0x12, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x73, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x43, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, + 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, + 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, + 0x61, 0x73, 0x6b, 0x73, 0x22, 0xdb, 0x07, 0x0a, 0x04, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x24, 0x0a, + 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x4c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x34, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, + 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, + 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x60, + 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, + 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, + 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, + 0x73, 0x6b, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x52, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, + 0x6b, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x52, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x22, 0xdb, 0x07, 0x0a, - 0x04, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, - 0x6f, 0x63, 0x61, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x60, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, - 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x6f, 0x72, - 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, - 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, - 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, 0x6e, 0x76, - 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x52, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6f, 0x72, 0x67, + 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, - 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x52, 0x0a, 0x08, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, + 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x1a, 0xd6, 0x01, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x71, + 0x75, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x66, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x6f, + 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, + 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, + 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, + 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, + 0x38, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x6e, 0x76, + 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x77, 0x0a, 0x06, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, + 0x0d, 0x0a, 0x09, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0d, + 0x0a, 0x09, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0b, 0x0a, + 0x07, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, + 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, + 0x54, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, + 0x10, 0x07, 0x22, 0xa0, 0x0a, 0x0a, 0x07, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x65, 0x0a, 0x10, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6f, + 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, + 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, + 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x69, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x65, 0x78, 0x69, 0x74, 0x49, 0x6e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6b, 0x0a, 0x12, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x48, 0x00, 0x52, 0x11, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8a, 0x01, 0x0a, 0x1d, 0x62, 0x61, 0x63, 0x6b, 0x67, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, - 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x12, 0x4c, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, - 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x1a, 0xd6, - 0x01, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x75, - 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x12, 0x66, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, - 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x54, - 0x61, 0x73, 0x6b, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, - 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, - 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, - 0x64, 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0x77, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x43, - 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x52, 0x49, 0x47, - 0x47, 0x45, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x43, 0x48, 0x45, 0x44, - 0x55, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54, - 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x45, 0x44, - 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0d, - 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, - 0x07, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x07, 0x22, 0xa0, 0x0a, 0x0a, 0x07, 0x43, - 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x65, 0x0a, 0x10, 0x65, 0x78, - 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, - 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x45, - 0x78, 0x69, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, - 0x52, 0x0f, 0x65, 0x78, 0x69, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x6b, 0x0a, 0x12, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, - 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, - 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, - 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8a, - 0x01, 0x0a, 0x1d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x1b, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x68, 0x0a, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x69, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, + 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, + 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7b, 0x0a, + 0x18, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x69, 0x6e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, + 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, + 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x48, 0x00, 0x52, 0x16, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, + 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x68, 0x0a, 0x11, 0x63, 0x6c, + 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x48, 0x00, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x10, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, + 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, + 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x66, 0x69, 0x6c, 0x65, + 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x74, 0x0a, 0x15, 0x61, + 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x6f, 0x72, 0x67, + 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, + 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x49, 0x6e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x14, 0x61, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x7a, 0x0a, 0x13, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, + 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, + 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x12, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, 0x12, 0x60, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x40, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, + 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, + 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x1a, + 0x3d, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x46, + 0x0a, 0x18, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x4e, + 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x4e, + 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, + 0x57, 0x41, 0x59, 0x53, 0x10, 0x02, 0x42, 0x0d, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x11, 0x0a, 0x0f, 0x45, 0x78, 0x69, 0x74, 0x49, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2d, 0x0a, 0x11, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, + 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x22, 0x37, 0x0a, 0x1b, 0x42, 0x61, 0x63, 0x6b, 0x67, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, + 0x22, 0xb6, 0x01, 0x0a, 0x10, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x2f, 0x0a, + 0x13, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x66, 0x69, 0x6e, 0x67, + 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x12, 0x29, + 0x0a, 0x10, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, + 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x75, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x72, 0x65, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, + 0x4f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x37, 0x0a, 0x16, 0x55, 0x70, 0x6c, + 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x0f, 0x46, 0x69, 0x6c, 0x65, 0x49, + 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, + 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x61, 0x74, 0x68, 0x12, 0x3c, 0x0a, 0x19, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x6e, + 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x17, 0x66, 0x72, 0x6f, 0x6d, + 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x72, 0x69, 0x61, + 0x62, 0x6c, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x58, 0x0a, + 0x14, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x38, 0x0a, 0x0c, 0x50, 0x69, 0x70, 0x65, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, + 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, + 0x79, 0x22, 0xd8, 0x04, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x63, 0x70, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, + 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x71, 0x0a, 0x15, 0x61, 0x64, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x1b, - 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x68, 0x0a, 0x11, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, + 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x52, 0x14, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6f, + 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, + 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, + 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x6f, 0x63, + 0x6b, 0x65, 0x72, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x12, 0x38, 0x0a, 0x18, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x79, 0x73, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x10, + 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x10, 0x63, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7b, 0x0a, 0x18, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, + 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x41, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x41, + 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, + 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x72, + 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x1a, 0x42, 0x0a, 0x14, 0x44, 0x6f, 0x63, 0x6b, + 0x65, 0x72, 0x41, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc5, 0x03, 0x0a, + 0x13, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, 0x75, + 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, + 0x6f, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, + 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, + 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73, + 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x69, + 0x6c, 0x65, 0x67, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, + 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, + 0x50, 0x6f, 0x72, 0x74, 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, + 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa4, 0x01, 0x0a, 0x15, 0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, + 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1c, + 0x0a, 0x09, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x4d, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, + 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, + 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2a, 0x22, 0x0a, 0x08, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x49, 0x4e, 0x55, 0x58, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x10, 0x01, 0x32, + 0xed, 0x10, 0x0a, 0x0f, 0x43, 0x69, 0x72, 0x72, 0x75, 0x73, 0x43, 0x49, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x12, 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, - 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x16, 0x75, 0x70, 0x6c, 0x6f, - 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x68, 0x0a, 0x11, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, + 0x63, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, + 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, + 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0xa2, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x43, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, - 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x49, 0x6e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x6e, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x10, - 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, - 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x48, 0x00, 0x52, 0x0f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x74, 0x0a, 0x15, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, - 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x72, 0x74, - 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x14, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x49, 0x6e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x13, 0x65, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x77, 0x0a, 0x11, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x48, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, + 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, + 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x22, 0x00, 0x12, 0x80, 0x01, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x6f, + 0x67, 0x73, 0x12, 0x31, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x7e, 0x0a, 0x08, 0x53, 0x61, 0x76, 0x65, 0x4c, 0x6f, + 0x67, 0x73, 0x12, 0x31, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, + 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, + 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x84, 0x01, 0x0a, 0x0b, 0x55, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x52, 0x12, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, - 0x76, 0x69, 0x6f, 0x75, 0x72, 0x12, 0x60, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, - 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x6f, 0x72, 0x67, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, - 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x50, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x46, 0x0a, 0x18, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x4e, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, - 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0x02, 0x42, 0x0d, - 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x11, 0x0a, - 0x0f, 0x45, 0x78, 0x69, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x2d, 0x0a, 0x11, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x22, - 0x37, 0x0a, 0x1b, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, - 0x0a, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x22, 0xb6, 0x01, 0x0a, 0x10, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, - 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, - 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x12, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x53, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, - 0x74, 0x65, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x6f, 0x6e, - 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, - 0x72, 0x65, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x22, 0x37, 0x0a, 0x16, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x61, 0x63, 0x68, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x43, 0x6c, - 0x6f, 0x6e, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, - 0x01, 0x0a, 0x0f, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, - 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x74, 0x68, 0x12, 0x3c, 0x0a, - 0x19, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x48, 0x00, 0x52, 0x17, 0x66, 0x72, 0x6f, 0x6d, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, - 0x65, 0x6e, 0x74, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, - 0x74, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, - 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, - 0x74, 0x68, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, - 0x38, 0x0a, 0x0c, 0x50, 0x69, 0x70, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, - 0x10, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, - 0x75, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x22, 0xb8, 0x04, 0x0a, 0x11, 0x43, 0x6f, - 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, - 0x71, 0x0a, 0x15, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, - 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, - 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, - 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x14, 0x61, 0x64, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, - 0x72, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, - 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x66, 0x69, 0x6c, 0x65, 0x5f, - 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6f, 0x63, 0x6b, - 0x65, 0x72, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x38, 0x0a, 0x18, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x7a, 0x0a, 0x10, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x61, - 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4f, - 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, - 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, - 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, - 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x44, 0x6f, 0x63, 0x6b, 0x65, - 0x72, 0x41, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0f, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x41, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x1a, 0x42, 0x0a, 0x14, 0x44, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x41, 0x72, 0x67, 0x75, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc5, 0x03, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, - 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x70, 0x6f, - 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, - 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x6f, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, - 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x6f, - 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, - 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, 0x6e, 0x76, - 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, - 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x72, - 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x1a, 0x3e, 0x0a, 0x10, - 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x22, 0x0a, 0x08, - 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x49, 0x4e, 0x55, - 0x58, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x10, 0x01, - 0x32, 0xed, 0x10, 0x0a, 0x0f, 0x43, 0x69, 0x72, 0x72, 0x75, 0x73, 0x43, 0x49, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, - 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x12, 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, + 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3c, 0x2e, 0x6f, 0x72, + 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, + 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x8f, 0x01, + 0x0a, 0x0f, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, + 0x73, 0x12, 0x36, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, + 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, + 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x72, 0x74, 0x69, + 0x66, 0x61, 0x63, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x40, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, - 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0xa2, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x43, - 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, - 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, - 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x77, 0x0a, 0x11, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x48, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, + 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, + 0x86, 0x01, 0x0a, 0x0d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x12, 0x3d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, + 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, + 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x6f, 0x77, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x32, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, - 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x22, 0x00, 0x12, 0x80, 0x01, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, - 0x6f, 0x67, 0x73, 0x12, 0x31, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, - 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, + 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x43, + 0x68, 0x75, 0x6e, 0x6b, 0x22, 0x00, 0x30, 0x01, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x7e, 0x0a, 0x08, 0x53, 0x61, 0x76, 0x65, 0x4c, - 0x6f, 0x67, 0x73, 0x12, 0x31, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, - 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, - 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, - 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x84, 0x01, 0x0a, 0x0b, 0x55, 0x70, 0x6c, 0x6f, - 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, + 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x3a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, + 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, + 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x38, 0x0a, 0x04, 0x50, 0x69, 0x6e, 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, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x48, 0x65, + 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x12, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, - 0x63, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x3c, 0x2e, 0x6f, - 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x8f, - 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, - 0x74, 0x73, 0x12, 0x36, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x63, 0x2e, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x72, 0x74, - 0x69, 0x66, 0x61, 0x63, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x40, 0x2e, 0x6f, 0x72, 0x67, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, - 0x67, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, - 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, - 0x12, 0x86, 0x01, 0x0a, 0x0d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x12, 0x3d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x65, 0x61, + 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x6a, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x48, 0x6f, + 0x6f, 0x6b, 0x12, 0x3e, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x32, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, - 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x61, 0x74, 0x61, - 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x22, 0x00, 0x30, 0x01, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x48, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x70, 0x0a, 0x10, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x12, 0x42, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, + 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, + 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x72, + 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x72, + 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x42, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, + 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x62, 0x6c, 0x65, + 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x22, 0x00, 0x12, 0x70, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x12, 0x41, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, - 0x63, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, - 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, - 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x38, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x67, + 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x6c, 0x0a, 0x0f, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, + 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, + 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x48, - 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x12, 0x39, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x65, - 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x6a, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x48, - 0x6f, 0x6f, 0x6b, 0x12, 0x3e, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x48, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x70, 0x0a, - 0x10, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x12, 0x42, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, - 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, - 0x72, 0x0a, 0x12, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x57, 0x61, - 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x42, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, - 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x62, 0x6c, - 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x00, 0x12, 0x70, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x12, 0x41, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x6c, 0x0a, 0x0f, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x3f, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, - 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x00, 0x12, 0x8a, 0x01, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, - 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, - 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x3c, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, + 0x22, 0x00, 0x12, 0x8a, 0x01, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x3b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, + 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, + 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x72, + 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x3c, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, + 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, 0x72, + 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, + 0x6a, 0x0a, 0x2c, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, 0x69, - 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x42, 0x6a, 0x0a, 0x2c, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, - 0x62, 0x73, 0x2e, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x63, - 0x69, 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x72, 0x70, 0x63, - 0x42, 0x0d, 0x43, 0x69, 0x72, 0x72, 0x75, 0x73, 0x43, 0x49, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x69, - 0x72, 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x2d, - 0x63, 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x72, 0x72, 0x75, 0x73, 0x63, 0x69, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x42, + 0x0d, 0x43, 0x69, 0x72, 0x72, 0x75, 0x73, 0x43, 0x49, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, + 0x5a, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x69, 0x72, + 0x72, 0x75, 0x73, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x63, 0x69, 0x72, 0x72, 0x75, 0x73, 0x2d, 0x63, + 0x69, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -4018,7 +4121,7 @@ func file_cirrus_ci_service_proto_rawDescGZIP() []byte { } var file_cirrus_ci_service_proto_enumTypes = make([]protoimpl.EnumInfo, 5) -var file_cirrus_ci_service_proto_msgTypes = make([]protoimpl.MessageInfo, 54) +var file_cirrus_ci_service_proto_msgTypes = make([]protoimpl.MessageInfo, 56) var file_cirrus_ci_service_proto_goTypes = []interface{}{ (Platform)(0), // 0: org.cirruslabs.ci.services.cirruscigrpc.Platform (Annotation_Level)(0), // 1: org.cirruslabs.ci.services.cirruscigrpc.Annotation.Level @@ -4064,41 +4167,43 @@ var file_cirrus_ci_service_proto_goTypes = []interface{}{ (*PipeInstance)(nil), // 41: org.cirruslabs.ci.services.cirruscigrpc.PipeInstance (*ContainerInstance)(nil), // 42: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance (*AdditionalContainer)(nil), // 43: org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer - (*LogEntry_LogKey)(nil), // 44: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey - (*CacheEntry_CacheKey)(nil), // 45: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey - (*ArtifactEntry_ArtifactsUpload)(nil), // 46: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload - (*ArtifactEntry_ArtifactChunk)(nil), // 47: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactChunk - nil, // 48: org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.EnvironmentEntry - nil, // 49: org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.AdditionalEnvironmentEntry - (*Annotation_FileLocation)(nil), // 50: org.cirruslabs.ci.services.cirruscigrpc.Annotation.FileLocation - nil, // 51: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.EnvironmentEntry - (*Task_Metadata)(nil), // 52: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata - (*Task_Instance)(nil), // 53: org.cirruslabs.ci.services.cirruscigrpc.Task.Instance - nil, // 54: org.cirruslabs.ci.services.cirruscigrpc.Task.EnvironmentEntry - nil, // 55: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.PropertiesEntry - nil, // 56: org.cirruslabs.ci.services.cirruscigrpc.Command.PropertiesEntry - nil, // 57: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.DockerArgumentsEntry - nil, // 58: org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.EnvironmentEntry - (*empty.Empty)(nil), // 59: google.protobuf.Empty + (*PrebuiltImageInstance)(nil), // 44: org.cirruslabs.ci.services.cirruscigrpc.PrebuiltImageInstance + (*LogEntry_LogKey)(nil), // 45: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey + (*CacheEntry_CacheKey)(nil), // 46: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey + (*ArtifactEntry_ArtifactsUpload)(nil), // 47: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload + (*ArtifactEntry_ArtifactChunk)(nil), // 48: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactChunk + nil, // 49: org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.EnvironmentEntry + nil, // 50: org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.AdditionalEnvironmentEntry + (*Annotation_FileLocation)(nil), // 51: org.cirruslabs.ci.services.cirruscigrpc.Annotation.FileLocation + nil, // 52: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.EnvironmentEntry + nil, // 53: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.FilesContentsEntry + (*Task_Metadata)(nil), // 54: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata + (*Task_Instance)(nil), // 55: org.cirruslabs.ci.services.cirruscigrpc.Task.Instance + nil, // 56: org.cirruslabs.ci.services.cirruscigrpc.Task.EnvironmentEntry + nil, // 57: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.PropertiesEntry + nil, // 58: org.cirruslabs.ci.services.cirruscigrpc.Command.PropertiesEntry + nil, // 59: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.DockerArgumentsEntry + nil, // 60: org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.EnvironmentEntry + (*empty.Empty)(nil), // 61: google.protobuf.Empty } var file_cirrus_ci_service_proto_depIdxs = []int32{ 5, // 0: org.cirruslabs.ci.services.cirruscigrpc.InitialCommandsRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 44, // 1: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.key:type_name -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey + 45, // 1: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.key:type_name -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey 6, // 2: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.chunk:type_name -> org.cirruslabs.ci.services.cirruscigrpc.DataChunk - 45, // 3: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.key:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey + 46, // 3: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.key:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey 6, // 4: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.chunk:type_name -> org.cirruslabs.ci.services.cirruscigrpc.DataChunk - 46, // 5: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.artifacts_upload:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload - 47, // 6: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.chunk:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactChunk + 47, // 5: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.artifacts_upload:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload + 48, // 6: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.chunk:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactChunk 5, // 7: org.cirruslabs.ci.services.cirruscigrpc.DownloadCacheRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 48, // 8: org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.EnvironmentEntry + 49, // 8: org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.EnvironmentEntry 32, // 9: org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse.commands:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command 5, // 10: org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 49, // 11: org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.additional_environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.AdditionalEnvironmentEntry + 50, // 11: org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.additional_environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse.AdditionalEnvironmentEntry 5, // 12: org.cirruslabs.ci.services.cirruscigrpc.ReportAnnotationsCommandRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification 19, // 13: org.cirruslabs.ci.services.cirruscigrpc.ReportAnnotationsCommandRequest.annotations:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Annotation 2, // 14: org.cirruslabs.ci.services.cirruscigrpc.Annotation.type:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Annotation.Type 1, // 15: org.cirruslabs.ci.services.cirruscigrpc.Annotation.level:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Annotation.Level - 50, // 16: org.cirruslabs.ci.services.cirruscigrpc.Annotation.file_location:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Annotation.FileLocation + 51, // 16: org.cirruslabs.ci.services.cirruscigrpc.Annotation.file_location:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Annotation.FileLocation 5, // 17: org.cirruslabs.ci.services.cirruscigrpc.HeartbeatRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification 5, // 18: org.cirruslabs.ci.services.cirruscigrpc.CacheInfoRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification 23, // 19: org.cirruslabs.ci.services.cirruscigrpc.CacheInfoResponse.info:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CacheInfo @@ -4106,70 +4211,72 @@ var file_cirrus_ci_service_proto_depIdxs = []int32{ 5, // 21: org.cirruslabs.ci.services.cirruscigrpc.ReportStopHookRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification 5, // 22: org.cirruslabs.ci.services.cirruscigrpc.ReportAgentSignalRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification 5, // 23: org.cirruslabs.ci.services.cirruscigrpc.ReportAgentLogsRequest.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 51, // 24: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.EnvironmentEntry - 31, // 25: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigResponse.tasks:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task - 3, // 26: org.cirruslabs.ci.services.cirruscigrpc.Task.status:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Status - 54, // 27: org.cirruslabs.ci.services.cirruscigrpc.Task.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.EnvironmentEntry - 52, // 28: org.cirruslabs.ci.services.cirruscigrpc.Task.metadata:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata - 53, // 29: org.cirruslabs.ci.services.cirruscigrpc.Task.instance:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Instance - 32, // 30: org.cirruslabs.ci.services.cirruscigrpc.Task.commands:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command - 33, // 31: org.cirruslabs.ci.services.cirruscigrpc.Command.exit_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ExitInstruction - 34, // 32: org.cirruslabs.ci.services.cirruscigrpc.Command.script_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ScriptInstruction - 35, // 33: org.cirruslabs.ci.services.cirruscigrpc.Command.background_script_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.BackgroundScriptInstruction - 36, // 34: org.cirruslabs.ci.services.cirruscigrpc.Command.cache_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CacheInstruction - 37, // 35: org.cirruslabs.ci.services.cirruscigrpc.Command.upload_cache_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.UploadCacheInstruction - 38, // 36: org.cirruslabs.ci.services.cirruscigrpc.Command.clone_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CloneInstruction - 39, // 37: org.cirruslabs.ci.services.cirruscigrpc.Command.file_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.FileInstruction - 40, // 38: org.cirruslabs.ci.services.cirruscigrpc.Command.artifacts_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactsInstruction - 4, // 39: org.cirruslabs.ci.services.cirruscigrpc.Command.execution_behaviour:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command.CommandExecutionBehavior - 56, // 40: org.cirruslabs.ci.services.cirruscigrpc.Command.properties:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command.PropertiesEntry - 43, // 41: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.additional_containers:type_name -> org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer - 0, // 42: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.platform:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Platform - 57, // 43: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.docker_arguments:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.DockerArgumentsEntry - 58, // 44: org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.EnvironmentEntry - 5, // 45: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 5, // 46: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 5, // 47: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification - 55, // 48: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.properties:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.PropertiesEntry - 7, // 49: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.InitialCommands:input_type -> org.cirruslabs.ci.services.cirruscigrpc.InitialCommandsRequest - 16, // 50: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportSingleCommand:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandRequest - 18, // 51: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAnnotations:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAnnotationsCommandRequest - 8, // 52: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.StreamLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry - 8, // 53: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.SaveLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry - 10, // 54: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadCache:input_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheEntry - 12, // 55: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadArtifacts:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry - 14, // 56: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.DownloadCache:input_type -> org.cirruslabs.ci.services.cirruscigrpc.DownloadCacheRequest - 22, // 57: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.CacheInfo:input_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheInfoRequest - 59, // 58: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Ping:input_type -> google.protobuf.Empty - 20, // 59: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Heartbeat:input_type -> org.cirruslabs.ci.services.cirruscigrpc.HeartbeatRequest - 26, // 60: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportStopHook:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportStopHookRequest - 25, // 61: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentError:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentProblemRequest - 25, // 62: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentWarning:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentProblemRequest - 27, // 63: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentSignal:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentSignalRequest - 28, // 64: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentLogsRequest - 29, // 65: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ParseConfig:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest - 15, // 66: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.InitialCommands:output_type -> org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse - 17, // 67: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportSingleCommand:output_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse - 59, // 68: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAnnotations:output_type -> google.protobuf.Empty - 9, // 69: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.StreamLogs:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadLogsResponse - 9, // 70: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.SaveLogs:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadLogsResponse - 11, // 71: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadCache:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadCacheResponse - 13, // 72: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadArtifacts:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadArtifactsResponse - 6, // 73: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.DownloadCache:output_type -> org.cirruslabs.ci.services.cirruscigrpc.DataChunk - 24, // 74: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.CacheInfo:output_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheInfoResponse - 59, // 75: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Ping:output_type -> google.protobuf.Empty - 21, // 76: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Heartbeat:output_type -> org.cirruslabs.ci.services.cirruscigrpc.HeartbeatResponse - 59, // 77: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportStopHook:output_type -> google.protobuf.Empty - 59, // 78: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentError:output_type -> google.protobuf.Empty - 59, // 79: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentWarning:output_type -> google.protobuf.Empty - 59, // 80: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentSignal:output_type -> google.protobuf.Empty - 59, // 81: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentLogs:output_type -> google.protobuf.Empty - 30, // 82: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ParseConfig:output_type -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigResponse - 66, // [66:83] is the sub-list for method output_type - 49, // [49:66] is the sub-list for method input_type - 49, // [49:49] is the sub-list for extension type_name - 49, // [49:49] is the sub-list for extension extendee - 0, // [0:49] is the sub-list for field type_name + 52, // 24: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.EnvironmentEntry + 53, // 25: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.filesContents:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest.FilesContentsEntry + 31, // 26: org.cirruslabs.ci.services.cirruscigrpc.ParseConfigResponse.tasks:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task + 3, // 27: org.cirruslabs.ci.services.cirruscigrpc.Task.status:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Status + 56, // 28: org.cirruslabs.ci.services.cirruscigrpc.Task.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.EnvironmentEntry + 54, // 29: org.cirruslabs.ci.services.cirruscigrpc.Task.metadata:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata + 55, // 30: org.cirruslabs.ci.services.cirruscigrpc.Task.instance:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Instance + 32, // 31: org.cirruslabs.ci.services.cirruscigrpc.Task.commands:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command + 33, // 32: org.cirruslabs.ci.services.cirruscigrpc.Command.exit_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ExitInstruction + 34, // 33: org.cirruslabs.ci.services.cirruscigrpc.Command.script_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ScriptInstruction + 35, // 34: org.cirruslabs.ci.services.cirruscigrpc.Command.background_script_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.BackgroundScriptInstruction + 36, // 35: org.cirruslabs.ci.services.cirruscigrpc.Command.cache_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CacheInstruction + 37, // 36: org.cirruslabs.ci.services.cirruscigrpc.Command.upload_cache_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.UploadCacheInstruction + 38, // 37: org.cirruslabs.ci.services.cirruscigrpc.Command.clone_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.CloneInstruction + 39, // 38: org.cirruslabs.ci.services.cirruscigrpc.Command.file_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.FileInstruction + 40, // 39: org.cirruslabs.ci.services.cirruscigrpc.Command.artifacts_instruction:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactsInstruction + 4, // 40: org.cirruslabs.ci.services.cirruscigrpc.Command.execution_behaviour:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command.CommandExecutionBehavior + 58, // 41: org.cirruslabs.ci.services.cirruscigrpc.Command.properties:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Command.PropertiesEntry + 43, // 42: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.additional_containers:type_name -> org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer + 0, // 43: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.platform:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Platform + 59, // 44: org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.docker_arguments:type_name -> org.cirruslabs.ci.services.cirruscigrpc.ContainerInstance.DockerArgumentsEntry + 60, // 45: org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.environment:type_name -> org.cirruslabs.ci.services.cirruscigrpc.AdditionalContainer.EnvironmentEntry + 0, // 46: org.cirruslabs.ci.services.cirruscigrpc.PrebuiltImageInstance.platform:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Platform + 5, // 47: org.cirruslabs.ci.services.cirruscigrpc.LogEntry.LogKey.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification + 5, // 48: org.cirruslabs.ci.services.cirruscigrpc.CacheEntry.CacheKey.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification + 5, // 49: org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry.ArtifactsUpload.task_identification:type_name -> org.cirruslabs.ci.services.cirruscigrpc.TaskIdentification + 57, // 50: org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.properties:type_name -> org.cirruslabs.ci.services.cirruscigrpc.Task.Metadata.PropertiesEntry + 7, // 51: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.InitialCommands:input_type -> org.cirruslabs.ci.services.cirruscigrpc.InitialCommandsRequest + 16, // 52: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportSingleCommand:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandRequest + 18, // 53: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAnnotations:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAnnotationsCommandRequest + 8, // 54: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.StreamLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry + 8, // 55: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.SaveLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.LogEntry + 10, // 56: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadCache:input_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheEntry + 12, // 57: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadArtifacts:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ArtifactEntry + 14, // 58: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.DownloadCache:input_type -> org.cirruslabs.ci.services.cirruscigrpc.DownloadCacheRequest + 22, // 59: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.CacheInfo:input_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheInfoRequest + 61, // 60: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Ping:input_type -> google.protobuf.Empty + 20, // 61: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Heartbeat:input_type -> org.cirruslabs.ci.services.cirruscigrpc.HeartbeatRequest + 26, // 62: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportStopHook:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportStopHookRequest + 25, // 63: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentError:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentProblemRequest + 25, // 64: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentWarning:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentProblemRequest + 27, // 65: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentSignal:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentSignalRequest + 28, // 66: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentLogs:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportAgentLogsRequest + 29, // 67: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ParseConfig:input_type -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigRequest + 15, // 68: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.InitialCommands:output_type -> org.cirruslabs.ci.services.cirruscigrpc.CommandsResponse + 17, // 69: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportSingleCommand:output_type -> org.cirruslabs.ci.services.cirruscigrpc.ReportSingleCommandResponse + 61, // 70: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAnnotations:output_type -> google.protobuf.Empty + 9, // 71: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.StreamLogs:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadLogsResponse + 9, // 72: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.SaveLogs:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadLogsResponse + 11, // 73: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadCache:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadCacheResponse + 13, // 74: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.UploadArtifacts:output_type -> org.cirruslabs.ci.services.cirruscigrpc.UploadArtifactsResponse + 6, // 75: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.DownloadCache:output_type -> org.cirruslabs.ci.services.cirruscigrpc.DataChunk + 24, // 76: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.CacheInfo:output_type -> org.cirruslabs.ci.services.cirruscigrpc.CacheInfoResponse + 61, // 77: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Ping:output_type -> google.protobuf.Empty + 21, // 78: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.Heartbeat:output_type -> org.cirruslabs.ci.services.cirruscigrpc.HeartbeatResponse + 61, // 79: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportStopHook:output_type -> google.protobuf.Empty + 61, // 80: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentError:output_type -> google.protobuf.Empty + 61, // 81: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentWarning:output_type -> google.protobuf.Empty + 61, // 82: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentSignal:output_type -> google.protobuf.Empty + 61, // 83: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ReportAgentLogs:output_type -> google.protobuf.Empty + 30, // 84: org.cirruslabs.ci.services.cirruscigrpc.CirrusCIService.ParseConfig:output_type -> org.cirruslabs.ci.services.cirruscigrpc.ParseConfigResponse + 68, // [68:85] is the sub-list for method output_type + 51, // [51:68] is the sub-list for method input_type + 51, // [51:51] is the sub-list for extension type_name + 51, // [51:51] is the sub-list for extension extendee + 0, // [0:51] is the sub-list for field type_name } func init() { file_cirrus_ci_service_proto_init() } @@ -4647,7 +4754,7 @@ func file_cirrus_ci_service_proto_init() { } } file_cirrus_ci_service_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LogEntry_LogKey); i { + switch v := v.(*PrebuiltImageInstance); i { case 0: return &v.state case 1: @@ -4659,7 +4766,7 @@ func file_cirrus_ci_service_proto_init() { } } file_cirrus_ci_service_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CacheEntry_CacheKey); i { + switch v := v.(*LogEntry_LogKey); i { case 0: return &v.state case 1: @@ -4671,7 +4778,7 @@ func file_cirrus_ci_service_proto_init() { } } file_cirrus_ci_service_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtifactEntry_ArtifactsUpload); i { + switch v := v.(*CacheEntry_CacheKey); i { case 0: return &v.state case 1: @@ -4683,6 +4790,18 @@ func file_cirrus_ci_service_proto_init() { } } file_cirrus_ci_service_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtifactEntry_ArtifactsUpload); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cirrus_ci_service_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtifactEntry_ArtifactChunk); i { case 0: return &v.state @@ -4694,7 +4813,7 @@ func file_cirrus_ci_service_proto_init() { return nil } } - file_cirrus_ci_service_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + file_cirrus_ci_service_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Annotation_FileLocation); i { case 0: return &v.state @@ -4706,7 +4825,7 @@ func file_cirrus_ci_service_proto_init() { return nil } } - file_cirrus_ci_service_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + file_cirrus_ci_service_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Task_Metadata); i { case 0: return &v.state @@ -4718,7 +4837,7 @@ func file_cirrus_ci_service_proto_init() { return nil } } - file_cirrus_ci_service_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + file_cirrus_ci_service_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Task_Instance); i { case 0: return &v.state @@ -4762,7 +4881,7 @@ func file_cirrus_ci_service_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_cirrus_ci_service_proto_rawDesc, NumEnums: 5, - NumMessages: 54, + NumMessages: 56, NumExtensions: 0, NumServices: 1, }, diff --git a/go.mod b/go.mod index c878f15..9ca53ca 100644 --- a/go.mod +++ b/go.mod @@ -9,14 +9,16 @@ require ( github.com/go-git/go-git/v5 v5.1.0 github.com/golang/protobuf v1.4.2 github.com/grpc-ecosystem/go-grpc-middleware v1.2.0 + github.com/imdario/mergo v0.3.10 // indirect github.com/joshdk/go-junit v0.0.0-20200702055522-6efcf4050909 // indirect + github.com/pkg/errors v0.9.1 github.com/stretchr/testify v1.6.1 - golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899 // indirect + golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de // indirect golang.org/x/net v0.0.0-20200707034311-ab3426394381 - golang.org/x/sync v0.0.0-20190423024810-112230192c58 - golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae // indirect + golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208 + golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed // indirect golang.org/x/text v0.3.3 // indirect - google.golang.org/genproto v0.0.0-20200720141249-1244ee217b7e // indirect - google.golang.org/grpc v1.30.0 + google.golang.org/genproto v0.0.0-20200808173500-a06252235341 // indirect + google.golang.org/grpc v1.31.0 google.golang.org/protobuf v1.25.0 ) diff --git a/go.sum b/go.sum index b3f61ac..956ebd0 100644 --- a/go.sum +++ b/go.sum @@ -67,6 +67,8 @@ github.com/grpc-ecosystem/go-grpc-middleware v1.2.0 h1:0IKlLyQ3Hs9nDaiK5cSHAGmcQ github.com/grpc-ecosystem/go-grpc-middleware v1.2.0/go.mod h1:mJzapYve32yjrKlk9GbyCZHuPgZsrbyIbyKhSzOpg6s= github.com/imdario/mergo v0.3.9 h1:UauaLniWCFHWd+Jp9oCEkTBj8VO/9DKg3PV3VCNMDIg= github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.10 h1:6q5mVkdH/vYmqngx7kZQTjJ5HRsx+ImorDIEQ+beJgc= +github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= @@ -92,6 +94,8 @@ github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLA github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= @@ -114,8 +118,8 @@ golang.org/x/crypto v0.0.0-20190219172222-a4c6cb3142f2/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899 h1:DZhuSZLsGlFL4CmhA8BcRA0mnthyA/nZ00AqCUo7vHg= -golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de h1:ikNHVSjEfnvz6sxdSPCaPt572qowuyMDMJLLm3Db3ig= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= @@ -133,6 +137,8 @@ golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208 h1:qwRHBd0NqMbJxfbotnDhm2ByMI1Shq4Y6oRJo21SGJA= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190221075227-b4e8571b14e0/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -140,8 +146,8 @@ golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae h1:Ih9Yo4hSPImZOpfGuA4bR/ORKTAbhZo2AbWNRCnevdo= -golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed h1:WBkVNH1zd9jg/dK4HCM4lNANnmd12EHC9z+LmcCG4ns= +golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= @@ -160,14 +166,14 @@ google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20200720141249-1244ee217b7e h1:KoSCpgvphmtnpVycBCtfV9hNdHbInsqdx4gqnDPQCkg= -google.golang.org/genproto v0.0.0-20200720141249-1244ee217b7e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200808173500-a06252235341 h1:Kceb+1TNS2X7Cj/A+IUTljNerF/4wOFjlFJ0RGHYKKE= +google.golang.org/genproto v0.0.0-20200808173500-a06252235341/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.30.0 h1:M5a8xTlYTxwMn5ZFkwhRabsygDY5G8TYLyQDBxJNAxE= -google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.0 h1:T7P4R73V3SSDPhH7WW7ATbfViLtmamH0DKrP3f9AuDI= +google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -189,6 +195,8 @@ gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRN gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=