cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/index_service.pb.go (about) 1 // Copyright 2025 Google LLC 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated by protoc-gen-go. DO NOT EDIT. 16 // versions: 17 // protoc-gen-go v1.35.2 18 // protoc v4.25.7 19 // source: google/cloud/aiplatform/v1beta1/index_service.proto 20 21 package aiplatformpb 22 23 import ( 24 longrunningpb "cloud.google.com/go/longrunning/autogen/longrunningpb" 25 _ "google.golang.org/genproto/googleapis/api/annotations" 26 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 27 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 28 _ "google.golang.org/protobuf/types/known/emptypb" 29 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 30 reflect "reflect" 31 sync "sync" 32 ) 33 34 const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39 ) 40 41 // The type of numeric value for the restrict. 42 type ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType int32 43 44 const ( 45 // Should not be used. 46 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_VALUE_TYPE_UNSPECIFIED ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType = 0 47 // Represents 64 bit integer. 48 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_INT ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType = 1 49 // Represents 32 bit float. 50 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_FLOAT ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType = 2 51 // Represents 64 bit float. 52 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_DOUBLE ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType = 3 53 ) 54 55 // Enum value maps for ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType. 56 var ( 57 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType_name = map[int32]string{ 58 0: "VALUE_TYPE_UNSPECIFIED", 59 1: "INT", 60 2: "FLOAT", 61 3: "DOUBLE", 62 } 63 ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType_value = map[string]int32{ 64 "VALUE_TYPE_UNSPECIFIED": 0, 65 "INT": 1, 66 "FLOAT": 2, 67 "DOUBLE": 3, 68 } 69 ) 70 71 func (x ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) Enum() *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType { 72 p := new(ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) 73 *p = x 74 return p 75 } 76 77 func (x ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) String() string { 78 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 79 } 80 81 func (ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) Descriptor() protoreflect.EnumDescriptor { 82 return file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes[0].Descriptor() 83 } 84 85 func (ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) Type() protoreflect.EnumType { 86 return &file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes[0] 87 } 88 89 func (x ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) Number() protoreflect.EnumNumber { 90 return protoreflect.EnumNumber(x) 91 } 92 93 // Deprecated: Use ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType.Descriptor instead. 94 func (ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType) EnumDescriptor() ([]byte, []int) { 95 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0, 0, 1, 0} 96 } 97 98 type NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType int32 99 100 const ( 101 // Default, shall not be used. 102 NearestNeighborSearchOperationMetadata_RecordError_ERROR_TYPE_UNSPECIFIED NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 0 103 // The record is empty. 104 NearestNeighborSearchOperationMetadata_RecordError_EMPTY_LINE NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 1 105 // Invalid json format. 106 NearestNeighborSearchOperationMetadata_RecordError_INVALID_JSON_SYNTAX NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 2 107 // Invalid csv format. 108 NearestNeighborSearchOperationMetadata_RecordError_INVALID_CSV_SYNTAX NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 3 109 // Invalid avro format. 110 NearestNeighborSearchOperationMetadata_RecordError_INVALID_AVRO_SYNTAX NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 4 111 // The embedding id is not valid. 112 NearestNeighborSearchOperationMetadata_RecordError_INVALID_EMBEDDING_ID NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 5 113 // The size of the dense embedding vectors does not match with the 114 // specified dimension. 115 NearestNeighborSearchOperationMetadata_RecordError_EMBEDDING_SIZE_MISMATCH NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 6 116 // The `namespace` field is missing. 117 NearestNeighborSearchOperationMetadata_RecordError_NAMESPACE_MISSING NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 7 118 // Generic catch-all error. Only used for validation failure where the 119 // root cause cannot be easily retrieved programmatically. 120 NearestNeighborSearchOperationMetadata_RecordError_PARSING_ERROR NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 8 121 // There are multiple restricts with the same `namespace` value. 122 NearestNeighborSearchOperationMetadata_RecordError_DUPLICATE_NAMESPACE NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 9 123 // Numeric restrict has operator specified in datapoint. 124 NearestNeighborSearchOperationMetadata_RecordError_OP_IN_DATAPOINT NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 10 125 // Numeric restrict has multiple values specified. 126 NearestNeighborSearchOperationMetadata_RecordError_MULTIPLE_VALUES NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 11 127 // Numeric restrict has invalid numeric value specified. 128 NearestNeighborSearchOperationMetadata_RecordError_INVALID_NUMERIC_VALUE NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 12 129 // File is not in UTF_8 format. 130 NearestNeighborSearchOperationMetadata_RecordError_INVALID_ENCODING NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 13 131 // Error parsing sparse dimensions field. 132 NearestNeighborSearchOperationMetadata_RecordError_INVALID_SPARSE_DIMENSIONS NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 14 133 // Token restrict value is invalid. 134 NearestNeighborSearchOperationMetadata_RecordError_INVALID_TOKEN_VALUE NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 15 135 // Invalid sparse embedding. 136 NearestNeighborSearchOperationMetadata_RecordError_INVALID_SPARSE_EMBEDDING NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 16 137 // Invalid dense embedding. 138 NearestNeighborSearchOperationMetadata_RecordError_INVALID_EMBEDDING NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 17 139 // Invalid embedding metadata. 140 NearestNeighborSearchOperationMetadata_RecordError_INVALID_EMBEDDING_METADATA NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 18 141 // Embedding metadata exceeds size limit. 142 NearestNeighborSearchOperationMetadata_RecordError_EMBEDDING_METADATA_EXCEEDS_SIZE_LIMIT NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType = 19 143 ) 144 145 // Enum value maps for NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType. 146 var ( 147 NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType_name = map[int32]string{ 148 0: "ERROR_TYPE_UNSPECIFIED", 149 1: "EMPTY_LINE", 150 2: "INVALID_JSON_SYNTAX", 151 3: "INVALID_CSV_SYNTAX", 152 4: "INVALID_AVRO_SYNTAX", 153 5: "INVALID_EMBEDDING_ID", 154 6: "EMBEDDING_SIZE_MISMATCH", 155 7: "NAMESPACE_MISSING", 156 8: "PARSING_ERROR", 157 9: "DUPLICATE_NAMESPACE", 158 10: "OP_IN_DATAPOINT", 159 11: "MULTIPLE_VALUES", 160 12: "INVALID_NUMERIC_VALUE", 161 13: "INVALID_ENCODING", 162 14: "INVALID_SPARSE_DIMENSIONS", 163 15: "INVALID_TOKEN_VALUE", 164 16: "INVALID_SPARSE_EMBEDDING", 165 17: "INVALID_EMBEDDING", 166 18: "INVALID_EMBEDDING_METADATA", 167 19: "EMBEDDING_METADATA_EXCEEDS_SIZE_LIMIT", 168 } 169 NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType_value = map[string]int32{ 170 "ERROR_TYPE_UNSPECIFIED": 0, 171 "EMPTY_LINE": 1, 172 "INVALID_JSON_SYNTAX": 2, 173 "INVALID_CSV_SYNTAX": 3, 174 "INVALID_AVRO_SYNTAX": 4, 175 "INVALID_EMBEDDING_ID": 5, 176 "EMBEDDING_SIZE_MISMATCH": 6, 177 "NAMESPACE_MISSING": 7, 178 "PARSING_ERROR": 8, 179 "DUPLICATE_NAMESPACE": 9, 180 "OP_IN_DATAPOINT": 10, 181 "MULTIPLE_VALUES": 11, 182 "INVALID_NUMERIC_VALUE": 12, 183 "INVALID_ENCODING": 13, 184 "INVALID_SPARSE_DIMENSIONS": 14, 185 "INVALID_TOKEN_VALUE": 15, 186 "INVALID_SPARSE_EMBEDDING": 16, 187 "INVALID_EMBEDDING": 17, 188 "INVALID_EMBEDDING_METADATA": 18, 189 "EMBEDDING_METADATA_EXCEEDS_SIZE_LIMIT": 19, 190 } 191 ) 192 193 func (x NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) Enum() *NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType { 194 p := new(NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) 195 *p = x 196 return p 197 } 198 199 func (x NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) String() string { 200 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 201 } 202 203 func (NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) Descriptor() protoreflect.EnumDescriptor { 204 return file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes[1].Descriptor() 205 } 206 207 func (NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) Type() protoreflect.EnumType { 208 return &file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes[1] 209 } 210 211 func (x NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) Number() protoreflect.EnumNumber { 212 return protoreflect.EnumNumber(x) 213 } 214 215 // Deprecated: Use NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType.Descriptor instead. 216 func (NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType) EnumDescriptor() ([]byte, []int) { 217 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{14, 0, 0} 218 } 219 220 // Request message for 221 // [IndexService.CreateIndex][google.cloud.aiplatform.v1beta1.IndexService.CreateIndex]. 222 type CreateIndexRequest struct { 223 state protoimpl.MessageState 224 sizeCache protoimpl.SizeCache 225 unknownFields protoimpl.UnknownFields 226 227 // Required. The resource name of the Location to create the Index in. 228 // Format: `projects/{project}/locations/{location}` 229 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 230 // Required. The Index to create. 231 Index *Index `protobuf:"bytes,2,opt,name=index,proto3" json:"index,omitempty"` 232 } 233 234 func (x *CreateIndexRequest) Reset() { 235 *x = CreateIndexRequest{} 236 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[0] 237 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 238 ms.StoreMessageInfo(mi) 239 } 240 241 func (x *CreateIndexRequest) String() string { 242 return protoimpl.X.MessageStringOf(x) 243 } 244 245 func (*CreateIndexRequest) ProtoMessage() {} 246 247 func (x *CreateIndexRequest) ProtoReflect() protoreflect.Message { 248 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[0] 249 if x != nil { 250 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 251 if ms.LoadMessageInfo() == nil { 252 ms.StoreMessageInfo(mi) 253 } 254 return ms 255 } 256 return mi.MessageOf(x) 257 } 258 259 // Deprecated: Use CreateIndexRequest.ProtoReflect.Descriptor instead. 260 func (*CreateIndexRequest) Descriptor() ([]byte, []int) { 261 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{0} 262 } 263 264 func (x *CreateIndexRequest) GetParent() string { 265 if x != nil { 266 return x.Parent 267 } 268 return "" 269 } 270 271 func (x *CreateIndexRequest) GetIndex() *Index { 272 if x != nil { 273 return x.Index 274 } 275 return nil 276 } 277 278 // Runtime operation information for 279 // [IndexService.CreateIndex][google.cloud.aiplatform.v1beta1.IndexService.CreateIndex]. 280 type CreateIndexOperationMetadata struct { 281 state protoimpl.MessageState 282 sizeCache protoimpl.SizeCache 283 unknownFields protoimpl.UnknownFields 284 285 // The operation generic information. 286 GenericMetadata *GenericOperationMetadata `protobuf:"bytes,1,opt,name=generic_metadata,json=genericMetadata,proto3" json:"generic_metadata,omitempty"` 287 // The operation metadata with regard to Matching Engine Index operation. 288 NearestNeighborSearchOperationMetadata *NearestNeighborSearchOperationMetadata `protobuf:"bytes,2,opt,name=nearest_neighbor_search_operation_metadata,json=nearestNeighborSearchOperationMetadata,proto3" json:"nearest_neighbor_search_operation_metadata,omitempty"` 289 } 290 291 func (x *CreateIndexOperationMetadata) Reset() { 292 *x = CreateIndexOperationMetadata{} 293 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[1] 294 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 295 ms.StoreMessageInfo(mi) 296 } 297 298 func (x *CreateIndexOperationMetadata) String() string { 299 return protoimpl.X.MessageStringOf(x) 300 } 301 302 func (*CreateIndexOperationMetadata) ProtoMessage() {} 303 304 func (x *CreateIndexOperationMetadata) ProtoReflect() protoreflect.Message { 305 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[1] 306 if x != nil { 307 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 308 if ms.LoadMessageInfo() == nil { 309 ms.StoreMessageInfo(mi) 310 } 311 return ms 312 } 313 return mi.MessageOf(x) 314 } 315 316 // Deprecated: Use CreateIndexOperationMetadata.ProtoReflect.Descriptor instead. 317 func (*CreateIndexOperationMetadata) Descriptor() ([]byte, []int) { 318 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{1} 319 } 320 321 func (x *CreateIndexOperationMetadata) GetGenericMetadata() *GenericOperationMetadata { 322 if x != nil { 323 return x.GenericMetadata 324 } 325 return nil 326 } 327 328 func (x *CreateIndexOperationMetadata) GetNearestNeighborSearchOperationMetadata() *NearestNeighborSearchOperationMetadata { 329 if x != nil { 330 return x.NearestNeighborSearchOperationMetadata 331 } 332 return nil 333 } 334 335 // Request message for 336 // [IndexService.GetIndex][google.cloud.aiplatform.v1beta1.IndexService.GetIndex] 337 type GetIndexRequest struct { 338 state protoimpl.MessageState 339 sizeCache protoimpl.SizeCache 340 unknownFields protoimpl.UnknownFields 341 342 // Required. The name of the Index resource. 343 // Format: 344 // `projects/{project}/locations/{location}/indexes/{index}` 345 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 346 } 347 348 func (x *GetIndexRequest) Reset() { 349 *x = GetIndexRequest{} 350 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[2] 351 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 352 ms.StoreMessageInfo(mi) 353 } 354 355 func (x *GetIndexRequest) String() string { 356 return protoimpl.X.MessageStringOf(x) 357 } 358 359 func (*GetIndexRequest) ProtoMessage() {} 360 361 func (x *GetIndexRequest) ProtoReflect() protoreflect.Message { 362 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[2] 363 if x != nil { 364 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 365 if ms.LoadMessageInfo() == nil { 366 ms.StoreMessageInfo(mi) 367 } 368 return ms 369 } 370 return mi.MessageOf(x) 371 } 372 373 // Deprecated: Use GetIndexRequest.ProtoReflect.Descriptor instead. 374 func (*GetIndexRequest) Descriptor() ([]byte, []int) { 375 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{2} 376 } 377 378 func (x *GetIndexRequest) GetName() string { 379 if x != nil { 380 return x.Name 381 } 382 return "" 383 } 384 385 // Request message for 386 // [IndexService.ListIndexes][google.cloud.aiplatform.v1beta1.IndexService.ListIndexes]. 387 type ListIndexesRequest struct { 388 state protoimpl.MessageState 389 sizeCache protoimpl.SizeCache 390 unknownFields protoimpl.UnknownFields 391 392 // Required. The resource name of the Location from which to list the Indexes. 393 // Format: `projects/{project}/locations/{location}` 394 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 395 // The standard list filter. 396 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 397 // The standard list page size. 398 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 399 // The standard list page token. 400 // Typically obtained via 401 // [ListIndexesResponse.next_page_token][google.cloud.aiplatform.v1beta1.ListIndexesResponse.next_page_token] 402 // of the previous 403 // [IndexService.ListIndexes][google.cloud.aiplatform.v1beta1.IndexService.ListIndexes] 404 // call. 405 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 406 // Mask specifying which fields to read. 407 ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"` 408 } 409 410 func (x *ListIndexesRequest) Reset() { 411 *x = ListIndexesRequest{} 412 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[3] 413 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 414 ms.StoreMessageInfo(mi) 415 } 416 417 func (x *ListIndexesRequest) String() string { 418 return protoimpl.X.MessageStringOf(x) 419 } 420 421 func (*ListIndexesRequest) ProtoMessage() {} 422 423 func (x *ListIndexesRequest) ProtoReflect() protoreflect.Message { 424 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[3] 425 if x != nil { 426 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 427 if ms.LoadMessageInfo() == nil { 428 ms.StoreMessageInfo(mi) 429 } 430 return ms 431 } 432 return mi.MessageOf(x) 433 } 434 435 // Deprecated: Use ListIndexesRequest.ProtoReflect.Descriptor instead. 436 func (*ListIndexesRequest) Descriptor() ([]byte, []int) { 437 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{3} 438 } 439 440 func (x *ListIndexesRequest) GetParent() string { 441 if x != nil { 442 return x.Parent 443 } 444 return "" 445 } 446 447 func (x *ListIndexesRequest) GetFilter() string { 448 if x != nil { 449 return x.Filter 450 } 451 return "" 452 } 453 454 func (x *ListIndexesRequest) GetPageSize() int32 { 455 if x != nil { 456 return x.PageSize 457 } 458 return 0 459 } 460 461 func (x *ListIndexesRequest) GetPageToken() string { 462 if x != nil { 463 return x.PageToken 464 } 465 return "" 466 } 467 468 func (x *ListIndexesRequest) GetReadMask() *fieldmaskpb.FieldMask { 469 if x != nil { 470 return x.ReadMask 471 } 472 return nil 473 } 474 475 // Response message for 476 // [IndexService.ListIndexes][google.cloud.aiplatform.v1beta1.IndexService.ListIndexes]. 477 type ListIndexesResponse struct { 478 state protoimpl.MessageState 479 sizeCache protoimpl.SizeCache 480 unknownFields protoimpl.UnknownFields 481 482 // List of indexes in the requested page. 483 Indexes []*Index `protobuf:"bytes,1,rep,name=indexes,proto3" json:"indexes,omitempty"` 484 // A token to retrieve next page of results. 485 // Pass to 486 // [ListIndexesRequest.page_token][google.cloud.aiplatform.v1beta1.ListIndexesRequest.page_token] 487 // to obtain that page. 488 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 489 } 490 491 func (x *ListIndexesResponse) Reset() { 492 *x = ListIndexesResponse{} 493 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[4] 494 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 495 ms.StoreMessageInfo(mi) 496 } 497 498 func (x *ListIndexesResponse) String() string { 499 return protoimpl.X.MessageStringOf(x) 500 } 501 502 func (*ListIndexesResponse) ProtoMessage() {} 503 504 func (x *ListIndexesResponse) ProtoReflect() protoreflect.Message { 505 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[4] 506 if x != nil { 507 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 508 if ms.LoadMessageInfo() == nil { 509 ms.StoreMessageInfo(mi) 510 } 511 return ms 512 } 513 return mi.MessageOf(x) 514 } 515 516 // Deprecated: Use ListIndexesResponse.ProtoReflect.Descriptor instead. 517 func (*ListIndexesResponse) Descriptor() ([]byte, []int) { 518 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{4} 519 } 520 521 func (x *ListIndexesResponse) GetIndexes() []*Index { 522 if x != nil { 523 return x.Indexes 524 } 525 return nil 526 } 527 528 func (x *ListIndexesResponse) GetNextPageToken() string { 529 if x != nil { 530 return x.NextPageToken 531 } 532 return "" 533 } 534 535 // Request message for 536 // [IndexService.UpdateIndex][google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex]. 537 type UpdateIndexRequest struct { 538 state protoimpl.MessageState 539 sizeCache protoimpl.SizeCache 540 unknownFields protoimpl.UnknownFields 541 542 // Required. The Index which updates the resource on the server. 543 Index *Index `protobuf:"bytes,1,opt,name=index,proto3" json:"index,omitempty"` 544 // The update mask applies to the resource. 545 // For the `FieldMask` definition, see 546 // [google.protobuf.FieldMask][google.protobuf.FieldMask]. 547 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 548 } 549 550 func (x *UpdateIndexRequest) Reset() { 551 *x = UpdateIndexRequest{} 552 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[5] 553 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 554 ms.StoreMessageInfo(mi) 555 } 556 557 func (x *UpdateIndexRequest) String() string { 558 return protoimpl.X.MessageStringOf(x) 559 } 560 561 func (*UpdateIndexRequest) ProtoMessage() {} 562 563 func (x *UpdateIndexRequest) ProtoReflect() protoreflect.Message { 564 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[5] 565 if x != nil { 566 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 567 if ms.LoadMessageInfo() == nil { 568 ms.StoreMessageInfo(mi) 569 } 570 return ms 571 } 572 return mi.MessageOf(x) 573 } 574 575 // Deprecated: Use UpdateIndexRequest.ProtoReflect.Descriptor instead. 576 func (*UpdateIndexRequest) Descriptor() ([]byte, []int) { 577 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{5} 578 } 579 580 func (x *UpdateIndexRequest) GetIndex() *Index { 581 if x != nil { 582 return x.Index 583 } 584 return nil 585 } 586 587 func (x *UpdateIndexRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 588 if x != nil { 589 return x.UpdateMask 590 } 591 return nil 592 } 593 594 // Runtime operation information for 595 // [IndexService.UpdateIndex][google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex]. 596 type UpdateIndexOperationMetadata struct { 597 state protoimpl.MessageState 598 sizeCache protoimpl.SizeCache 599 unknownFields protoimpl.UnknownFields 600 601 // The operation generic information. 602 GenericMetadata *GenericOperationMetadata `protobuf:"bytes,1,opt,name=generic_metadata,json=genericMetadata,proto3" json:"generic_metadata,omitempty"` 603 // The operation metadata with regard to Matching Engine Index operation. 604 NearestNeighborSearchOperationMetadata *NearestNeighborSearchOperationMetadata `protobuf:"bytes,2,opt,name=nearest_neighbor_search_operation_metadata,json=nearestNeighborSearchOperationMetadata,proto3" json:"nearest_neighbor_search_operation_metadata,omitempty"` 605 } 606 607 func (x *UpdateIndexOperationMetadata) Reset() { 608 *x = UpdateIndexOperationMetadata{} 609 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[6] 610 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 611 ms.StoreMessageInfo(mi) 612 } 613 614 func (x *UpdateIndexOperationMetadata) String() string { 615 return protoimpl.X.MessageStringOf(x) 616 } 617 618 func (*UpdateIndexOperationMetadata) ProtoMessage() {} 619 620 func (x *UpdateIndexOperationMetadata) ProtoReflect() protoreflect.Message { 621 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[6] 622 if x != nil { 623 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 624 if ms.LoadMessageInfo() == nil { 625 ms.StoreMessageInfo(mi) 626 } 627 return ms 628 } 629 return mi.MessageOf(x) 630 } 631 632 // Deprecated: Use UpdateIndexOperationMetadata.ProtoReflect.Descriptor instead. 633 func (*UpdateIndexOperationMetadata) Descriptor() ([]byte, []int) { 634 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{6} 635 } 636 637 func (x *UpdateIndexOperationMetadata) GetGenericMetadata() *GenericOperationMetadata { 638 if x != nil { 639 return x.GenericMetadata 640 } 641 return nil 642 } 643 644 func (x *UpdateIndexOperationMetadata) GetNearestNeighborSearchOperationMetadata() *NearestNeighborSearchOperationMetadata { 645 if x != nil { 646 return x.NearestNeighborSearchOperationMetadata 647 } 648 return nil 649 } 650 651 // Request message for 652 // [IndexService.ImportIndex][google.cloud.aiplatform.v1beta1.IndexService.ImportIndex]. 653 type ImportIndexRequest struct { 654 state protoimpl.MessageState 655 sizeCache protoimpl.SizeCache 656 unknownFields protoimpl.UnknownFields 657 658 // Required. The name of the Index resource to import data to. 659 // Format: 660 // `projects/{project}/locations/{location}/indexes/{index}` 661 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 662 // Optional. If true, completely replace existing index data. Must be true for 663 // streaming update indexes. 664 IsCompleteOverwrite bool `protobuf:"varint,2,opt,name=is_complete_overwrite,json=isCompleteOverwrite,proto3" json:"is_complete_overwrite,omitempty"` 665 // Required. Configuration for importing data from an external source. 666 Config *ImportIndexRequest_ConnectorConfig `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"` 667 } 668 669 func (x *ImportIndexRequest) Reset() { 670 *x = ImportIndexRequest{} 671 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[7] 672 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 673 ms.StoreMessageInfo(mi) 674 } 675 676 func (x *ImportIndexRequest) String() string { 677 return protoimpl.X.MessageStringOf(x) 678 } 679 680 func (*ImportIndexRequest) ProtoMessage() {} 681 682 func (x *ImportIndexRequest) ProtoReflect() protoreflect.Message { 683 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[7] 684 if x != nil { 685 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 686 if ms.LoadMessageInfo() == nil { 687 ms.StoreMessageInfo(mi) 688 } 689 return ms 690 } 691 return mi.MessageOf(x) 692 } 693 694 // Deprecated: Use ImportIndexRequest.ProtoReflect.Descriptor instead. 695 func (*ImportIndexRequest) Descriptor() ([]byte, []int) { 696 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7} 697 } 698 699 func (x *ImportIndexRequest) GetName() string { 700 if x != nil { 701 return x.Name 702 } 703 return "" 704 } 705 706 func (x *ImportIndexRequest) GetIsCompleteOverwrite() bool { 707 if x != nil { 708 return x.IsCompleteOverwrite 709 } 710 return false 711 } 712 713 func (x *ImportIndexRequest) GetConfig() *ImportIndexRequest_ConnectorConfig { 714 if x != nil { 715 return x.Config 716 } 717 return nil 718 } 719 720 // Runtime operation information for 721 // [IndexService.ImportIndex][google.cloud.aiplatform.v1beta1.IndexService.ImportIndex]. 722 type ImportIndexOperationMetadata struct { 723 state protoimpl.MessageState 724 sizeCache protoimpl.SizeCache 725 unknownFields protoimpl.UnknownFields 726 727 // The operation generic information. 728 GenericMetadata *GenericOperationMetadata `protobuf:"bytes,1,opt,name=generic_metadata,json=genericMetadata,proto3" json:"generic_metadata,omitempty"` 729 } 730 731 func (x *ImportIndexOperationMetadata) Reset() { 732 *x = ImportIndexOperationMetadata{} 733 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[8] 734 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 735 ms.StoreMessageInfo(mi) 736 } 737 738 func (x *ImportIndexOperationMetadata) String() string { 739 return protoimpl.X.MessageStringOf(x) 740 } 741 742 func (*ImportIndexOperationMetadata) ProtoMessage() {} 743 744 func (x *ImportIndexOperationMetadata) ProtoReflect() protoreflect.Message { 745 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[8] 746 if x != nil { 747 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 748 if ms.LoadMessageInfo() == nil { 749 ms.StoreMessageInfo(mi) 750 } 751 return ms 752 } 753 return mi.MessageOf(x) 754 } 755 756 // Deprecated: Use ImportIndexOperationMetadata.ProtoReflect.Descriptor instead. 757 func (*ImportIndexOperationMetadata) Descriptor() ([]byte, []int) { 758 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{8} 759 } 760 761 func (x *ImportIndexOperationMetadata) GetGenericMetadata() *GenericOperationMetadata { 762 if x != nil { 763 return x.GenericMetadata 764 } 765 return nil 766 } 767 768 // Request message for 769 // [IndexService.DeleteIndex][google.cloud.aiplatform.v1beta1.IndexService.DeleteIndex]. 770 type DeleteIndexRequest struct { 771 state protoimpl.MessageState 772 sizeCache protoimpl.SizeCache 773 unknownFields protoimpl.UnknownFields 774 775 // Required. The name of the Index resource to be deleted. 776 // Format: 777 // `projects/{project}/locations/{location}/indexes/{index}` 778 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 779 } 780 781 func (x *DeleteIndexRequest) Reset() { 782 *x = DeleteIndexRequest{} 783 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[9] 784 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 785 ms.StoreMessageInfo(mi) 786 } 787 788 func (x *DeleteIndexRequest) String() string { 789 return protoimpl.X.MessageStringOf(x) 790 } 791 792 func (*DeleteIndexRequest) ProtoMessage() {} 793 794 func (x *DeleteIndexRequest) ProtoReflect() protoreflect.Message { 795 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[9] 796 if x != nil { 797 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 798 if ms.LoadMessageInfo() == nil { 799 ms.StoreMessageInfo(mi) 800 } 801 return ms 802 } 803 return mi.MessageOf(x) 804 } 805 806 // Deprecated: Use DeleteIndexRequest.ProtoReflect.Descriptor instead. 807 func (*DeleteIndexRequest) Descriptor() ([]byte, []int) { 808 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{9} 809 } 810 811 func (x *DeleteIndexRequest) GetName() string { 812 if x != nil { 813 return x.Name 814 } 815 return "" 816 } 817 818 // Request message for 819 // [IndexService.UpsertDatapoints][google.cloud.aiplatform.v1beta1.IndexService.UpsertDatapoints] 820 type UpsertDatapointsRequest struct { 821 state protoimpl.MessageState 822 sizeCache protoimpl.SizeCache 823 unknownFields protoimpl.UnknownFields 824 825 // Required. The name of the Index resource to be updated. 826 // Format: 827 // `projects/{project}/locations/{location}/indexes/{index}` 828 Index string `protobuf:"bytes,1,opt,name=index,proto3" json:"index,omitempty"` 829 // A list of datapoints to be created/updated. 830 Datapoints []*IndexDatapoint `protobuf:"bytes,2,rep,name=datapoints,proto3" json:"datapoints,omitempty"` 831 // Optional. Update mask is used to specify the fields to be overwritten in 832 // the datapoints by the update. The fields specified in the update_mask are 833 // relative to each IndexDatapoint inside datapoints, not the full request. 834 // 835 // Updatable fields: 836 // 837 // - Use `all_restricts` to update both restricts and numeric_restricts. 838 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 839 } 840 841 func (x *UpsertDatapointsRequest) Reset() { 842 *x = UpsertDatapointsRequest{} 843 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[10] 844 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 845 ms.StoreMessageInfo(mi) 846 } 847 848 func (x *UpsertDatapointsRequest) String() string { 849 return protoimpl.X.MessageStringOf(x) 850 } 851 852 func (*UpsertDatapointsRequest) ProtoMessage() {} 853 854 func (x *UpsertDatapointsRequest) ProtoReflect() protoreflect.Message { 855 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[10] 856 if x != nil { 857 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 858 if ms.LoadMessageInfo() == nil { 859 ms.StoreMessageInfo(mi) 860 } 861 return ms 862 } 863 return mi.MessageOf(x) 864 } 865 866 // Deprecated: Use UpsertDatapointsRequest.ProtoReflect.Descriptor instead. 867 func (*UpsertDatapointsRequest) Descriptor() ([]byte, []int) { 868 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{10} 869 } 870 871 func (x *UpsertDatapointsRequest) GetIndex() string { 872 if x != nil { 873 return x.Index 874 } 875 return "" 876 } 877 878 func (x *UpsertDatapointsRequest) GetDatapoints() []*IndexDatapoint { 879 if x != nil { 880 return x.Datapoints 881 } 882 return nil 883 } 884 885 func (x *UpsertDatapointsRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 886 if x != nil { 887 return x.UpdateMask 888 } 889 return nil 890 } 891 892 // Response message for 893 // [IndexService.UpsertDatapoints][google.cloud.aiplatform.v1beta1.IndexService.UpsertDatapoints] 894 type UpsertDatapointsResponse struct { 895 state protoimpl.MessageState 896 sizeCache protoimpl.SizeCache 897 unknownFields protoimpl.UnknownFields 898 } 899 900 func (x *UpsertDatapointsResponse) Reset() { 901 *x = UpsertDatapointsResponse{} 902 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[11] 903 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 904 ms.StoreMessageInfo(mi) 905 } 906 907 func (x *UpsertDatapointsResponse) String() string { 908 return protoimpl.X.MessageStringOf(x) 909 } 910 911 func (*UpsertDatapointsResponse) ProtoMessage() {} 912 913 func (x *UpsertDatapointsResponse) ProtoReflect() protoreflect.Message { 914 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[11] 915 if x != nil { 916 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 917 if ms.LoadMessageInfo() == nil { 918 ms.StoreMessageInfo(mi) 919 } 920 return ms 921 } 922 return mi.MessageOf(x) 923 } 924 925 // Deprecated: Use UpsertDatapointsResponse.ProtoReflect.Descriptor instead. 926 func (*UpsertDatapointsResponse) Descriptor() ([]byte, []int) { 927 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{11} 928 } 929 930 // Request message for 931 // [IndexService.RemoveDatapoints][google.cloud.aiplatform.v1beta1.IndexService.RemoveDatapoints] 932 type RemoveDatapointsRequest struct { 933 state protoimpl.MessageState 934 sizeCache protoimpl.SizeCache 935 unknownFields protoimpl.UnknownFields 936 937 // Required. The name of the Index resource to be updated. 938 // Format: 939 // `projects/{project}/locations/{location}/indexes/{index}` 940 Index string `protobuf:"bytes,1,opt,name=index,proto3" json:"index,omitempty"` 941 // A list of datapoint ids to be deleted. 942 DatapointIds []string `protobuf:"bytes,2,rep,name=datapoint_ids,json=datapointIds,proto3" json:"datapoint_ids,omitempty"` 943 } 944 945 func (x *RemoveDatapointsRequest) Reset() { 946 *x = RemoveDatapointsRequest{} 947 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[12] 948 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 949 ms.StoreMessageInfo(mi) 950 } 951 952 func (x *RemoveDatapointsRequest) String() string { 953 return protoimpl.X.MessageStringOf(x) 954 } 955 956 func (*RemoveDatapointsRequest) ProtoMessage() {} 957 958 func (x *RemoveDatapointsRequest) ProtoReflect() protoreflect.Message { 959 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[12] 960 if x != nil { 961 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 962 if ms.LoadMessageInfo() == nil { 963 ms.StoreMessageInfo(mi) 964 } 965 return ms 966 } 967 return mi.MessageOf(x) 968 } 969 970 // Deprecated: Use RemoveDatapointsRequest.ProtoReflect.Descriptor instead. 971 func (*RemoveDatapointsRequest) Descriptor() ([]byte, []int) { 972 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{12} 973 } 974 975 func (x *RemoveDatapointsRequest) GetIndex() string { 976 if x != nil { 977 return x.Index 978 } 979 return "" 980 } 981 982 func (x *RemoveDatapointsRequest) GetDatapointIds() []string { 983 if x != nil { 984 return x.DatapointIds 985 } 986 return nil 987 } 988 989 // Response message for 990 // [IndexService.RemoveDatapoints][google.cloud.aiplatform.v1beta1.IndexService.RemoveDatapoints] 991 type RemoveDatapointsResponse struct { 992 state protoimpl.MessageState 993 sizeCache protoimpl.SizeCache 994 unknownFields protoimpl.UnknownFields 995 } 996 997 func (x *RemoveDatapointsResponse) Reset() { 998 *x = RemoveDatapointsResponse{} 999 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[13] 1000 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1001 ms.StoreMessageInfo(mi) 1002 } 1003 1004 func (x *RemoveDatapointsResponse) String() string { 1005 return protoimpl.X.MessageStringOf(x) 1006 } 1007 1008 func (*RemoveDatapointsResponse) ProtoMessage() {} 1009 1010 func (x *RemoveDatapointsResponse) ProtoReflect() protoreflect.Message { 1011 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[13] 1012 if x != nil { 1013 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1014 if ms.LoadMessageInfo() == nil { 1015 ms.StoreMessageInfo(mi) 1016 } 1017 return ms 1018 } 1019 return mi.MessageOf(x) 1020 } 1021 1022 // Deprecated: Use RemoveDatapointsResponse.ProtoReflect.Descriptor instead. 1023 func (*RemoveDatapointsResponse) Descriptor() ([]byte, []int) { 1024 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{13} 1025 } 1026 1027 // Runtime operation metadata with regard to Matching Engine Index. 1028 type NearestNeighborSearchOperationMetadata struct { 1029 state protoimpl.MessageState 1030 sizeCache protoimpl.SizeCache 1031 unknownFields protoimpl.UnknownFields 1032 1033 // The validation stats of the content (per file) to be inserted or 1034 // updated on the Matching Engine Index resource. Populated if 1035 // contentsDeltaUri is provided as part of 1036 // [Index.metadata][google.cloud.aiplatform.v1beta1.Index.metadata]. Please 1037 // note that, currently for those files that are broken or has unsupported 1038 // file format, we will not have the stats for those files. 1039 ContentValidationStats []*NearestNeighborSearchOperationMetadata_ContentValidationStats `protobuf:"bytes,1,rep,name=content_validation_stats,json=contentValidationStats,proto3" json:"content_validation_stats,omitempty"` 1040 // The ingested data size in bytes. 1041 DataBytesCount int64 `protobuf:"varint,2,opt,name=data_bytes_count,json=dataBytesCount,proto3" json:"data_bytes_count,omitempty"` 1042 } 1043 1044 func (x *NearestNeighborSearchOperationMetadata) Reset() { 1045 *x = NearestNeighborSearchOperationMetadata{} 1046 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[14] 1047 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1048 ms.StoreMessageInfo(mi) 1049 } 1050 1051 func (x *NearestNeighborSearchOperationMetadata) String() string { 1052 return protoimpl.X.MessageStringOf(x) 1053 } 1054 1055 func (*NearestNeighborSearchOperationMetadata) ProtoMessage() {} 1056 1057 func (x *NearestNeighborSearchOperationMetadata) ProtoReflect() protoreflect.Message { 1058 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[14] 1059 if x != nil { 1060 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1061 if ms.LoadMessageInfo() == nil { 1062 ms.StoreMessageInfo(mi) 1063 } 1064 return ms 1065 } 1066 return mi.MessageOf(x) 1067 } 1068 1069 // Deprecated: Use NearestNeighborSearchOperationMetadata.ProtoReflect.Descriptor instead. 1070 func (*NearestNeighborSearchOperationMetadata) Descriptor() ([]byte, []int) { 1071 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{14} 1072 } 1073 1074 func (x *NearestNeighborSearchOperationMetadata) GetContentValidationStats() []*NearestNeighborSearchOperationMetadata_ContentValidationStats { 1075 if x != nil { 1076 return x.ContentValidationStats 1077 } 1078 return nil 1079 } 1080 1081 func (x *NearestNeighborSearchOperationMetadata) GetDataBytesCount() int64 { 1082 if x != nil { 1083 return x.DataBytesCount 1084 } 1085 return 0 1086 } 1087 1088 // Configuration for importing data from an external source. 1089 type ImportIndexRequest_ConnectorConfig struct { 1090 state protoimpl.MessageState 1091 sizeCache protoimpl.SizeCache 1092 unknownFields protoimpl.UnknownFields 1093 1094 // The source of the data to import. 1095 // 1096 // Types that are assignable to Source: 1097 // 1098 // *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig_ 1099 Source isImportIndexRequest_ConnectorConfig_Source `protobuf_oneof:"source"` 1100 } 1101 1102 func (x *ImportIndexRequest_ConnectorConfig) Reset() { 1103 *x = ImportIndexRequest_ConnectorConfig{} 1104 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[15] 1105 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1106 ms.StoreMessageInfo(mi) 1107 } 1108 1109 func (x *ImportIndexRequest_ConnectorConfig) String() string { 1110 return protoimpl.X.MessageStringOf(x) 1111 } 1112 1113 func (*ImportIndexRequest_ConnectorConfig) ProtoMessage() {} 1114 1115 func (x *ImportIndexRequest_ConnectorConfig) ProtoReflect() protoreflect.Message { 1116 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[15] 1117 if x != nil { 1118 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1119 if ms.LoadMessageInfo() == nil { 1120 ms.StoreMessageInfo(mi) 1121 } 1122 return ms 1123 } 1124 return mi.MessageOf(x) 1125 } 1126 1127 // Deprecated: Use ImportIndexRequest_ConnectorConfig.ProtoReflect.Descriptor instead. 1128 func (*ImportIndexRequest_ConnectorConfig) Descriptor() ([]byte, []int) { 1129 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0} 1130 } 1131 1132 func (m *ImportIndexRequest_ConnectorConfig) GetSource() isImportIndexRequest_ConnectorConfig_Source { 1133 if m != nil { 1134 return m.Source 1135 } 1136 return nil 1137 } 1138 1139 func (x *ImportIndexRequest_ConnectorConfig) GetBigQuerySourceConfig() *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig { 1140 if x, ok := x.GetSource().(*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig_); ok { 1141 return x.BigQuerySourceConfig 1142 } 1143 return nil 1144 } 1145 1146 type isImportIndexRequest_ConnectorConfig_Source interface { 1147 isImportIndexRequest_ConnectorConfig_Source() 1148 } 1149 1150 type ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig_ struct { 1151 // Configuration for importing data from a BigQuery table. 1152 BigQuerySourceConfig *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig `protobuf:"bytes,1,opt,name=big_query_source_config,json=bigQuerySourceConfig,proto3,oneof"` 1153 } 1154 1155 func (*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig_) isImportIndexRequest_ConnectorConfig_Source() { 1156 } 1157 1158 // Mapping of datapoint fields to column names for columnar data sources. 1159 type ImportIndexRequest_ConnectorConfig_DatapointFieldMapping struct { 1160 state protoimpl.MessageState 1161 sizeCache protoimpl.SizeCache 1162 unknownFields protoimpl.UnknownFields 1163 1164 // Required. The column with unique identifiers for each data point. 1165 IdColumn string `protobuf:"bytes,1,opt,name=id_column,json=idColumn,proto3" json:"id_column,omitempty"` 1166 // Required. The column with the vector embeddings for each data point. 1167 EmbeddingColumn string `protobuf:"bytes,2,opt,name=embedding_column,json=embeddingColumn,proto3" json:"embedding_column,omitempty"` 1168 // Optional. List of restricts for string values. 1169 Restricts []*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict `protobuf:"bytes,3,rep,name=restricts,proto3" json:"restricts,omitempty"` 1170 // Optional. List of restricts for numeric values. 1171 NumericRestricts []*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict `protobuf:"bytes,4,rep,name=numeric_restricts,json=numericRestricts,proto3" json:"numeric_restricts,omitempty"` 1172 // Optional. List of columns containing metadata to be included in the 1173 // index. 1174 MetadataColumns []string `protobuf:"bytes,5,rep,name=metadata_columns,json=metadataColumns,proto3" json:"metadata_columns,omitempty"` 1175 } 1176 1177 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) Reset() { 1178 *x = ImportIndexRequest_ConnectorConfig_DatapointFieldMapping{} 1179 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[16] 1180 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1181 ms.StoreMessageInfo(mi) 1182 } 1183 1184 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) String() string { 1185 return protoimpl.X.MessageStringOf(x) 1186 } 1187 1188 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) ProtoMessage() {} 1189 1190 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) ProtoReflect() protoreflect.Message { 1191 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[16] 1192 if x != nil { 1193 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1194 if ms.LoadMessageInfo() == nil { 1195 ms.StoreMessageInfo(mi) 1196 } 1197 return ms 1198 } 1199 return mi.MessageOf(x) 1200 } 1201 1202 // Deprecated: Use ImportIndexRequest_ConnectorConfig_DatapointFieldMapping.ProtoReflect.Descriptor instead. 1203 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) Descriptor() ([]byte, []int) { 1204 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0, 0} 1205 } 1206 1207 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) GetIdColumn() string { 1208 if x != nil { 1209 return x.IdColumn 1210 } 1211 return "" 1212 } 1213 1214 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) GetEmbeddingColumn() string { 1215 if x != nil { 1216 return x.EmbeddingColumn 1217 } 1218 return "" 1219 } 1220 1221 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) GetRestricts() []*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict { 1222 if x != nil { 1223 return x.Restricts 1224 } 1225 return nil 1226 } 1227 1228 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) GetNumericRestricts() []*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict { 1229 if x != nil { 1230 return x.NumericRestricts 1231 } 1232 return nil 1233 } 1234 1235 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping) GetMetadataColumns() []string { 1236 if x != nil { 1237 return x.MetadataColumns 1238 } 1239 return nil 1240 } 1241 1242 // Configuration for importing data from a BigQuery table. 1243 type ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig struct { 1244 state protoimpl.MessageState 1245 sizeCache protoimpl.SizeCache 1246 unknownFields protoimpl.UnknownFields 1247 1248 // Required. The path to the BigQuery table containing the index data, in 1249 // the format of `bq://<project_id>.<dataset_id>.<table>`. 1250 TablePath string `protobuf:"bytes,1,opt,name=table_path,json=tablePath,proto3" json:"table_path,omitempty"` 1251 // Required. Mapping of datapoint fields to BigQuery column names. 1252 DatapointFieldMapping *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping `protobuf:"bytes,2,opt,name=datapoint_field_mapping,json=datapointFieldMapping,proto3" json:"datapoint_field_mapping,omitempty"` 1253 } 1254 1255 func (x *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) Reset() { 1256 *x = ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig{} 1257 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[17] 1258 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1259 ms.StoreMessageInfo(mi) 1260 } 1261 1262 func (x *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) String() string { 1263 return protoimpl.X.MessageStringOf(x) 1264 } 1265 1266 func (*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) ProtoMessage() {} 1267 1268 func (x *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) ProtoReflect() protoreflect.Message { 1269 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[17] 1270 if x != nil { 1271 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1272 if ms.LoadMessageInfo() == nil { 1273 ms.StoreMessageInfo(mi) 1274 } 1275 return ms 1276 } 1277 return mi.MessageOf(x) 1278 } 1279 1280 // Deprecated: Use ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig.ProtoReflect.Descriptor instead. 1281 func (*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) Descriptor() ([]byte, []int) { 1282 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0, 1} 1283 } 1284 1285 func (x *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) GetTablePath() string { 1286 if x != nil { 1287 return x.TablePath 1288 } 1289 return "" 1290 } 1291 1292 func (x *ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig) GetDatapointFieldMapping() *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping { 1293 if x != nil { 1294 return x.DatapointFieldMapping 1295 } 1296 return nil 1297 } 1298 1299 // Restrictions on string values. 1300 type ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict struct { 1301 state protoimpl.MessageState 1302 sizeCache protoimpl.SizeCache 1303 unknownFields protoimpl.UnknownFields 1304 1305 // Required. The namespace of the restrict in the index. 1306 Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` 1307 // Optional. The columns containing the allow values. 1308 AllowColumn []string `protobuf:"bytes,2,rep,name=allow_column,json=allowColumn,proto3" json:"allow_column,omitempty"` 1309 // Optional. The columns containing the deny values. 1310 DenyColumn []string `protobuf:"bytes,3,rep,name=deny_column,json=denyColumn,proto3" json:"deny_column,omitempty"` 1311 } 1312 1313 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) Reset() { 1314 *x = ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict{} 1315 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[18] 1316 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1317 ms.StoreMessageInfo(mi) 1318 } 1319 1320 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) String() string { 1321 return protoimpl.X.MessageStringOf(x) 1322 } 1323 1324 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) ProtoMessage() {} 1325 1326 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) ProtoReflect() protoreflect.Message { 1327 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[18] 1328 if x != nil { 1329 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1330 if ms.LoadMessageInfo() == nil { 1331 ms.StoreMessageInfo(mi) 1332 } 1333 return ms 1334 } 1335 return mi.MessageOf(x) 1336 } 1337 1338 // Deprecated: Use ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict.ProtoReflect.Descriptor instead. 1339 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) Descriptor() ([]byte, []int) { 1340 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0, 0, 0} 1341 } 1342 1343 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) GetNamespace() string { 1344 if x != nil { 1345 return x.Namespace 1346 } 1347 return "" 1348 } 1349 1350 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) GetAllowColumn() []string { 1351 if x != nil { 1352 return x.AllowColumn 1353 } 1354 return nil 1355 } 1356 1357 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict) GetDenyColumn() []string { 1358 if x != nil { 1359 return x.DenyColumn 1360 } 1361 return nil 1362 } 1363 1364 // Restrictions on numeric values. 1365 type ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict struct { 1366 state protoimpl.MessageState 1367 sizeCache protoimpl.SizeCache 1368 unknownFields protoimpl.UnknownFields 1369 1370 // Required. The namespace of the restrict. 1371 Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` 1372 // Optional. The column containing the numeric value. 1373 ValueColumn string `protobuf:"bytes,2,opt,name=value_column,json=valueColumn,proto3" json:"value_column,omitempty"` 1374 // Required. Numeric type of the restrict. Must be consistent for 1375 // all datapoints within the namespace. 1376 ValueType ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType `protobuf:"varint,3,opt,name=value_type,json=valueType,proto3,enum=google.cloud.aiplatform.v1beta1.ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType" json:"value_type,omitempty"` 1377 } 1378 1379 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) Reset() { 1380 *x = ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict{} 1381 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[19] 1382 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1383 ms.StoreMessageInfo(mi) 1384 } 1385 1386 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) String() string { 1387 return protoimpl.X.MessageStringOf(x) 1388 } 1389 1390 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) ProtoMessage() {} 1391 1392 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) ProtoReflect() protoreflect.Message { 1393 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[19] 1394 if x != nil { 1395 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1396 if ms.LoadMessageInfo() == nil { 1397 ms.StoreMessageInfo(mi) 1398 } 1399 return ms 1400 } 1401 return mi.MessageOf(x) 1402 } 1403 1404 // Deprecated: Use ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict.ProtoReflect.Descriptor instead. 1405 func (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) Descriptor() ([]byte, []int) { 1406 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{7, 0, 0, 1} 1407 } 1408 1409 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) GetNamespace() string { 1410 if x != nil { 1411 return x.Namespace 1412 } 1413 return "" 1414 } 1415 1416 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) GetValueColumn() string { 1417 if x != nil { 1418 return x.ValueColumn 1419 } 1420 return "" 1421 } 1422 1423 func (x *ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict) GetValueType() ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType { 1424 if x != nil { 1425 return x.ValueType 1426 } 1427 return ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_VALUE_TYPE_UNSPECIFIED 1428 } 1429 1430 type NearestNeighborSearchOperationMetadata_RecordError struct { 1431 state protoimpl.MessageState 1432 sizeCache protoimpl.SizeCache 1433 unknownFields protoimpl.UnknownFields 1434 1435 // The error type of this record. 1436 ErrorType NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType `protobuf:"varint,1,opt,name=error_type,json=errorType,proto3,enum=google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType" json:"error_type,omitempty"` 1437 // A human-readable message that is shown to the user to help them fix the 1438 // error. Note that this message may change from time to time, your code 1439 // should check against error_type as the source of truth. 1440 ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` 1441 // Cloud Storage URI pointing to the original file in user's bucket. 1442 SourceGcsUri string `protobuf:"bytes,3,opt,name=source_gcs_uri,json=sourceGcsUri,proto3" json:"source_gcs_uri,omitempty"` 1443 // Empty if the embedding id is failed to parse. 1444 EmbeddingId string `protobuf:"bytes,4,opt,name=embedding_id,json=embeddingId,proto3" json:"embedding_id,omitempty"` 1445 // The original content of this record. 1446 RawRecord string `protobuf:"bytes,5,opt,name=raw_record,json=rawRecord,proto3" json:"raw_record,omitempty"` 1447 } 1448 1449 func (x *NearestNeighborSearchOperationMetadata_RecordError) Reset() { 1450 *x = NearestNeighborSearchOperationMetadata_RecordError{} 1451 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[20] 1452 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1453 ms.StoreMessageInfo(mi) 1454 } 1455 1456 func (x *NearestNeighborSearchOperationMetadata_RecordError) String() string { 1457 return protoimpl.X.MessageStringOf(x) 1458 } 1459 1460 func (*NearestNeighborSearchOperationMetadata_RecordError) ProtoMessage() {} 1461 1462 func (x *NearestNeighborSearchOperationMetadata_RecordError) ProtoReflect() protoreflect.Message { 1463 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[20] 1464 if x != nil { 1465 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1466 if ms.LoadMessageInfo() == nil { 1467 ms.StoreMessageInfo(mi) 1468 } 1469 return ms 1470 } 1471 return mi.MessageOf(x) 1472 } 1473 1474 // Deprecated: Use NearestNeighborSearchOperationMetadata_RecordError.ProtoReflect.Descriptor instead. 1475 func (*NearestNeighborSearchOperationMetadata_RecordError) Descriptor() ([]byte, []int) { 1476 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{14, 0} 1477 } 1478 1479 func (x *NearestNeighborSearchOperationMetadata_RecordError) GetErrorType() NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType { 1480 if x != nil { 1481 return x.ErrorType 1482 } 1483 return NearestNeighborSearchOperationMetadata_RecordError_ERROR_TYPE_UNSPECIFIED 1484 } 1485 1486 func (x *NearestNeighborSearchOperationMetadata_RecordError) GetErrorMessage() string { 1487 if x != nil { 1488 return x.ErrorMessage 1489 } 1490 return "" 1491 } 1492 1493 func (x *NearestNeighborSearchOperationMetadata_RecordError) GetSourceGcsUri() string { 1494 if x != nil { 1495 return x.SourceGcsUri 1496 } 1497 return "" 1498 } 1499 1500 func (x *NearestNeighborSearchOperationMetadata_RecordError) GetEmbeddingId() string { 1501 if x != nil { 1502 return x.EmbeddingId 1503 } 1504 return "" 1505 } 1506 1507 func (x *NearestNeighborSearchOperationMetadata_RecordError) GetRawRecord() string { 1508 if x != nil { 1509 return x.RawRecord 1510 } 1511 return "" 1512 } 1513 1514 type NearestNeighborSearchOperationMetadata_ContentValidationStats struct { 1515 state protoimpl.MessageState 1516 sizeCache protoimpl.SizeCache 1517 unknownFields protoimpl.UnknownFields 1518 1519 // Cloud Storage URI pointing to the original file in user's bucket. 1520 SourceGcsUri string `protobuf:"bytes,1,opt,name=source_gcs_uri,json=sourceGcsUri,proto3" json:"source_gcs_uri,omitempty"` 1521 // Number of records in this file that were successfully processed. 1522 ValidRecordCount int64 `protobuf:"varint,2,opt,name=valid_record_count,json=validRecordCount,proto3" json:"valid_record_count,omitempty"` 1523 // Number of records in this file we skipped due to validate errors. 1524 InvalidRecordCount int64 `protobuf:"varint,3,opt,name=invalid_record_count,json=invalidRecordCount,proto3" json:"invalid_record_count,omitempty"` 1525 // The detail information of the partial failures encountered for those 1526 // invalid records that couldn't be parsed. 1527 // Up to 50 partial errors will be reported. 1528 PartialErrors []*NearestNeighborSearchOperationMetadata_RecordError `protobuf:"bytes,4,rep,name=partial_errors,json=partialErrors,proto3" json:"partial_errors,omitempty"` 1529 // Number of sparse records in this file that were successfully processed. 1530 ValidSparseRecordCount int64 `protobuf:"varint,5,opt,name=valid_sparse_record_count,json=validSparseRecordCount,proto3" json:"valid_sparse_record_count,omitempty"` 1531 // Number of sparse records in this file we skipped due to validate errors. 1532 InvalidSparseRecordCount int64 `protobuf:"varint,6,opt,name=invalid_sparse_record_count,json=invalidSparseRecordCount,proto3" json:"invalid_sparse_record_count,omitempty"` 1533 } 1534 1535 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) Reset() { 1536 *x = NearestNeighborSearchOperationMetadata_ContentValidationStats{} 1537 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[21] 1538 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1539 ms.StoreMessageInfo(mi) 1540 } 1541 1542 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) String() string { 1543 return protoimpl.X.MessageStringOf(x) 1544 } 1545 1546 func (*NearestNeighborSearchOperationMetadata_ContentValidationStats) ProtoMessage() {} 1547 1548 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) ProtoReflect() protoreflect.Message { 1549 mi := &file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[21] 1550 if x != nil { 1551 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1552 if ms.LoadMessageInfo() == nil { 1553 ms.StoreMessageInfo(mi) 1554 } 1555 return ms 1556 } 1557 return mi.MessageOf(x) 1558 } 1559 1560 // Deprecated: Use NearestNeighborSearchOperationMetadata_ContentValidationStats.ProtoReflect.Descriptor instead. 1561 func (*NearestNeighborSearchOperationMetadata_ContentValidationStats) Descriptor() ([]byte, []int) { 1562 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP(), []int{14, 1} 1563 } 1564 1565 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetSourceGcsUri() string { 1566 if x != nil { 1567 return x.SourceGcsUri 1568 } 1569 return "" 1570 } 1571 1572 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetValidRecordCount() int64 { 1573 if x != nil { 1574 return x.ValidRecordCount 1575 } 1576 return 0 1577 } 1578 1579 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetInvalidRecordCount() int64 { 1580 if x != nil { 1581 return x.InvalidRecordCount 1582 } 1583 return 0 1584 } 1585 1586 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetPartialErrors() []*NearestNeighborSearchOperationMetadata_RecordError { 1587 if x != nil { 1588 return x.PartialErrors 1589 } 1590 return nil 1591 } 1592 1593 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetValidSparseRecordCount() int64 { 1594 if x != nil { 1595 return x.ValidSparseRecordCount 1596 } 1597 return 0 1598 } 1599 1600 func (x *NearestNeighborSearchOperationMetadata_ContentValidationStats) GetInvalidSparseRecordCount() int64 { 1601 if x != nil { 1602 return x.InvalidSparseRecordCount 1603 } 1604 return 0 1605 } 1606 1607 var File_google_cloud_aiplatform_v1beta1_index_service_proto protoreflect.FileDescriptor 1608 1609 var file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDesc = []byte{ 1610 0x0a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 1611 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1612 0x31, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 1613 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1614 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1615 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 1616 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 1617 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 1618 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 1619 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 1620 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 1621 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 1622 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1623 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 1624 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 1625 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 1626 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 1627 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 1628 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 1629 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 1630 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 1631 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 1632 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1633 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 1634 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9a, 0x01, 0x0a, 0x12, 1635 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 1636 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 1637 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 1638 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 1639 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 1640 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 1641 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1642 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1643 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x03, 0xe0, 0x41, 1644 0x02, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xaa, 0x02, 0x0a, 0x1c, 0x43, 0x72, 0x65, 1645 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 1646 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x64, 0x0a, 0x10, 0x67, 0x65, 0x6e, 1647 0x65, 0x72, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 1648 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1649 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 1650 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x65, 1651 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 1652 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 1653 0xa3, 0x01, 0x0a, 0x2a, 0x6e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x65, 0x69, 0x67, 1654 0x68, 0x62, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6f, 0x70, 0x65, 0x72, 1655 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 1656 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1657 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1658 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 1659 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 1660 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x26, 0x6e, 1661 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 1662 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 1663 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4e, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 1664 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1665 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 1666 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1667 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 1668 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 1669 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 1670 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 1671 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 1672 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4c, 1673 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 1674 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 1675 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 1676 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 1677 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 1678 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 1679 0x6b, 0x65, 0x6e, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 1680 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1681 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 1682 0x73, 0x6b, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x7f, 0x0a, 0x13, 1683 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 1684 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x01, 1685 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1686 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1687 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x07, 0x69, 0x6e, 1688 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 1689 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 1690 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x94, 0x01, 1691 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 1692 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 1693 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1694 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 1695 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x03, 0xe0, 0x41, 0x02, 1696 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 1697 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 1698 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 1699 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 1700 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xaa, 0x02, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 1701 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 1702 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x64, 0x0a, 0x10, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 1703 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 1704 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 1705 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1706 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 1707 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x67, 0x65, 0x6e, 0x65, 1708 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xa3, 0x01, 0x0a, 0x2a, 1709 0x6e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x5f, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 1710 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 1711 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 1712 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1713 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1714 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 1715 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 1716 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x26, 0x6e, 0x65, 0x61, 0x72, 0x65, 1717 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 1718 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 1719 0x61, 0x22, 0xf5, 0x0b, 0x0a, 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 1720 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1721 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 1722 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1723 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 1724 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 1725 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x02, 1726 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x13, 0x69, 0x73, 0x43, 0x6f, 0x6d, 1727 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0x60, 1728 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 1729 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 1730 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 1731 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 1732 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 1733 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1734 0x1a, 0x86, 0x0a, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 1735 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01, 0x0a, 0x17, 0x62, 0x69, 0x67, 0x5f, 0x71, 0x75, 0x65, 1736 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1737 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x58, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1738 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 1739 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 1740 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 1741 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x69, 0x67, 0x51, 1742 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1743 0x48, 0x00, 0x52, 0x14, 0x62, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 1744 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xfe, 0x06, 0x0a, 0x15, 0x44, 0x61, 0x74, 1745 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x70, 0x70, 0x69, 1746 0x6e, 0x67, 0x12, 0x20, 0x0a, 0x09, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 1747 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x64, 0x43, 0x6f, 1748 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x2e, 0x0a, 0x10, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 1749 0x67, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 1750 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 1751 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x85, 0x01, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 1752 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1753 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 1754 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 1755 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6f, 1756 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x61, 1757 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x70, 0x70, 1758 0x69, 0x6e, 0x67, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 1759 0x01, 0x52, 0x09, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x73, 0x12, 0x9b, 0x01, 0x0a, 1760 0x11, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 1761 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1762 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 1763 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 1764 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6f, 1765 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x61, 1766 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x70, 0x70, 1767 0x69, 0x6e, 0x67, 0x2e, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x52, 0x65, 0x73, 0x74, 0x72, 1768 0x69, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 1769 0x63, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x10, 0x6d, 0x65, 1770 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x05, 1771 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x64, 1772 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x1a, 0x7b, 0x0a, 0x08, 0x52, 0x65, 1773 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 1774 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 1775 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 1776 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 1777 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 1778 0x6e, 0x12, 0x24, 0x0a, 0x0b, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 1779 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x64, 0x65, 0x6e, 1780 0x79, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x1a, 0xbf, 0x02, 0x0a, 0x0f, 0x4e, 0x75, 0x6d, 0x65, 1781 0x72, 0x69, 0x63, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x09, 0x6e, 1782 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 1783 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x26, 1784 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 1785 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 1786 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x97, 0x01, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 1787 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x73, 0x2e, 0x67, 0x6f, 1788 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 1789 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 1790 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 1791 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1792 0x2e, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 1793 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x2e, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x52, 0x65, 1794 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 1795 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 1796 0x22, 0x47, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 1797 0x16, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 1798 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x54, 1799 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 1800 0x06, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x1a, 0xd3, 0x01, 0x0a, 0x14, 0x42, 0x69, 1801 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 1802 0x69, 0x67, 0x12, 0x22, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 1803 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x74, 0x61, 0x62, 1804 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x96, 0x01, 0x0a, 0x17, 0x64, 0x61, 0x74, 0x61, 0x70, 1805 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 1806 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1807 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 1808 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 1809 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6f, 1810 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x61, 1811 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x70, 0x70, 1812 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 1813 0x69, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x42, 1814 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x1c, 0x49, 0x6d, 1815 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 1816 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x64, 0x0a, 0x10, 0x67, 0x65, 1817 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 1818 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1819 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1820 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, 0x70, 1821 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 1822 0x0f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 1823 0x22, 0x51, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 1824 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 1825 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 1826 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 1827 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x04, 0x6e, 1828 0x61, 0x6d, 0x65, 0x22, 0xeb, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x44, 0x61, 1829 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 1830 0x3d, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 1831 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 1832 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 1833 0x6d, 0x2f, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x4f, 1834 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 1835 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1836 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 1837 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 1838 0x69, 0x6e, 0x74, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 1839 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 1840 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 1841 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 1842 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 1843 0x6b, 0x22, 0x1a, 0x0a, 0x18, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x70, 1844 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7d, 0x0a, 1845 0x17, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 1846 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 1847 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 1848 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1849 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x64, 0x65, 0x78, 1850 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x70, 1851 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 1852 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x1a, 0x0a, 0x18, 1853 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 1854 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbd, 0x0b, 0x0a, 0x26, 0x4e, 0x65, 0x61, 1855 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 1856 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 1857 0x61, 0x74, 0x61, 0x12, 0x98, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 1858 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 1859 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1860 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 1861 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 1862 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 1863 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 1864 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 1865 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 1866 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x28, 1867 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 1868 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x42, 0x79, 1869 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xb6, 0x06, 0x0a, 0x0b, 0x52, 0x65, 0x63, 1870 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x82, 0x01, 0x0a, 0x0a, 0x65, 0x72, 0x72, 1871 0x6f, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x63, 0x2e, 1872 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 1873 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 1874 0x4e, 0x65, 0x61, 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 1875 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 1876 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 1877 0x6f, 0x72, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 1878 0x70, 0x65, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 1879 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 1880 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 1881 0x67, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x63, 0x73, 1882 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 1883 0x63, 0x65, 0x47, 0x63, 0x73, 0x55, 0x72, 0x69, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6d, 0x62, 0x65, 1884 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 1885 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 1886 0x61, 0x77, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 1887 0x09, 0x72, 0x61, 0x77, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x94, 0x04, 0x0a, 0x0f, 0x52, 1888 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 1889 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 1890 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4d, 1891 0x50, 0x54, 0x59, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 1892 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x53, 0x59, 0x4e, 0x54, 0x41, 1893 0x58, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x43, 1894 0x53, 0x56, 0x5f, 0x53, 0x59, 0x4e, 0x54, 0x41, 0x58, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x49, 1895 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x56, 0x52, 0x4f, 0x5f, 0x53, 0x59, 0x4e, 0x54, 1896 0x41, 0x58, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 1897 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x44, 0x10, 0x05, 0x12, 0x1b, 1898 0x0a, 0x17, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x49, 0x5a, 0x45, 1899 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x4e, 1900 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 1901 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x41, 0x52, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x52, 1902 0x52, 0x4f, 0x52, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x55, 0x50, 0x4c, 0x49, 0x43, 0x41, 1903 0x54, 0x45, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x09, 0x12, 0x13, 1904 0x0a, 0x0f, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x50, 0x4f, 0x49, 0x4e, 1905 0x54, 0x10, 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x4c, 0x45, 0x5f, 1906 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56, 0x41, 1907 0x4c, 0x49, 0x44, 0x5f, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x5f, 0x56, 0x41, 0x4c, 0x55, 1908 0x45, 0x10, 0x0c, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x45, 1909 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x0d, 0x12, 0x1d, 0x0a, 0x19, 0x49, 0x4e, 0x56, 1910 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x53, 0x50, 0x41, 0x52, 0x53, 0x45, 0x5f, 0x44, 0x49, 0x4d, 0x45, 1911 0x4e, 0x53, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x0e, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x56, 0x41, 1912 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 1913 0x0f, 0x12, 0x1c, 0x0a, 0x18, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x53, 0x50, 0x41, 1914 0x52, 0x53, 0x45, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x10, 0x12, 1915 0x15, 0x0a, 0x11, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 1916 0x44, 0x49, 0x4e, 0x47, 0x10, 0x11, 0x12, 0x1e, 0x0a, 0x1a, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 1917 0x44, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x45, 0x54, 0x41, 1918 0x44, 0x41, 0x54, 0x41, 0x10, 0x12, 0x12, 0x29, 0x0a, 0x25, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 1919 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x58, 0x43, 1920 0x45, 0x45, 0x44, 0x53, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 1921 0x13, 0x1a, 0x94, 0x03, 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x6c, 1922 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 1923 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x63, 0x73, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 1924 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x63, 0x73, 0x55, 1925 0x72, 0x69, 0x12, 0x2c, 0x0a, 0x12, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x6f, 1926 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 1927 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 1928 0x12, 0x30, 0x0a, 0x14, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x6f, 1929 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 1930 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 1931 0x6e, 0x74, 0x12, 0x7a, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x65, 0x72, 1932 0x72, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67, 0x6f, 0x6f, 1933 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 1934 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x61, 1935 0x72, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x53, 0x65, 0x61, 0x72, 1936 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 1937 0x61, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 1938 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x39, 1939 0x0a, 0x19, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x73, 0x70, 0x61, 0x72, 0x73, 0x65, 0x5f, 0x72, 1940 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 1941 0x03, 0x52, 0x16, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x52, 0x65, 1942 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x69, 0x6e, 0x76, 1943 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x73, 0x70, 0x61, 0x72, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x6f, 1944 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x18, 1945 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x52, 0x65, 0x63, 1946 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0xe1, 0x0d, 0x0a, 0x0c, 0x49, 0x6e, 0x64, 1947 0x65, 0x78, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xd9, 0x01, 0x0a, 0x0b, 0x43, 0x72, 1948 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1949 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 1950 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 1951 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 1952 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 1953 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x76, 0xca, 1954 0x41, 0x25, 0x0a, 0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 1955 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 1956 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 1957 0x2c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x39, 0x3a, 0x05, 0x69, 0x6e, 1958 0x64, 0x65, 0x78, 0x22, 0x30, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 1959 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 1960 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e, 1961 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0xa5, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x64, 1962 0x65, 0x78, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1963 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 1964 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 1965 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1966 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 1967 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3f, 0xda, 0x41, 1968 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31, 1969 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 1970 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 1971 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xcd, 0x01, 1972 0x0a, 0x0b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x33, 0x2e, 1973 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 1974 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 1975 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 1976 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 1977 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 1978 0x6e, 0x22, 0x6a, 0xca, 0x41, 0x25, 0x0a, 0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x49, 1979 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 1980 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x82, 0xd3, 0xe4, 0x93, 0x02, 1981 0x3c, 0x3a, 0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 1982 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 1983 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x64, 0x65, 1984 0x78, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x12, 0xbb, 0x01, 1985 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x33, 0x2e, 1986 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 1987 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 1988 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 1989 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1990 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 1991 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 1992 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x41, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 1993 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31, 0x62, 0x65, 1994 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 1995 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 1996 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0xe5, 0x01, 0x0a, 0x0b, 1997 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x33, 0x2e, 0x67, 0x6f, 1998 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 1999 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 2000 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2001 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 2002 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 2003 0x81, 0x01, 0xca, 0x41, 0x25, 0x0a, 0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x55, 0x70, 2004 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 2005 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x11, 0x69, 0x6e, 0x64, 2006 0x65, 0x78, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 0xd3, 2007 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x32, 0x36, 0x2f, 0x76, 0x31, 2008 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x6e, 0x61, 0x6d, 2009 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 2010 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 2011 0x2f, 0x2a, 0x7d, 0x12, 0xd5, 0x01, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 2012 0x64, 0x65, 0x78, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2013 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 2014 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x64, 0x65, 2015 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2016 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 2017 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x72, 0xca, 0x41, 0x30, 0x0a, 0x15, 0x67, 0x6f, 2018 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 2019 0x70, 0x74, 0x79, 0x12, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 2020 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 2021 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x2a, 0x30, 0x2f, 0x76, 0x31, 0x62, 0x65, 2022 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 2023 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 2024 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xd6, 0x01, 0x0a, 0x10, 2025 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 2026 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2027 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 2028 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 2029 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 2030 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2031 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 2032 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 2033 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x3a, 0x01, 0x2a, 2034 0x22, 0x42, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x69, 0x6e, 0x64, 0x65, 2035 0x78, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 2036 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 2037 0x2f, 0x2a, 0x7d, 0x3a, 0x75, 0x70, 0x73, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 2038 0x69, 0x6e, 0x74, 0x73, 0x12, 0xd6, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 2039 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2040 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 2041 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 2042 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 2043 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2044 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 2045 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 2046 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4d, 2047 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x3a, 0x01, 0x2a, 0x22, 0x42, 0x2f, 0x76, 0x31, 0x62, 0x65, 2048 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 2049 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 2050 0x2a, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x6d, 2051 0x6f, 0x76, 0x65, 0x44, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x4d, 0xca, 2052 0x41, 0x19, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 2053 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x2e, 0x68, 0x74, 2054 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2055 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 2056 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0xe8, 0x01, 0x0a, 2057 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2058 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 2059 0x65, 0x74, 0x61, 0x31, 0x42, 0x11, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x65, 0x72, 0x76, 0x69, 2060 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2061 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 2062 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 2063 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 2064 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 2065 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 2066 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 2067 0xca, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 2068 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 2069 0x61, 0x31, 0xea, 0x02, 0x22, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 2070 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 2071 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 2072 } 2073 2074 var ( 2075 file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescOnce sync.Once 2076 file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDesc 2077 ) 2078 2079 func file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescGZIP() []byte { 2080 file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescOnce.Do(func() { 2081 file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescData) 2082 }) 2083 return file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDescData 2084 } 2085 2086 var file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 2087 var file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes = make([]protoimpl.MessageInfo, 22) 2088 var file_google_cloud_aiplatform_v1beta1_index_service_proto_goTypes = []any{ 2089 (ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict_ValueType)(0), // 0: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.NumericRestrict.ValueType 2090 (NearestNeighborSearchOperationMetadata_RecordError_RecordErrorType)(0), // 1: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.RecordError.RecordErrorType 2091 (*CreateIndexRequest)(nil), // 2: google.cloud.aiplatform.v1beta1.CreateIndexRequest 2092 (*CreateIndexOperationMetadata)(nil), // 3: google.cloud.aiplatform.v1beta1.CreateIndexOperationMetadata 2093 (*GetIndexRequest)(nil), // 4: google.cloud.aiplatform.v1beta1.GetIndexRequest 2094 (*ListIndexesRequest)(nil), // 5: google.cloud.aiplatform.v1beta1.ListIndexesRequest 2095 (*ListIndexesResponse)(nil), // 6: google.cloud.aiplatform.v1beta1.ListIndexesResponse 2096 (*UpdateIndexRequest)(nil), // 7: google.cloud.aiplatform.v1beta1.UpdateIndexRequest 2097 (*UpdateIndexOperationMetadata)(nil), // 8: google.cloud.aiplatform.v1beta1.UpdateIndexOperationMetadata 2098 (*ImportIndexRequest)(nil), // 9: google.cloud.aiplatform.v1beta1.ImportIndexRequest 2099 (*ImportIndexOperationMetadata)(nil), // 10: google.cloud.aiplatform.v1beta1.ImportIndexOperationMetadata 2100 (*DeleteIndexRequest)(nil), // 11: google.cloud.aiplatform.v1beta1.DeleteIndexRequest 2101 (*UpsertDatapointsRequest)(nil), // 12: google.cloud.aiplatform.v1beta1.UpsertDatapointsRequest 2102 (*UpsertDatapointsResponse)(nil), // 13: google.cloud.aiplatform.v1beta1.UpsertDatapointsResponse 2103 (*RemoveDatapointsRequest)(nil), // 14: google.cloud.aiplatform.v1beta1.RemoveDatapointsRequest 2104 (*RemoveDatapointsResponse)(nil), // 15: google.cloud.aiplatform.v1beta1.RemoveDatapointsResponse 2105 (*NearestNeighborSearchOperationMetadata)(nil), // 16: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata 2106 (*ImportIndexRequest_ConnectorConfig)(nil), // 17: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig 2107 (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping)(nil), // 18: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping 2108 (*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig)(nil), // 19: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.BigQuerySourceConfig 2109 (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_Restrict)(nil), // 20: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.Restrict 2110 (*ImportIndexRequest_ConnectorConfig_DatapointFieldMapping_NumericRestrict)(nil), // 21: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.NumericRestrict 2111 (*NearestNeighborSearchOperationMetadata_RecordError)(nil), // 22: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.RecordError 2112 (*NearestNeighborSearchOperationMetadata_ContentValidationStats)(nil), // 23: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.ContentValidationStats 2113 (*Index)(nil), // 24: google.cloud.aiplatform.v1beta1.Index 2114 (*GenericOperationMetadata)(nil), // 25: google.cloud.aiplatform.v1beta1.GenericOperationMetadata 2115 (*fieldmaskpb.FieldMask)(nil), // 26: google.protobuf.FieldMask 2116 (*IndexDatapoint)(nil), // 27: google.cloud.aiplatform.v1beta1.IndexDatapoint 2117 (*longrunningpb.Operation)(nil), // 28: google.longrunning.Operation 2118 } 2119 var file_google_cloud_aiplatform_v1beta1_index_service_proto_depIdxs = []int32{ 2120 24, // 0: google.cloud.aiplatform.v1beta1.CreateIndexRequest.index:type_name -> google.cloud.aiplatform.v1beta1.Index 2121 25, // 1: google.cloud.aiplatform.v1beta1.CreateIndexOperationMetadata.generic_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenericOperationMetadata 2122 16, // 2: google.cloud.aiplatform.v1beta1.CreateIndexOperationMetadata.nearest_neighbor_search_operation_metadata:type_name -> google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata 2123 26, // 3: google.cloud.aiplatform.v1beta1.ListIndexesRequest.read_mask:type_name -> google.protobuf.FieldMask 2124 24, // 4: google.cloud.aiplatform.v1beta1.ListIndexesResponse.indexes:type_name -> google.cloud.aiplatform.v1beta1.Index 2125 24, // 5: google.cloud.aiplatform.v1beta1.UpdateIndexRequest.index:type_name -> google.cloud.aiplatform.v1beta1.Index 2126 26, // 6: google.cloud.aiplatform.v1beta1.UpdateIndexRequest.update_mask:type_name -> google.protobuf.FieldMask 2127 25, // 7: google.cloud.aiplatform.v1beta1.UpdateIndexOperationMetadata.generic_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenericOperationMetadata 2128 16, // 8: google.cloud.aiplatform.v1beta1.UpdateIndexOperationMetadata.nearest_neighbor_search_operation_metadata:type_name -> google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata 2129 17, // 9: google.cloud.aiplatform.v1beta1.ImportIndexRequest.config:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig 2130 25, // 10: google.cloud.aiplatform.v1beta1.ImportIndexOperationMetadata.generic_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenericOperationMetadata 2131 27, // 11: google.cloud.aiplatform.v1beta1.UpsertDatapointsRequest.datapoints:type_name -> google.cloud.aiplatform.v1beta1.IndexDatapoint 2132 26, // 12: google.cloud.aiplatform.v1beta1.UpsertDatapointsRequest.update_mask:type_name -> google.protobuf.FieldMask 2133 23, // 13: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.content_validation_stats:type_name -> google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.ContentValidationStats 2134 19, // 14: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.big_query_source_config:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.BigQuerySourceConfig 2135 20, // 15: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.restricts:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.Restrict 2136 21, // 16: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.numeric_restricts:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.NumericRestrict 2137 18, // 17: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.BigQuerySourceConfig.datapoint_field_mapping:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping 2138 0, // 18: google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.NumericRestrict.value_type:type_name -> google.cloud.aiplatform.v1beta1.ImportIndexRequest.ConnectorConfig.DatapointFieldMapping.NumericRestrict.ValueType 2139 1, // 19: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.RecordError.error_type:type_name -> google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.RecordError.RecordErrorType 2140 22, // 20: google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.ContentValidationStats.partial_errors:type_name -> google.cloud.aiplatform.v1beta1.NearestNeighborSearchOperationMetadata.RecordError 2141 2, // 21: google.cloud.aiplatform.v1beta1.IndexService.CreateIndex:input_type -> google.cloud.aiplatform.v1beta1.CreateIndexRequest 2142 4, // 22: google.cloud.aiplatform.v1beta1.IndexService.GetIndex:input_type -> google.cloud.aiplatform.v1beta1.GetIndexRequest 2143 9, // 23: google.cloud.aiplatform.v1beta1.IndexService.ImportIndex:input_type -> google.cloud.aiplatform.v1beta1.ImportIndexRequest 2144 5, // 24: google.cloud.aiplatform.v1beta1.IndexService.ListIndexes:input_type -> google.cloud.aiplatform.v1beta1.ListIndexesRequest 2145 7, // 25: google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex:input_type -> google.cloud.aiplatform.v1beta1.UpdateIndexRequest 2146 11, // 26: google.cloud.aiplatform.v1beta1.IndexService.DeleteIndex:input_type -> google.cloud.aiplatform.v1beta1.DeleteIndexRequest 2147 12, // 27: google.cloud.aiplatform.v1beta1.IndexService.UpsertDatapoints:input_type -> google.cloud.aiplatform.v1beta1.UpsertDatapointsRequest 2148 14, // 28: google.cloud.aiplatform.v1beta1.IndexService.RemoveDatapoints:input_type -> google.cloud.aiplatform.v1beta1.RemoveDatapointsRequest 2149 28, // 29: google.cloud.aiplatform.v1beta1.IndexService.CreateIndex:output_type -> google.longrunning.Operation 2150 24, // 30: google.cloud.aiplatform.v1beta1.IndexService.GetIndex:output_type -> google.cloud.aiplatform.v1beta1.Index 2151 28, // 31: google.cloud.aiplatform.v1beta1.IndexService.ImportIndex:output_type -> google.longrunning.Operation 2152 6, // 32: google.cloud.aiplatform.v1beta1.IndexService.ListIndexes:output_type -> google.cloud.aiplatform.v1beta1.ListIndexesResponse 2153 28, // 33: google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex:output_type -> google.longrunning.Operation 2154 28, // 34: google.cloud.aiplatform.v1beta1.IndexService.DeleteIndex:output_type -> google.longrunning.Operation 2155 13, // 35: google.cloud.aiplatform.v1beta1.IndexService.UpsertDatapoints:output_type -> google.cloud.aiplatform.v1beta1.UpsertDatapointsResponse 2156 15, // 36: google.cloud.aiplatform.v1beta1.IndexService.RemoveDatapoints:output_type -> google.cloud.aiplatform.v1beta1.RemoveDatapointsResponse 2157 29, // [29:37] is the sub-list for method output_type 2158 21, // [21:29] is the sub-list for method input_type 2159 21, // [21:21] is the sub-list for extension type_name 2160 21, // [21:21] is the sub-list for extension extendee 2161 0, // [0:21] is the sub-list for field type_name 2162 } 2163 2164 func init() { file_google_cloud_aiplatform_v1beta1_index_service_proto_init() } 2165 func file_google_cloud_aiplatform_v1beta1_index_service_proto_init() { 2166 if File_google_cloud_aiplatform_v1beta1_index_service_proto != nil { 2167 return 2168 } 2169 file_google_cloud_aiplatform_v1beta1_index_proto_init() 2170 file_google_cloud_aiplatform_v1beta1_operation_proto_init() 2171 file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes[15].OneofWrappers = []any{ 2172 (*ImportIndexRequest_ConnectorConfig_BigQuerySourceConfig_)(nil), 2173 } 2174 type x struct{} 2175 out := protoimpl.TypeBuilder{ 2176 File: protoimpl.DescBuilder{ 2177 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2178 RawDescriptor: file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDesc, 2179 NumEnums: 2, 2180 NumMessages: 22, 2181 NumExtensions: 0, 2182 NumServices: 1, 2183 }, 2184 GoTypes: file_google_cloud_aiplatform_v1beta1_index_service_proto_goTypes, 2185 DependencyIndexes: file_google_cloud_aiplatform_v1beta1_index_service_proto_depIdxs, 2186 EnumInfos: file_google_cloud_aiplatform_v1beta1_index_service_proto_enumTypes, 2187 MessageInfos: file_google_cloud_aiplatform_v1beta1_index_service_proto_msgTypes, 2188 }.Build() 2189 File_google_cloud_aiplatform_v1beta1_index_service_proto = out.File 2190 file_google_cloud_aiplatform_v1beta1_index_service_proto_rawDesc = nil 2191 file_google_cloud_aiplatform_v1beta1_index_service_proto_goTypes = nil 2192 file_google_cloud_aiplatform_v1beta1_index_service_proto_depIdxs = nil 2193 }