diff --git a/cli/reporter/cnquery_report.pb.go b/cli/reporter/cnquery_report.pb.go index 9ab8159694..c34eb60f00 100644 --- a/cli/reporter/cnquery_report.pb.go +++ b/cli/reporter/cnquery_report.pb.go @@ -3,8 +3,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.1 -// protoc v5.27.0 +// protoc-gen-go v1.34.2 +// protoc v5.27.1 // source: cnquery_report.proto package reporter @@ -92,10 +92,11 @@ type Asset struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Mrn string `protobuf:"bytes,1,opt,name=mrn,proto3" json:"mrn,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - PlatformName string `protobuf:"bytes,20,opt,name=platform_name,json=platformName,proto3" json:"platform_name,omitempty"` - TraceId string `protobuf:"bytes,21,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"` + Mrn string `protobuf:"bytes,1,opt,name=mrn,proto3" json:"mrn,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + PlatformName string `protobuf:"bytes,20,opt,name=platform_name,json=platformName,proto3" json:"platform_name,omitempty"` + TraceId string `protobuf:"bytes,21,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"` } func (x *Asset) Reset() { @@ -144,6 +145,13 @@ func (x *Asset) GetName() string { return "" } +func (x *Asset) GetLabels() map[string]string { + if x != nil { + return x.Labels + } + return nil +} + func (x *Asset) GetPlatformName() string { if x != nil { return x.PlatformName @@ -289,33 +297,41 @@ var file_cnquery_report_proto_rawDesc = []byte{ 0x1a, 0x39, 0x0a, 0x0b, 0x45, 0x72, 0x72, 0x6f, 0x72, 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, 0x6d, 0x0a, 0x05, 0x41, - 0x73, 0x73, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0xb6, 0x01, 0x0a, 0x0a, 0x44, - 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x06, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, - 0x6f, 0x6f, 0x2e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x1a, 0x5e, 0x0a, 0x0b, 0x56, 0x61, 0x6c, 0x75, 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, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, 0x2e, 0x72, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, - 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x3d, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x42, 0x28, 0x5a, 0x26, 0x67, 0x6f, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x31, 0x2f, - 0x63, 0x6c, 0x69, 0x2f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xed, 0x01, 0x0a, 0x05, + 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x6f, + 0x6e, 0x64, 0x6f, 0x6f, 0x2e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x63, 0x6e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x2e, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x65, 0x49, 0x64, + 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 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, 0xb6, 0x01, 0x0a, 0x0a, + 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x06, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6d, 0x6f, 0x6e, + 0x64, 0x6f, 0x6f, 0x2e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x5e, 0x0a, 0x0b, 0x56, 0x61, 0x6c, 0x75, 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, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, 0x2e, 0x72, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3d, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x30, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x42, 0x28, 0x5a, 0x26, 0x67, 0x6f, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x31, + 0x2f, 0x63, 0x6c, 0x69, 0x2f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -330,8 +346,8 @@ func file_cnquery_report_proto_rawDescGZIP() []byte { return file_cnquery_report_proto_rawDescData } -var file_cnquery_report_proto_msgTypes = make([]protoimpl.MessageInfo, 8) -var file_cnquery_report_proto_goTypes = []interface{}{ +var file_cnquery_report_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_cnquery_report_proto_goTypes = []any{ (*Report)(nil), // 0: mondoo.report.cnquery.v1.Report (*Asset)(nil), // 1: mondoo.report.cnquery.v1.Asset (*DataValues)(nil), // 2: mondoo.report.cnquery.v1.DataValues @@ -339,23 +355,25 @@ var file_cnquery_report_proto_goTypes = []interface{}{ nil, // 4: mondoo.report.cnquery.v1.Report.AssetsEntry nil, // 5: mondoo.report.cnquery.v1.Report.DataEntry nil, // 6: mondoo.report.cnquery.v1.Report.ErrorsEntry - nil, // 7: mondoo.report.cnquery.v1.DataValues.ValuesEntry - (*structpb.Value)(nil), // 8: google.protobuf.Value + nil, // 7: mondoo.report.cnquery.v1.Asset.LabelsEntry + nil, // 8: mondoo.report.cnquery.v1.DataValues.ValuesEntry + (*structpb.Value)(nil), // 9: google.protobuf.Value } var file_cnquery_report_proto_depIdxs = []int32{ 4, // 0: mondoo.report.cnquery.v1.Report.assets:type_name -> mondoo.report.cnquery.v1.Report.AssetsEntry 5, // 1: mondoo.report.cnquery.v1.Report.data:type_name -> mondoo.report.cnquery.v1.Report.DataEntry 6, // 2: mondoo.report.cnquery.v1.Report.errors:type_name -> mondoo.report.cnquery.v1.Report.ErrorsEntry - 7, // 3: mondoo.report.cnquery.v1.DataValues.values:type_name -> mondoo.report.cnquery.v1.DataValues.ValuesEntry - 8, // 4: mondoo.report.cnquery.v1.DataValue.content:type_name -> google.protobuf.Value - 1, // 5: mondoo.report.cnquery.v1.Report.AssetsEntry.value:type_name -> mondoo.report.cnquery.v1.Asset - 2, // 6: mondoo.report.cnquery.v1.Report.DataEntry.value:type_name -> mondoo.report.cnquery.v1.DataValues - 3, // 7: mondoo.report.cnquery.v1.DataValues.ValuesEntry.value:type_name -> mondoo.report.cnquery.v1.DataValue - 8, // [8:8] is the sub-list for method output_type - 8, // [8:8] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 7, // 3: mondoo.report.cnquery.v1.Asset.labels:type_name -> mondoo.report.cnquery.v1.Asset.LabelsEntry + 8, // 4: mondoo.report.cnquery.v1.DataValues.values:type_name -> mondoo.report.cnquery.v1.DataValues.ValuesEntry + 9, // 5: mondoo.report.cnquery.v1.DataValue.content:type_name -> google.protobuf.Value + 1, // 6: mondoo.report.cnquery.v1.Report.AssetsEntry.value:type_name -> mondoo.report.cnquery.v1.Asset + 2, // 7: mondoo.report.cnquery.v1.Report.DataEntry.value:type_name -> mondoo.report.cnquery.v1.DataValues + 3, // 8: mondoo.report.cnquery.v1.DataValues.ValuesEntry.value:type_name -> mondoo.report.cnquery.v1.DataValue + 9, // [9:9] is the sub-list for method output_type + 9, // [9:9] is the sub-list for method input_type + 9, // [9:9] is the sub-list for extension type_name + 9, // [9:9] is the sub-list for extension extendee + 0, // [0:9] is the sub-list for field type_name } func init() { file_cnquery_report_proto_init() } @@ -364,7 +382,7 @@ func file_cnquery_report_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_cnquery_report_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_report_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*Report); i { case 0: return &v.state @@ -376,7 +394,7 @@ func file_cnquery_report_proto_init() { return nil } } - file_cnquery_report_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_report_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*Asset); i { case 0: return &v.state @@ -388,7 +406,7 @@ func file_cnquery_report_proto_init() { return nil } } - file_cnquery_report_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_report_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*DataValues); i { case 0: return &v.state @@ -400,7 +418,7 @@ func file_cnquery_report_proto_init() { return nil } } - file_cnquery_report_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_report_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*DataValue); i { case 0: return &v.state @@ -419,7 +437,7 @@ func file_cnquery_report_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_cnquery_report_proto_rawDesc, NumEnums: 0, - NumMessages: 8, + NumMessages: 9, NumExtensions: 0, NumServices: 0, }, diff --git a/cli/reporter/cnquery_report.proto b/cli/reporter/cnquery_report.proto index 39ec3164d8..e937628101 100644 --- a/cli/reporter/cnquery_report.proto +++ b/cli/reporter/cnquery_report.proto @@ -18,6 +18,7 @@ message Report { message Asset { string mrn = 1; string name = 2; + map labels = 3; string platform_name = 20; string trace_id = 21; } diff --git a/cli/reporter/proto.go b/cli/reporter/proto.go index c87c27d85c..e7764c37ed 100644 --- a/cli/reporter/proto.go +++ b/cli/reporter/proto.go @@ -45,6 +45,7 @@ func ConvertToProto(data *explorer.ReportCollection) (*Report, error) { Mrn: a.Mrn, Name: a.Name, TraceId: a.TraceId, + Labels: a.Labels, } protoReport.Assets[assetMrn] = pAsset } diff --git a/explorer/cnquery_explorer.pb.go b/explorer/cnquery_explorer.pb.go index 90b6436e42..2164ced4c8 100644 --- a/explorer/cnquery_explorer.pb.go +++ b/explorer/cnquery_explorer.pb.go @@ -3,8 +3,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.1 -// protoc v5.27.0 +// protoc-gen-go v1.34.2 +// protoc v5.27.1 // source: cnquery_explorer.proto package explorer @@ -2554,9 +2554,10 @@ type Asset struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Mrn string `protobuf:"bytes,1,opt,name=mrn,proto3" json:"mrn,omitempty"` - Name string `protobuf:"bytes,18,opt,name=name,proto3" json:"name,omitempty"` - TraceId string `protobuf:"bytes,19,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"` + Mrn string `protobuf:"bytes,1,opt,name=mrn,proto3" json:"mrn,omitempty"` + Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Name string `protobuf:"bytes,18,opt,name=name,proto3" json:"name,omitempty"` + TraceId string `protobuf:"bytes,19,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"` } func (x *Asset) Reset() { @@ -2598,6 +2599,13 @@ func (x *Asset) GetMrn() string { return "" } +func (x *Asset) GetLabels() map[string]string { + if x != nil { + return x.Labels + } + return nil +} + func (x *Asset) GetName() string { if x != nil { return x.Name @@ -3444,204 +3452,212 @@ var file_cnquery_explorer_proto_rawDesc = []byte{ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x6c, 0x6c, 0x78, 0x2e, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x48, - 0x0a, 0x05, 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x74, 0x72, 0x61, 0x63, 0x65, 0x49, 0x64, 0x22, 0xce, 0x05, 0x0a, 0x10, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, - 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, - 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, - 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, - 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x06, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, - 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, - 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x1a, 0x52, 0x0a, 0x0b, 0x41, 0x73, 0x73, 0x65, - 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, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x65, - 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x54, 0x0a, 0x0c, - 0x52, 0x65, 0x70, 0x6f, 0x72, 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, 0x2e, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, - 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x58, 0x0a, 0x0b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x5b, 0x0a, 0x0d, - 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x75, 0x6c, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc0, + 0x01, 0x0a, 0x05, 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x3b, 0x0a, 0x06, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6e, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, + 0x73, 0x65, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, + 0x72, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, + 0x72, 0x61, 0x63, 0x65, 0x49, 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 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, 0xce, 0x05, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x30, + 0x0a, 0x06, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6b, 0x0a, 0x0b, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x07, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x0f, 0x41, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x40, 0x0a, 0x06, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, + 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x06, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x12, 0x49, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6e, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, + 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x64, 0x1a, 0x52, 0x0a, 0x0b, 0x41, 0x73, 0x73, 0x65, 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, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x54, 0x0a, 0x0c, 0x52, 0x65, 0x70, 0x6f, 0x72, 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, 0x2e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x58, 0x0a, 0x0b, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6e, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x5b, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, + 0x76, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0x6b, 0x0a, 0x0b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x2e, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, + 0x91, 0x01, 0x0a, 0x0f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, + 0x6c, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6d, 0x72, 0x6e, 0x12, 0x40, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2a, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, + 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, + 0x45, 0x10, 0x02, 0x22, 0xdb, 0x01, 0x0a, 0x13, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x75, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x4d, 0x72, 0x6e, 0x12, 0x49, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x74, + 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x2e, + 0x44, 0x65, 0x6c, 0x74, 0x61, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x64, 0x65, 0x6c, + 0x74, 0x61, 0x73, 0x1a, 0x5c, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x74, 0x61, 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, 0x37, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, + 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x64, 0x0a, 0x14, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, + 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x5f, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x4d, 0x72, 0x6e, 0x12, 0x2f, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x74, 0x0a, 0x20, 0x53, 0x79, 0x6e, 0x63, 0x68, + 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x41, 0x73, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x72, 0x6e, 0x12, 0x1b, + 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x72, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, + 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0xd7, 0x01, + 0x0a, 0x15, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4e, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, + 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x2e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x6e, 0x0a, 0x0c, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, + 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x41, 0x73, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, 0x0a, 0x0b, 0x49, 0x6d, 0x70, 0x61, 0x63, + 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2a, 0x61, 0x0a, 0x06, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, + 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x4f, 0x44, 0x49, 0x46, + 0x59, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, + 0x45, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, + 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x10, 0x04, 0x12, 0x10, 0x0a, + 0x0c, 0x4f, 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x53, 0x43, 0x4f, 0x50, 0x45, 0x10, 0x05, 0x2a, + 0x88, 0x01, 0x0a, 0x0d, 0x53, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x79, 0x73, 0x74, 0x65, + 0x6d, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x53, + 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x57, 0x45, + 0x49, 0x47, 0x48, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x57, 0x4f, 0x52, 0x53, + 0x54, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x56, 0x45, 0x52, 0x41, 0x47, 0x45, 0x10, 0x03, + 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x04, 0x12, + 0x10, 0x0a, 0x0c, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x10, + 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x41, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, + 0x07, 0x44, 0x45, 0x43, 0x41, 0x59, 0x45, 0x44, 0x10, 0x07, 0x32, 0xb1, 0x04, 0x0a, 0x08, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x48, 0x75, 0x62, 0x12, 0x40, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0x17, + 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, + 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0f, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, - 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x2e, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2a, - 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, - 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x0a, - 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x22, 0xdb, 0x01, 0x0a, 0x13, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, - 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x72, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x4d, 0x72, 0x6e, 0x12, - 0x49, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x31, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x73, 0x1a, 0x5c, 0x0a, 0x0b, 0x44, 0x65, - 0x6c, 0x74, 0x61, 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, 0x37, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6e, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, - 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x64, 0x0a, 0x14, 0x53, 0x79, 0x6e, 0x63, - 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, - 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6d, 0x72, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4d, 0x72, 0x6e, 0x12, 0x2f, 0x0a, - 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x74, - 0x0a, 0x20, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, - 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x41, 0x73, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6d, - 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x4d, 0x72, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x6d, - 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, 0x74, 0x4d, - 0x72, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x75, 0x72, 0x6c, 0x22, 0xd7, 0x01, 0x0a, 0x15, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, - 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4e, - 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x34, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, - 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x6e, - 0x0a, 0x0c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 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, 0x48, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x32, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, - 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x41, 0x73, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, - 0x0a, 0x0b, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x2a, 0x61, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x0a, - 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, - 0x0a, 0x06, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x59, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, - 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x43, - 0x54, 0x49, 0x56, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x47, 0x4e, 0x4f, - 0x52, 0x45, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x53, - 0x43, 0x4f, 0x50, 0x45, 0x10, 0x05, 0x2a, 0x88, 0x01, 0x0a, 0x0d, 0x53, 0x63, 0x6f, 0x72, 0x69, - 0x6e, 0x67, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x43, 0x4f, 0x52, - 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x57, 0x45, 0x49, 0x47, 0x48, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, - 0x09, 0x0a, 0x05, 0x57, 0x4f, 0x52, 0x53, 0x54, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x56, - 0x45, 0x52, 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x41, 0x54, 0x41, 0x5f, - 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, - 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x41, 0x4e, 0x44, - 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x43, 0x41, 0x59, 0x45, 0x44, 0x10, - 0x07, 0x32, 0xb1, 0x04, 0x0a, 0x08, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x75, 0x62, 0x12, 0x40, - 0x0a, 0x09, 0x53, 0x65, 0x74, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, - 0x12, 0x43, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x61, 0x63, 0x6b, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, + 0x4d, 0x72, 0x6e, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, + 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x45, + 0x0a, 0x0e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x12, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x09, - 0x47, 0x65, 0x74, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, - 0x1a, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x0c, - 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x15, 0x2e, 0x63, - 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, - 0x4d, 0x72, 0x6e, 0x1a, 0x1b, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, - 0x22, 0x00, 0x12, 0x41, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, - 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, 0x1a, 0x1a, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x71, 0x75, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x2e, - 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0c, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x21, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x63, 0x6e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x55, - 0x52, 0x4c, 0x73, 0x22, 0x00, 0x32, 0xaa, 0x04, 0x0a, 0x0e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, - 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x41, 0x0a, 0x06, 0x41, 0x73, 0x73, 0x69, - 0x67, 0x6e, 0x12, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, - 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, - 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, - 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x08, 0x55, - 0x6e, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x12, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, - 0x12, 0x41, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x73, 0x12, 0x1a, 0x2e, 0x63, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, 0x1a, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, 0x1a, 0x1b, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, - 0x50, 0x72, 0x6f, 0x70, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x12, 0x1c, - 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x63, - 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, - 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x22, 0x00, 0x12, 0x4c, - 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x21, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x0a, 0x47, + 0x65, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x72, 0x6e, + 0x1a, 0x1a, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x2e, 0x4d, 0x71, 0x75, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x00, 0x12, 0x41, + 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x22, + 0x00, 0x12, 0x4b, 0x0a, 0x0c, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x61, 0x63, 0x6b, + 0x73, 0x12, 0x21, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, + 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x61, 0x63, 0x6b, + 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x55, 0x52, 0x4c, 0x73, 0x22, 0x00, 0x32, 0xaa, + 0x04, 0x0a, 0x0e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x6f, + 0x72, 0x12, 0x41, 0x0a, 0x06, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x12, 0x1c, 0x2e, 0x63, 0x6e, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x41, + 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x08, 0x55, 0x6e, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, + 0x12, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x65, + 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x53, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x70, 0x73, 0x12, 0x1a, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x09, - 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x23, 0x2e, 0x63, 0x6e, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, - 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x00, 0x12, 0x66, 0x0a, 0x11, 0x53, 0x79, - 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, - 0x26, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, - 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, - 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x68, - 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x00, 0x42, 0x24, 0x5a, 0x22, 0x67, 0x6f, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x31, 0x2f, - 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x07, + 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, + 0x76, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x64, 0x50, 0x61, 0x63, 0x6b, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x21, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x63, 0x6e, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x12, 0x23, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x22, 0x00, 0x12, 0x66, 0x0a, 0x11, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, + 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x26, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, + 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x1a, 0x27, 0x2e, 0x63, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x65, 0x78, 0x70, 0x6c, 0x6f, + 0x72, 0x65, 0x72, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x42, 0x24, 0x5a, 0x22, 0x67, + 0x6f, 0x2e, 0x6d, 0x6f, 0x6e, 0x64, 0x6f, 0x6f, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6e, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, + 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -3657,8 +3673,8 @@ func file_cnquery_explorer_proto_rawDescGZIP() []byte { } var file_cnquery_explorer_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_cnquery_explorer_proto_msgTypes = make([]protoimpl.MessageInfo, 57) -var file_cnquery_explorer_proto_goTypes = []interface{}{ +var file_cnquery_explorer_proto_msgTypes = make([]protoimpl.MessageInfo, 58) +var file_cnquery_explorer_proto_goTypes = []any{ (Action)(0), // 0: cnquery.explorer.Action (ScoringSystem)(0), // 1: cnquery.explorer.ScoringSystem (AssignmentDelta_Action)(0), // 2: cnquery.explorer.AssignmentDelta.Action @@ -3713,17 +3729,18 @@ var file_cnquery_explorer_proto_goTypes = []interface{}{ nil, // 51: cnquery.explorer.StoreResultsReq.DataEntry nil, // 52: cnquery.explorer.StoreResultsReq.ResourcesEntry nil, // 53: cnquery.explorer.Report.DataEntry - nil, // 54: cnquery.explorer.ReportCollection.AssetsEntry - nil, // 55: cnquery.explorer.ReportCollection.ReportsEntry - nil, // 56: cnquery.explorer.ReportCollection.ErrorsEntry - nil, // 57: cnquery.explorer.ReportCollection.ResolvedEntry - nil, // 58: cnquery.explorer.BundleMutationDelta.DeltasEntry - nil, // 59: cnquery.explorer.SynchronizeAssetsResp.DetailsEntry - (*llx.CodeBundle)(nil), // 60: cnquery.llx.CodeBundle - (*anypb.Any)(nil), // 61: google.protobuf.Any - (*inventory.Asset)(nil), // 62: cnquery.providers.v1.Asset - (*llx.Result)(nil), // 63: cnquery.llx.Result - (*llx.ResourceRecording)(nil), // 64: cnquery.llx.ResourceRecording + nil, // 54: cnquery.explorer.Asset.LabelsEntry + nil, // 55: cnquery.explorer.ReportCollection.AssetsEntry + nil, // 56: cnquery.explorer.ReportCollection.ReportsEntry + nil, // 57: cnquery.explorer.ReportCollection.ErrorsEntry + nil, // 58: cnquery.explorer.ReportCollection.ResolvedEntry + nil, // 59: cnquery.explorer.BundleMutationDelta.DeltasEntry + nil, // 60: cnquery.explorer.SynchronizeAssetsResp.DetailsEntry + (*llx.CodeBundle)(nil), // 61: cnquery.llx.CodeBundle + (*anypb.Any)(nil), // 62: google.protobuf.Any + (*inventory.Asset)(nil), // 63: cnquery.providers.v1.Asset + (*llx.Result)(nil), // 64: cnquery.llx.Result + (*llx.ResourceRecording)(nil), // 65: cnquery.llx.ResourceRecording } var file_cnquery_explorer_proto_depIdxs = []int32{ 5, // 0: cnquery.explorer.Bundle.packs:type_name -> cnquery.explorer.QueryPack @@ -3760,7 +3777,7 @@ var file_cnquery_explorer_proto_depIdxs = []int32{ 48, // 31: cnquery.explorer.ExecutionJob.queries:type_name -> cnquery.explorer.ExecutionJob.QueriesEntry 49, // 32: cnquery.explorer.ExecutionJob.datapoints:type_name -> cnquery.explorer.ExecutionJob.DatapointsEntry 50, // 33: cnquery.explorer.ExecutionQuery.properties:type_name -> cnquery.explorer.ExecutionQuery.PropertiesEntry - 60, // 34: cnquery.explorer.ExecutionQuery.code:type_name -> cnquery.llx.CodeBundle + 61, // 34: cnquery.explorer.ExecutionQuery.code:type_name -> cnquery.llx.CodeBundle 11, // 35: cnquery.explorer.Mqueries.items:type_name -> cnquery.explorer.Mquery 10, // 36: cnquery.explorer.PropsReq.props:type_name -> cnquery.explorer.Property 11, // 37: cnquery.explorer.ResolveReq.asset_filters:type_name -> cnquery.explorer.Mquery @@ -3770,63 +3787,64 @@ var file_cnquery_explorer_proto_depIdxs = []int32{ 51, // 41: cnquery.explorer.StoreResultsReq.data:type_name -> cnquery.explorer.StoreResultsReq.DataEntry 52, // 42: cnquery.explorer.StoreResultsReq.resources:type_name -> cnquery.explorer.StoreResultsReq.ResourcesEntry 53, // 43: cnquery.explorer.Report.data:type_name -> cnquery.explorer.Report.DataEntry - 54, // 44: cnquery.explorer.ReportCollection.assets:type_name -> cnquery.explorer.ReportCollection.AssetsEntry - 3, // 45: cnquery.explorer.ReportCollection.bundle:type_name -> cnquery.explorer.Bundle - 55, // 46: cnquery.explorer.ReportCollection.reports:type_name -> cnquery.explorer.ReportCollection.ReportsEntry - 56, // 47: cnquery.explorer.ReportCollection.errors:type_name -> cnquery.explorer.ReportCollection.ErrorsEntry - 57, // 48: cnquery.explorer.ReportCollection.resolved:type_name -> cnquery.explorer.ReportCollection.ResolvedEntry - 61, // 49: cnquery.explorer.ErrorStatus.details:type_name -> google.protobuf.Any - 2, // 50: cnquery.explorer.AssignmentDelta.action:type_name -> cnquery.explorer.AssignmentDelta.Action - 58, // 51: cnquery.explorer.BundleMutationDelta.deltas:type_name -> cnquery.explorer.BundleMutationDelta.DeltasEntry - 62, // 52: cnquery.explorer.SynchronizeAssetsReq.list:type_name -> cnquery.providers.v1.Asset - 59, // 53: cnquery.explorer.SynchronizeAssetsResp.details:type_name -> cnquery.explorer.SynchronizeAssetsResp.DetailsEntry - 11, // 54: cnquery.explorer.Filters.ItemsEntry.value:type_name -> cnquery.explorer.Mquery - 21, // 55: cnquery.explorer.ExecutionJob.QueriesEntry.value:type_name -> cnquery.explorer.ExecutionQuery - 20, // 56: cnquery.explorer.ExecutionJob.DatapointsEntry.value:type_name -> cnquery.explorer.DataQueryInfo - 63, // 57: cnquery.explorer.StoreResultsReq.DataEntry.value:type_name -> cnquery.llx.Result - 64, // 58: cnquery.explorer.StoreResultsReq.ResourcesEntry.value:type_name -> cnquery.llx.ResourceRecording - 63, // 59: cnquery.explorer.Report.DataEntry.value:type_name -> cnquery.llx.Result - 36, // 60: cnquery.explorer.ReportCollection.AssetsEntry.value:type_name -> cnquery.explorer.Asset - 35, // 61: cnquery.explorer.ReportCollection.ReportsEntry.value:type_name -> cnquery.explorer.Report - 38, // 62: cnquery.explorer.ReportCollection.ErrorsEntry.value:type_name -> cnquery.explorer.ErrorStatus - 31, // 63: cnquery.explorer.ReportCollection.ResolvedEntry.value:type_name -> cnquery.explorer.ResolvedPack - 39, // 64: cnquery.explorer.BundleMutationDelta.DeltasEntry.value:type_name -> cnquery.explorer.AssignmentDelta - 42, // 65: cnquery.explorer.SynchronizeAssetsResp.DetailsEntry.value:type_name -> cnquery.explorer.SynchronizeAssetsRespAssetDetail - 3, // 66: cnquery.explorer.QueryHub.SetBundle:input_type -> cnquery.explorer.Bundle - 23, // 67: cnquery.explorer.QueryHub.DeleteQueryPack:input_type -> cnquery.explorer.Mrn - 3, // 68: cnquery.explorer.QueryHub.ValidateBundle:input_type -> cnquery.explorer.Bundle - 23, // 69: cnquery.explorer.QueryHub.GetBundle:input_type -> cnquery.explorer.Mrn - 23, // 70: cnquery.explorer.QueryHub.GetQueryPack:input_type -> cnquery.explorer.Mrn - 23, // 71: cnquery.explorer.QueryHub.GetFilters:input_type -> cnquery.explorer.Mrn - 25, // 72: cnquery.explorer.QueryHub.List:input_type -> cnquery.explorer.ListReq - 26, // 73: cnquery.explorer.QueryHub.DefaultPacks:input_type -> cnquery.explorer.DefaultPacksReq - 28, // 74: cnquery.explorer.QueryConductor.Assign:input_type -> cnquery.explorer.Assignment - 28, // 75: cnquery.explorer.QueryConductor.Unassign:input_type -> cnquery.explorer.Assignment - 29, // 76: cnquery.explorer.QueryConductor.SetProps:input_type -> cnquery.explorer.PropsReq - 30, // 77: cnquery.explorer.QueryConductor.Resolve:input_type -> cnquery.explorer.ResolveReq - 33, // 78: cnquery.explorer.QueryConductor.StoreResults:input_type -> cnquery.explorer.StoreResultsReq - 34, // 79: cnquery.explorer.QueryConductor.GetReport:input_type -> cnquery.explorer.EntityDataRequest - 41, // 80: cnquery.explorer.QueryConductor.SynchronizeAssets:input_type -> cnquery.explorer.SynchronizeAssetsReq - 22, // 81: cnquery.explorer.QueryHub.SetBundle:output_type -> cnquery.explorer.Empty - 22, // 82: cnquery.explorer.QueryHub.DeleteQueryPack:output_type -> cnquery.explorer.Empty - 22, // 83: cnquery.explorer.QueryHub.ValidateBundle:output_type -> cnquery.explorer.Empty - 3, // 84: cnquery.explorer.QueryHub.GetBundle:output_type -> cnquery.explorer.Bundle - 5, // 85: cnquery.explorer.QueryHub.GetQueryPack:output_type -> cnquery.explorer.QueryPack - 24, // 86: cnquery.explorer.QueryHub.GetFilters:output_type -> cnquery.explorer.Mqueries - 8, // 87: cnquery.explorer.QueryHub.List:output_type -> cnquery.explorer.QueryPacks - 27, // 88: cnquery.explorer.QueryHub.DefaultPacks:output_type -> cnquery.explorer.URLs - 22, // 89: cnquery.explorer.QueryConductor.Assign:output_type -> cnquery.explorer.Empty - 22, // 90: cnquery.explorer.QueryConductor.Unassign:output_type -> cnquery.explorer.Empty - 22, // 91: cnquery.explorer.QueryConductor.SetProps:output_type -> cnquery.explorer.Empty - 31, // 92: cnquery.explorer.QueryConductor.Resolve:output_type -> cnquery.explorer.ResolvedPack - 22, // 93: cnquery.explorer.QueryConductor.StoreResults:output_type -> cnquery.explorer.Empty - 35, // 94: cnquery.explorer.QueryConductor.GetReport:output_type -> cnquery.explorer.Report - 43, // 95: cnquery.explorer.QueryConductor.SynchronizeAssets:output_type -> cnquery.explorer.SynchronizeAssetsResp - 81, // [81:96] is the sub-list for method output_type - 66, // [66:81] is the sub-list for method input_type - 66, // [66:66] is the sub-list for extension type_name - 66, // [66:66] is the sub-list for extension extendee - 0, // [0:66] is the sub-list for field type_name + 54, // 44: cnquery.explorer.Asset.labels:type_name -> cnquery.explorer.Asset.LabelsEntry + 55, // 45: cnquery.explorer.ReportCollection.assets:type_name -> cnquery.explorer.ReportCollection.AssetsEntry + 3, // 46: cnquery.explorer.ReportCollection.bundle:type_name -> cnquery.explorer.Bundle + 56, // 47: cnquery.explorer.ReportCollection.reports:type_name -> cnquery.explorer.ReportCollection.ReportsEntry + 57, // 48: cnquery.explorer.ReportCollection.errors:type_name -> cnquery.explorer.ReportCollection.ErrorsEntry + 58, // 49: cnquery.explorer.ReportCollection.resolved:type_name -> cnquery.explorer.ReportCollection.ResolvedEntry + 62, // 50: cnquery.explorer.ErrorStatus.details:type_name -> google.protobuf.Any + 2, // 51: cnquery.explorer.AssignmentDelta.action:type_name -> cnquery.explorer.AssignmentDelta.Action + 59, // 52: cnquery.explorer.BundleMutationDelta.deltas:type_name -> cnquery.explorer.BundleMutationDelta.DeltasEntry + 63, // 53: cnquery.explorer.SynchronizeAssetsReq.list:type_name -> cnquery.providers.v1.Asset + 60, // 54: cnquery.explorer.SynchronizeAssetsResp.details:type_name -> cnquery.explorer.SynchronizeAssetsResp.DetailsEntry + 11, // 55: cnquery.explorer.Filters.ItemsEntry.value:type_name -> cnquery.explorer.Mquery + 21, // 56: cnquery.explorer.ExecutionJob.QueriesEntry.value:type_name -> cnquery.explorer.ExecutionQuery + 20, // 57: cnquery.explorer.ExecutionJob.DatapointsEntry.value:type_name -> cnquery.explorer.DataQueryInfo + 64, // 58: cnquery.explorer.StoreResultsReq.DataEntry.value:type_name -> cnquery.llx.Result + 65, // 59: cnquery.explorer.StoreResultsReq.ResourcesEntry.value:type_name -> cnquery.llx.ResourceRecording + 64, // 60: cnquery.explorer.Report.DataEntry.value:type_name -> cnquery.llx.Result + 36, // 61: cnquery.explorer.ReportCollection.AssetsEntry.value:type_name -> cnquery.explorer.Asset + 35, // 62: cnquery.explorer.ReportCollection.ReportsEntry.value:type_name -> cnquery.explorer.Report + 38, // 63: cnquery.explorer.ReportCollection.ErrorsEntry.value:type_name -> cnquery.explorer.ErrorStatus + 31, // 64: cnquery.explorer.ReportCollection.ResolvedEntry.value:type_name -> cnquery.explorer.ResolvedPack + 39, // 65: cnquery.explorer.BundleMutationDelta.DeltasEntry.value:type_name -> cnquery.explorer.AssignmentDelta + 42, // 66: cnquery.explorer.SynchronizeAssetsResp.DetailsEntry.value:type_name -> cnquery.explorer.SynchronizeAssetsRespAssetDetail + 3, // 67: cnquery.explorer.QueryHub.SetBundle:input_type -> cnquery.explorer.Bundle + 23, // 68: cnquery.explorer.QueryHub.DeleteQueryPack:input_type -> cnquery.explorer.Mrn + 3, // 69: cnquery.explorer.QueryHub.ValidateBundle:input_type -> cnquery.explorer.Bundle + 23, // 70: cnquery.explorer.QueryHub.GetBundle:input_type -> cnquery.explorer.Mrn + 23, // 71: cnquery.explorer.QueryHub.GetQueryPack:input_type -> cnquery.explorer.Mrn + 23, // 72: cnquery.explorer.QueryHub.GetFilters:input_type -> cnquery.explorer.Mrn + 25, // 73: cnquery.explorer.QueryHub.List:input_type -> cnquery.explorer.ListReq + 26, // 74: cnquery.explorer.QueryHub.DefaultPacks:input_type -> cnquery.explorer.DefaultPacksReq + 28, // 75: cnquery.explorer.QueryConductor.Assign:input_type -> cnquery.explorer.Assignment + 28, // 76: cnquery.explorer.QueryConductor.Unassign:input_type -> cnquery.explorer.Assignment + 29, // 77: cnquery.explorer.QueryConductor.SetProps:input_type -> cnquery.explorer.PropsReq + 30, // 78: cnquery.explorer.QueryConductor.Resolve:input_type -> cnquery.explorer.ResolveReq + 33, // 79: cnquery.explorer.QueryConductor.StoreResults:input_type -> cnquery.explorer.StoreResultsReq + 34, // 80: cnquery.explorer.QueryConductor.GetReport:input_type -> cnquery.explorer.EntityDataRequest + 41, // 81: cnquery.explorer.QueryConductor.SynchronizeAssets:input_type -> cnquery.explorer.SynchronizeAssetsReq + 22, // 82: cnquery.explorer.QueryHub.SetBundle:output_type -> cnquery.explorer.Empty + 22, // 83: cnquery.explorer.QueryHub.DeleteQueryPack:output_type -> cnquery.explorer.Empty + 22, // 84: cnquery.explorer.QueryHub.ValidateBundle:output_type -> cnquery.explorer.Empty + 3, // 85: cnquery.explorer.QueryHub.GetBundle:output_type -> cnquery.explorer.Bundle + 5, // 86: cnquery.explorer.QueryHub.GetQueryPack:output_type -> cnquery.explorer.QueryPack + 24, // 87: cnquery.explorer.QueryHub.GetFilters:output_type -> cnquery.explorer.Mqueries + 8, // 88: cnquery.explorer.QueryHub.List:output_type -> cnquery.explorer.QueryPacks + 27, // 89: cnquery.explorer.QueryHub.DefaultPacks:output_type -> cnquery.explorer.URLs + 22, // 90: cnquery.explorer.QueryConductor.Assign:output_type -> cnquery.explorer.Empty + 22, // 91: cnquery.explorer.QueryConductor.Unassign:output_type -> cnquery.explorer.Empty + 22, // 92: cnquery.explorer.QueryConductor.SetProps:output_type -> cnquery.explorer.Empty + 31, // 93: cnquery.explorer.QueryConductor.Resolve:output_type -> cnquery.explorer.ResolvedPack + 22, // 94: cnquery.explorer.QueryConductor.StoreResults:output_type -> cnquery.explorer.Empty + 35, // 95: cnquery.explorer.QueryConductor.GetReport:output_type -> cnquery.explorer.Report + 43, // 96: cnquery.explorer.QueryConductor.SynchronizeAssets:output_type -> cnquery.explorer.SynchronizeAssetsResp + 82, // [82:97] is the sub-list for method output_type + 67, // [67:82] is the sub-list for method input_type + 67, // [67:67] is the sub-list for extension type_name + 67, // [67:67] is the sub-list for extension extendee + 0, // [0:67] is the sub-list for field type_name } func init() { file_cnquery_explorer_proto_init() } @@ -3835,7 +3853,7 @@ func file_cnquery_explorer_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_cnquery_explorer_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*Bundle); i { case 0: return &v.state @@ -3847,7 +3865,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*QueryGroup); i { case 0: return &v.state @@ -3859,7 +3877,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*QueryPack); i { case 0: return &v.state @@ -3871,7 +3889,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*ObjectRef); i { case 0: return &v.state @@ -3883,7 +3901,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[4].Exporter = func(v any, i int) any { switch v := v.(*Filters); i { case 0: return &v.state @@ -3895,7 +3913,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[5].Exporter = func(v any, i int) any { switch v := v.(*QueryPacks); i { case 0: return &v.state @@ -3907,7 +3925,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[6].Exporter = func(v any, i int) any { switch v := v.(*Docs); i { case 0: return &v.state @@ -3919,7 +3937,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[7].Exporter = func(v any, i int) any { switch v := v.(*Property); i { case 0: return &v.state @@ -3931,7 +3949,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[8].Exporter = func(v any, i int) any { switch v := v.(*Mquery); i { case 0: return &v.state @@ -3943,7 +3961,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[9].Exporter = func(v any, i int) any { switch v := v.(*Impact); i { case 0: return &v.state @@ -3955,7 +3973,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[10].Exporter = func(v any, i int) any { switch v := v.(*QueryPackDocs); i { case 0: return &v.state @@ -3967,7 +3985,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[11].Exporter = func(v any, i int) any { switch v := v.(*MqueryDocs); i { case 0: return &v.state @@ -3979,7 +3997,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[12].Exporter = func(v any, i int) any { switch v := v.(*Remediation); i { case 0: return &v.state @@ -3991,7 +4009,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[13].Exporter = func(v any, i int) any { switch v := v.(*TypedDoc); i { case 0: return &v.state @@ -4003,7 +4021,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[14].Exporter = func(v any, i int) any { switch v := v.(*Author); i { case 0: return &v.state @@ -4015,7 +4033,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[15].Exporter = func(v any, i int) any { switch v := v.(*MqueryRef); i { case 0: return &v.state @@ -4027,7 +4045,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[16].Exporter = func(v any, i int) any { switch v := v.(*ExecutionJob); i { case 0: return &v.state @@ -4039,7 +4057,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[17].Exporter = func(v any, i int) any { switch v := v.(*DataQueryInfo); i { case 0: return &v.state @@ -4051,7 +4069,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[18].Exporter = func(v any, i int) any { switch v := v.(*ExecutionQuery); i { case 0: return &v.state @@ -4063,7 +4081,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[19].Exporter = func(v any, i int) any { switch v := v.(*Empty); i { case 0: return &v.state @@ -4075,7 +4093,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[20].Exporter = func(v any, i int) any { switch v := v.(*Mrn); i { case 0: return &v.state @@ -4087,7 +4105,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[21].Exporter = func(v any, i int) any { switch v := v.(*Mqueries); i { case 0: return &v.state @@ -4099,7 +4117,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[22].Exporter = func(v any, i int) any { switch v := v.(*ListReq); i { case 0: return &v.state @@ -4111,7 +4129,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[23].Exporter = func(v any, i int) any { switch v := v.(*DefaultPacksReq); i { case 0: return &v.state @@ -4123,7 +4141,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[24].Exporter = func(v any, i int) any { switch v := v.(*URLs); i { case 0: return &v.state @@ -4135,7 +4153,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[25].Exporter = func(v any, i int) any { switch v := v.(*Assignment); i { case 0: return &v.state @@ -4147,7 +4165,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[26].Exporter = func(v any, i int) any { switch v := v.(*PropsReq); i { case 0: return &v.state @@ -4159,7 +4177,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[27].Exporter = func(v any, i int) any { switch v := v.(*ResolveReq); i { case 0: return &v.state @@ -4171,7 +4189,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[28].Exporter = func(v any, i int) any { switch v := v.(*ResolvedPack); i { case 0: return &v.state @@ -4183,7 +4201,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[29].Exporter = func(v any, i int) any { switch v := v.(*UpdateAssetJobsReq); i { case 0: return &v.state @@ -4195,7 +4213,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[30].Exporter = func(v any, i int) any { switch v := v.(*StoreResultsReq); i { case 0: return &v.state @@ -4207,7 +4225,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[31].Exporter = func(v any, i int) any { switch v := v.(*EntityDataRequest); i { case 0: return &v.state @@ -4219,7 +4237,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[32].Exporter = func(v any, i int) any { switch v := v.(*Report); i { case 0: return &v.state @@ -4231,7 +4249,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[33].Exporter = func(v any, i int) any { switch v := v.(*Asset); i { case 0: return &v.state @@ -4243,7 +4261,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[34].Exporter = func(v any, i int) any { switch v := v.(*ReportCollection); i { case 0: return &v.state @@ -4255,7 +4273,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[35].Exporter = func(v any, i int) any { switch v := v.(*ErrorStatus); i { case 0: return &v.state @@ -4267,7 +4285,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[36].Exporter = func(v any, i int) any { switch v := v.(*AssignmentDelta); i { case 0: return &v.state @@ -4279,7 +4297,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[37].Exporter = func(v any, i int) any { switch v := v.(*BundleMutationDelta); i { case 0: return &v.state @@ -4291,7 +4309,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[38].Exporter = func(v any, i int) any { switch v := v.(*SynchronizeAssetsReq); i { case 0: return &v.state @@ -4303,7 +4321,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[39].Exporter = func(v any, i int) any { switch v := v.(*SynchronizeAssetsRespAssetDetail); i { case 0: return &v.state @@ -4315,7 +4333,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[40].Exporter = func(v any, i int) any { switch v := v.(*SynchronizeAssetsResp); i { case 0: return &v.state @@ -4327,7 +4345,7 @@ func file_cnquery_explorer_proto_init() { return nil } } - file_cnquery_explorer_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_proto_msgTypes[41].Exporter = func(v any, i int) any { switch v := v.(*ImpactValue); i { case 0: return &v.state @@ -4346,7 +4364,7 @@ func file_cnquery_explorer_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_cnquery_explorer_proto_rawDesc, NumEnums: 3, - NumMessages: 57, + NumMessages: 58, NumExtensions: 0, NumServices: 2, }, diff --git a/explorer/cnquery_explorer.proto b/explorer/cnquery_explorer.proto index 500ad423b2..d2d97dbfd1 100644 --- a/explorer/cnquery_explorer.proto +++ b/explorer/cnquery_explorer.proto @@ -385,6 +385,7 @@ message Report { // Asset is a lean layer of information about an asset message Asset { string mrn = 1; + map labels = 3; string name = 18; string trace_id = 19; } diff --git a/explorer/resources/cnquery_resources_explorer.pb.go b/explorer/resources/cnquery_resources_explorer.pb.go index 112b0df493..0764d7c55f 100644 --- a/explorer/resources/cnquery_resources_explorer.pb.go +++ b/explorer/resources/cnquery_resources_explorer.pb.go @@ -3,8 +3,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.1 -// protoc v5.27.0 +// protoc-gen-go v1.34.2 +// protoc v5.27.1 // source: cnquery_resources_explorer.proto package resources @@ -253,7 +253,7 @@ func file_cnquery_resources_explorer_proto_rawDescGZIP() []byte { } var file_cnquery_resources_explorer_proto_msgTypes = make([]protoimpl.MessageInfo, 3) -var file_cnquery_resources_explorer_proto_goTypes = []interface{}{ +var file_cnquery_resources_explorer_proto_goTypes = []any{ (*EntityResourcesReq)(nil), // 0: cnquery.explorer.resources.EntityResourcesReq (*ResourceDataReq)(nil), // 1: cnquery.explorer.resources.ResourceDataReq (*EntityResourcesRes)(nil), // 2: cnquery.explorer.resources.EntityResourcesRes @@ -277,7 +277,7 @@ func file_cnquery_resources_explorer_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_cnquery_resources_explorer_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_resources_explorer_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*EntityResourcesReq); i { case 0: return &v.state @@ -289,7 +289,7 @@ func file_cnquery_resources_explorer_proto_init() { return nil } } - file_cnquery_resources_explorer_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_resources_explorer_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*ResourceDataReq); i { case 0: return &v.state @@ -301,7 +301,7 @@ func file_cnquery_resources_explorer_proto_init() { return nil } } - file_cnquery_resources_explorer_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_resources_explorer_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*EntityResourcesRes); i { case 0: return &v.state diff --git a/explorer/scan/cnquery_explorer_scan.pb.go b/explorer/scan/cnquery_explorer_scan.pb.go index 04cfd02f2e..dd6e556063 100644 --- a/explorer/scan/cnquery_explorer_scan.pb.go +++ b/explorer/scan/cnquery_explorer_scan.pb.go @@ -3,8 +3,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.1 -// protoc v5.27.0 +// protoc-gen-go v1.34.2 +// protoc v5.27.1 // source: cnquery_explorer_scan.proto package scan @@ -153,7 +153,7 @@ func file_cnquery_explorer_scan_proto_rawDescGZIP() []byte { } var file_cnquery_explorer_scan_proto_msgTypes = make([]protoimpl.MessageInfo, 2) -var file_cnquery_explorer_scan_proto_goTypes = []interface{}{ +var file_cnquery_explorer_scan_proto_goTypes = []any{ (*Job)(nil), // 0: cnquery.explorer.scan.Job nil, // 1: cnquery.explorer.scan.Job.PropsEntry (*inventory.Inventory)(nil), // 2: cnquery.providers.v1.Inventory @@ -176,7 +176,7 @@ func file_cnquery_explorer_scan_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_cnquery_explorer_scan_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_cnquery_explorer_scan_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*Job); i { case 0: return &v.state diff --git a/explorer/scan/reporter.go b/explorer/scan/reporter.go index d342909372..b493df996a 100644 --- a/explorer/scan/reporter.go +++ b/explorer/scan/reporter.go @@ -43,6 +43,7 @@ func (r *AggregateReporter) AddReport(asset *inventory.Asset, results *AssetRepo Name: asset.Name, Mrn: asset.Mrn, TraceId: asset.TraceId, + Labels: asset.Labels, } r.assetReports[asset.Mrn] = results.Report r.resolved[asset.Mrn] = results.Resolved diff --git a/sbom/generator/generator.go b/sbom/generator/generator.go index c2cfa2685c..9545c95d29 100644 --- a/sbom/generator/generator.go +++ b/sbom/generator/generator.go @@ -47,12 +47,12 @@ func GenerateBom(r *reporter.Report) ([]*sbom.Sbom, error) { } bom.Asset = &sbom.Asset{ - Name: asset.Name, + Name: asset.GetName(), PlatformIds: nil, Platform: &sbom.Platform{}, - Labels: map[string]string{}, + Labels: asset.GetLabels(), ExternalIds: []*sbom.ExternalID{}, - TraceId: asset.TraceId, + TraceId: asset.GetTraceId(), } bom.Packages = []*sbom.Package{}