cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/tensorboard_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/tensorboard_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 // Request message for 42 // [TensorboardService.CreateTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard]. 43 type CreateTensorboardRequest struct { 44 state protoimpl.MessageState 45 sizeCache protoimpl.SizeCache 46 unknownFields protoimpl.UnknownFields 47 48 // Required. The resource name of the Location to create the Tensorboard in. 49 // Format: `projects/{project}/locations/{location}` 50 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 51 // Required. The Tensorboard to create. 52 Tensorboard *Tensorboard `protobuf:"bytes,2,opt,name=tensorboard,proto3" json:"tensorboard,omitempty"` 53 } 54 55 func (x *CreateTensorboardRequest) Reset() { 56 *x = CreateTensorboardRequest{} 57 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[0] 58 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 59 ms.StoreMessageInfo(mi) 60 } 61 62 func (x *CreateTensorboardRequest) String() string { 63 return protoimpl.X.MessageStringOf(x) 64 } 65 66 func (*CreateTensorboardRequest) ProtoMessage() {} 67 68 func (x *CreateTensorboardRequest) ProtoReflect() protoreflect.Message { 69 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[0] 70 if x != nil { 71 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 72 if ms.LoadMessageInfo() == nil { 73 ms.StoreMessageInfo(mi) 74 } 75 return ms 76 } 77 return mi.MessageOf(x) 78 } 79 80 // Deprecated: Use CreateTensorboardRequest.ProtoReflect.Descriptor instead. 81 func (*CreateTensorboardRequest) Descriptor() ([]byte, []int) { 82 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{0} 83 } 84 85 func (x *CreateTensorboardRequest) GetParent() string { 86 if x != nil { 87 return x.Parent 88 } 89 return "" 90 } 91 92 func (x *CreateTensorboardRequest) GetTensorboard() *Tensorboard { 93 if x != nil { 94 return x.Tensorboard 95 } 96 return nil 97 } 98 99 // Request message for 100 // [TensorboardService.GetTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard]. 101 type GetTensorboardRequest struct { 102 state protoimpl.MessageState 103 sizeCache protoimpl.SizeCache 104 unknownFields protoimpl.UnknownFields 105 106 // Required. The name of the Tensorboard resource. 107 // Format: 108 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 109 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 110 } 111 112 func (x *GetTensorboardRequest) Reset() { 113 *x = GetTensorboardRequest{} 114 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[1] 115 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 116 ms.StoreMessageInfo(mi) 117 } 118 119 func (x *GetTensorboardRequest) String() string { 120 return protoimpl.X.MessageStringOf(x) 121 } 122 123 func (*GetTensorboardRequest) ProtoMessage() {} 124 125 func (x *GetTensorboardRequest) ProtoReflect() protoreflect.Message { 126 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[1] 127 if x != nil { 128 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 129 if ms.LoadMessageInfo() == nil { 130 ms.StoreMessageInfo(mi) 131 } 132 return ms 133 } 134 return mi.MessageOf(x) 135 } 136 137 // Deprecated: Use GetTensorboardRequest.ProtoReflect.Descriptor instead. 138 func (*GetTensorboardRequest) Descriptor() ([]byte, []int) { 139 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{1} 140 } 141 142 func (x *GetTensorboardRequest) GetName() string { 143 if x != nil { 144 return x.Name 145 } 146 return "" 147 } 148 149 // Request message for 150 // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards]. 151 type ListTensorboardsRequest struct { 152 state protoimpl.MessageState 153 sizeCache protoimpl.SizeCache 154 unknownFields protoimpl.UnknownFields 155 156 // Required. The resource name of the Location to list Tensorboards. 157 // Format: 158 // `projects/{project}/locations/{location}` 159 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 160 // Lists the Tensorboards that match the filter expression. 161 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 162 // The maximum number of Tensorboards to return. The service may return 163 // fewer than this value. If unspecified, at most 100 Tensorboards are 164 // returned. The maximum value is 100; values above 100 are coerced to 165 // 100. 166 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 167 // A page token, received from a previous 168 // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards] 169 // call. Provide this to retrieve the subsequent page. 170 // 171 // When paginating, all other parameters provided to 172 // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards] 173 // must match the call that provided the page token. 174 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 175 // Field to use to sort the list. 176 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 177 // Mask specifying which fields to read. 178 ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,6,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"` 179 } 180 181 func (x *ListTensorboardsRequest) Reset() { 182 *x = ListTensorboardsRequest{} 183 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[2] 184 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 185 ms.StoreMessageInfo(mi) 186 } 187 188 func (x *ListTensorboardsRequest) String() string { 189 return protoimpl.X.MessageStringOf(x) 190 } 191 192 func (*ListTensorboardsRequest) ProtoMessage() {} 193 194 func (x *ListTensorboardsRequest) ProtoReflect() protoreflect.Message { 195 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[2] 196 if x != nil { 197 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 198 if ms.LoadMessageInfo() == nil { 199 ms.StoreMessageInfo(mi) 200 } 201 return ms 202 } 203 return mi.MessageOf(x) 204 } 205 206 // Deprecated: Use ListTensorboardsRequest.ProtoReflect.Descriptor instead. 207 func (*ListTensorboardsRequest) Descriptor() ([]byte, []int) { 208 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{2} 209 } 210 211 func (x *ListTensorboardsRequest) GetParent() string { 212 if x != nil { 213 return x.Parent 214 } 215 return "" 216 } 217 218 func (x *ListTensorboardsRequest) GetFilter() string { 219 if x != nil { 220 return x.Filter 221 } 222 return "" 223 } 224 225 func (x *ListTensorboardsRequest) GetPageSize() int32 { 226 if x != nil { 227 return x.PageSize 228 } 229 return 0 230 } 231 232 func (x *ListTensorboardsRequest) GetPageToken() string { 233 if x != nil { 234 return x.PageToken 235 } 236 return "" 237 } 238 239 func (x *ListTensorboardsRequest) GetOrderBy() string { 240 if x != nil { 241 return x.OrderBy 242 } 243 return "" 244 } 245 246 func (x *ListTensorboardsRequest) GetReadMask() *fieldmaskpb.FieldMask { 247 if x != nil { 248 return x.ReadMask 249 } 250 return nil 251 } 252 253 // Response message for 254 // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards]. 255 type ListTensorboardsResponse struct { 256 state protoimpl.MessageState 257 sizeCache protoimpl.SizeCache 258 unknownFields protoimpl.UnknownFields 259 260 // The Tensorboards mathching the request. 261 Tensorboards []*Tensorboard `protobuf:"bytes,1,rep,name=tensorboards,proto3" json:"tensorboards,omitempty"` 262 // A token, which can be sent as 263 // [ListTensorboardsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardsRequest.page_token] 264 // to retrieve the next page. If this field is omitted, there are no 265 // subsequent pages. 266 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 267 } 268 269 func (x *ListTensorboardsResponse) Reset() { 270 *x = ListTensorboardsResponse{} 271 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[3] 272 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 273 ms.StoreMessageInfo(mi) 274 } 275 276 func (x *ListTensorboardsResponse) String() string { 277 return protoimpl.X.MessageStringOf(x) 278 } 279 280 func (*ListTensorboardsResponse) ProtoMessage() {} 281 282 func (x *ListTensorboardsResponse) ProtoReflect() protoreflect.Message { 283 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[3] 284 if x != nil { 285 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 286 if ms.LoadMessageInfo() == nil { 287 ms.StoreMessageInfo(mi) 288 } 289 return ms 290 } 291 return mi.MessageOf(x) 292 } 293 294 // Deprecated: Use ListTensorboardsResponse.ProtoReflect.Descriptor instead. 295 func (*ListTensorboardsResponse) Descriptor() ([]byte, []int) { 296 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{3} 297 } 298 299 func (x *ListTensorboardsResponse) GetTensorboards() []*Tensorboard { 300 if x != nil { 301 return x.Tensorboards 302 } 303 return nil 304 } 305 306 func (x *ListTensorboardsResponse) GetNextPageToken() string { 307 if x != nil { 308 return x.NextPageToken 309 } 310 return "" 311 } 312 313 // Request message for 314 // [TensorboardService.UpdateTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard]. 315 type UpdateTensorboardRequest struct { 316 state protoimpl.MessageState 317 sizeCache protoimpl.SizeCache 318 unknownFields protoimpl.UnknownFields 319 320 // Required. Field mask is used to specify the fields to be overwritten in the 321 // Tensorboard resource by the update. 322 // The fields specified in the update_mask are relative to the resource, not 323 // the full request. A field is overwritten if it's in the mask. If the 324 // user does not provide a mask then all fields are overwritten if new 325 // values are specified. 326 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 327 // Required. The Tensorboard's `name` field is used to identify the 328 // Tensorboard to be updated. Format: 329 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 330 Tensorboard *Tensorboard `protobuf:"bytes,2,opt,name=tensorboard,proto3" json:"tensorboard,omitempty"` 331 } 332 333 func (x *UpdateTensorboardRequest) Reset() { 334 *x = UpdateTensorboardRequest{} 335 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[4] 336 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 337 ms.StoreMessageInfo(mi) 338 } 339 340 func (x *UpdateTensorboardRequest) String() string { 341 return protoimpl.X.MessageStringOf(x) 342 } 343 344 func (*UpdateTensorboardRequest) ProtoMessage() {} 345 346 func (x *UpdateTensorboardRequest) ProtoReflect() protoreflect.Message { 347 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[4] 348 if x != nil { 349 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 350 if ms.LoadMessageInfo() == nil { 351 ms.StoreMessageInfo(mi) 352 } 353 return ms 354 } 355 return mi.MessageOf(x) 356 } 357 358 // Deprecated: Use UpdateTensorboardRequest.ProtoReflect.Descriptor instead. 359 func (*UpdateTensorboardRequest) Descriptor() ([]byte, []int) { 360 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{4} 361 } 362 363 func (x *UpdateTensorboardRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 364 if x != nil { 365 return x.UpdateMask 366 } 367 return nil 368 } 369 370 func (x *UpdateTensorboardRequest) GetTensorboard() *Tensorboard { 371 if x != nil { 372 return x.Tensorboard 373 } 374 return nil 375 } 376 377 // Request message for 378 // [TensorboardService.DeleteTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard]. 379 type DeleteTensorboardRequest struct { 380 state protoimpl.MessageState 381 sizeCache protoimpl.SizeCache 382 unknownFields protoimpl.UnknownFields 383 384 // Required. The name of the Tensorboard to be deleted. 385 // Format: 386 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 387 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 388 } 389 390 func (x *DeleteTensorboardRequest) Reset() { 391 *x = DeleteTensorboardRequest{} 392 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[5] 393 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 394 ms.StoreMessageInfo(mi) 395 } 396 397 func (x *DeleteTensorboardRequest) String() string { 398 return protoimpl.X.MessageStringOf(x) 399 } 400 401 func (*DeleteTensorboardRequest) ProtoMessage() {} 402 403 func (x *DeleteTensorboardRequest) ProtoReflect() protoreflect.Message { 404 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[5] 405 if x != nil { 406 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 407 if ms.LoadMessageInfo() == nil { 408 ms.StoreMessageInfo(mi) 409 } 410 return ms 411 } 412 return mi.MessageOf(x) 413 } 414 415 // Deprecated: Use DeleteTensorboardRequest.ProtoReflect.Descriptor instead. 416 func (*DeleteTensorboardRequest) Descriptor() ([]byte, []int) { 417 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{5} 418 } 419 420 func (x *DeleteTensorboardRequest) GetName() string { 421 if x != nil { 422 return x.Name 423 } 424 return "" 425 } 426 427 // Request message for 428 // [TensorboardService.ReadTensorboardUsage][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage]. 429 type ReadTensorboardUsageRequest struct { 430 state protoimpl.MessageState 431 sizeCache protoimpl.SizeCache 432 unknownFields protoimpl.UnknownFields 433 434 // Required. The name of the Tensorboard resource. 435 // Format: 436 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 437 Tensorboard string `protobuf:"bytes,1,opt,name=tensorboard,proto3" json:"tensorboard,omitempty"` 438 } 439 440 func (x *ReadTensorboardUsageRequest) Reset() { 441 *x = ReadTensorboardUsageRequest{} 442 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[6] 443 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 444 ms.StoreMessageInfo(mi) 445 } 446 447 func (x *ReadTensorboardUsageRequest) String() string { 448 return protoimpl.X.MessageStringOf(x) 449 } 450 451 func (*ReadTensorboardUsageRequest) ProtoMessage() {} 452 453 func (x *ReadTensorboardUsageRequest) ProtoReflect() protoreflect.Message { 454 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[6] 455 if x != nil { 456 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 457 if ms.LoadMessageInfo() == nil { 458 ms.StoreMessageInfo(mi) 459 } 460 return ms 461 } 462 return mi.MessageOf(x) 463 } 464 465 // Deprecated: Use ReadTensorboardUsageRequest.ProtoReflect.Descriptor instead. 466 func (*ReadTensorboardUsageRequest) Descriptor() ([]byte, []int) { 467 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{6} 468 } 469 470 func (x *ReadTensorboardUsageRequest) GetTensorboard() string { 471 if x != nil { 472 return x.Tensorboard 473 } 474 return "" 475 } 476 477 // Response message for 478 // [TensorboardService.ReadTensorboardUsage][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage]. 479 type ReadTensorboardUsageResponse struct { 480 state protoimpl.MessageState 481 sizeCache protoimpl.SizeCache 482 unknownFields protoimpl.UnknownFields 483 484 // Maps year-month (YYYYMM) string to per month usage data. 485 MonthlyUsageData map[string]*ReadTensorboardUsageResponse_PerMonthUsageData `protobuf:"bytes,1,rep,name=monthly_usage_data,json=monthlyUsageData,proto3" json:"monthly_usage_data,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 486 } 487 488 func (x *ReadTensorboardUsageResponse) Reset() { 489 *x = ReadTensorboardUsageResponse{} 490 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[7] 491 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 492 ms.StoreMessageInfo(mi) 493 } 494 495 func (x *ReadTensorboardUsageResponse) String() string { 496 return protoimpl.X.MessageStringOf(x) 497 } 498 499 func (*ReadTensorboardUsageResponse) ProtoMessage() {} 500 501 func (x *ReadTensorboardUsageResponse) ProtoReflect() protoreflect.Message { 502 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[7] 503 if x != nil { 504 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 505 if ms.LoadMessageInfo() == nil { 506 ms.StoreMessageInfo(mi) 507 } 508 return ms 509 } 510 return mi.MessageOf(x) 511 } 512 513 // Deprecated: Use ReadTensorboardUsageResponse.ProtoReflect.Descriptor instead. 514 func (*ReadTensorboardUsageResponse) Descriptor() ([]byte, []int) { 515 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{7} 516 } 517 518 func (x *ReadTensorboardUsageResponse) GetMonthlyUsageData() map[string]*ReadTensorboardUsageResponse_PerMonthUsageData { 519 if x != nil { 520 return x.MonthlyUsageData 521 } 522 return nil 523 } 524 525 // Request message for 526 // [TensorboardService.ReadTensorboardSize][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize]. 527 type ReadTensorboardSizeRequest struct { 528 state protoimpl.MessageState 529 sizeCache protoimpl.SizeCache 530 unknownFields protoimpl.UnknownFields 531 532 // Required. The name of the Tensorboard resource. 533 // Format: 534 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 535 Tensorboard string `protobuf:"bytes,1,opt,name=tensorboard,proto3" json:"tensorboard,omitempty"` 536 } 537 538 func (x *ReadTensorboardSizeRequest) Reset() { 539 *x = ReadTensorboardSizeRequest{} 540 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[8] 541 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 542 ms.StoreMessageInfo(mi) 543 } 544 545 func (x *ReadTensorboardSizeRequest) String() string { 546 return protoimpl.X.MessageStringOf(x) 547 } 548 549 func (*ReadTensorboardSizeRequest) ProtoMessage() {} 550 551 func (x *ReadTensorboardSizeRequest) ProtoReflect() protoreflect.Message { 552 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[8] 553 if x != nil { 554 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 555 if ms.LoadMessageInfo() == nil { 556 ms.StoreMessageInfo(mi) 557 } 558 return ms 559 } 560 return mi.MessageOf(x) 561 } 562 563 // Deprecated: Use ReadTensorboardSizeRequest.ProtoReflect.Descriptor instead. 564 func (*ReadTensorboardSizeRequest) Descriptor() ([]byte, []int) { 565 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{8} 566 } 567 568 func (x *ReadTensorboardSizeRequest) GetTensorboard() string { 569 if x != nil { 570 return x.Tensorboard 571 } 572 return "" 573 } 574 575 // Response message for 576 // [TensorboardService.ReadTensorboardSize][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize]. 577 type ReadTensorboardSizeResponse struct { 578 state protoimpl.MessageState 579 sizeCache protoimpl.SizeCache 580 unknownFields protoimpl.UnknownFields 581 582 // Payload storage size for the TensorBoard 583 StorageSizeByte int64 `protobuf:"varint,1,opt,name=storage_size_byte,json=storageSizeByte,proto3" json:"storage_size_byte,omitempty"` 584 } 585 586 func (x *ReadTensorboardSizeResponse) Reset() { 587 *x = ReadTensorboardSizeResponse{} 588 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[9] 589 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 590 ms.StoreMessageInfo(mi) 591 } 592 593 func (x *ReadTensorboardSizeResponse) String() string { 594 return protoimpl.X.MessageStringOf(x) 595 } 596 597 func (*ReadTensorboardSizeResponse) ProtoMessage() {} 598 599 func (x *ReadTensorboardSizeResponse) ProtoReflect() protoreflect.Message { 600 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[9] 601 if x != nil { 602 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 603 if ms.LoadMessageInfo() == nil { 604 ms.StoreMessageInfo(mi) 605 } 606 return ms 607 } 608 return mi.MessageOf(x) 609 } 610 611 // Deprecated: Use ReadTensorboardSizeResponse.ProtoReflect.Descriptor instead. 612 func (*ReadTensorboardSizeResponse) Descriptor() ([]byte, []int) { 613 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{9} 614 } 615 616 func (x *ReadTensorboardSizeResponse) GetStorageSizeByte() int64 { 617 if x != nil { 618 return x.StorageSizeByte 619 } 620 return 0 621 } 622 623 // Request message for 624 // [TensorboardService.CreateTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment]. 625 type CreateTensorboardExperimentRequest struct { 626 state protoimpl.MessageState 627 sizeCache protoimpl.SizeCache 628 unknownFields protoimpl.UnknownFields 629 630 // Required. The resource name of the Tensorboard to create the 631 // TensorboardExperiment in. Format: 632 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 633 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 634 // The TensorboardExperiment to create. 635 TensorboardExperiment *TensorboardExperiment `protobuf:"bytes,2,opt,name=tensorboard_experiment,json=tensorboardExperiment,proto3" json:"tensorboard_experiment,omitempty"` 636 // Required. The ID to use for the Tensorboard experiment, which becomes the 637 // final component of the Tensorboard experiment's resource name. 638 // 639 // This value should be 1-128 characters, and valid characters 640 // are `/[a-z][0-9]-/`. 641 TensorboardExperimentId string `protobuf:"bytes,3,opt,name=tensorboard_experiment_id,json=tensorboardExperimentId,proto3" json:"tensorboard_experiment_id,omitempty"` 642 } 643 644 func (x *CreateTensorboardExperimentRequest) Reset() { 645 *x = CreateTensorboardExperimentRequest{} 646 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[10] 647 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 648 ms.StoreMessageInfo(mi) 649 } 650 651 func (x *CreateTensorboardExperimentRequest) String() string { 652 return protoimpl.X.MessageStringOf(x) 653 } 654 655 func (*CreateTensorboardExperimentRequest) ProtoMessage() {} 656 657 func (x *CreateTensorboardExperimentRequest) ProtoReflect() protoreflect.Message { 658 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[10] 659 if x != nil { 660 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 661 if ms.LoadMessageInfo() == nil { 662 ms.StoreMessageInfo(mi) 663 } 664 return ms 665 } 666 return mi.MessageOf(x) 667 } 668 669 // Deprecated: Use CreateTensorboardExperimentRequest.ProtoReflect.Descriptor instead. 670 func (*CreateTensorboardExperimentRequest) Descriptor() ([]byte, []int) { 671 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{10} 672 } 673 674 func (x *CreateTensorboardExperimentRequest) GetParent() string { 675 if x != nil { 676 return x.Parent 677 } 678 return "" 679 } 680 681 func (x *CreateTensorboardExperimentRequest) GetTensorboardExperiment() *TensorboardExperiment { 682 if x != nil { 683 return x.TensorboardExperiment 684 } 685 return nil 686 } 687 688 func (x *CreateTensorboardExperimentRequest) GetTensorboardExperimentId() string { 689 if x != nil { 690 return x.TensorboardExperimentId 691 } 692 return "" 693 } 694 695 // Request message for 696 // [TensorboardService.GetTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment]. 697 type GetTensorboardExperimentRequest struct { 698 state protoimpl.MessageState 699 sizeCache protoimpl.SizeCache 700 unknownFields protoimpl.UnknownFields 701 702 // Required. The name of the TensorboardExperiment resource. 703 // Format: 704 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 705 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 706 } 707 708 func (x *GetTensorboardExperimentRequest) Reset() { 709 *x = GetTensorboardExperimentRequest{} 710 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[11] 711 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 712 ms.StoreMessageInfo(mi) 713 } 714 715 func (x *GetTensorboardExperimentRequest) String() string { 716 return protoimpl.X.MessageStringOf(x) 717 } 718 719 func (*GetTensorboardExperimentRequest) ProtoMessage() {} 720 721 func (x *GetTensorboardExperimentRequest) ProtoReflect() protoreflect.Message { 722 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[11] 723 if x != nil { 724 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 725 if ms.LoadMessageInfo() == nil { 726 ms.StoreMessageInfo(mi) 727 } 728 return ms 729 } 730 return mi.MessageOf(x) 731 } 732 733 // Deprecated: Use GetTensorboardExperimentRequest.ProtoReflect.Descriptor instead. 734 func (*GetTensorboardExperimentRequest) Descriptor() ([]byte, []int) { 735 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{11} 736 } 737 738 func (x *GetTensorboardExperimentRequest) GetName() string { 739 if x != nil { 740 return x.Name 741 } 742 return "" 743 } 744 745 // Request message for 746 // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments]. 747 type ListTensorboardExperimentsRequest struct { 748 state protoimpl.MessageState 749 sizeCache protoimpl.SizeCache 750 unknownFields protoimpl.UnknownFields 751 752 // Required. The resource name of the Tensorboard to list 753 // TensorboardExperiments. Format: 754 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` 755 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 756 // Lists the TensorboardExperiments that match the filter expression. 757 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 758 // The maximum number of TensorboardExperiments to return. The service may 759 // return fewer than this value. If unspecified, at most 50 760 // TensorboardExperiments are returned. The maximum value is 1000; values 761 // above 1000 are coerced to 1000. 762 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 763 // A page token, received from a previous 764 // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments] 765 // call. Provide this to retrieve the subsequent page. 766 // 767 // When paginating, all other parameters provided to 768 // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments] 769 // must match the call that provided the page token. 770 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 771 // Field to use to sort the list. 772 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 773 // Mask specifying which fields to read. 774 ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,6,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"` 775 } 776 777 func (x *ListTensorboardExperimentsRequest) Reset() { 778 *x = ListTensorboardExperimentsRequest{} 779 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[12] 780 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 781 ms.StoreMessageInfo(mi) 782 } 783 784 func (x *ListTensorboardExperimentsRequest) String() string { 785 return protoimpl.X.MessageStringOf(x) 786 } 787 788 func (*ListTensorboardExperimentsRequest) ProtoMessage() {} 789 790 func (x *ListTensorboardExperimentsRequest) ProtoReflect() protoreflect.Message { 791 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[12] 792 if x != nil { 793 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 794 if ms.LoadMessageInfo() == nil { 795 ms.StoreMessageInfo(mi) 796 } 797 return ms 798 } 799 return mi.MessageOf(x) 800 } 801 802 // Deprecated: Use ListTensorboardExperimentsRequest.ProtoReflect.Descriptor instead. 803 func (*ListTensorboardExperimentsRequest) Descriptor() ([]byte, []int) { 804 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{12} 805 } 806 807 func (x *ListTensorboardExperimentsRequest) GetParent() string { 808 if x != nil { 809 return x.Parent 810 } 811 return "" 812 } 813 814 func (x *ListTensorboardExperimentsRequest) GetFilter() string { 815 if x != nil { 816 return x.Filter 817 } 818 return "" 819 } 820 821 func (x *ListTensorboardExperimentsRequest) GetPageSize() int32 { 822 if x != nil { 823 return x.PageSize 824 } 825 return 0 826 } 827 828 func (x *ListTensorboardExperimentsRequest) GetPageToken() string { 829 if x != nil { 830 return x.PageToken 831 } 832 return "" 833 } 834 835 func (x *ListTensorboardExperimentsRequest) GetOrderBy() string { 836 if x != nil { 837 return x.OrderBy 838 } 839 return "" 840 } 841 842 func (x *ListTensorboardExperimentsRequest) GetReadMask() *fieldmaskpb.FieldMask { 843 if x != nil { 844 return x.ReadMask 845 } 846 return nil 847 } 848 849 // Response message for 850 // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments]. 851 type ListTensorboardExperimentsResponse struct { 852 state protoimpl.MessageState 853 sizeCache protoimpl.SizeCache 854 unknownFields protoimpl.UnknownFields 855 856 // The TensorboardExperiments mathching the request. 857 TensorboardExperiments []*TensorboardExperiment `protobuf:"bytes,1,rep,name=tensorboard_experiments,json=tensorboardExperiments,proto3" json:"tensorboard_experiments,omitempty"` 858 // A token, which can be sent as 859 // [ListTensorboardExperimentsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsRequest.page_token] 860 // to retrieve the next page. If this field is omitted, there are no 861 // subsequent pages. 862 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 863 } 864 865 func (x *ListTensorboardExperimentsResponse) Reset() { 866 *x = ListTensorboardExperimentsResponse{} 867 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[13] 868 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 869 ms.StoreMessageInfo(mi) 870 } 871 872 func (x *ListTensorboardExperimentsResponse) String() string { 873 return protoimpl.X.MessageStringOf(x) 874 } 875 876 func (*ListTensorboardExperimentsResponse) ProtoMessage() {} 877 878 func (x *ListTensorboardExperimentsResponse) ProtoReflect() protoreflect.Message { 879 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[13] 880 if x != nil { 881 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 882 if ms.LoadMessageInfo() == nil { 883 ms.StoreMessageInfo(mi) 884 } 885 return ms 886 } 887 return mi.MessageOf(x) 888 } 889 890 // Deprecated: Use ListTensorboardExperimentsResponse.ProtoReflect.Descriptor instead. 891 func (*ListTensorboardExperimentsResponse) Descriptor() ([]byte, []int) { 892 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{13} 893 } 894 895 func (x *ListTensorboardExperimentsResponse) GetTensorboardExperiments() []*TensorboardExperiment { 896 if x != nil { 897 return x.TensorboardExperiments 898 } 899 return nil 900 } 901 902 func (x *ListTensorboardExperimentsResponse) GetNextPageToken() string { 903 if x != nil { 904 return x.NextPageToken 905 } 906 return "" 907 } 908 909 // Request message for 910 // [TensorboardService.UpdateTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment]. 911 type UpdateTensorboardExperimentRequest struct { 912 state protoimpl.MessageState 913 sizeCache protoimpl.SizeCache 914 unknownFields protoimpl.UnknownFields 915 916 // Required. Field mask is used to specify the fields to be overwritten in the 917 // TensorboardExperiment resource by the update. 918 // The fields specified in the update_mask are relative to the resource, not 919 // the full request. A field is overwritten if it's in the mask. If the 920 // user does not provide a mask then all fields are overwritten if new 921 // values are specified. 922 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 923 // Required. The TensorboardExperiment's `name` field is used to identify the 924 // TensorboardExperiment to be updated. Format: 925 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 926 TensorboardExperiment *TensorboardExperiment `protobuf:"bytes,2,opt,name=tensorboard_experiment,json=tensorboardExperiment,proto3" json:"tensorboard_experiment,omitempty"` 927 } 928 929 func (x *UpdateTensorboardExperimentRequest) Reset() { 930 *x = UpdateTensorboardExperimentRequest{} 931 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[14] 932 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 933 ms.StoreMessageInfo(mi) 934 } 935 936 func (x *UpdateTensorboardExperimentRequest) String() string { 937 return protoimpl.X.MessageStringOf(x) 938 } 939 940 func (*UpdateTensorboardExperimentRequest) ProtoMessage() {} 941 942 func (x *UpdateTensorboardExperimentRequest) ProtoReflect() protoreflect.Message { 943 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[14] 944 if x != nil { 945 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 946 if ms.LoadMessageInfo() == nil { 947 ms.StoreMessageInfo(mi) 948 } 949 return ms 950 } 951 return mi.MessageOf(x) 952 } 953 954 // Deprecated: Use UpdateTensorboardExperimentRequest.ProtoReflect.Descriptor instead. 955 func (*UpdateTensorboardExperimentRequest) Descriptor() ([]byte, []int) { 956 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{14} 957 } 958 959 func (x *UpdateTensorboardExperimentRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 960 if x != nil { 961 return x.UpdateMask 962 } 963 return nil 964 } 965 966 func (x *UpdateTensorboardExperimentRequest) GetTensorboardExperiment() *TensorboardExperiment { 967 if x != nil { 968 return x.TensorboardExperiment 969 } 970 return nil 971 } 972 973 // Request message for 974 // [TensorboardService.DeleteTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment]. 975 type DeleteTensorboardExperimentRequest struct { 976 state protoimpl.MessageState 977 sizeCache protoimpl.SizeCache 978 unknownFields protoimpl.UnknownFields 979 980 // Required. The name of the TensorboardExperiment to be deleted. 981 // Format: 982 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 983 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 984 } 985 986 func (x *DeleteTensorboardExperimentRequest) Reset() { 987 *x = DeleteTensorboardExperimentRequest{} 988 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[15] 989 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 990 ms.StoreMessageInfo(mi) 991 } 992 993 func (x *DeleteTensorboardExperimentRequest) String() string { 994 return protoimpl.X.MessageStringOf(x) 995 } 996 997 func (*DeleteTensorboardExperimentRequest) ProtoMessage() {} 998 999 func (x *DeleteTensorboardExperimentRequest) ProtoReflect() protoreflect.Message { 1000 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[15] 1001 if x != nil { 1002 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1003 if ms.LoadMessageInfo() == nil { 1004 ms.StoreMessageInfo(mi) 1005 } 1006 return ms 1007 } 1008 return mi.MessageOf(x) 1009 } 1010 1011 // Deprecated: Use DeleteTensorboardExperimentRequest.ProtoReflect.Descriptor instead. 1012 func (*DeleteTensorboardExperimentRequest) Descriptor() ([]byte, []int) { 1013 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{15} 1014 } 1015 1016 func (x *DeleteTensorboardExperimentRequest) GetName() string { 1017 if x != nil { 1018 return x.Name 1019 } 1020 return "" 1021 } 1022 1023 // Request message for 1024 // [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns]. 1025 type BatchCreateTensorboardRunsRequest struct { 1026 state protoimpl.MessageState 1027 sizeCache protoimpl.SizeCache 1028 unknownFields protoimpl.UnknownFields 1029 1030 // Required. The resource name of the TensorboardExperiment to create the 1031 // TensorboardRuns in. Format: 1032 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 1033 // The parent field in the CreateTensorboardRunRequest messages must match 1034 // this field. 1035 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1036 // Required. The request message specifying the TensorboardRuns to create. 1037 // A maximum of 1000 TensorboardRuns can be created in a batch. 1038 Requests []*CreateTensorboardRunRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"` 1039 } 1040 1041 func (x *BatchCreateTensorboardRunsRequest) Reset() { 1042 *x = BatchCreateTensorboardRunsRequest{} 1043 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[16] 1044 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1045 ms.StoreMessageInfo(mi) 1046 } 1047 1048 func (x *BatchCreateTensorboardRunsRequest) String() string { 1049 return protoimpl.X.MessageStringOf(x) 1050 } 1051 1052 func (*BatchCreateTensorboardRunsRequest) ProtoMessage() {} 1053 1054 func (x *BatchCreateTensorboardRunsRequest) ProtoReflect() protoreflect.Message { 1055 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[16] 1056 if x != nil { 1057 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1058 if ms.LoadMessageInfo() == nil { 1059 ms.StoreMessageInfo(mi) 1060 } 1061 return ms 1062 } 1063 return mi.MessageOf(x) 1064 } 1065 1066 // Deprecated: Use BatchCreateTensorboardRunsRequest.ProtoReflect.Descriptor instead. 1067 func (*BatchCreateTensorboardRunsRequest) Descriptor() ([]byte, []int) { 1068 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{16} 1069 } 1070 1071 func (x *BatchCreateTensorboardRunsRequest) GetParent() string { 1072 if x != nil { 1073 return x.Parent 1074 } 1075 return "" 1076 } 1077 1078 func (x *BatchCreateTensorboardRunsRequest) GetRequests() []*CreateTensorboardRunRequest { 1079 if x != nil { 1080 return x.Requests 1081 } 1082 return nil 1083 } 1084 1085 // Response message for 1086 // [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns]. 1087 type BatchCreateTensorboardRunsResponse struct { 1088 state protoimpl.MessageState 1089 sizeCache protoimpl.SizeCache 1090 unknownFields protoimpl.UnknownFields 1091 1092 // The created TensorboardRuns. 1093 TensorboardRuns []*TensorboardRun `protobuf:"bytes,1,rep,name=tensorboard_runs,json=tensorboardRuns,proto3" json:"tensorboard_runs,omitempty"` 1094 } 1095 1096 func (x *BatchCreateTensorboardRunsResponse) Reset() { 1097 *x = BatchCreateTensorboardRunsResponse{} 1098 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[17] 1099 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1100 ms.StoreMessageInfo(mi) 1101 } 1102 1103 func (x *BatchCreateTensorboardRunsResponse) String() string { 1104 return protoimpl.X.MessageStringOf(x) 1105 } 1106 1107 func (*BatchCreateTensorboardRunsResponse) ProtoMessage() {} 1108 1109 func (x *BatchCreateTensorboardRunsResponse) ProtoReflect() protoreflect.Message { 1110 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[17] 1111 if x != nil { 1112 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1113 if ms.LoadMessageInfo() == nil { 1114 ms.StoreMessageInfo(mi) 1115 } 1116 return ms 1117 } 1118 return mi.MessageOf(x) 1119 } 1120 1121 // Deprecated: Use BatchCreateTensorboardRunsResponse.ProtoReflect.Descriptor instead. 1122 func (*BatchCreateTensorboardRunsResponse) Descriptor() ([]byte, []int) { 1123 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{17} 1124 } 1125 1126 func (x *BatchCreateTensorboardRunsResponse) GetTensorboardRuns() []*TensorboardRun { 1127 if x != nil { 1128 return x.TensorboardRuns 1129 } 1130 return nil 1131 } 1132 1133 // Request message for 1134 // [TensorboardService.CreateTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun]. 1135 type CreateTensorboardRunRequest struct { 1136 state protoimpl.MessageState 1137 sizeCache protoimpl.SizeCache 1138 unknownFields protoimpl.UnknownFields 1139 1140 // Required. The resource name of the TensorboardExperiment to create the 1141 // TensorboardRun in. Format: 1142 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 1143 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1144 // Required. The TensorboardRun to create. 1145 TensorboardRun *TensorboardRun `protobuf:"bytes,2,opt,name=tensorboard_run,json=tensorboardRun,proto3" json:"tensorboard_run,omitempty"` 1146 // Required. The ID to use for the Tensorboard run, which becomes the final 1147 // component of the Tensorboard run's resource name. 1148 // 1149 // This value should be 1-128 characters, and valid characters 1150 // are `/[a-z][0-9]-/`. 1151 TensorboardRunId string `protobuf:"bytes,3,opt,name=tensorboard_run_id,json=tensorboardRunId,proto3" json:"tensorboard_run_id,omitempty"` 1152 } 1153 1154 func (x *CreateTensorboardRunRequest) Reset() { 1155 *x = CreateTensorboardRunRequest{} 1156 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[18] 1157 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1158 ms.StoreMessageInfo(mi) 1159 } 1160 1161 func (x *CreateTensorboardRunRequest) String() string { 1162 return protoimpl.X.MessageStringOf(x) 1163 } 1164 1165 func (*CreateTensorboardRunRequest) ProtoMessage() {} 1166 1167 func (x *CreateTensorboardRunRequest) ProtoReflect() protoreflect.Message { 1168 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[18] 1169 if x != nil { 1170 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1171 if ms.LoadMessageInfo() == nil { 1172 ms.StoreMessageInfo(mi) 1173 } 1174 return ms 1175 } 1176 return mi.MessageOf(x) 1177 } 1178 1179 // Deprecated: Use CreateTensorboardRunRequest.ProtoReflect.Descriptor instead. 1180 func (*CreateTensorboardRunRequest) Descriptor() ([]byte, []int) { 1181 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{18} 1182 } 1183 1184 func (x *CreateTensorboardRunRequest) GetParent() string { 1185 if x != nil { 1186 return x.Parent 1187 } 1188 return "" 1189 } 1190 1191 func (x *CreateTensorboardRunRequest) GetTensorboardRun() *TensorboardRun { 1192 if x != nil { 1193 return x.TensorboardRun 1194 } 1195 return nil 1196 } 1197 1198 func (x *CreateTensorboardRunRequest) GetTensorboardRunId() string { 1199 if x != nil { 1200 return x.TensorboardRunId 1201 } 1202 return "" 1203 } 1204 1205 // Request message for 1206 // [TensorboardService.GetTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun]. 1207 type GetTensorboardRunRequest struct { 1208 state protoimpl.MessageState 1209 sizeCache protoimpl.SizeCache 1210 unknownFields protoimpl.UnknownFields 1211 1212 // Required. The name of the TensorboardRun resource. 1213 // Format: 1214 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 1215 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1216 } 1217 1218 func (x *GetTensorboardRunRequest) Reset() { 1219 *x = GetTensorboardRunRequest{} 1220 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[19] 1221 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1222 ms.StoreMessageInfo(mi) 1223 } 1224 1225 func (x *GetTensorboardRunRequest) String() string { 1226 return protoimpl.X.MessageStringOf(x) 1227 } 1228 1229 func (*GetTensorboardRunRequest) ProtoMessage() {} 1230 1231 func (x *GetTensorboardRunRequest) ProtoReflect() protoreflect.Message { 1232 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[19] 1233 if x != nil { 1234 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1235 if ms.LoadMessageInfo() == nil { 1236 ms.StoreMessageInfo(mi) 1237 } 1238 return ms 1239 } 1240 return mi.MessageOf(x) 1241 } 1242 1243 // Deprecated: Use GetTensorboardRunRequest.ProtoReflect.Descriptor instead. 1244 func (*GetTensorboardRunRequest) Descriptor() ([]byte, []int) { 1245 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{19} 1246 } 1247 1248 func (x *GetTensorboardRunRequest) GetName() string { 1249 if x != nil { 1250 return x.Name 1251 } 1252 return "" 1253 } 1254 1255 // Request message for 1256 // [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData]. 1257 type ReadTensorboardBlobDataRequest struct { 1258 state protoimpl.MessageState 1259 sizeCache protoimpl.SizeCache 1260 unknownFields protoimpl.UnknownFields 1261 1262 // Required. The resource name of the TensorboardTimeSeries to list Blobs. 1263 // Format: 1264 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 1265 TimeSeries string `protobuf:"bytes,1,opt,name=time_series,json=timeSeries,proto3" json:"time_series,omitempty"` 1266 // IDs of the blobs to read. 1267 BlobIds []string `protobuf:"bytes,2,rep,name=blob_ids,json=blobIds,proto3" json:"blob_ids,omitempty"` 1268 } 1269 1270 func (x *ReadTensorboardBlobDataRequest) Reset() { 1271 *x = ReadTensorboardBlobDataRequest{} 1272 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[20] 1273 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1274 ms.StoreMessageInfo(mi) 1275 } 1276 1277 func (x *ReadTensorboardBlobDataRequest) String() string { 1278 return protoimpl.X.MessageStringOf(x) 1279 } 1280 1281 func (*ReadTensorboardBlobDataRequest) ProtoMessage() {} 1282 1283 func (x *ReadTensorboardBlobDataRequest) ProtoReflect() protoreflect.Message { 1284 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[20] 1285 if x != nil { 1286 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1287 if ms.LoadMessageInfo() == nil { 1288 ms.StoreMessageInfo(mi) 1289 } 1290 return ms 1291 } 1292 return mi.MessageOf(x) 1293 } 1294 1295 // Deprecated: Use ReadTensorboardBlobDataRequest.ProtoReflect.Descriptor instead. 1296 func (*ReadTensorboardBlobDataRequest) Descriptor() ([]byte, []int) { 1297 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{20} 1298 } 1299 1300 func (x *ReadTensorboardBlobDataRequest) GetTimeSeries() string { 1301 if x != nil { 1302 return x.TimeSeries 1303 } 1304 return "" 1305 } 1306 1307 func (x *ReadTensorboardBlobDataRequest) GetBlobIds() []string { 1308 if x != nil { 1309 return x.BlobIds 1310 } 1311 return nil 1312 } 1313 1314 // Response message for 1315 // [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData]. 1316 type ReadTensorboardBlobDataResponse struct { 1317 state protoimpl.MessageState 1318 sizeCache protoimpl.SizeCache 1319 unknownFields protoimpl.UnknownFields 1320 1321 // Blob messages containing blob bytes. 1322 Blobs []*TensorboardBlob `protobuf:"bytes,1,rep,name=blobs,proto3" json:"blobs,omitempty"` 1323 } 1324 1325 func (x *ReadTensorboardBlobDataResponse) Reset() { 1326 *x = ReadTensorboardBlobDataResponse{} 1327 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[21] 1328 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1329 ms.StoreMessageInfo(mi) 1330 } 1331 1332 func (x *ReadTensorboardBlobDataResponse) String() string { 1333 return protoimpl.X.MessageStringOf(x) 1334 } 1335 1336 func (*ReadTensorboardBlobDataResponse) ProtoMessage() {} 1337 1338 func (x *ReadTensorboardBlobDataResponse) ProtoReflect() protoreflect.Message { 1339 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[21] 1340 if x != nil { 1341 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1342 if ms.LoadMessageInfo() == nil { 1343 ms.StoreMessageInfo(mi) 1344 } 1345 return ms 1346 } 1347 return mi.MessageOf(x) 1348 } 1349 1350 // Deprecated: Use ReadTensorboardBlobDataResponse.ProtoReflect.Descriptor instead. 1351 func (*ReadTensorboardBlobDataResponse) Descriptor() ([]byte, []int) { 1352 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{21} 1353 } 1354 1355 func (x *ReadTensorboardBlobDataResponse) GetBlobs() []*TensorboardBlob { 1356 if x != nil { 1357 return x.Blobs 1358 } 1359 return nil 1360 } 1361 1362 // Request message for 1363 // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns]. 1364 type ListTensorboardRunsRequest struct { 1365 state protoimpl.MessageState 1366 sizeCache protoimpl.SizeCache 1367 unknownFields protoimpl.UnknownFields 1368 1369 // Required. The resource name of the TensorboardExperiment to list 1370 // TensorboardRuns. Format: 1371 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 1372 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1373 // Lists the TensorboardRuns that match the filter expression. 1374 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 1375 // The maximum number of TensorboardRuns to return. The service may return 1376 // fewer than this value. If unspecified, at most 50 TensorboardRuns are 1377 // returned. The maximum value is 1000; values above 1000 are coerced to 1378 // 1000. 1379 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 1380 // A page token, received from a previous 1381 // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns] 1382 // call. Provide this to retrieve the subsequent page. 1383 // 1384 // When paginating, all other parameters provided to 1385 // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns] 1386 // must match the call that provided the page token. 1387 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1388 // Field to use to sort the list. 1389 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 1390 // Mask specifying which fields to read. 1391 ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,6,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"` 1392 } 1393 1394 func (x *ListTensorboardRunsRequest) Reset() { 1395 *x = ListTensorboardRunsRequest{} 1396 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[22] 1397 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1398 ms.StoreMessageInfo(mi) 1399 } 1400 1401 func (x *ListTensorboardRunsRequest) String() string { 1402 return protoimpl.X.MessageStringOf(x) 1403 } 1404 1405 func (*ListTensorboardRunsRequest) ProtoMessage() {} 1406 1407 func (x *ListTensorboardRunsRequest) ProtoReflect() protoreflect.Message { 1408 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[22] 1409 if x != nil { 1410 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1411 if ms.LoadMessageInfo() == nil { 1412 ms.StoreMessageInfo(mi) 1413 } 1414 return ms 1415 } 1416 return mi.MessageOf(x) 1417 } 1418 1419 // Deprecated: Use ListTensorboardRunsRequest.ProtoReflect.Descriptor instead. 1420 func (*ListTensorboardRunsRequest) Descriptor() ([]byte, []int) { 1421 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{22} 1422 } 1423 1424 func (x *ListTensorboardRunsRequest) GetParent() string { 1425 if x != nil { 1426 return x.Parent 1427 } 1428 return "" 1429 } 1430 1431 func (x *ListTensorboardRunsRequest) GetFilter() string { 1432 if x != nil { 1433 return x.Filter 1434 } 1435 return "" 1436 } 1437 1438 func (x *ListTensorboardRunsRequest) GetPageSize() int32 { 1439 if x != nil { 1440 return x.PageSize 1441 } 1442 return 0 1443 } 1444 1445 func (x *ListTensorboardRunsRequest) GetPageToken() string { 1446 if x != nil { 1447 return x.PageToken 1448 } 1449 return "" 1450 } 1451 1452 func (x *ListTensorboardRunsRequest) GetOrderBy() string { 1453 if x != nil { 1454 return x.OrderBy 1455 } 1456 return "" 1457 } 1458 1459 func (x *ListTensorboardRunsRequest) GetReadMask() *fieldmaskpb.FieldMask { 1460 if x != nil { 1461 return x.ReadMask 1462 } 1463 return nil 1464 } 1465 1466 // Response message for 1467 // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns]. 1468 type ListTensorboardRunsResponse struct { 1469 state protoimpl.MessageState 1470 sizeCache protoimpl.SizeCache 1471 unknownFields protoimpl.UnknownFields 1472 1473 // The TensorboardRuns mathching the request. 1474 TensorboardRuns []*TensorboardRun `protobuf:"bytes,1,rep,name=tensorboard_runs,json=tensorboardRuns,proto3" json:"tensorboard_runs,omitempty"` 1475 // A token, which can be sent as 1476 // [ListTensorboardRunsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardRunsRequest.page_token] 1477 // to retrieve the next page. If this field is omitted, there are no 1478 // subsequent pages. 1479 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1480 } 1481 1482 func (x *ListTensorboardRunsResponse) Reset() { 1483 *x = ListTensorboardRunsResponse{} 1484 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[23] 1485 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1486 ms.StoreMessageInfo(mi) 1487 } 1488 1489 func (x *ListTensorboardRunsResponse) String() string { 1490 return protoimpl.X.MessageStringOf(x) 1491 } 1492 1493 func (*ListTensorboardRunsResponse) ProtoMessage() {} 1494 1495 func (x *ListTensorboardRunsResponse) ProtoReflect() protoreflect.Message { 1496 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[23] 1497 if x != nil { 1498 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1499 if ms.LoadMessageInfo() == nil { 1500 ms.StoreMessageInfo(mi) 1501 } 1502 return ms 1503 } 1504 return mi.MessageOf(x) 1505 } 1506 1507 // Deprecated: Use ListTensorboardRunsResponse.ProtoReflect.Descriptor instead. 1508 func (*ListTensorboardRunsResponse) Descriptor() ([]byte, []int) { 1509 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{23} 1510 } 1511 1512 func (x *ListTensorboardRunsResponse) GetTensorboardRuns() []*TensorboardRun { 1513 if x != nil { 1514 return x.TensorboardRuns 1515 } 1516 return nil 1517 } 1518 1519 func (x *ListTensorboardRunsResponse) GetNextPageToken() string { 1520 if x != nil { 1521 return x.NextPageToken 1522 } 1523 return "" 1524 } 1525 1526 // Request message for 1527 // [TensorboardService.UpdateTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun]. 1528 type UpdateTensorboardRunRequest struct { 1529 state protoimpl.MessageState 1530 sizeCache protoimpl.SizeCache 1531 unknownFields protoimpl.UnknownFields 1532 1533 // Required. Field mask is used to specify the fields to be overwritten in the 1534 // TensorboardRun resource by the update. 1535 // The fields specified in the update_mask are relative to the resource, not 1536 // the full request. A field is overwritten if it's in the mask. If the 1537 // user does not provide a mask then all fields are overwritten if new 1538 // values are specified. 1539 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 1540 // Required. The TensorboardRun's `name` field is used to identify the 1541 // TensorboardRun to be updated. Format: 1542 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 1543 TensorboardRun *TensorboardRun `protobuf:"bytes,2,opt,name=tensorboard_run,json=tensorboardRun,proto3" json:"tensorboard_run,omitempty"` 1544 } 1545 1546 func (x *UpdateTensorboardRunRequest) Reset() { 1547 *x = UpdateTensorboardRunRequest{} 1548 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[24] 1549 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1550 ms.StoreMessageInfo(mi) 1551 } 1552 1553 func (x *UpdateTensorboardRunRequest) String() string { 1554 return protoimpl.X.MessageStringOf(x) 1555 } 1556 1557 func (*UpdateTensorboardRunRequest) ProtoMessage() {} 1558 1559 func (x *UpdateTensorboardRunRequest) ProtoReflect() protoreflect.Message { 1560 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[24] 1561 if x != nil { 1562 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1563 if ms.LoadMessageInfo() == nil { 1564 ms.StoreMessageInfo(mi) 1565 } 1566 return ms 1567 } 1568 return mi.MessageOf(x) 1569 } 1570 1571 // Deprecated: Use UpdateTensorboardRunRequest.ProtoReflect.Descriptor instead. 1572 func (*UpdateTensorboardRunRequest) Descriptor() ([]byte, []int) { 1573 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{24} 1574 } 1575 1576 func (x *UpdateTensorboardRunRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 1577 if x != nil { 1578 return x.UpdateMask 1579 } 1580 return nil 1581 } 1582 1583 func (x *UpdateTensorboardRunRequest) GetTensorboardRun() *TensorboardRun { 1584 if x != nil { 1585 return x.TensorboardRun 1586 } 1587 return nil 1588 } 1589 1590 // Request message for 1591 // [TensorboardService.DeleteTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun]. 1592 type DeleteTensorboardRunRequest struct { 1593 state protoimpl.MessageState 1594 sizeCache protoimpl.SizeCache 1595 unknownFields protoimpl.UnknownFields 1596 1597 // Required. The name of the TensorboardRun to be deleted. 1598 // Format: 1599 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 1600 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1601 } 1602 1603 func (x *DeleteTensorboardRunRequest) Reset() { 1604 *x = DeleteTensorboardRunRequest{} 1605 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[25] 1606 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1607 ms.StoreMessageInfo(mi) 1608 } 1609 1610 func (x *DeleteTensorboardRunRequest) String() string { 1611 return protoimpl.X.MessageStringOf(x) 1612 } 1613 1614 func (*DeleteTensorboardRunRequest) ProtoMessage() {} 1615 1616 func (x *DeleteTensorboardRunRequest) ProtoReflect() protoreflect.Message { 1617 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[25] 1618 if x != nil { 1619 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1620 if ms.LoadMessageInfo() == nil { 1621 ms.StoreMessageInfo(mi) 1622 } 1623 return ms 1624 } 1625 return mi.MessageOf(x) 1626 } 1627 1628 // Deprecated: Use DeleteTensorboardRunRequest.ProtoReflect.Descriptor instead. 1629 func (*DeleteTensorboardRunRequest) Descriptor() ([]byte, []int) { 1630 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{25} 1631 } 1632 1633 func (x *DeleteTensorboardRunRequest) GetName() string { 1634 if x != nil { 1635 return x.Name 1636 } 1637 return "" 1638 } 1639 1640 // Request message for 1641 // [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries]. 1642 type BatchCreateTensorboardTimeSeriesRequest struct { 1643 state protoimpl.MessageState 1644 sizeCache protoimpl.SizeCache 1645 unknownFields protoimpl.UnknownFields 1646 1647 // Required. The resource name of the TensorboardExperiment to create the 1648 // TensorboardTimeSeries in. 1649 // Format: 1650 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 1651 // The TensorboardRuns referenced by the parent fields in the 1652 // CreateTensorboardTimeSeriesRequest messages must be sub resources of this 1653 // TensorboardExperiment. 1654 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1655 // Required. The request message specifying the TensorboardTimeSeries to 1656 // create. A maximum of 1000 TensorboardTimeSeries can be created in a batch. 1657 Requests []*CreateTensorboardTimeSeriesRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"` 1658 } 1659 1660 func (x *BatchCreateTensorboardTimeSeriesRequest) Reset() { 1661 *x = BatchCreateTensorboardTimeSeriesRequest{} 1662 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[26] 1663 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1664 ms.StoreMessageInfo(mi) 1665 } 1666 1667 func (x *BatchCreateTensorboardTimeSeriesRequest) String() string { 1668 return protoimpl.X.MessageStringOf(x) 1669 } 1670 1671 func (*BatchCreateTensorboardTimeSeriesRequest) ProtoMessage() {} 1672 1673 func (x *BatchCreateTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 1674 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[26] 1675 if x != nil { 1676 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1677 if ms.LoadMessageInfo() == nil { 1678 ms.StoreMessageInfo(mi) 1679 } 1680 return ms 1681 } 1682 return mi.MessageOf(x) 1683 } 1684 1685 // Deprecated: Use BatchCreateTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 1686 func (*BatchCreateTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 1687 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{26} 1688 } 1689 1690 func (x *BatchCreateTensorboardTimeSeriesRequest) GetParent() string { 1691 if x != nil { 1692 return x.Parent 1693 } 1694 return "" 1695 } 1696 1697 func (x *BatchCreateTensorboardTimeSeriesRequest) GetRequests() []*CreateTensorboardTimeSeriesRequest { 1698 if x != nil { 1699 return x.Requests 1700 } 1701 return nil 1702 } 1703 1704 // Response message for 1705 // [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries]. 1706 type BatchCreateTensorboardTimeSeriesResponse struct { 1707 state protoimpl.MessageState 1708 sizeCache protoimpl.SizeCache 1709 unknownFields protoimpl.UnknownFields 1710 1711 // The created TensorboardTimeSeries. 1712 TensorboardTimeSeries []*TensorboardTimeSeries `protobuf:"bytes,1,rep,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 1713 } 1714 1715 func (x *BatchCreateTensorboardTimeSeriesResponse) Reset() { 1716 *x = BatchCreateTensorboardTimeSeriesResponse{} 1717 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[27] 1718 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1719 ms.StoreMessageInfo(mi) 1720 } 1721 1722 func (x *BatchCreateTensorboardTimeSeriesResponse) String() string { 1723 return protoimpl.X.MessageStringOf(x) 1724 } 1725 1726 func (*BatchCreateTensorboardTimeSeriesResponse) ProtoMessage() {} 1727 1728 func (x *BatchCreateTensorboardTimeSeriesResponse) ProtoReflect() protoreflect.Message { 1729 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[27] 1730 if x != nil { 1731 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1732 if ms.LoadMessageInfo() == nil { 1733 ms.StoreMessageInfo(mi) 1734 } 1735 return ms 1736 } 1737 return mi.MessageOf(x) 1738 } 1739 1740 // Deprecated: Use BatchCreateTensorboardTimeSeriesResponse.ProtoReflect.Descriptor instead. 1741 func (*BatchCreateTensorboardTimeSeriesResponse) Descriptor() ([]byte, []int) { 1742 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{27} 1743 } 1744 1745 func (x *BatchCreateTensorboardTimeSeriesResponse) GetTensorboardTimeSeries() []*TensorboardTimeSeries { 1746 if x != nil { 1747 return x.TensorboardTimeSeries 1748 } 1749 return nil 1750 } 1751 1752 // Request message for 1753 // [TensorboardService.CreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries]. 1754 type CreateTensorboardTimeSeriesRequest struct { 1755 state protoimpl.MessageState 1756 sizeCache protoimpl.SizeCache 1757 unknownFields protoimpl.UnknownFields 1758 1759 // Required. The resource name of the TensorboardRun to create the 1760 // TensorboardTimeSeries in. 1761 // Format: 1762 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 1763 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1764 // Optional. The user specified unique ID to use for the 1765 // TensorboardTimeSeries, which becomes the final component of the 1766 // TensorboardTimeSeries's resource name. This value should match 1767 // "[a-z0-9][a-z0-9-]{0, 127}" 1768 TensorboardTimeSeriesId string `protobuf:"bytes,3,opt,name=tensorboard_time_series_id,json=tensorboardTimeSeriesId,proto3" json:"tensorboard_time_series_id,omitempty"` 1769 // Required. The TensorboardTimeSeries to create. 1770 TensorboardTimeSeries *TensorboardTimeSeries `protobuf:"bytes,2,opt,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 1771 } 1772 1773 func (x *CreateTensorboardTimeSeriesRequest) Reset() { 1774 *x = CreateTensorboardTimeSeriesRequest{} 1775 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[28] 1776 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1777 ms.StoreMessageInfo(mi) 1778 } 1779 1780 func (x *CreateTensorboardTimeSeriesRequest) String() string { 1781 return protoimpl.X.MessageStringOf(x) 1782 } 1783 1784 func (*CreateTensorboardTimeSeriesRequest) ProtoMessage() {} 1785 1786 func (x *CreateTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 1787 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[28] 1788 if x != nil { 1789 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1790 if ms.LoadMessageInfo() == nil { 1791 ms.StoreMessageInfo(mi) 1792 } 1793 return ms 1794 } 1795 return mi.MessageOf(x) 1796 } 1797 1798 // Deprecated: Use CreateTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 1799 func (*CreateTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 1800 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{28} 1801 } 1802 1803 func (x *CreateTensorboardTimeSeriesRequest) GetParent() string { 1804 if x != nil { 1805 return x.Parent 1806 } 1807 return "" 1808 } 1809 1810 func (x *CreateTensorboardTimeSeriesRequest) GetTensorboardTimeSeriesId() string { 1811 if x != nil { 1812 return x.TensorboardTimeSeriesId 1813 } 1814 return "" 1815 } 1816 1817 func (x *CreateTensorboardTimeSeriesRequest) GetTensorboardTimeSeries() *TensorboardTimeSeries { 1818 if x != nil { 1819 return x.TensorboardTimeSeries 1820 } 1821 return nil 1822 } 1823 1824 // Request message for 1825 // [TensorboardService.GetTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries]. 1826 type GetTensorboardTimeSeriesRequest struct { 1827 state protoimpl.MessageState 1828 sizeCache protoimpl.SizeCache 1829 unknownFields protoimpl.UnknownFields 1830 1831 // Required. The name of the TensorboardTimeSeries resource. 1832 // Format: 1833 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 1834 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1835 } 1836 1837 func (x *GetTensorboardTimeSeriesRequest) Reset() { 1838 *x = GetTensorboardTimeSeriesRequest{} 1839 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[29] 1840 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1841 ms.StoreMessageInfo(mi) 1842 } 1843 1844 func (x *GetTensorboardTimeSeriesRequest) String() string { 1845 return protoimpl.X.MessageStringOf(x) 1846 } 1847 1848 func (*GetTensorboardTimeSeriesRequest) ProtoMessage() {} 1849 1850 func (x *GetTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 1851 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[29] 1852 if x != nil { 1853 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1854 if ms.LoadMessageInfo() == nil { 1855 ms.StoreMessageInfo(mi) 1856 } 1857 return ms 1858 } 1859 return mi.MessageOf(x) 1860 } 1861 1862 // Deprecated: Use GetTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 1863 func (*GetTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 1864 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{29} 1865 } 1866 1867 func (x *GetTensorboardTimeSeriesRequest) GetName() string { 1868 if x != nil { 1869 return x.Name 1870 } 1871 return "" 1872 } 1873 1874 // Request message for 1875 // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries]. 1876 type ListTensorboardTimeSeriesRequest struct { 1877 state protoimpl.MessageState 1878 sizeCache protoimpl.SizeCache 1879 unknownFields protoimpl.UnknownFields 1880 1881 // Required. The resource name of the TensorboardRun to list 1882 // TensorboardTimeSeries. Format: 1883 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 1884 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1885 // Lists the TensorboardTimeSeries that match the filter expression. 1886 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 1887 // The maximum number of TensorboardTimeSeries to return. The service may 1888 // return fewer than this value. If unspecified, at most 50 1889 // TensorboardTimeSeries are returned. The maximum value is 1000; values 1890 // above 1000 are coerced to 1000. 1891 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 1892 // A page token, received from a previous 1893 // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries] 1894 // call. Provide this to retrieve the subsequent page. 1895 // 1896 // When paginating, all other parameters provided to 1897 // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries] 1898 // must match the call that provided the page token. 1899 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1900 // Field to use to sort the list. 1901 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 1902 // Mask specifying which fields to read. 1903 ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,6,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"` 1904 } 1905 1906 func (x *ListTensorboardTimeSeriesRequest) Reset() { 1907 *x = ListTensorboardTimeSeriesRequest{} 1908 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[30] 1909 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1910 ms.StoreMessageInfo(mi) 1911 } 1912 1913 func (x *ListTensorboardTimeSeriesRequest) String() string { 1914 return protoimpl.X.MessageStringOf(x) 1915 } 1916 1917 func (*ListTensorboardTimeSeriesRequest) ProtoMessage() {} 1918 1919 func (x *ListTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 1920 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[30] 1921 if x != nil { 1922 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1923 if ms.LoadMessageInfo() == nil { 1924 ms.StoreMessageInfo(mi) 1925 } 1926 return ms 1927 } 1928 return mi.MessageOf(x) 1929 } 1930 1931 // Deprecated: Use ListTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 1932 func (*ListTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 1933 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{30} 1934 } 1935 1936 func (x *ListTensorboardTimeSeriesRequest) GetParent() string { 1937 if x != nil { 1938 return x.Parent 1939 } 1940 return "" 1941 } 1942 1943 func (x *ListTensorboardTimeSeriesRequest) GetFilter() string { 1944 if x != nil { 1945 return x.Filter 1946 } 1947 return "" 1948 } 1949 1950 func (x *ListTensorboardTimeSeriesRequest) GetPageSize() int32 { 1951 if x != nil { 1952 return x.PageSize 1953 } 1954 return 0 1955 } 1956 1957 func (x *ListTensorboardTimeSeriesRequest) GetPageToken() string { 1958 if x != nil { 1959 return x.PageToken 1960 } 1961 return "" 1962 } 1963 1964 func (x *ListTensorboardTimeSeriesRequest) GetOrderBy() string { 1965 if x != nil { 1966 return x.OrderBy 1967 } 1968 return "" 1969 } 1970 1971 func (x *ListTensorboardTimeSeriesRequest) GetReadMask() *fieldmaskpb.FieldMask { 1972 if x != nil { 1973 return x.ReadMask 1974 } 1975 return nil 1976 } 1977 1978 // Response message for 1979 // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries]. 1980 type ListTensorboardTimeSeriesResponse struct { 1981 state protoimpl.MessageState 1982 sizeCache protoimpl.SizeCache 1983 unknownFields protoimpl.UnknownFields 1984 1985 // The TensorboardTimeSeries mathching the request. 1986 TensorboardTimeSeries []*TensorboardTimeSeries `protobuf:"bytes,1,rep,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 1987 // A token, which can be sent as 1988 // [ListTensorboardTimeSeriesRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesRequest.page_token] 1989 // to retrieve the next page. If this field is omitted, there are no 1990 // subsequent pages. 1991 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1992 } 1993 1994 func (x *ListTensorboardTimeSeriesResponse) Reset() { 1995 *x = ListTensorboardTimeSeriesResponse{} 1996 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[31] 1997 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1998 ms.StoreMessageInfo(mi) 1999 } 2000 2001 func (x *ListTensorboardTimeSeriesResponse) String() string { 2002 return protoimpl.X.MessageStringOf(x) 2003 } 2004 2005 func (*ListTensorboardTimeSeriesResponse) ProtoMessage() {} 2006 2007 func (x *ListTensorboardTimeSeriesResponse) ProtoReflect() protoreflect.Message { 2008 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[31] 2009 if x != nil { 2010 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2011 if ms.LoadMessageInfo() == nil { 2012 ms.StoreMessageInfo(mi) 2013 } 2014 return ms 2015 } 2016 return mi.MessageOf(x) 2017 } 2018 2019 // Deprecated: Use ListTensorboardTimeSeriesResponse.ProtoReflect.Descriptor instead. 2020 func (*ListTensorboardTimeSeriesResponse) Descriptor() ([]byte, []int) { 2021 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{31} 2022 } 2023 2024 func (x *ListTensorboardTimeSeriesResponse) GetTensorboardTimeSeries() []*TensorboardTimeSeries { 2025 if x != nil { 2026 return x.TensorboardTimeSeries 2027 } 2028 return nil 2029 } 2030 2031 func (x *ListTensorboardTimeSeriesResponse) GetNextPageToken() string { 2032 if x != nil { 2033 return x.NextPageToken 2034 } 2035 return "" 2036 } 2037 2038 // Request message for 2039 // [TensorboardService.UpdateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries]. 2040 type UpdateTensorboardTimeSeriesRequest struct { 2041 state protoimpl.MessageState 2042 sizeCache protoimpl.SizeCache 2043 unknownFields protoimpl.UnknownFields 2044 2045 // Required. Field mask is used to specify the fields to be overwritten in the 2046 // TensorboardTimeSeries resource by the update. 2047 // The fields specified in the update_mask are relative to the resource, not 2048 // the full request. A field is overwritten if it's in the mask. If the 2049 // user does not provide a mask then all fields are overwritten if new 2050 // values are specified. 2051 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 2052 // Required. The TensorboardTimeSeries' `name` field is used to identify the 2053 // TensorboardTimeSeries to be updated. 2054 // Format: 2055 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 2056 TensorboardTimeSeries *TensorboardTimeSeries `protobuf:"bytes,2,opt,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 2057 } 2058 2059 func (x *UpdateTensorboardTimeSeriesRequest) Reset() { 2060 *x = UpdateTensorboardTimeSeriesRequest{} 2061 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[32] 2062 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2063 ms.StoreMessageInfo(mi) 2064 } 2065 2066 func (x *UpdateTensorboardTimeSeriesRequest) String() string { 2067 return protoimpl.X.MessageStringOf(x) 2068 } 2069 2070 func (*UpdateTensorboardTimeSeriesRequest) ProtoMessage() {} 2071 2072 func (x *UpdateTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 2073 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[32] 2074 if x != nil { 2075 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2076 if ms.LoadMessageInfo() == nil { 2077 ms.StoreMessageInfo(mi) 2078 } 2079 return ms 2080 } 2081 return mi.MessageOf(x) 2082 } 2083 2084 // Deprecated: Use UpdateTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 2085 func (*UpdateTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 2086 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{32} 2087 } 2088 2089 func (x *UpdateTensorboardTimeSeriesRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 2090 if x != nil { 2091 return x.UpdateMask 2092 } 2093 return nil 2094 } 2095 2096 func (x *UpdateTensorboardTimeSeriesRequest) GetTensorboardTimeSeries() *TensorboardTimeSeries { 2097 if x != nil { 2098 return x.TensorboardTimeSeries 2099 } 2100 return nil 2101 } 2102 2103 // Request message for 2104 // [TensorboardService.DeleteTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries]. 2105 type DeleteTensorboardTimeSeriesRequest struct { 2106 state protoimpl.MessageState 2107 sizeCache protoimpl.SizeCache 2108 unknownFields protoimpl.UnknownFields 2109 2110 // Required. The name of the TensorboardTimeSeries to be deleted. 2111 // Format: 2112 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 2113 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2114 } 2115 2116 func (x *DeleteTensorboardTimeSeriesRequest) Reset() { 2117 *x = DeleteTensorboardTimeSeriesRequest{} 2118 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[33] 2119 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2120 ms.StoreMessageInfo(mi) 2121 } 2122 2123 func (x *DeleteTensorboardTimeSeriesRequest) String() string { 2124 return protoimpl.X.MessageStringOf(x) 2125 } 2126 2127 func (*DeleteTensorboardTimeSeriesRequest) ProtoMessage() {} 2128 2129 func (x *DeleteTensorboardTimeSeriesRequest) ProtoReflect() protoreflect.Message { 2130 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[33] 2131 if x != nil { 2132 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2133 if ms.LoadMessageInfo() == nil { 2134 ms.StoreMessageInfo(mi) 2135 } 2136 return ms 2137 } 2138 return mi.MessageOf(x) 2139 } 2140 2141 // Deprecated: Use DeleteTensorboardTimeSeriesRequest.ProtoReflect.Descriptor instead. 2142 func (*DeleteTensorboardTimeSeriesRequest) Descriptor() ([]byte, []int) { 2143 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{33} 2144 } 2145 2146 func (x *DeleteTensorboardTimeSeriesRequest) GetName() string { 2147 if x != nil { 2148 return x.Name 2149 } 2150 return "" 2151 } 2152 2153 // Request message for 2154 // [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData]. 2155 type BatchReadTensorboardTimeSeriesDataRequest struct { 2156 state protoimpl.MessageState 2157 sizeCache protoimpl.SizeCache 2158 unknownFields protoimpl.UnknownFields 2159 2160 // Required. The resource name of the Tensorboard containing 2161 // TensorboardTimeSeries to read data from. Format: 2162 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`. 2163 // The TensorboardTimeSeries referenced by 2164 // [time_series][google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataRequest.time_series] 2165 // must be sub resources of this Tensorboard. 2166 Tensorboard string `protobuf:"bytes,1,opt,name=tensorboard,proto3" json:"tensorboard,omitempty"` 2167 // Required. The resource names of the TensorboardTimeSeries to read data 2168 // from. Format: 2169 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 2170 TimeSeries []string `protobuf:"bytes,2,rep,name=time_series,json=timeSeries,proto3" json:"time_series,omitempty"` 2171 } 2172 2173 func (x *BatchReadTensorboardTimeSeriesDataRequest) Reset() { 2174 *x = BatchReadTensorboardTimeSeriesDataRequest{} 2175 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[34] 2176 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2177 ms.StoreMessageInfo(mi) 2178 } 2179 2180 func (x *BatchReadTensorboardTimeSeriesDataRequest) String() string { 2181 return protoimpl.X.MessageStringOf(x) 2182 } 2183 2184 func (*BatchReadTensorboardTimeSeriesDataRequest) ProtoMessage() {} 2185 2186 func (x *BatchReadTensorboardTimeSeriesDataRequest) ProtoReflect() protoreflect.Message { 2187 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[34] 2188 if x != nil { 2189 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2190 if ms.LoadMessageInfo() == nil { 2191 ms.StoreMessageInfo(mi) 2192 } 2193 return ms 2194 } 2195 return mi.MessageOf(x) 2196 } 2197 2198 // Deprecated: Use BatchReadTensorboardTimeSeriesDataRequest.ProtoReflect.Descriptor instead. 2199 func (*BatchReadTensorboardTimeSeriesDataRequest) Descriptor() ([]byte, []int) { 2200 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{34} 2201 } 2202 2203 func (x *BatchReadTensorboardTimeSeriesDataRequest) GetTensorboard() string { 2204 if x != nil { 2205 return x.Tensorboard 2206 } 2207 return "" 2208 } 2209 2210 func (x *BatchReadTensorboardTimeSeriesDataRequest) GetTimeSeries() []string { 2211 if x != nil { 2212 return x.TimeSeries 2213 } 2214 return nil 2215 } 2216 2217 // Response message for 2218 // [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData]. 2219 type BatchReadTensorboardTimeSeriesDataResponse struct { 2220 state protoimpl.MessageState 2221 sizeCache protoimpl.SizeCache 2222 unknownFields protoimpl.UnknownFields 2223 2224 // The returned time series data. 2225 TimeSeriesData []*TimeSeriesData `protobuf:"bytes,1,rep,name=time_series_data,json=timeSeriesData,proto3" json:"time_series_data,omitempty"` 2226 } 2227 2228 func (x *BatchReadTensorboardTimeSeriesDataResponse) Reset() { 2229 *x = BatchReadTensorboardTimeSeriesDataResponse{} 2230 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[35] 2231 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2232 ms.StoreMessageInfo(mi) 2233 } 2234 2235 func (x *BatchReadTensorboardTimeSeriesDataResponse) String() string { 2236 return protoimpl.X.MessageStringOf(x) 2237 } 2238 2239 func (*BatchReadTensorboardTimeSeriesDataResponse) ProtoMessage() {} 2240 2241 func (x *BatchReadTensorboardTimeSeriesDataResponse) ProtoReflect() protoreflect.Message { 2242 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[35] 2243 if x != nil { 2244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2245 if ms.LoadMessageInfo() == nil { 2246 ms.StoreMessageInfo(mi) 2247 } 2248 return ms 2249 } 2250 return mi.MessageOf(x) 2251 } 2252 2253 // Deprecated: Use BatchReadTensorboardTimeSeriesDataResponse.ProtoReflect.Descriptor instead. 2254 func (*BatchReadTensorboardTimeSeriesDataResponse) Descriptor() ([]byte, []int) { 2255 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{35} 2256 } 2257 2258 func (x *BatchReadTensorboardTimeSeriesDataResponse) GetTimeSeriesData() []*TimeSeriesData { 2259 if x != nil { 2260 return x.TimeSeriesData 2261 } 2262 return nil 2263 } 2264 2265 // Request message for 2266 // [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData]. 2267 type ReadTensorboardTimeSeriesDataRequest struct { 2268 state protoimpl.MessageState 2269 sizeCache protoimpl.SizeCache 2270 unknownFields protoimpl.UnknownFields 2271 2272 // Required. The resource name of the TensorboardTimeSeries to read data from. 2273 // Format: 2274 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 2275 TensorboardTimeSeries string `protobuf:"bytes,1,opt,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 2276 // The maximum number of TensorboardTimeSeries' data to return. 2277 // 2278 // This value should be a positive integer. 2279 // This value can be set to -1 to return all data. 2280 MaxDataPoints int32 `protobuf:"varint,2,opt,name=max_data_points,json=maxDataPoints,proto3" json:"max_data_points,omitempty"` 2281 // Reads the TensorboardTimeSeries' data that match the filter expression. 2282 Filter string `protobuf:"bytes,3,opt,name=filter,proto3" json:"filter,omitempty"` 2283 } 2284 2285 func (x *ReadTensorboardTimeSeriesDataRequest) Reset() { 2286 *x = ReadTensorboardTimeSeriesDataRequest{} 2287 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[36] 2288 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2289 ms.StoreMessageInfo(mi) 2290 } 2291 2292 func (x *ReadTensorboardTimeSeriesDataRequest) String() string { 2293 return protoimpl.X.MessageStringOf(x) 2294 } 2295 2296 func (*ReadTensorboardTimeSeriesDataRequest) ProtoMessage() {} 2297 2298 func (x *ReadTensorboardTimeSeriesDataRequest) ProtoReflect() protoreflect.Message { 2299 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[36] 2300 if x != nil { 2301 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2302 if ms.LoadMessageInfo() == nil { 2303 ms.StoreMessageInfo(mi) 2304 } 2305 return ms 2306 } 2307 return mi.MessageOf(x) 2308 } 2309 2310 // Deprecated: Use ReadTensorboardTimeSeriesDataRequest.ProtoReflect.Descriptor instead. 2311 func (*ReadTensorboardTimeSeriesDataRequest) Descriptor() ([]byte, []int) { 2312 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{36} 2313 } 2314 2315 func (x *ReadTensorboardTimeSeriesDataRequest) GetTensorboardTimeSeries() string { 2316 if x != nil { 2317 return x.TensorboardTimeSeries 2318 } 2319 return "" 2320 } 2321 2322 func (x *ReadTensorboardTimeSeriesDataRequest) GetMaxDataPoints() int32 { 2323 if x != nil { 2324 return x.MaxDataPoints 2325 } 2326 return 0 2327 } 2328 2329 func (x *ReadTensorboardTimeSeriesDataRequest) GetFilter() string { 2330 if x != nil { 2331 return x.Filter 2332 } 2333 return "" 2334 } 2335 2336 // Response message for 2337 // [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData]. 2338 type ReadTensorboardTimeSeriesDataResponse struct { 2339 state protoimpl.MessageState 2340 sizeCache protoimpl.SizeCache 2341 unknownFields protoimpl.UnknownFields 2342 2343 // The returned time series data. 2344 TimeSeriesData *TimeSeriesData `protobuf:"bytes,1,opt,name=time_series_data,json=timeSeriesData,proto3" json:"time_series_data,omitempty"` 2345 } 2346 2347 func (x *ReadTensorboardTimeSeriesDataResponse) Reset() { 2348 *x = ReadTensorboardTimeSeriesDataResponse{} 2349 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[37] 2350 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2351 ms.StoreMessageInfo(mi) 2352 } 2353 2354 func (x *ReadTensorboardTimeSeriesDataResponse) String() string { 2355 return protoimpl.X.MessageStringOf(x) 2356 } 2357 2358 func (*ReadTensorboardTimeSeriesDataResponse) ProtoMessage() {} 2359 2360 func (x *ReadTensorboardTimeSeriesDataResponse) ProtoReflect() protoreflect.Message { 2361 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[37] 2362 if x != nil { 2363 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2364 if ms.LoadMessageInfo() == nil { 2365 ms.StoreMessageInfo(mi) 2366 } 2367 return ms 2368 } 2369 return mi.MessageOf(x) 2370 } 2371 2372 // Deprecated: Use ReadTensorboardTimeSeriesDataResponse.ProtoReflect.Descriptor instead. 2373 func (*ReadTensorboardTimeSeriesDataResponse) Descriptor() ([]byte, []int) { 2374 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{37} 2375 } 2376 2377 func (x *ReadTensorboardTimeSeriesDataResponse) GetTimeSeriesData() *TimeSeriesData { 2378 if x != nil { 2379 return x.TimeSeriesData 2380 } 2381 return nil 2382 } 2383 2384 // Request message for 2385 // [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData]. 2386 type WriteTensorboardExperimentDataRequest struct { 2387 state protoimpl.MessageState 2388 sizeCache protoimpl.SizeCache 2389 unknownFields protoimpl.UnknownFields 2390 2391 // Required. The resource name of the TensorboardExperiment to write data to. 2392 // Format: 2393 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` 2394 TensorboardExperiment string `protobuf:"bytes,1,opt,name=tensorboard_experiment,json=tensorboardExperiment,proto3" json:"tensorboard_experiment,omitempty"` 2395 // Required. Requests containing per-run TensorboardTimeSeries data to write. 2396 WriteRunDataRequests []*WriteTensorboardRunDataRequest `protobuf:"bytes,2,rep,name=write_run_data_requests,json=writeRunDataRequests,proto3" json:"write_run_data_requests,omitempty"` 2397 } 2398 2399 func (x *WriteTensorboardExperimentDataRequest) Reset() { 2400 *x = WriteTensorboardExperimentDataRequest{} 2401 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[38] 2402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2403 ms.StoreMessageInfo(mi) 2404 } 2405 2406 func (x *WriteTensorboardExperimentDataRequest) String() string { 2407 return protoimpl.X.MessageStringOf(x) 2408 } 2409 2410 func (*WriteTensorboardExperimentDataRequest) ProtoMessage() {} 2411 2412 func (x *WriteTensorboardExperimentDataRequest) ProtoReflect() protoreflect.Message { 2413 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[38] 2414 if x != nil { 2415 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2416 if ms.LoadMessageInfo() == nil { 2417 ms.StoreMessageInfo(mi) 2418 } 2419 return ms 2420 } 2421 return mi.MessageOf(x) 2422 } 2423 2424 // Deprecated: Use WriteTensorboardExperimentDataRequest.ProtoReflect.Descriptor instead. 2425 func (*WriteTensorboardExperimentDataRequest) Descriptor() ([]byte, []int) { 2426 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{38} 2427 } 2428 2429 func (x *WriteTensorboardExperimentDataRequest) GetTensorboardExperiment() string { 2430 if x != nil { 2431 return x.TensorboardExperiment 2432 } 2433 return "" 2434 } 2435 2436 func (x *WriteTensorboardExperimentDataRequest) GetWriteRunDataRequests() []*WriteTensorboardRunDataRequest { 2437 if x != nil { 2438 return x.WriteRunDataRequests 2439 } 2440 return nil 2441 } 2442 2443 // Response message for 2444 // [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData]. 2445 type WriteTensorboardExperimentDataResponse struct { 2446 state protoimpl.MessageState 2447 sizeCache protoimpl.SizeCache 2448 unknownFields protoimpl.UnknownFields 2449 } 2450 2451 func (x *WriteTensorboardExperimentDataResponse) Reset() { 2452 *x = WriteTensorboardExperimentDataResponse{} 2453 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[39] 2454 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2455 ms.StoreMessageInfo(mi) 2456 } 2457 2458 func (x *WriteTensorboardExperimentDataResponse) String() string { 2459 return protoimpl.X.MessageStringOf(x) 2460 } 2461 2462 func (*WriteTensorboardExperimentDataResponse) ProtoMessage() {} 2463 2464 func (x *WriteTensorboardExperimentDataResponse) ProtoReflect() protoreflect.Message { 2465 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[39] 2466 if x != nil { 2467 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2468 if ms.LoadMessageInfo() == nil { 2469 ms.StoreMessageInfo(mi) 2470 } 2471 return ms 2472 } 2473 return mi.MessageOf(x) 2474 } 2475 2476 // Deprecated: Use WriteTensorboardExperimentDataResponse.ProtoReflect.Descriptor instead. 2477 func (*WriteTensorboardExperimentDataResponse) Descriptor() ([]byte, []int) { 2478 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{39} 2479 } 2480 2481 // Request message for 2482 // [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData]. 2483 type WriteTensorboardRunDataRequest struct { 2484 state protoimpl.MessageState 2485 sizeCache protoimpl.SizeCache 2486 unknownFields protoimpl.UnknownFields 2487 2488 // Required. The resource name of the TensorboardRun to write data to. 2489 // Format: 2490 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` 2491 TensorboardRun string `protobuf:"bytes,1,opt,name=tensorboard_run,json=tensorboardRun,proto3" json:"tensorboard_run,omitempty"` 2492 // Required. The TensorboardTimeSeries data to write. 2493 // Values with in a time series are indexed by their step value. 2494 // Repeated writes to the same step will overwrite the existing value for that 2495 // step. 2496 // The upper limit of data points per write request is 5000. 2497 TimeSeriesData []*TimeSeriesData `protobuf:"bytes,2,rep,name=time_series_data,json=timeSeriesData,proto3" json:"time_series_data,omitempty"` 2498 } 2499 2500 func (x *WriteTensorboardRunDataRequest) Reset() { 2501 *x = WriteTensorboardRunDataRequest{} 2502 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[40] 2503 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2504 ms.StoreMessageInfo(mi) 2505 } 2506 2507 func (x *WriteTensorboardRunDataRequest) String() string { 2508 return protoimpl.X.MessageStringOf(x) 2509 } 2510 2511 func (*WriteTensorboardRunDataRequest) ProtoMessage() {} 2512 2513 func (x *WriteTensorboardRunDataRequest) ProtoReflect() protoreflect.Message { 2514 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[40] 2515 if x != nil { 2516 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2517 if ms.LoadMessageInfo() == nil { 2518 ms.StoreMessageInfo(mi) 2519 } 2520 return ms 2521 } 2522 return mi.MessageOf(x) 2523 } 2524 2525 // Deprecated: Use WriteTensorboardRunDataRequest.ProtoReflect.Descriptor instead. 2526 func (*WriteTensorboardRunDataRequest) Descriptor() ([]byte, []int) { 2527 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{40} 2528 } 2529 2530 func (x *WriteTensorboardRunDataRequest) GetTensorboardRun() string { 2531 if x != nil { 2532 return x.TensorboardRun 2533 } 2534 return "" 2535 } 2536 2537 func (x *WriteTensorboardRunDataRequest) GetTimeSeriesData() []*TimeSeriesData { 2538 if x != nil { 2539 return x.TimeSeriesData 2540 } 2541 return nil 2542 } 2543 2544 // Response message for 2545 // [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData]. 2546 type WriteTensorboardRunDataResponse struct { 2547 state protoimpl.MessageState 2548 sizeCache protoimpl.SizeCache 2549 unknownFields protoimpl.UnknownFields 2550 } 2551 2552 func (x *WriteTensorboardRunDataResponse) Reset() { 2553 *x = WriteTensorboardRunDataResponse{} 2554 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[41] 2555 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2556 ms.StoreMessageInfo(mi) 2557 } 2558 2559 func (x *WriteTensorboardRunDataResponse) String() string { 2560 return protoimpl.X.MessageStringOf(x) 2561 } 2562 2563 func (*WriteTensorboardRunDataResponse) ProtoMessage() {} 2564 2565 func (x *WriteTensorboardRunDataResponse) ProtoReflect() protoreflect.Message { 2566 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[41] 2567 if x != nil { 2568 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2569 if ms.LoadMessageInfo() == nil { 2570 ms.StoreMessageInfo(mi) 2571 } 2572 return ms 2573 } 2574 return mi.MessageOf(x) 2575 } 2576 2577 // Deprecated: Use WriteTensorboardRunDataResponse.ProtoReflect.Descriptor instead. 2578 func (*WriteTensorboardRunDataResponse) Descriptor() ([]byte, []int) { 2579 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{41} 2580 } 2581 2582 // Request message for 2583 // [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData]. 2584 type ExportTensorboardTimeSeriesDataRequest struct { 2585 state protoimpl.MessageState 2586 sizeCache protoimpl.SizeCache 2587 unknownFields protoimpl.UnknownFields 2588 2589 // Required. The resource name of the TensorboardTimeSeries to export data 2590 // from. Format: 2591 // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` 2592 TensorboardTimeSeries string `protobuf:"bytes,1,opt,name=tensorboard_time_series,json=tensorboardTimeSeries,proto3" json:"tensorboard_time_series,omitempty"` 2593 // Exports the TensorboardTimeSeries' data that match the filter expression. 2594 Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` 2595 // The maximum number of data points to return per page. 2596 // The default page_size is 1000. Values must be between 1 and 10000. 2597 // Values above 10000 are coerced to 10000. 2598 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 2599 // A page token, received from a previous 2600 // [ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData] 2601 // call. Provide this to retrieve the subsequent page. 2602 // 2603 // When paginating, all other parameters provided to 2604 // [ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData] 2605 // must match the call that provided the page token. 2606 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 2607 // Field to use to sort the TensorboardTimeSeries' data. 2608 // By default, TensorboardTimeSeries' data is returned in a pseudo random 2609 // order. 2610 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 2611 } 2612 2613 func (x *ExportTensorboardTimeSeriesDataRequest) Reset() { 2614 *x = ExportTensorboardTimeSeriesDataRequest{} 2615 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[42] 2616 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2617 ms.StoreMessageInfo(mi) 2618 } 2619 2620 func (x *ExportTensorboardTimeSeriesDataRequest) String() string { 2621 return protoimpl.X.MessageStringOf(x) 2622 } 2623 2624 func (*ExportTensorboardTimeSeriesDataRequest) ProtoMessage() {} 2625 2626 func (x *ExportTensorboardTimeSeriesDataRequest) ProtoReflect() protoreflect.Message { 2627 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[42] 2628 if x != nil { 2629 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2630 if ms.LoadMessageInfo() == nil { 2631 ms.StoreMessageInfo(mi) 2632 } 2633 return ms 2634 } 2635 return mi.MessageOf(x) 2636 } 2637 2638 // Deprecated: Use ExportTensorboardTimeSeriesDataRequest.ProtoReflect.Descriptor instead. 2639 func (*ExportTensorboardTimeSeriesDataRequest) Descriptor() ([]byte, []int) { 2640 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{42} 2641 } 2642 2643 func (x *ExportTensorboardTimeSeriesDataRequest) GetTensorboardTimeSeries() string { 2644 if x != nil { 2645 return x.TensorboardTimeSeries 2646 } 2647 return "" 2648 } 2649 2650 func (x *ExportTensorboardTimeSeriesDataRequest) GetFilter() string { 2651 if x != nil { 2652 return x.Filter 2653 } 2654 return "" 2655 } 2656 2657 func (x *ExportTensorboardTimeSeriesDataRequest) GetPageSize() int32 { 2658 if x != nil { 2659 return x.PageSize 2660 } 2661 return 0 2662 } 2663 2664 func (x *ExportTensorboardTimeSeriesDataRequest) GetPageToken() string { 2665 if x != nil { 2666 return x.PageToken 2667 } 2668 return "" 2669 } 2670 2671 func (x *ExportTensorboardTimeSeriesDataRequest) GetOrderBy() string { 2672 if x != nil { 2673 return x.OrderBy 2674 } 2675 return "" 2676 } 2677 2678 // Response message for 2679 // [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData]. 2680 type ExportTensorboardTimeSeriesDataResponse struct { 2681 state protoimpl.MessageState 2682 sizeCache protoimpl.SizeCache 2683 unknownFields protoimpl.UnknownFields 2684 2685 // The returned time series data points. 2686 TimeSeriesDataPoints []*TimeSeriesDataPoint `protobuf:"bytes,1,rep,name=time_series_data_points,json=timeSeriesDataPoints,proto3" json:"time_series_data_points,omitempty"` 2687 // A token, which can be sent as 2688 // [page_token][google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataRequest.page_token] 2689 // to retrieve the next page. If this field is omitted, there are no 2690 // subsequent pages. 2691 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 2692 } 2693 2694 func (x *ExportTensorboardTimeSeriesDataResponse) Reset() { 2695 *x = ExportTensorboardTimeSeriesDataResponse{} 2696 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[43] 2697 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2698 ms.StoreMessageInfo(mi) 2699 } 2700 2701 func (x *ExportTensorboardTimeSeriesDataResponse) String() string { 2702 return protoimpl.X.MessageStringOf(x) 2703 } 2704 2705 func (*ExportTensorboardTimeSeriesDataResponse) ProtoMessage() {} 2706 2707 func (x *ExportTensorboardTimeSeriesDataResponse) ProtoReflect() protoreflect.Message { 2708 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[43] 2709 if x != nil { 2710 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2711 if ms.LoadMessageInfo() == nil { 2712 ms.StoreMessageInfo(mi) 2713 } 2714 return ms 2715 } 2716 return mi.MessageOf(x) 2717 } 2718 2719 // Deprecated: Use ExportTensorboardTimeSeriesDataResponse.ProtoReflect.Descriptor instead. 2720 func (*ExportTensorboardTimeSeriesDataResponse) Descriptor() ([]byte, []int) { 2721 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{43} 2722 } 2723 2724 func (x *ExportTensorboardTimeSeriesDataResponse) GetTimeSeriesDataPoints() []*TimeSeriesDataPoint { 2725 if x != nil { 2726 return x.TimeSeriesDataPoints 2727 } 2728 return nil 2729 } 2730 2731 func (x *ExportTensorboardTimeSeriesDataResponse) GetNextPageToken() string { 2732 if x != nil { 2733 return x.NextPageToken 2734 } 2735 return "" 2736 } 2737 2738 // Details of operations that perform create Tensorboard. 2739 type CreateTensorboardOperationMetadata struct { 2740 state protoimpl.MessageState 2741 sizeCache protoimpl.SizeCache 2742 unknownFields protoimpl.UnknownFields 2743 2744 // Operation metadata for Tensorboard. 2745 GenericMetadata *GenericOperationMetadata `protobuf:"bytes,1,opt,name=generic_metadata,json=genericMetadata,proto3" json:"generic_metadata,omitempty"` 2746 } 2747 2748 func (x *CreateTensorboardOperationMetadata) Reset() { 2749 *x = CreateTensorboardOperationMetadata{} 2750 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[44] 2751 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2752 ms.StoreMessageInfo(mi) 2753 } 2754 2755 func (x *CreateTensorboardOperationMetadata) String() string { 2756 return protoimpl.X.MessageStringOf(x) 2757 } 2758 2759 func (*CreateTensorboardOperationMetadata) ProtoMessage() {} 2760 2761 func (x *CreateTensorboardOperationMetadata) ProtoReflect() protoreflect.Message { 2762 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[44] 2763 if x != nil { 2764 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2765 if ms.LoadMessageInfo() == nil { 2766 ms.StoreMessageInfo(mi) 2767 } 2768 return ms 2769 } 2770 return mi.MessageOf(x) 2771 } 2772 2773 // Deprecated: Use CreateTensorboardOperationMetadata.ProtoReflect.Descriptor instead. 2774 func (*CreateTensorboardOperationMetadata) Descriptor() ([]byte, []int) { 2775 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{44} 2776 } 2777 2778 func (x *CreateTensorboardOperationMetadata) GetGenericMetadata() *GenericOperationMetadata { 2779 if x != nil { 2780 return x.GenericMetadata 2781 } 2782 return nil 2783 } 2784 2785 // Details of operations that perform update Tensorboard. 2786 type UpdateTensorboardOperationMetadata struct { 2787 state protoimpl.MessageState 2788 sizeCache protoimpl.SizeCache 2789 unknownFields protoimpl.UnknownFields 2790 2791 // Operation metadata for Tensorboard. 2792 GenericMetadata *GenericOperationMetadata `protobuf:"bytes,1,opt,name=generic_metadata,json=genericMetadata,proto3" json:"generic_metadata,omitempty"` 2793 } 2794 2795 func (x *UpdateTensorboardOperationMetadata) Reset() { 2796 *x = UpdateTensorboardOperationMetadata{} 2797 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[45] 2798 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2799 ms.StoreMessageInfo(mi) 2800 } 2801 2802 func (x *UpdateTensorboardOperationMetadata) String() string { 2803 return protoimpl.X.MessageStringOf(x) 2804 } 2805 2806 func (*UpdateTensorboardOperationMetadata) ProtoMessage() {} 2807 2808 func (x *UpdateTensorboardOperationMetadata) ProtoReflect() protoreflect.Message { 2809 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[45] 2810 if x != nil { 2811 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2812 if ms.LoadMessageInfo() == nil { 2813 ms.StoreMessageInfo(mi) 2814 } 2815 return ms 2816 } 2817 return mi.MessageOf(x) 2818 } 2819 2820 // Deprecated: Use UpdateTensorboardOperationMetadata.ProtoReflect.Descriptor instead. 2821 func (*UpdateTensorboardOperationMetadata) Descriptor() ([]byte, []int) { 2822 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{45} 2823 } 2824 2825 func (x *UpdateTensorboardOperationMetadata) GetGenericMetadata() *GenericOperationMetadata { 2826 if x != nil { 2827 return x.GenericMetadata 2828 } 2829 return nil 2830 } 2831 2832 // Per user usage data. 2833 type ReadTensorboardUsageResponse_PerUserUsageData struct { 2834 state protoimpl.MessageState 2835 sizeCache protoimpl.SizeCache 2836 unknownFields protoimpl.UnknownFields 2837 2838 // User's username 2839 Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` 2840 // Number of times the user has read data within the Tensorboard. 2841 ViewCount int64 `protobuf:"varint,2,opt,name=view_count,json=viewCount,proto3" json:"view_count,omitempty"` 2842 } 2843 2844 func (x *ReadTensorboardUsageResponse_PerUserUsageData) Reset() { 2845 *x = ReadTensorboardUsageResponse_PerUserUsageData{} 2846 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[46] 2847 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2848 ms.StoreMessageInfo(mi) 2849 } 2850 2851 func (x *ReadTensorboardUsageResponse_PerUserUsageData) String() string { 2852 return protoimpl.X.MessageStringOf(x) 2853 } 2854 2855 func (*ReadTensorboardUsageResponse_PerUserUsageData) ProtoMessage() {} 2856 2857 func (x *ReadTensorboardUsageResponse_PerUserUsageData) ProtoReflect() protoreflect.Message { 2858 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[46] 2859 if x != nil { 2860 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2861 if ms.LoadMessageInfo() == nil { 2862 ms.StoreMessageInfo(mi) 2863 } 2864 return ms 2865 } 2866 return mi.MessageOf(x) 2867 } 2868 2869 // Deprecated: Use ReadTensorboardUsageResponse_PerUserUsageData.ProtoReflect.Descriptor instead. 2870 func (*ReadTensorboardUsageResponse_PerUserUsageData) Descriptor() ([]byte, []int) { 2871 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{7, 0} 2872 } 2873 2874 func (x *ReadTensorboardUsageResponse_PerUserUsageData) GetUsername() string { 2875 if x != nil { 2876 return x.Username 2877 } 2878 return "" 2879 } 2880 2881 func (x *ReadTensorboardUsageResponse_PerUserUsageData) GetViewCount() int64 { 2882 if x != nil { 2883 return x.ViewCount 2884 } 2885 return 0 2886 } 2887 2888 // Per month usage data 2889 type ReadTensorboardUsageResponse_PerMonthUsageData struct { 2890 state protoimpl.MessageState 2891 sizeCache protoimpl.SizeCache 2892 unknownFields protoimpl.UnknownFields 2893 2894 // Usage data for each user in the given month. 2895 UserUsageData []*ReadTensorboardUsageResponse_PerUserUsageData `protobuf:"bytes,1,rep,name=user_usage_data,json=userUsageData,proto3" json:"user_usage_data,omitempty"` 2896 } 2897 2898 func (x *ReadTensorboardUsageResponse_PerMonthUsageData) Reset() { 2899 *x = ReadTensorboardUsageResponse_PerMonthUsageData{} 2900 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[47] 2901 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2902 ms.StoreMessageInfo(mi) 2903 } 2904 2905 func (x *ReadTensorboardUsageResponse_PerMonthUsageData) String() string { 2906 return protoimpl.X.MessageStringOf(x) 2907 } 2908 2909 func (*ReadTensorboardUsageResponse_PerMonthUsageData) ProtoMessage() {} 2910 2911 func (x *ReadTensorboardUsageResponse_PerMonthUsageData) ProtoReflect() protoreflect.Message { 2912 mi := &file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes[47] 2913 if x != nil { 2914 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2915 if ms.LoadMessageInfo() == nil { 2916 ms.StoreMessageInfo(mi) 2917 } 2918 return ms 2919 } 2920 return mi.MessageOf(x) 2921 } 2922 2923 // Deprecated: Use ReadTensorboardUsageResponse_PerMonthUsageData.ProtoReflect.Descriptor instead. 2924 func (*ReadTensorboardUsageResponse_PerMonthUsageData) Descriptor() ([]byte, []int) { 2925 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP(), []int{7, 1} 2926 } 2927 2928 func (x *ReadTensorboardUsageResponse_PerMonthUsageData) GetUserUsageData() []*ReadTensorboardUsageResponse_PerUserUsageData { 2929 if x != nil { 2930 return x.UserUsageData 2931 } 2932 return nil 2933 } 2934 2935 var File_google_cloud_aiplatform_v1beta1_tensorboard_service_proto protoreflect.FileDescriptor 2936 2937 var file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDesc = []byte{ 2938 0x0a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 2939 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 2940 0x31, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x73, 0x65, 2941 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 2942 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2943 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 2944 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 2945 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 2946 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 2947 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 2948 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 2949 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 2950 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2951 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 2952 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2953 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2954 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 2955 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 2956 0x31, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x70, 0x72, 2957 0x6f, 0x74, 0x6f, 0x1a, 0x36, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 2958 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 2959 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 2960 0x5f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3c, 0x67, 0x6f, 0x6f, 2961 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2962 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x65, 0x6e, 2963 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 2964 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x35, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2965 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 2966 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 2967 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2968 0x1a, 0x3d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 2969 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 2970 0x31, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 2971 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2972 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 2973 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 2974 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 2975 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 2976 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 2977 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 2978 0x6f, 0x74, 0x6f, 0x22, 0xb6, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 2979 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2980 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 2981 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2982 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 2983 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 2984 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 2985 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 2986 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 2987 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 2988 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 2989 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x5a, 0x0a, 0x15, 2990 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 2991 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 2992 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 2993 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 2994 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 2995 0x72, 0x64, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x17, 0x4c, 0x69, 0x73, 2996 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 2997 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 2998 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x61, 0x69, 2999 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 3000 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3001 0x61, 0x72, 0x64, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 3002 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 3003 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 3004 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 3005 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 3006 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 3007 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 3008 0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 3009 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 3010 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 3011 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 3012 0x61, 0x73, 0x6b, 0x22, 0x94, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 3013 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 3014 0x12, 0x50, 0x0a, 0x0c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 3015 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3016 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 3017 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3018 0x6f, 0x61, 0x72, 0x64, 0x52, 0x0c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3019 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 3020 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 3021 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb1, 0x01, 0x0a, 0x18, 0x55, 3022 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3023 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 3024 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 3025 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 3026 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 3027 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x53, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 3028 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 3029 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3030 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3031 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x03, 0xe0, 0x41, 3032 0x02, 0x52, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x5d, 3033 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3034 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 3035 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 3036 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 3037 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 3038 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x6e, 0x0a, 3039 0x1b, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3040 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 3041 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 3042 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 3043 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 3044 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3045 0x52, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x96, 0x04, 3046 0x0a, 0x1c, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3047 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 3048 0x01, 0x0a, 0x12, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 3049 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67, 0x6f, 3050 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 3051 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 3052 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 3053 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 3054 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 3055 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 3056 0x74, 0x61, 0x1a, 0x4d, 0x0a, 0x10, 0x50, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x61, 3057 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 3058 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 3059 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 3060 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, 0x43, 0x6f, 0x75, 0x6e, 3061 0x74, 0x1a, 0x8b, 0x01, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x55, 0x73, 3062 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x76, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x5f, 3063 0x75, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 3064 0x32, 0x4e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3065 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3066 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3067 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 3068 0x50, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 3069 0x52, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x1a, 3070 0x94, 0x01, 0x0a, 0x15, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 3071 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 3072 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x65, 0x0a, 0x05, 0x76, 3073 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 3074 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3075 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 3076 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 3077 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x72, 0x4d, 0x6f, 0x6e, 3078 0x74, 0x68, 0x55, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 3079 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6d, 0x0a, 0x1a, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 3080 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 3081 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3082 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 3083 0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 3084 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 3085 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3086 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x49, 0x0a, 0x1b, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 3087 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 3088 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 3089 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 3090 0x0f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 3091 0x22, 0xa5, 0x02, 0x0a, 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3092 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3093 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 3094 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 3095 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3096 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3097 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3098 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6d, 0x0a, 0x16, 0x74, 0x65, 0x6e, 0x73, 3099 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 3100 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3101 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 3102 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3103 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3104 0x52, 0x15, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 3105 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x19, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3106 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3107 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 3108 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 3109 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6e, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x54, 3110 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 3111 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x04, 0x6e, 3112 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 3113 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 3114 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 3115 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 3116 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x21, 0x4c, 0x69, 0x73, 3117 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 3118 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 3119 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 3120 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x12, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 3121 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 3122 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 3123 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 3124 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 3125 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 3126 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 3127 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 3128 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 3129 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 3130 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x37, 3131 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 3132 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 3133 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x72, 3134 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xbd, 0x01, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 3135 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 3136 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 3137 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 3138 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 3139 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 3140 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 3141 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 3142 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x16, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3143 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 3144 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 3145 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 3146 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xda, 0x01, 0x0a, 0x22, 0x55, 0x70, 0x64, 0x61, 3147 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 3148 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 3149 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 3150 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 3151 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 3152 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 3153 0x12, 0x72, 0x0a, 0x16, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 3154 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 3155 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3156 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3157 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 3158 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x74, 3159 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 3160 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x71, 0x0a, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 3161 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 3162 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x04, 0x6e, 0x61, 3163 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 3164 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 3165 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 3166 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3167 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd3, 0x01, 0x0a, 0x21, 0x42, 0x61, 0x74, 0x63, 3168 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3169 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 3170 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 3171 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 3172 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 3173 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 3174 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x5d, 3175 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 3176 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3177 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3178 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3179 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03, 3180 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x80, 0x01, 3181 0x0a, 0x22, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 3182 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 3183 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x10, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3184 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 3185 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3186 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3187 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 3188 0x0f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 3189 0x22, 0xf9, 0x01, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3190 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3191 0x12, 0x48, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 3192 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3193 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 3194 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3195 0x75, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x5d, 0x0a, 0x0f, 0x74, 0x65, 3196 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x02, 0x20, 3197 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3198 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 3199 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3200 0x64, 0x52, 0x75, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3201 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x12, 0x31, 0x0a, 0x12, 0x74, 0x65, 0x6e, 3202 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18, 3203 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x74, 0x65, 0x6e, 0x73, 3204 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x18, 3205 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 3206 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 3207 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 3208 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3209 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3210 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x95, 3211 0x01, 0x0a, 0x1e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3212 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3213 0x74, 0x12, 0x58, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 3214 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 3215 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3216 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3217 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 3218 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x62, 3219 0x6c, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x62, 3220 0x6c, 0x6f, 0x62, 0x49, 0x64, 0x73, 0x22, 0x69, 0x0a, 0x1f, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 3221 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 3222 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 3223 0x62, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3224 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 3225 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3226 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x62, 3227 0x73, 0x22, 0x8e, 0x02, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3228 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3229 0x12, 0x48, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 3230 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x12, 0x28, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3231 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 3232 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3233 0x75, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 3234 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 3235 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 3236 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 3237 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 3238 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 3239 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 3240 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 3241 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 3242 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 3243 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 3244 0x73, 0x6b, 0x22, 0xa1, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3245 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 3246 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x10, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3247 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 3248 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3249 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 3250 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x0f, 0x74, 3251 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x26, 3252 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 3253 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 3254 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xbe, 0x01, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 3255 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 3256 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 3257 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 3258 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 3259 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 3260 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x5d, 0x0a, 0x0f, 0x74, 0x65, 0x6e, 0x73, 3261 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 3262 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3263 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3264 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3265 0x75, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3266 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x22, 0x63, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 3267 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 3268 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 3269 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x61, 0x69, 3270 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 3271 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3272 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xe0, 0x01, 0x0a, 3273 0x27, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 3274 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3275 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 3276 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 3277 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 3278 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 3279 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3280 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x08, 0x72, 0x65, 0x71, 3281 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 3282 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 3283 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 3284 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3285 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3286 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 3287 0x9a, 0x01, 0x0a, 0x28, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 3288 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3289 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x17, 3290 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 3291 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 3292 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 3293 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 3294 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3295 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x15, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3296 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xac, 0x02, 0x0a, 3297 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3298 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 3299 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 3300 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 3301 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 3302 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3303 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x06, 0x70, 0x61, 3304 0x72, 0x65, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x1a, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3305 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 3306 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x17, 0x74, 3307 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3308 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x73, 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3309 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 3310 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3311 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 3312 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3313 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x42, 3314 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3315 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x6e, 0x0a, 0x1f, 0x47, 3316 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 3317 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 3318 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 3319 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 3320 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 3321 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3322 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9b, 0x02, 0x0a, 0x20, 3323 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3324 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3325 0x12, 0x4f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 3326 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x12, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3327 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 3328 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3329 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 3330 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 3331 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 3332 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 3333 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 3334 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 3335 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 3336 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 3337 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x06, 0x20, 3338 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 3339 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 3340 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xbb, 0x01, 0x0a, 0x21, 0x4c, 0x69, 3341 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 3342 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 3343 0x6e, 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 3344 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 3345 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3346 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3347 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 3348 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x15, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3349 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 3350 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 3351 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 3352 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xdb, 0x01, 0x0a, 0x22, 0x55, 0x70, 0x64, 0x61, 3353 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 3354 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 3355 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 3356 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 3357 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 3358 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 3359 0x12, 0x73, 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 3360 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 3361 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3362 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3363 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3364 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 3365 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3366 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x71, 0x0a, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 3367 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3368 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x04, 0x6e, 3369 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 3370 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 3371 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 3372 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 3373 0x65, 0x73, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x29, 0x42, 0x61, 0x74, 3374 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3375 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 3376 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3377 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 3378 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 3379 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 3380 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x65, 0x6e, 0x73, 3381 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x58, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 3382 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 3383 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 3384 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 3385 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3386 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3387 0x73, 0x22, 0x87, 0x01, 0x0a, 0x2a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x54, 3388 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3389 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 3390 0x12, 0x59, 0x0a, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 3391 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 3392 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3393 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x69, 0x6d, 3394 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x74, 0x69, 0x6d, 3395 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, 0xd7, 0x01, 0x0a, 0x24, 3396 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3397 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 3398 0x75, 0x65, 0x73, 0x74, 0x12, 0x6f, 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3399 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 3400 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 3401 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3402 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3403 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x15, 3404 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3405 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x61, 0x74, 3406 0x61, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 3407 0x6d, 0x61, 0x78, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 3408 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 3409 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x25, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 3410 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 3411 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 3412 0x59, 0x0a, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x64, 3413 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3414 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3415 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 3416 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 3417 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, 0x94, 0x02, 0x0a, 0x25, 0x57, 3418 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3419 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 3420 0x75, 0x65, 0x73, 0x74, 0x12, 0x6e, 0x0a, 0x16, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3421 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 3422 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 0x0a, 0x2f, 0x61, 0x69, 3423 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 3424 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3425 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x15, 0x74, 3426 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 3427 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x7b, 0x0a, 0x17, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x72, 0x75, 3428 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 3429 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3430 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 3431 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 3432 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 3433 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x14, 0x77, 0x72, 0x69, 3434 0x74, 0x65, 0x52, 0x75, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3435 0x73, 0x22, 0x28, 0x0a, 0x26, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3436 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x44, 3437 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x1e, 3438 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3439 0x52, 0x75, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x59, 3440 0x0a, 0x0f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 3441 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 3442 0x28, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3443 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3444 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x0e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3445 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x12, 0x5e, 0x0a, 0x10, 0x74, 0x69, 0x6d, 3446 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 3447 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3448 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 3449 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 3450 0x44, 0x61, 0x74, 0x61, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x53, 3451 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, 0x21, 0x0a, 0x1f, 0x57, 0x72, 0x69, 3452 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 3453 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x88, 0x02, 0x0a, 3454 0x26, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3455 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 3456 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6f, 0x0a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3457 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 3458 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x37, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x31, 3459 0x0a, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 3460 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x65, 0x6e, 0x73, 3461 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3462 0x73, 0x52, 0x15, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 3463 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 3464 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 3465 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 3466 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 3467 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 3468 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x0a, 0x08, 3469 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 3470 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xbe, 0x01, 0x0a, 0x27, 0x45, 0x78, 0x70, 0x6f, 3471 0x72, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 3472 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 3473 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 3474 0x65, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 3475 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3476 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3477 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3478 0x73, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x14, 0x74, 0x69, 0x6d, 0x65, 3479 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 3480 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 3481 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 3482 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8a, 0x01, 0x0a, 0x22, 0x43, 0x72, 0x65, 3483 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x4f, 0x70, 3484 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 3485 0x64, 0x0a, 0x10, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 3486 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3487 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3488 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 3489 0x72, 0x69, 0x63, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 3490 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 3491 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8a, 0x01, 0x0a, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 3492 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x4f, 0x70, 0x65, 0x72, 0x61, 3493 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x64, 0x0a, 0x10, 3494 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 3495 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3496 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 3497 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 3498 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 3499 0x61, 0x52, 0x0f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 3500 0x74, 0x61, 0x32, 0xc4, 0x41, 0x0a, 0x12, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3501 0x72, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x83, 0x02, 0x0a, 0x11, 0x43, 0x72, 3502 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 3503 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 3504 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 3505 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3506 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 3507 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 3508 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x93, 0x01, 0xca, 0x41, 0x31, 0x0a, 3509 0x0b, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x22, 0x43, 0x72, 3510 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x4f, 3511 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 3512 0xda, 0x41, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3513 0x62, 0x6f, 0x61, 0x72, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x44, 0x3a, 0x0b, 0x74, 0x65, 0x6e, 3514 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 3515 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 3516 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 3517 0x2a, 0x7d, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x12, 3518 0xbc, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3519 0x72, 0x64, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3520 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3521 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3522 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 3523 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3524 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 3525 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x44, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 3526 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x12, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 3527 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3528 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 3529 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x94, 3530 0x02, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3531 0x6f, 0x61, 0x72, 0x64, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3532 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3533 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 3534 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 3535 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 3536 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa4, 3537 0x01, 0xca, 0x41, 0x31, 0x0a, 0x0b, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3538 0x64, 0x12, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3539 0x6f, 0x61, 0x72, 0x64, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 3540 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3541 0x61, 0x72, 0x64, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 3542 0xd3, 0xe4, 0x93, 0x02, 0x50, 0x3a, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3543 0x72, 0x64, 0x32, 0x41, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 3544 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 3545 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 3546 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3547 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xcf, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 3548 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 3549 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3550 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 3551 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 3552 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3553 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3554 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3555 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 3556 0x46, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 3557 0x12, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 3558 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 3559 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3560 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x12, 0xe6, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 3561 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x39, 0x2e, 3562 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 3563 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 3564 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3565 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3566 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 3567 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x77, 0xca, 0x41, 0x30, 0x0a, 0x15, 0x67, 0x6f, 3568 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 3569 0x70, 0x74, 0x79, 0x12, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 3570 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 3571 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x2a, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 3572 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 3573 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 3574 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 3575 0x12, 0xf1, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3576 0x6f, 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3577 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3578 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 3579 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 3580 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3581 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 3582 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 3583 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 3584 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5c, 0xda, 0x41, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3585 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x48, 0x12, 0x46, 0x2f, 0x76, 3586 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3587 0x61, 0x72, 0x64, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 3588 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3589 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x61, 0x64, 0x55, 3590 0x73, 0x61, 0x67, 0x65, 0x12, 0xed, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 3591 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3b, 0x2e, 0x67, 3592 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3593 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 3594 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x69, 3595 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3596 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3597 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 3598 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x52, 3599 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5b, 0xda, 0x41, 0x0b, 0x74, 0x65, 0x6e, 0x73, 3600 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x12, 0x45, 0x2f, 3601 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3602 0x6f, 0x61, 0x72, 0x64, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3603 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 3604 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x61, 0x64, 3605 0x53, 0x69, 0x7a, 0x65, 0x12, 0xba, 0x02, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 3606 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 3607 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3608 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3609 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 3610 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 3611 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3612 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3613 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 3614 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3615 0x74, 0x22, 0x9d, 0x01, 0xda, 0x41, 0x37, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x74, 0x65, 3616 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 3617 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3618 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x82, 0xd3, 3619 0xe4, 0x93, 0x02, 0x5d, 0x3a, 0x16, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3620 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x43, 0x2f, 0x76, 3621 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 3622 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 3623 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3624 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3625 0x73, 0x12, 0xe8, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3626 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x40, 3627 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3628 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3629 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3630 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3631 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3632 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3633 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 3634 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x52, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 3635 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x12, 0x43, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 3636 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3637 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 3638 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 3639 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xbc, 0x02, 0x0a, 3640 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3641 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x43, 0x2e, 0x67, 3642 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3643 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 3644 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3645 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3646 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3647 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3648 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3649 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x9f, 0x01, 0xda, 0x41, 0x22, 0x74, 3650 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 3651 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 3652 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x3a, 0x16, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3653 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x32, 3654 0x5a, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3655 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3656 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 3657 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 3658 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 3659 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xfb, 0x01, 0x0a, 0x1a, 3660 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3661 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 3662 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3663 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 3664 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 3665 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 3666 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3667 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3668 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3669 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 3670 0x6e, 0x73, 0x65, 0x22, 0x54, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 3671 0xe4, 0x93, 0x02, 0x45, 0x12, 0x43, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 3672 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 3673 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 3674 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x78, 3675 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x89, 0x02, 0x0a, 0x1b, 0x44, 0x65, 3676 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3677 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3678 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3679 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 3680 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 3681 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 3682 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 3683 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x01, 3684 0xca, 0x41, 0x30, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 3685 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x17, 0x44, 0x65, 0x6c, 0x65, 3686 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 3687 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 3688 0x2a, 0x43, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 3689 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 3690 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3691 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 3692 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x97, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 3693 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x12, 0x3c, 3694 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3695 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3696 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3697 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 3698 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3699 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 3700 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x22, 0x8f, 0x01, 3701 0xda, 0x41, 0x29, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3702 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x2c, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3703 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, 3704 0x02, 0x5d, 0x3a, 0x0f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 3705 0x72, 0x75, 0x6e, 0x22, 0x4a, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 3706 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 3707 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 3708 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 3709 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x12, 3710 0x9a, 0x02, 0x0a, 0x1a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 3711 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x42, 3712 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3713 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3714 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 3715 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 3716 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3717 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3718 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 3719 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x52, 3720 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x73, 0xda, 0x41, 0x0f, 0x70, 0x61, 0x72, 0x65, 3721 0x6e, 0x74, 0x2c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 3722 0x5b, 0x3a, 0x01, 0x2a, 0x22, 0x56, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 3723 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 3724 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 3725 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 3726 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x72, 0x75, 0x6e, 0x73, 3727 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0xda, 0x01, 0x0a, 3728 0x11, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3729 0x75, 0x6e, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3730 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3731 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3732 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 3733 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 3734 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 3735 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x22, 0x59, 3736 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x12, 0x4a, 0x2f, 3737 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 3738 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 3739 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3740 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 3741 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x99, 0x02, 0x0a, 0x14, 0x55, 0x70, 3742 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3743 0x75, 0x6e, 0x12, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3744 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3745 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3746 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3747 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3748 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 3749 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 3750 0x6e, 0x22, 0x91, 0x01, 0xda, 0x41, 0x1b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3751 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 3752 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6d, 0x3a, 0x0f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3753 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x32, 0x5a, 0x2f, 0x76, 0x31, 0x62, 0x65, 3754 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3755 0x5f, 0x72, 0x75, 0x6e, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 3756 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 3757 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 3758 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 3759 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xed, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 3760 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x3b, 0x2e, 3761 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 3762 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 3763 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 3764 0x75, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 3765 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3766 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 3767 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x73, 3768 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5b, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 3769 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x12, 0x4a, 0x2f, 0x76, 0x31, 0x62, 0x65, 3770 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 3771 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3772 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 3773 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 3774 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x12, 0x82, 0x02, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 3775 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x12, 0x3c, 3776 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 3777 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3778 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3779 0x72, 0x64, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 3780 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 3781 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8c, 0x01, 0xca, 0x41, 3782 0x30, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 3783 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 3784 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 3785 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x2a, 0x4a, 3786 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 3787 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 3788 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 3789 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 3790 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xa7, 0x02, 0x0a, 0x20, 0x42, 3791 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3792 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 3793 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 3794 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 3795 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 3796 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 3797 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3798 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3799 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 3800 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3801 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 3802 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6e, 0xda, 0x41, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 3803 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x56, 0x3a, 0x01, 3804 0x2a, 0x22, 0x51, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 3805 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 3806 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3807 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 3808 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 3809 0x65, 0x61, 0x74, 0x65, 0x12, 0xb6, 0x02, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 3810 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3811 0x72, 0x69, 0x65, 0x73, 0x12, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3812 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3813 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 3814 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 3815 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3816 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3817 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 3818 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3819 0x73, 0x22, 0x99, 0x01, 0xda, 0x41, 0x1e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x74, 0x65, 3820 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 3821 0x65, 0x72, 0x69, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x72, 0x3a, 0x17, 0x74, 0x65, 0x6e, 3822 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 3823 0x72, 0x69, 0x65, 0x73, 0x22, 0x57, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 3824 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 3825 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 3826 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 3827 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 3828 0x2a, 0x7d, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0xfc, 0x01, 3829 0x0a, 0x18, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3830 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 3831 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 3832 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 3833 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3834 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 3835 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3836 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 3837 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3838 0x72, 0x69, 0x65, 0x73, 0x22, 0x66, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 3839 0x93, 0x02, 0x59, 0x12, 0x57, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 3840 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 3841 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3842 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 3843 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 3844 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xd4, 0x02, 0x0a, 3845 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3846 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x43, 0x2e, 0x67, 3847 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 3848 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 3849 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3850 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3851 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3852 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3853 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 3854 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xb7, 0x01, 0xda, 0x41, 0x23, 0x74, 3855 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 3856 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 3857 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8a, 0x01, 0x3a, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 3858 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 3859 0x65, 0x73, 0x32, 0x6f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 3860 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 3861 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 3862 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 3863 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 3864 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 3865 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 3866 0x2f, 0x2a, 0x7d, 0x12, 0x8c, 0x02, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 3867 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 3868 0x73, 0x12, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3869 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3870 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3871 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 3872 0x75, 0x65, 0x73, 0x74, 0x1a, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3873 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3874 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3875 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 3876 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x68, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 3877 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x59, 0x12, 0x57, 0x2f, 0x76, 0x31, 0x62, 0x65, 3878 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 3879 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3880 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 3881 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3882 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 3883 0x65, 0x73, 0x12, 0x9d, 0x02, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 3884 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 3885 0x65, 0x73, 0x12, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3886 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3887 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 3888 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 3889 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3890 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 3891 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x99, 0x01, 0xca, 0x41, 0x30, 0x0a, 0x15, 0x67, 0x6f, 3892 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 3893 0x70, 0x74, 0x79, 0x12, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 3894 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 3895 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x59, 0x2a, 0x57, 0x2f, 0x76, 0x31, 0x62, 0x65, 3896 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 3897 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 3898 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 3899 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 3900 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2f, 3901 0x2a, 0x7d, 0x12, 0x9b, 0x02, 0x0a, 0x22, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 3902 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3903 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3904 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3905 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 3906 0x68, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3907 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 3908 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3909 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 3910 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 3911 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 3912 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 3913 0x73, 0x65, 0x22, 0x5c, 0xda, 0x41, 0x0b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3914 0x72, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x48, 0x12, 0x46, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 3915 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x3d, 3916 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 3917 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3918 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 3919 0x12, 0xc2, 0x02, 0x0a, 0x1d, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3920 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 3921 0x74, 0x61, 0x12, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3922 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3923 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3924 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 3925 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x46, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3926 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 3927 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 3928 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 3929 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 3930 0x65, 0x22, 0x91, 0x01, 0xda, 0x41, 0x17, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3931 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x82, 0xd3, 3932 0xe4, 0x93, 0x02, 0x71, 0x12, 0x6f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 3933 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 3934 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3935 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 3936 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 3937 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 3938 0x2f, 0x2a, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 3939 0x3a, 0x72, 0x65, 0x61, 0x64, 0x12, 0xa2, 0x02, 0x0a, 0x17, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 3940 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 3941 0x61, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3942 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3943 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 3944 0x61, 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 3945 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3946 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 3947 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3948 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 3949 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x81, 0x01, 0xda, 0x41, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 3950 0x65, 0x72, 0x69, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6d, 0x12, 0x6b, 0x2f, 0x76, 0x31, 3951 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 3952 0x65, 0x73, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 3953 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 3954 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 3955 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x69, 3956 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x61, 0x64, 3957 0x42, 0x6c, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, 0x30, 0x01, 0x12, 0xcb, 0x02, 0x0a, 0x1e, 0x57, 3958 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 3959 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x46, 0x2e, 3960 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 3961 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 3962 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3963 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 3964 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3965 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 3966 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 3967 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 3968 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x97, 3969 0x01, 0xda, 0x41, 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 3970 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x77, 0x72, 0x69, 0x74, 0x65, 3971 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 3972 0x74, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x60, 0x3a, 0x01, 0x2a, 0x22, 0x5b, 0x2f, 0x76, 0x31, 3973 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 3974 0x72, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 3975 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 3976 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 3977 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 3978 0x2a, 0x7d, 0x3a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0xa8, 0x02, 0x0a, 0x17, 0x57, 0x72, 0x69, 3979 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 3980 0x44, 0x61, 0x74, 0x61, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3981 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 3982 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x73, 3983 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 3984 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3985 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 3986 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x6e, 3987 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x75, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 3988 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x89, 0x01, 0xda, 0x41, 0x20, 0x74, 0x65, 0x6e, 3989 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x2c, 0x74, 0x69, 0x6d, 3990 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x82, 0xd3, 0xe4, 3991 0x93, 0x02, 0x60, 0x3a, 0x01, 0x2a, 0x22, 0x5b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3992 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x75, 3993 0x6e, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 3994 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 3995 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 3996 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x77, 0x72, 3997 0x69, 0x74, 0x65, 0x12, 0xe4, 0x02, 0x0a, 0x1f, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x65, 3998 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 3999 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4000 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 4001 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 4002 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 4003 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 4004 0x1a, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4005 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 4006 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 4007 0x6f, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x44, 0x61, 4008 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xad, 0x01, 0xda, 0x41, 0x17, 4009 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 4010 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8c, 0x01, 0x3a, 0x01, 4011 0x2a, 0x22, 0x86, 0x01, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x74, 0x65, 4012 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 4013 0x65, 0x72, 0x69, 0x65, 0x73, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 4014 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x74, 0x65, 0x6e, 4015 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x78, 0x70, 0x65, 4016 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x72, 0x75, 0x6e, 0x73, 0x2f, 0x2a, 4017 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x65, 4018 0x78, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 4019 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x4d, 0xca, 0x41, 0x19, 0x61, 4020 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4021 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 4022 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 4023 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 4024 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0xee, 0x01, 0x0a, 0x23, 0x63, 0x6f, 4025 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 4026 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 4027 0x31, 0x42, 0x17, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x65, 4028 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 4029 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 4030 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 4031 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 4032 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 4033 0x62, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 4034 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0x42, 0x65, 4035 0x74, 0x61, 0x31, 0xca, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 4036 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 4037 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 0x22, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 4038 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 4039 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 4040 0x6f, 0x33, 4041 } 4042 4043 var ( 4044 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescOnce sync.Once 4045 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDesc 4046 ) 4047 4048 func file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescGZIP() []byte { 4049 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescOnce.Do(func() { 4050 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescData) 4051 }) 4052 return file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDescData 4053 } 4054 4055 var file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes = make([]protoimpl.MessageInfo, 49) 4056 var file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_goTypes = []any{ 4057 (*CreateTensorboardRequest)(nil), // 0: google.cloud.aiplatform.v1beta1.CreateTensorboardRequest 4058 (*GetTensorboardRequest)(nil), // 1: google.cloud.aiplatform.v1beta1.GetTensorboardRequest 4059 (*ListTensorboardsRequest)(nil), // 2: google.cloud.aiplatform.v1beta1.ListTensorboardsRequest 4060 (*ListTensorboardsResponse)(nil), // 3: google.cloud.aiplatform.v1beta1.ListTensorboardsResponse 4061 (*UpdateTensorboardRequest)(nil), // 4: google.cloud.aiplatform.v1beta1.UpdateTensorboardRequest 4062 (*DeleteTensorboardRequest)(nil), // 5: google.cloud.aiplatform.v1beta1.DeleteTensorboardRequest 4063 (*ReadTensorboardUsageRequest)(nil), // 6: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageRequest 4064 (*ReadTensorboardUsageResponse)(nil), // 7: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse 4065 (*ReadTensorboardSizeRequest)(nil), // 8: google.cloud.aiplatform.v1beta1.ReadTensorboardSizeRequest 4066 (*ReadTensorboardSizeResponse)(nil), // 9: google.cloud.aiplatform.v1beta1.ReadTensorboardSizeResponse 4067 (*CreateTensorboardExperimentRequest)(nil), // 10: google.cloud.aiplatform.v1beta1.CreateTensorboardExperimentRequest 4068 (*GetTensorboardExperimentRequest)(nil), // 11: google.cloud.aiplatform.v1beta1.GetTensorboardExperimentRequest 4069 (*ListTensorboardExperimentsRequest)(nil), // 12: google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsRequest 4070 (*ListTensorboardExperimentsResponse)(nil), // 13: google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsResponse 4071 (*UpdateTensorboardExperimentRequest)(nil), // 14: google.cloud.aiplatform.v1beta1.UpdateTensorboardExperimentRequest 4072 (*DeleteTensorboardExperimentRequest)(nil), // 15: google.cloud.aiplatform.v1beta1.DeleteTensorboardExperimentRequest 4073 (*BatchCreateTensorboardRunsRequest)(nil), // 16: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsRequest 4074 (*BatchCreateTensorboardRunsResponse)(nil), // 17: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsResponse 4075 (*CreateTensorboardRunRequest)(nil), // 18: google.cloud.aiplatform.v1beta1.CreateTensorboardRunRequest 4076 (*GetTensorboardRunRequest)(nil), // 19: google.cloud.aiplatform.v1beta1.GetTensorboardRunRequest 4077 (*ReadTensorboardBlobDataRequest)(nil), // 20: google.cloud.aiplatform.v1beta1.ReadTensorboardBlobDataRequest 4078 (*ReadTensorboardBlobDataResponse)(nil), // 21: google.cloud.aiplatform.v1beta1.ReadTensorboardBlobDataResponse 4079 (*ListTensorboardRunsRequest)(nil), // 22: google.cloud.aiplatform.v1beta1.ListTensorboardRunsRequest 4080 (*ListTensorboardRunsResponse)(nil), // 23: google.cloud.aiplatform.v1beta1.ListTensorboardRunsResponse 4081 (*UpdateTensorboardRunRequest)(nil), // 24: google.cloud.aiplatform.v1beta1.UpdateTensorboardRunRequest 4082 (*DeleteTensorboardRunRequest)(nil), // 25: google.cloud.aiplatform.v1beta1.DeleteTensorboardRunRequest 4083 (*BatchCreateTensorboardTimeSeriesRequest)(nil), // 26: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesRequest 4084 (*BatchCreateTensorboardTimeSeriesResponse)(nil), // 27: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesResponse 4085 (*CreateTensorboardTimeSeriesRequest)(nil), // 28: google.cloud.aiplatform.v1beta1.CreateTensorboardTimeSeriesRequest 4086 (*GetTensorboardTimeSeriesRequest)(nil), // 29: google.cloud.aiplatform.v1beta1.GetTensorboardTimeSeriesRequest 4087 (*ListTensorboardTimeSeriesRequest)(nil), // 30: google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesRequest 4088 (*ListTensorboardTimeSeriesResponse)(nil), // 31: google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesResponse 4089 (*UpdateTensorboardTimeSeriesRequest)(nil), // 32: google.cloud.aiplatform.v1beta1.UpdateTensorboardTimeSeriesRequest 4090 (*DeleteTensorboardTimeSeriesRequest)(nil), // 33: google.cloud.aiplatform.v1beta1.DeleteTensorboardTimeSeriesRequest 4091 (*BatchReadTensorboardTimeSeriesDataRequest)(nil), // 34: google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataRequest 4092 (*BatchReadTensorboardTimeSeriesDataResponse)(nil), // 35: google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataResponse 4093 (*ReadTensorboardTimeSeriesDataRequest)(nil), // 36: google.cloud.aiplatform.v1beta1.ReadTensorboardTimeSeriesDataRequest 4094 (*ReadTensorboardTimeSeriesDataResponse)(nil), // 37: google.cloud.aiplatform.v1beta1.ReadTensorboardTimeSeriesDataResponse 4095 (*WriteTensorboardExperimentDataRequest)(nil), // 38: google.cloud.aiplatform.v1beta1.WriteTensorboardExperimentDataRequest 4096 (*WriteTensorboardExperimentDataResponse)(nil), // 39: google.cloud.aiplatform.v1beta1.WriteTensorboardExperimentDataResponse 4097 (*WriteTensorboardRunDataRequest)(nil), // 40: google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataRequest 4098 (*WriteTensorboardRunDataResponse)(nil), // 41: google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataResponse 4099 (*ExportTensorboardTimeSeriesDataRequest)(nil), // 42: google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataRequest 4100 (*ExportTensorboardTimeSeriesDataResponse)(nil), // 43: google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataResponse 4101 (*CreateTensorboardOperationMetadata)(nil), // 44: google.cloud.aiplatform.v1beta1.CreateTensorboardOperationMetadata 4102 (*UpdateTensorboardOperationMetadata)(nil), // 45: google.cloud.aiplatform.v1beta1.UpdateTensorboardOperationMetadata 4103 (*ReadTensorboardUsageResponse_PerUserUsageData)(nil), // 46: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.PerUserUsageData 4104 (*ReadTensorboardUsageResponse_PerMonthUsageData)(nil), // 47: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.PerMonthUsageData 4105 nil, // 48: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.MonthlyUsageDataEntry 4106 (*Tensorboard)(nil), // 49: google.cloud.aiplatform.v1beta1.Tensorboard 4107 (*fieldmaskpb.FieldMask)(nil), // 50: google.protobuf.FieldMask 4108 (*TensorboardExperiment)(nil), // 51: google.cloud.aiplatform.v1beta1.TensorboardExperiment 4109 (*TensorboardRun)(nil), // 52: google.cloud.aiplatform.v1beta1.TensorboardRun 4110 (*TensorboardBlob)(nil), // 53: google.cloud.aiplatform.v1beta1.TensorboardBlob 4111 (*TensorboardTimeSeries)(nil), // 54: google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4112 (*TimeSeriesData)(nil), // 55: google.cloud.aiplatform.v1beta1.TimeSeriesData 4113 (*TimeSeriesDataPoint)(nil), // 56: google.cloud.aiplatform.v1beta1.TimeSeriesDataPoint 4114 (*GenericOperationMetadata)(nil), // 57: google.cloud.aiplatform.v1beta1.GenericOperationMetadata 4115 (*longrunningpb.Operation)(nil), // 58: google.longrunning.Operation 4116 } 4117 var file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_depIdxs = []int32{ 4118 49, // 0: google.cloud.aiplatform.v1beta1.CreateTensorboardRequest.tensorboard:type_name -> google.cloud.aiplatform.v1beta1.Tensorboard 4119 50, // 1: google.cloud.aiplatform.v1beta1.ListTensorboardsRequest.read_mask:type_name -> google.protobuf.FieldMask 4120 49, // 2: google.cloud.aiplatform.v1beta1.ListTensorboardsResponse.tensorboards:type_name -> google.cloud.aiplatform.v1beta1.Tensorboard 4121 50, // 3: google.cloud.aiplatform.v1beta1.UpdateTensorboardRequest.update_mask:type_name -> google.protobuf.FieldMask 4122 49, // 4: google.cloud.aiplatform.v1beta1.UpdateTensorboardRequest.tensorboard:type_name -> google.cloud.aiplatform.v1beta1.Tensorboard 4123 48, // 5: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.monthly_usage_data:type_name -> google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.MonthlyUsageDataEntry 4124 51, // 6: google.cloud.aiplatform.v1beta1.CreateTensorboardExperimentRequest.tensorboard_experiment:type_name -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4125 50, // 7: google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsRequest.read_mask:type_name -> google.protobuf.FieldMask 4126 51, // 8: google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsResponse.tensorboard_experiments:type_name -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4127 50, // 9: google.cloud.aiplatform.v1beta1.UpdateTensorboardExperimentRequest.update_mask:type_name -> google.protobuf.FieldMask 4128 51, // 10: google.cloud.aiplatform.v1beta1.UpdateTensorboardExperimentRequest.tensorboard_experiment:type_name -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4129 18, // 11: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsRequest.requests:type_name -> google.cloud.aiplatform.v1beta1.CreateTensorboardRunRequest 4130 52, // 12: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsResponse.tensorboard_runs:type_name -> google.cloud.aiplatform.v1beta1.TensorboardRun 4131 52, // 13: google.cloud.aiplatform.v1beta1.CreateTensorboardRunRequest.tensorboard_run:type_name -> google.cloud.aiplatform.v1beta1.TensorboardRun 4132 53, // 14: google.cloud.aiplatform.v1beta1.ReadTensorboardBlobDataResponse.blobs:type_name -> google.cloud.aiplatform.v1beta1.TensorboardBlob 4133 50, // 15: google.cloud.aiplatform.v1beta1.ListTensorboardRunsRequest.read_mask:type_name -> google.protobuf.FieldMask 4134 52, // 16: google.cloud.aiplatform.v1beta1.ListTensorboardRunsResponse.tensorboard_runs:type_name -> google.cloud.aiplatform.v1beta1.TensorboardRun 4135 50, // 17: google.cloud.aiplatform.v1beta1.UpdateTensorboardRunRequest.update_mask:type_name -> google.protobuf.FieldMask 4136 52, // 18: google.cloud.aiplatform.v1beta1.UpdateTensorboardRunRequest.tensorboard_run:type_name -> google.cloud.aiplatform.v1beta1.TensorboardRun 4137 28, // 19: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesRequest.requests:type_name -> google.cloud.aiplatform.v1beta1.CreateTensorboardTimeSeriesRequest 4138 54, // 20: google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesResponse.tensorboard_time_series:type_name -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4139 54, // 21: google.cloud.aiplatform.v1beta1.CreateTensorboardTimeSeriesRequest.tensorboard_time_series:type_name -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4140 50, // 22: google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesRequest.read_mask:type_name -> google.protobuf.FieldMask 4141 54, // 23: google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesResponse.tensorboard_time_series:type_name -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4142 50, // 24: google.cloud.aiplatform.v1beta1.UpdateTensorboardTimeSeriesRequest.update_mask:type_name -> google.protobuf.FieldMask 4143 54, // 25: google.cloud.aiplatform.v1beta1.UpdateTensorboardTimeSeriesRequest.tensorboard_time_series:type_name -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4144 55, // 26: google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataResponse.time_series_data:type_name -> google.cloud.aiplatform.v1beta1.TimeSeriesData 4145 55, // 27: google.cloud.aiplatform.v1beta1.ReadTensorboardTimeSeriesDataResponse.time_series_data:type_name -> google.cloud.aiplatform.v1beta1.TimeSeriesData 4146 40, // 28: google.cloud.aiplatform.v1beta1.WriteTensorboardExperimentDataRequest.write_run_data_requests:type_name -> google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataRequest 4147 55, // 29: google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataRequest.time_series_data:type_name -> google.cloud.aiplatform.v1beta1.TimeSeriesData 4148 56, // 30: google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataResponse.time_series_data_points:type_name -> google.cloud.aiplatform.v1beta1.TimeSeriesDataPoint 4149 57, // 31: google.cloud.aiplatform.v1beta1.CreateTensorboardOperationMetadata.generic_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenericOperationMetadata 4150 57, // 32: google.cloud.aiplatform.v1beta1.UpdateTensorboardOperationMetadata.generic_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenericOperationMetadata 4151 46, // 33: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.PerMonthUsageData.user_usage_data:type_name -> google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.PerUserUsageData 4152 47, // 34: google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.MonthlyUsageDataEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse.PerMonthUsageData 4153 0, // 35: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard:input_type -> google.cloud.aiplatform.v1beta1.CreateTensorboardRequest 4154 1, // 36: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard:input_type -> google.cloud.aiplatform.v1beta1.GetTensorboardRequest 4155 4, // 37: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard:input_type -> google.cloud.aiplatform.v1beta1.UpdateTensorboardRequest 4156 2, // 38: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards:input_type -> google.cloud.aiplatform.v1beta1.ListTensorboardsRequest 4157 5, // 39: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard:input_type -> google.cloud.aiplatform.v1beta1.DeleteTensorboardRequest 4158 6, // 40: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage:input_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardUsageRequest 4159 8, // 41: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize:input_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardSizeRequest 4160 10, // 42: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment:input_type -> google.cloud.aiplatform.v1beta1.CreateTensorboardExperimentRequest 4161 11, // 43: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment:input_type -> google.cloud.aiplatform.v1beta1.GetTensorboardExperimentRequest 4162 14, // 44: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment:input_type -> google.cloud.aiplatform.v1beta1.UpdateTensorboardExperimentRequest 4163 12, // 45: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments:input_type -> google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsRequest 4164 15, // 46: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment:input_type -> google.cloud.aiplatform.v1beta1.DeleteTensorboardExperimentRequest 4165 18, // 47: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun:input_type -> google.cloud.aiplatform.v1beta1.CreateTensorboardRunRequest 4166 16, // 48: google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns:input_type -> google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsRequest 4167 19, // 49: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun:input_type -> google.cloud.aiplatform.v1beta1.GetTensorboardRunRequest 4168 24, // 50: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun:input_type -> google.cloud.aiplatform.v1beta1.UpdateTensorboardRunRequest 4169 22, // 51: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns:input_type -> google.cloud.aiplatform.v1beta1.ListTensorboardRunsRequest 4170 25, // 52: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun:input_type -> google.cloud.aiplatform.v1beta1.DeleteTensorboardRunRequest 4171 26, // 53: google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesRequest 4172 28, // 54: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.CreateTensorboardTimeSeriesRequest 4173 29, // 55: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.GetTensorboardTimeSeriesRequest 4174 32, // 56: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.UpdateTensorboardTimeSeriesRequest 4175 30, // 57: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesRequest 4176 33, // 58: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries:input_type -> google.cloud.aiplatform.v1beta1.DeleteTensorboardTimeSeriesRequest 4177 34, // 59: google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData:input_type -> google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataRequest 4178 36, // 60: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData:input_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardTimeSeriesDataRequest 4179 20, // 61: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData:input_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardBlobDataRequest 4180 38, // 62: google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData:input_type -> google.cloud.aiplatform.v1beta1.WriteTensorboardExperimentDataRequest 4181 40, // 63: google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData:input_type -> google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataRequest 4182 42, // 64: google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData:input_type -> google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataRequest 4183 58, // 65: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard:output_type -> google.longrunning.Operation 4184 49, // 66: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard:output_type -> google.cloud.aiplatform.v1beta1.Tensorboard 4185 58, // 67: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard:output_type -> google.longrunning.Operation 4186 3, // 68: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards:output_type -> google.cloud.aiplatform.v1beta1.ListTensorboardsResponse 4187 58, // 69: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard:output_type -> google.longrunning.Operation 4188 7, // 70: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage:output_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardUsageResponse 4189 9, // 71: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize:output_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardSizeResponse 4190 51, // 72: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment:output_type -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4191 51, // 73: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment:output_type -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4192 51, // 74: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment:output_type -> google.cloud.aiplatform.v1beta1.TensorboardExperiment 4193 13, // 75: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments:output_type -> google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsResponse 4194 58, // 76: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment:output_type -> google.longrunning.Operation 4195 52, // 77: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun:output_type -> google.cloud.aiplatform.v1beta1.TensorboardRun 4196 17, // 78: google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns:output_type -> google.cloud.aiplatform.v1beta1.BatchCreateTensorboardRunsResponse 4197 52, // 79: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun:output_type -> google.cloud.aiplatform.v1beta1.TensorboardRun 4198 52, // 80: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun:output_type -> google.cloud.aiplatform.v1beta1.TensorboardRun 4199 23, // 81: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns:output_type -> google.cloud.aiplatform.v1beta1.ListTensorboardRunsResponse 4200 58, // 82: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun:output_type -> google.longrunning.Operation 4201 27, // 83: google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries:output_type -> google.cloud.aiplatform.v1beta1.BatchCreateTensorboardTimeSeriesResponse 4202 54, // 84: google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries:output_type -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4203 54, // 85: google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries:output_type -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4204 54, // 86: google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries:output_type -> google.cloud.aiplatform.v1beta1.TensorboardTimeSeries 4205 31, // 87: google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries:output_type -> google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesResponse 4206 58, // 88: google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries:output_type -> google.longrunning.Operation 4207 35, // 89: google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData:output_type -> google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataResponse 4208 37, // 90: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData:output_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardTimeSeriesDataResponse 4209 21, // 91: google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData:output_type -> google.cloud.aiplatform.v1beta1.ReadTensorboardBlobDataResponse 4210 39, // 92: google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData:output_type -> google.cloud.aiplatform.v1beta1.WriteTensorboardExperimentDataResponse 4211 41, // 93: google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData:output_type -> google.cloud.aiplatform.v1beta1.WriteTensorboardRunDataResponse 4212 43, // 94: google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData:output_type -> google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataResponse 4213 65, // [65:95] is the sub-list for method output_type 4214 35, // [35:65] is the sub-list for method input_type 4215 35, // [35:35] is the sub-list for extension type_name 4216 35, // [35:35] is the sub-list for extension extendee 4217 0, // [0:35] is the sub-list for field type_name 4218 } 4219 4220 func init() { file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_init() } 4221 func file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_init() { 4222 if File_google_cloud_aiplatform_v1beta1_tensorboard_service_proto != nil { 4223 return 4224 } 4225 file_google_cloud_aiplatform_v1beta1_operation_proto_init() 4226 file_google_cloud_aiplatform_v1beta1_tensorboard_proto_init() 4227 file_google_cloud_aiplatform_v1beta1_tensorboard_data_proto_init() 4228 file_google_cloud_aiplatform_v1beta1_tensorboard_experiment_proto_init() 4229 file_google_cloud_aiplatform_v1beta1_tensorboard_run_proto_init() 4230 file_google_cloud_aiplatform_v1beta1_tensorboard_time_series_proto_init() 4231 type x struct{} 4232 out := protoimpl.TypeBuilder{ 4233 File: protoimpl.DescBuilder{ 4234 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 4235 RawDescriptor: file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDesc, 4236 NumEnums: 0, 4237 NumMessages: 49, 4238 NumExtensions: 0, 4239 NumServices: 1, 4240 }, 4241 GoTypes: file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_goTypes, 4242 DependencyIndexes: file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_depIdxs, 4243 MessageInfos: file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_msgTypes, 4244 }.Build() 4245 File_google_cloud_aiplatform_v1beta1_tensorboard_service_proto = out.File 4246 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_rawDesc = nil 4247 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_goTypes = nil 4248 file_google_cloud_aiplatform_v1beta1_tensorboard_service_proto_depIdxs = nil 4249 }