1// Copyright 2021 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.26.0 18// protoc v3.12.2 19// source: google/cloud/bigquery/v2/model.proto 20 21package bigquery 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 _ "google.golang.org/genproto/googleapis/api/annotations" 29 grpc "google.golang.org/grpc" 30 codes "google.golang.org/grpc/codes" 31 status "google.golang.org/grpc/status" 32 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 33 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 34 emptypb "google.golang.org/protobuf/types/known/emptypb" 35 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 36 wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" 37) 38 39const ( 40 // Verify that this generated code is sufficiently up-to-date. 41 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 42 // Verify that runtime/protoimpl is sufficiently up-to-date. 43 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 44) 45 46// Indicates the type of the Model. 47type Model_ModelType int32 48 49const ( 50 Model_MODEL_TYPE_UNSPECIFIED Model_ModelType = 0 51 // Linear regression model. 52 Model_LINEAR_REGRESSION Model_ModelType = 1 53 // Logistic regression based classification model. 54 Model_LOGISTIC_REGRESSION Model_ModelType = 2 55 // K-means clustering model. 56 Model_KMEANS Model_ModelType = 3 57 // Matrix factorization model. 58 Model_MATRIX_FACTORIZATION Model_ModelType = 4 59 // DNN classifier model. 60 Model_DNN_CLASSIFIER Model_ModelType = 5 61 // An imported TensorFlow model. 62 Model_TENSORFLOW Model_ModelType = 6 63 // DNN regressor model. 64 Model_DNN_REGRESSOR Model_ModelType = 7 65 // Boosted tree regressor model. 66 Model_BOOSTED_TREE_REGRESSOR Model_ModelType = 9 67 // Boosted tree classifier model. 68 Model_BOOSTED_TREE_CLASSIFIER Model_ModelType = 10 69 // ARIMA model. 70 Model_ARIMA Model_ModelType = 11 71 // [Beta] AutoML Tables regression model. 72 Model_AUTOML_REGRESSOR Model_ModelType = 12 73 // [Beta] AutoML Tables classification model. 74 Model_AUTOML_CLASSIFIER Model_ModelType = 13 75 // New name for the ARIMA model. 76 Model_ARIMA_PLUS Model_ModelType = 19 77) 78 79// Enum value maps for Model_ModelType. 80var ( 81 Model_ModelType_name = map[int32]string{ 82 0: "MODEL_TYPE_UNSPECIFIED", 83 1: "LINEAR_REGRESSION", 84 2: "LOGISTIC_REGRESSION", 85 3: "KMEANS", 86 4: "MATRIX_FACTORIZATION", 87 5: "DNN_CLASSIFIER", 88 6: "TENSORFLOW", 89 7: "DNN_REGRESSOR", 90 9: "BOOSTED_TREE_REGRESSOR", 91 10: "BOOSTED_TREE_CLASSIFIER", 92 11: "ARIMA", 93 12: "AUTOML_REGRESSOR", 94 13: "AUTOML_CLASSIFIER", 95 19: "ARIMA_PLUS", 96 } 97 Model_ModelType_value = map[string]int32{ 98 "MODEL_TYPE_UNSPECIFIED": 0, 99 "LINEAR_REGRESSION": 1, 100 "LOGISTIC_REGRESSION": 2, 101 "KMEANS": 3, 102 "MATRIX_FACTORIZATION": 4, 103 "DNN_CLASSIFIER": 5, 104 "TENSORFLOW": 6, 105 "DNN_REGRESSOR": 7, 106 "BOOSTED_TREE_REGRESSOR": 9, 107 "BOOSTED_TREE_CLASSIFIER": 10, 108 "ARIMA": 11, 109 "AUTOML_REGRESSOR": 12, 110 "AUTOML_CLASSIFIER": 13, 111 "ARIMA_PLUS": 19, 112 } 113) 114 115func (x Model_ModelType) Enum() *Model_ModelType { 116 p := new(Model_ModelType) 117 *p = x 118 return p 119} 120 121func (x Model_ModelType) String() string { 122 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 123} 124 125func (Model_ModelType) Descriptor() protoreflect.EnumDescriptor { 126 return file_google_cloud_bigquery_v2_model_proto_enumTypes[0].Descriptor() 127} 128 129func (Model_ModelType) Type() protoreflect.EnumType { 130 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[0] 131} 132 133func (x Model_ModelType) Number() protoreflect.EnumNumber { 134 return protoreflect.EnumNumber(x) 135} 136 137// Deprecated: Use Model_ModelType.Descriptor instead. 138func (Model_ModelType) EnumDescriptor() ([]byte, []int) { 139 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 0} 140} 141 142// Loss metric to evaluate model training performance. 143type Model_LossType int32 144 145const ( 146 Model_LOSS_TYPE_UNSPECIFIED Model_LossType = 0 147 // Mean squared loss, used for linear regression. 148 Model_MEAN_SQUARED_LOSS Model_LossType = 1 149 // Mean log loss, used for logistic regression. 150 Model_MEAN_LOG_LOSS Model_LossType = 2 151) 152 153// Enum value maps for Model_LossType. 154var ( 155 Model_LossType_name = map[int32]string{ 156 0: "LOSS_TYPE_UNSPECIFIED", 157 1: "MEAN_SQUARED_LOSS", 158 2: "MEAN_LOG_LOSS", 159 } 160 Model_LossType_value = map[string]int32{ 161 "LOSS_TYPE_UNSPECIFIED": 0, 162 "MEAN_SQUARED_LOSS": 1, 163 "MEAN_LOG_LOSS": 2, 164 } 165) 166 167func (x Model_LossType) Enum() *Model_LossType { 168 p := new(Model_LossType) 169 *p = x 170 return p 171} 172 173func (x Model_LossType) String() string { 174 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 175} 176 177func (Model_LossType) Descriptor() protoreflect.EnumDescriptor { 178 return file_google_cloud_bigquery_v2_model_proto_enumTypes[1].Descriptor() 179} 180 181func (Model_LossType) Type() protoreflect.EnumType { 182 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[1] 183} 184 185func (x Model_LossType) Number() protoreflect.EnumNumber { 186 return protoreflect.EnumNumber(x) 187} 188 189// Deprecated: Use Model_LossType.Descriptor instead. 190func (Model_LossType) EnumDescriptor() ([]byte, []int) { 191 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 1} 192} 193 194// Distance metric used to compute the distance between two points. 195type Model_DistanceType int32 196 197const ( 198 Model_DISTANCE_TYPE_UNSPECIFIED Model_DistanceType = 0 199 // Eculidean distance. 200 Model_EUCLIDEAN Model_DistanceType = 1 201 // Cosine distance. 202 Model_COSINE Model_DistanceType = 2 203) 204 205// Enum value maps for Model_DistanceType. 206var ( 207 Model_DistanceType_name = map[int32]string{ 208 0: "DISTANCE_TYPE_UNSPECIFIED", 209 1: "EUCLIDEAN", 210 2: "COSINE", 211 } 212 Model_DistanceType_value = map[string]int32{ 213 "DISTANCE_TYPE_UNSPECIFIED": 0, 214 "EUCLIDEAN": 1, 215 "COSINE": 2, 216 } 217) 218 219func (x Model_DistanceType) Enum() *Model_DistanceType { 220 p := new(Model_DistanceType) 221 *p = x 222 return p 223} 224 225func (x Model_DistanceType) String() string { 226 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 227} 228 229func (Model_DistanceType) Descriptor() protoreflect.EnumDescriptor { 230 return file_google_cloud_bigquery_v2_model_proto_enumTypes[2].Descriptor() 231} 232 233func (Model_DistanceType) Type() protoreflect.EnumType { 234 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[2] 235} 236 237func (x Model_DistanceType) Number() protoreflect.EnumNumber { 238 return protoreflect.EnumNumber(x) 239} 240 241// Deprecated: Use Model_DistanceType.Descriptor instead. 242func (Model_DistanceType) EnumDescriptor() ([]byte, []int) { 243 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 2} 244} 245 246// Indicates the method to split input data into multiple tables. 247type Model_DataSplitMethod int32 248 249const ( 250 Model_DATA_SPLIT_METHOD_UNSPECIFIED Model_DataSplitMethod = 0 251 // Splits data randomly. 252 Model_RANDOM Model_DataSplitMethod = 1 253 // Splits data with the user provided tags. 254 Model_CUSTOM Model_DataSplitMethod = 2 255 // Splits data sequentially. 256 Model_SEQUENTIAL Model_DataSplitMethod = 3 257 // Data split will be skipped. 258 Model_NO_SPLIT Model_DataSplitMethod = 4 259 // Splits data automatically: Uses NO_SPLIT if the data size is small. 260 // Otherwise uses RANDOM. 261 Model_AUTO_SPLIT Model_DataSplitMethod = 5 262) 263 264// Enum value maps for Model_DataSplitMethod. 265var ( 266 Model_DataSplitMethod_name = map[int32]string{ 267 0: "DATA_SPLIT_METHOD_UNSPECIFIED", 268 1: "RANDOM", 269 2: "CUSTOM", 270 3: "SEQUENTIAL", 271 4: "NO_SPLIT", 272 5: "AUTO_SPLIT", 273 } 274 Model_DataSplitMethod_value = map[string]int32{ 275 "DATA_SPLIT_METHOD_UNSPECIFIED": 0, 276 "RANDOM": 1, 277 "CUSTOM": 2, 278 "SEQUENTIAL": 3, 279 "NO_SPLIT": 4, 280 "AUTO_SPLIT": 5, 281 } 282) 283 284func (x Model_DataSplitMethod) Enum() *Model_DataSplitMethod { 285 p := new(Model_DataSplitMethod) 286 *p = x 287 return p 288} 289 290func (x Model_DataSplitMethod) String() string { 291 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 292} 293 294func (Model_DataSplitMethod) Descriptor() protoreflect.EnumDescriptor { 295 return file_google_cloud_bigquery_v2_model_proto_enumTypes[3].Descriptor() 296} 297 298func (Model_DataSplitMethod) Type() protoreflect.EnumType { 299 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[3] 300} 301 302func (x Model_DataSplitMethod) Number() protoreflect.EnumNumber { 303 return protoreflect.EnumNumber(x) 304} 305 306// Deprecated: Use Model_DataSplitMethod.Descriptor instead. 307func (Model_DataSplitMethod) EnumDescriptor() ([]byte, []int) { 308 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 3} 309} 310 311// Type of supported data frequency for time series forecasting models. 312type Model_DataFrequency int32 313 314const ( 315 Model_DATA_FREQUENCY_UNSPECIFIED Model_DataFrequency = 0 316 // Automatically inferred from timestamps. 317 Model_AUTO_FREQUENCY Model_DataFrequency = 1 318 // Yearly data. 319 Model_YEARLY Model_DataFrequency = 2 320 // Quarterly data. 321 Model_QUARTERLY Model_DataFrequency = 3 322 // Monthly data. 323 Model_MONTHLY Model_DataFrequency = 4 324 // Weekly data. 325 Model_WEEKLY Model_DataFrequency = 5 326 // Daily data. 327 Model_DAILY Model_DataFrequency = 6 328 // Hourly data. 329 Model_HOURLY Model_DataFrequency = 7 330 // Per-minute data. 331 Model_PER_MINUTE Model_DataFrequency = 8 332) 333 334// Enum value maps for Model_DataFrequency. 335var ( 336 Model_DataFrequency_name = map[int32]string{ 337 0: "DATA_FREQUENCY_UNSPECIFIED", 338 1: "AUTO_FREQUENCY", 339 2: "YEARLY", 340 3: "QUARTERLY", 341 4: "MONTHLY", 342 5: "WEEKLY", 343 6: "DAILY", 344 7: "HOURLY", 345 8: "PER_MINUTE", 346 } 347 Model_DataFrequency_value = map[string]int32{ 348 "DATA_FREQUENCY_UNSPECIFIED": 0, 349 "AUTO_FREQUENCY": 1, 350 "YEARLY": 2, 351 "QUARTERLY": 3, 352 "MONTHLY": 4, 353 "WEEKLY": 5, 354 "DAILY": 6, 355 "HOURLY": 7, 356 "PER_MINUTE": 8, 357 } 358) 359 360func (x Model_DataFrequency) Enum() *Model_DataFrequency { 361 p := new(Model_DataFrequency) 362 *p = x 363 return p 364} 365 366func (x Model_DataFrequency) String() string { 367 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 368} 369 370func (Model_DataFrequency) Descriptor() protoreflect.EnumDescriptor { 371 return file_google_cloud_bigquery_v2_model_proto_enumTypes[4].Descriptor() 372} 373 374func (Model_DataFrequency) Type() protoreflect.EnumType { 375 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[4] 376} 377 378func (x Model_DataFrequency) Number() protoreflect.EnumNumber { 379 return protoreflect.EnumNumber(x) 380} 381 382// Deprecated: Use Model_DataFrequency.Descriptor instead. 383func (Model_DataFrequency) EnumDescriptor() ([]byte, []int) { 384 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 4} 385} 386 387// Type of supported holiday regions for time series forecasting models. 388type Model_HolidayRegion int32 389 390const ( 391 // Holiday region unspecified. 392 Model_HOLIDAY_REGION_UNSPECIFIED Model_HolidayRegion = 0 393 // Global. 394 Model_GLOBAL Model_HolidayRegion = 1 395 // North America. 396 Model_NA Model_HolidayRegion = 2 397 // Japan and Asia Pacific: Korea, Greater China, India, Australia, and New 398 // Zealand. 399 Model_JAPAC Model_HolidayRegion = 3 400 // Europe, the Middle East and Africa. 401 Model_EMEA Model_HolidayRegion = 4 402 // Latin America and the Caribbean. 403 Model_LAC Model_HolidayRegion = 5 404 // United Arab Emirates 405 Model_AE Model_HolidayRegion = 6 406 // Argentina 407 Model_AR Model_HolidayRegion = 7 408 // Austria 409 Model_AT Model_HolidayRegion = 8 410 // Australia 411 Model_AU Model_HolidayRegion = 9 412 // Belgium 413 Model_BE Model_HolidayRegion = 10 414 // Brazil 415 Model_BR Model_HolidayRegion = 11 416 // Canada 417 Model_CA Model_HolidayRegion = 12 418 // Switzerland 419 Model_CH Model_HolidayRegion = 13 420 // Chile 421 Model_CL Model_HolidayRegion = 14 422 // China 423 Model_CN Model_HolidayRegion = 15 424 // Colombia 425 Model_CO Model_HolidayRegion = 16 426 // Czechoslovakia 427 Model_CS Model_HolidayRegion = 17 428 // Czech Republic 429 Model_CZ Model_HolidayRegion = 18 430 // Germany 431 Model_DE Model_HolidayRegion = 19 432 // Denmark 433 Model_DK Model_HolidayRegion = 20 434 // Algeria 435 Model_DZ Model_HolidayRegion = 21 436 // Ecuador 437 Model_EC Model_HolidayRegion = 22 438 // Estonia 439 Model_EE Model_HolidayRegion = 23 440 // Egypt 441 Model_EG Model_HolidayRegion = 24 442 // Spain 443 Model_ES Model_HolidayRegion = 25 444 // Finland 445 Model_FI Model_HolidayRegion = 26 446 // France 447 Model_FR Model_HolidayRegion = 27 448 // Great Britain (United Kingdom) 449 Model_GB Model_HolidayRegion = 28 450 // Greece 451 Model_GR Model_HolidayRegion = 29 452 // Hong Kong 453 Model_HK Model_HolidayRegion = 30 454 // Hungary 455 Model_HU Model_HolidayRegion = 31 456 // Indonesia 457 Model_ID Model_HolidayRegion = 32 458 // Ireland 459 Model_IE Model_HolidayRegion = 33 460 // Israel 461 Model_IL Model_HolidayRegion = 34 462 // India 463 Model_IN Model_HolidayRegion = 35 464 // Iran 465 Model_IR Model_HolidayRegion = 36 466 // Italy 467 Model_IT Model_HolidayRegion = 37 468 // Japan 469 Model_JP Model_HolidayRegion = 38 470 // Korea (South) 471 Model_KR Model_HolidayRegion = 39 472 // Latvia 473 Model_LV Model_HolidayRegion = 40 474 // Morocco 475 Model_MA Model_HolidayRegion = 41 476 // Mexico 477 Model_MX Model_HolidayRegion = 42 478 // Malaysia 479 Model_MY Model_HolidayRegion = 43 480 // Nigeria 481 Model_NG Model_HolidayRegion = 44 482 // Netherlands 483 Model_NL Model_HolidayRegion = 45 484 // Norway 485 Model_NO Model_HolidayRegion = 46 486 // New Zealand 487 Model_NZ Model_HolidayRegion = 47 488 // Peru 489 Model_PE Model_HolidayRegion = 48 490 // Philippines 491 Model_PH Model_HolidayRegion = 49 492 // Pakistan 493 Model_PK Model_HolidayRegion = 50 494 // Poland 495 Model_PL Model_HolidayRegion = 51 496 // Portugal 497 Model_PT Model_HolidayRegion = 52 498 // Romania 499 Model_RO Model_HolidayRegion = 53 500 // Serbia 501 Model_RS Model_HolidayRegion = 54 502 // Russian Federation 503 Model_RU Model_HolidayRegion = 55 504 // Saudi Arabia 505 Model_SA Model_HolidayRegion = 56 506 // Sweden 507 Model_SE Model_HolidayRegion = 57 508 // Singapore 509 Model_SG Model_HolidayRegion = 58 510 // Slovenia 511 Model_SI Model_HolidayRegion = 59 512 // Slovakia 513 Model_SK Model_HolidayRegion = 60 514 // Thailand 515 Model_TH Model_HolidayRegion = 61 516 // Turkey 517 Model_TR Model_HolidayRegion = 62 518 // Taiwan 519 Model_TW Model_HolidayRegion = 63 520 // Ukraine 521 Model_UA Model_HolidayRegion = 64 522 // United States 523 Model_US Model_HolidayRegion = 65 524 // Venezuela 525 Model_VE Model_HolidayRegion = 66 526 // Viet Nam 527 Model_VN Model_HolidayRegion = 67 528 // South Africa 529 Model_ZA Model_HolidayRegion = 68 530) 531 532// Enum value maps for Model_HolidayRegion. 533var ( 534 Model_HolidayRegion_name = map[int32]string{ 535 0: "HOLIDAY_REGION_UNSPECIFIED", 536 1: "GLOBAL", 537 2: "NA", 538 3: "JAPAC", 539 4: "EMEA", 540 5: "LAC", 541 6: "AE", 542 7: "AR", 543 8: "AT", 544 9: "AU", 545 10: "BE", 546 11: "BR", 547 12: "CA", 548 13: "CH", 549 14: "CL", 550 15: "CN", 551 16: "CO", 552 17: "CS", 553 18: "CZ", 554 19: "DE", 555 20: "DK", 556 21: "DZ", 557 22: "EC", 558 23: "EE", 559 24: "EG", 560 25: "ES", 561 26: "FI", 562 27: "FR", 563 28: "GB", 564 29: "GR", 565 30: "HK", 566 31: "HU", 567 32: "ID", 568 33: "IE", 569 34: "IL", 570 35: "IN", 571 36: "IR", 572 37: "IT", 573 38: "JP", 574 39: "KR", 575 40: "LV", 576 41: "MA", 577 42: "MX", 578 43: "MY", 579 44: "NG", 580 45: "NL", 581 46: "NO", 582 47: "NZ", 583 48: "PE", 584 49: "PH", 585 50: "PK", 586 51: "PL", 587 52: "PT", 588 53: "RO", 589 54: "RS", 590 55: "RU", 591 56: "SA", 592 57: "SE", 593 58: "SG", 594 59: "SI", 595 60: "SK", 596 61: "TH", 597 62: "TR", 598 63: "TW", 599 64: "UA", 600 65: "US", 601 66: "VE", 602 67: "VN", 603 68: "ZA", 604 } 605 Model_HolidayRegion_value = map[string]int32{ 606 "HOLIDAY_REGION_UNSPECIFIED": 0, 607 "GLOBAL": 1, 608 "NA": 2, 609 "JAPAC": 3, 610 "EMEA": 4, 611 "LAC": 5, 612 "AE": 6, 613 "AR": 7, 614 "AT": 8, 615 "AU": 9, 616 "BE": 10, 617 "BR": 11, 618 "CA": 12, 619 "CH": 13, 620 "CL": 14, 621 "CN": 15, 622 "CO": 16, 623 "CS": 17, 624 "CZ": 18, 625 "DE": 19, 626 "DK": 20, 627 "DZ": 21, 628 "EC": 22, 629 "EE": 23, 630 "EG": 24, 631 "ES": 25, 632 "FI": 26, 633 "FR": 27, 634 "GB": 28, 635 "GR": 29, 636 "HK": 30, 637 "HU": 31, 638 "ID": 32, 639 "IE": 33, 640 "IL": 34, 641 "IN": 35, 642 "IR": 36, 643 "IT": 37, 644 "JP": 38, 645 "KR": 39, 646 "LV": 40, 647 "MA": 41, 648 "MX": 42, 649 "MY": 43, 650 "NG": 44, 651 "NL": 45, 652 "NO": 46, 653 "NZ": 47, 654 "PE": 48, 655 "PH": 49, 656 "PK": 50, 657 "PL": 51, 658 "PT": 52, 659 "RO": 53, 660 "RS": 54, 661 "RU": 55, 662 "SA": 56, 663 "SE": 57, 664 "SG": 58, 665 "SI": 59, 666 "SK": 60, 667 "TH": 61, 668 "TR": 62, 669 "TW": 63, 670 "UA": 64, 671 "US": 65, 672 "VE": 66, 673 "VN": 67, 674 "ZA": 68, 675 } 676) 677 678func (x Model_HolidayRegion) Enum() *Model_HolidayRegion { 679 p := new(Model_HolidayRegion) 680 *p = x 681 return p 682} 683 684func (x Model_HolidayRegion) String() string { 685 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 686} 687 688func (Model_HolidayRegion) Descriptor() protoreflect.EnumDescriptor { 689 return file_google_cloud_bigquery_v2_model_proto_enumTypes[5].Descriptor() 690} 691 692func (Model_HolidayRegion) Type() protoreflect.EnumType { 693 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[5] 694} 695 696func (x Model_HolidayRegion) Number() protoreflect.EnumNumber { 697 return protoreflect.EnumNumber(x) 698} 699 700// Deprecated: Use Model_HolidayRegion.Descriptor instead. 701func (Model_HolidayRegion) EnumDescriptor() ([]byte, []int) { 702 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5} 703} 704 705// Indicates the learning rate optimization strategy to use. 706type Model_LearnRateStrategy int32 707 708const ( 709 Model_LEARN_RATE_STRATEGY_UNSPECIFIED Model_LearnRateStrategy = 0 710 // Use line search to determine learning rate. 711 Model_LINE_SEARCH Model_LearnRateStrategy = 1 712 // Use a constant learning rate. 713 Model_CONSTANT Model_LearnRateStrategy = 2 714) 715 716// Enum value maps for Model_LearnRateStrategy. 717var ( 718 Model_LearnRateStrategy_name = map[int32]string{ 719 0: "LEARN_RATE_STRATEGY_UNSPECIFIED", 720 1: "LINE_SEARCH", 721 2: "CONSTANT", 722 } 723 Model_LearnRateStrategy_value = map[string]int32{ 724 "LEARN_RATE_STRATEGY_UNSPECIFIED": 0, 725 "LINE_SEARCH": 1, 726 "CONSTANT": 2, 727 } 728) 729 730func (x Model_LearnRateStrategy) Enum() *Model_LearnRateStrategy { 731 p := new(Model_LearnRateStrategy) 732 *p = x 733 return p 734} 735 736func (x Model_LearnRateStrategy) String() string { 737 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 738} 739 740func (Model_LearnRateStrategy) Descriptor() protoreflect.EnumDescriptor { 741 return file_google_cloud_bigquery_v2_model_proto_enumTypes[6].Descriptor() 742} 743 744func (Model_LearnRateStrategy) Type() protoreflect.EnumType { 745 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[6] 746} 747 748func (x Model_LearnRateStrategy) Number() protoreflect.EnumNumber { 749 return protoreflect.EnumNumber(x) 750} 751 752// Deprecated: Use Model_LearnRateStrategy.Descriptor instead. 753func (Model_LearnRateStrategy) EnumDescriptor() ([]byte, []int) { 754 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6} 755} 756 757// Indicates the optimization strategy used for training. 758type Model_OptimizationStrategy int32 759 760const ( 761 Model_OPTIMIZATION_STRATEGY_UNSPECIFIED Model_OptimizationStrategy = 0 762 // Uses an iterative batch gradient descent algorithm. 763 Model_BATCH_GRADIENT_DESCENT Model_OptimizationStrategy = 1 764 // Uses a normal equation to solve linear regression problem. 765 Model_NORMAL_EQUATION Model_OptimizationStrategy = 2 766) 767 768// Enum value maps for Model_OptimizationStrategy. 769var ( 770 Model_OptimizationStrategy_name = map[int32]string{ 771 0: "OPTIMIZATION_STRATEGY_UNSPECIFIED", 772 1: "BATCH_GRADIENT_DESCENT", 773 2: "NORMAL_EQUATION", 774 } 775 Model_OptimizationStrategy_value = map[string]int32{ 776 "OPTIMIZATION_STRATEGY_UNSPECIFIED": 0, 777 "BATCH_GRADIENT_DESCENT": 1, 778 "NORMAL_EQUATION": 2, 779 } 780) 781 782func (x Model_OptimizationStrategy) Enum() *Model_OptimizationStrategy { 783 p := new(Model_OptimizationStrategy) 784 *p = x 785 return p 786} 787 788func (x Model_OptimizationStrategy) String() string { 789 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 790} 791 792func (Model_OptimizationStrategy) Descriptor() protoreflect.EnumDescriptor { 793 return file_google_cloud_bigquery_v2_model_proto_enumTypes[7].Descriptor() 794} 795 796func (Model_OptimizationStrategy) Type() protoreflect.EnumType { 797 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[7] 798} 799 800func (x Model_OptimizationStrategy) Number() protoreflect.EnumNumber { 801 return protoreflect.EnumNumber(x) 802} 803 804// Deprecated: Use Model_OptimizationStrategy.Descriptor instead. 805func (Model_OptimizationStrategy) EnumDescriptor() ([]byte, []int) { 806 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 7} 807} 808 809// Indicates the training algorithm to use for matrix factorization models. 810type Model_FeedbackType int32 811 812const ( 813 Model_FEEDBACK_TYPE_UNSPECIFIED Model_FeedbackType = 0 814 // Use weighted-als for implicit feedback problems. 815 Model_IMPLICIT Model_FeedbackType = 1 816 // Use nonweighted-als for explicit feedback problems. 817 Model_EXPLICIT Model_FeedbackType = 2 818) 819 820// Enum value maps for Model_FeedbackType. 821var ( 822 Model_FeedbackType_name = map[int32]string{ 823 0: "FEEDBACK_TYPE_UNSPECIFIED", 824 1: "IMPLICIT", 825 2: "EXPLICIT", 826 } 827 Model_FeedbackType_value = map[string]int32{ 828 "FEEDBACK_TYPE_UNSPECIFIED": 0, 829 "IMPLICIT": 1, 830 "EXPLICIT": 2, 831 } 832) 833 834func (x Model_FeedbackType) Enum() *Model_FeedbackType { 835 p := new(Model_FeedbackType) 836 *p = x 837 return p 838} 839 840func (x Model_FeedbackType) String() string { 841 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 842} 843 844func (Model_FeedbackType) Descriptor() protoreflect.EnumDescriptor { 845 return file_google_cloud_bigquery_v2_model_proto_enumTypes[8].Descriptor() 846} 847 848func (Model_FeedbackType) Type() protoreflect.EnumType { 849 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[8] 850} 851 852func (x Model_FeedbackType) Number() protoreflect.EnumNumber { 853 return protoreflect.EnumNumber(x) 854} 855 856// Deprecated: Use Model_FeedbackType.Descriptor instead. 857func (Model_FeedbackType) EnumDescriptor() ([]byte, []int) { 858 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 8} 859} 860 861type Model_SeasonalPeriod_SeasonalPeriodType int32 862 863const ( 864 Model_SeasonalPeriod_SEASONAL_PERIOD_TYPE_UNSPECIFIED Model_SeasonalPeriod_SeasonalPeriodType = 0 865 // No seasonality 866 Model_SeasonalPeriod_NO_SEASONALITY Model_SeasonalPeriod_SeasonalPeriodType = 1 867 // Daily period, 24 hours. 868 Model_SeasonalPeriod_DAILY Model_SeasonalPeriod_SeasonalPeriodType = 2 869 // Weekly period, 7 days. 870 Model_SeasonalPeriod_WEEKLY Model_SeasonalPeriod_SeasonalPeriodType = 3 871 // Monthly period, 30 days or irregular. 872 Model_SeasonalPeriod_MONTHLY Model_SeasonalPeriod_SeasonalPeriodType = 4 873 // Quarterly period, 90 days or irregular. 874 Model_SeasonalPeriod_QUARTERLY Model_SeasonalPeriod_SeasonalPeriodType = 5 875 // Yearly period, 365 days or irregular. 876 Model_SeasonalPeriod_YEARLY Model_SeasonalPeriod_SeasonalPeriodType = 6 877) 878 879// Enum value maps for Model_SeasonalPeriod_SeasonalPeriodType. 880var ( 881 Model_SeasonalPeriod_SeasonalPeriodType_name = map[int32]string{ 882 0: "SEASONAL_PERIOD_TYPE_UNSPECIFIED", 883 1: "NO_SEASONALITY", 884 2: "DAILY", 885 3: "WEEKLY", 886 4: "MONTHLY", 887 5: "QUARTERLY", 888 6: "YEARLY", 889 } 890 Model_SeasonalPeriod_SeasonalPeriodType_value = map[string]int32{ 891 "SEASONAL_PERIOD_TYPE_UNSPECIFIED": 0, 892 "NO_SEASONALITY": 1, 893 "DAILY": 2, 894 "WEEKLY": 3, 895 "MONTHLY": 4, 896 "QUARTERLY": 5, 897 "YEARLY": 6, 898 } 899) 900 901func (x Model_SeasonalPeriod_SeasonalPeriodType) Enum() *Model_SeasonalPeriod_SeasonalPeriodType { 902 p := new(Model_SeasonalPeriod_SeasonalPeriodType) 903 *p = x 904 return p 905} 906 907func (x Model_SeasonalPeriod_SeasonalPeriodType) String() string { 908 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 909} 910 911func (Model_SeasonalPeriod_SeasonalPeriodType) Descriptor() protoreflect.EnumDescriptor { 912 return file_google_cloud_bigquery_v2_model_proto_enumTypes[9].Descriptor() 913} 914 915func (Model_SeasonalPeriod_SeasonalPeriodType) Type() protoreflect.EnumType { 916 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[9] 917} 918 919func (x Model_SeasonalPeriod_SeasonalPeriodType) Number() protoreflect.EnumNumber { 920 return protoreflect.EnumNumber(x) 921} 922 923// Deprecated: Use Model_SeasonalPeriod_SeasonalPeriodType.Descriptor instead. 924func (Model_SeasonalPeriod_SeasonalPeriodType) EnumDescriptor() ([]byte, []int) { 925 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 0, 0} 926} 927 928// Indicates the method used to initialize the centroids for KMeans 929// clustering algorithm. 930type Model_KmeansEnums_KmeansInitializationMethod int32 931 932const ( 933 // Unspecified initialization method. 934 Model_KmeansEnums_KMEANS_INITIALIZATION_METHOD_UNSPECIFIED Model_KmeansEnums_KmeansInitializationMethod = 0 935 // Initializes the centroids randomly. 936 Model_KmeansEnums_RANDOM Model_KmeansEnums_KmeansInitializationMethod = 1 937 // Initializes the centroids using data specified in 938 // kmeans_initialization_column. 939 Model_KmeansEnums_CUSTOM Model_KmeansEnums_KmeansInitializationMethod = 2 940 // Initializes with kmeans++. 941 Model_KmeansEnums_KMEANS_PLUS_PLUS Model_KmeansEnums_KmeansInitializationMethod = 3 942) 943 944// Enum value maps for Model_KmeansEnums_KmeansInitializationMethod. 945var ( 946 Model_KmeansEnums_KmeansInitializationMethod_name = map[int32]string{ 947 0: "KMEANS_INITIALIZATION_METHOD_UNSPECIFIED", 948 1: "RANDOM", 949 2: "CUSTOM", 950 3: "KMEANS_PLUS_PLUS", 951 } 952 Model_KmeansEnums_KmeansInitializationMethod_value = map[string]int32{ 953 "KMEANS_INITIALIZATION_METHOD_UNSPECIFIED": 0, 954 "RANDOM": 1, 955 "CUSTOM": 2, 956 "KMEANS_PLUS_PLUS": 3, 957 } 958) 959 960func (x Model_KmeansEnums_KmeansInitializationMethod) Enum() *Model_KmeansEnums_KmeansInitializationMethod { 961 p := new(Model_KmeansEnums_KmeansInitializationMethod) 962 *p = x 963 return p 964} 965 966func (x Model_KmeansEnums_KmeansInitializationMethod) String() string { 967 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 968} 969 970func (Model_KmeansEnums_KmeansInitializationMethod) Descriptor() protoreflect.EnumDescriptor { 971 return file_google_cloud_bigquery_v2_model_proto_enumTypes[10].Descriptor() 972} 973 974func (Model_KmeansEnums_KmeansInitializationMethod) Type() protoreflect.EnumType { 975 return &file_google_cloud_bigquery_v2_model_proto_enumTypes[10] 976} 977 978func (x Model_KmeansEnums_KmeansInitializationMethod) Number() protoreflect.EnumNumber { 979 return protoreflect.EnumNumber(x) 980} 981 982// Deprecated: Use Model_KmeansEnums_KmeansInitializationMethod.Descriptor instead. 983func (Model_KmeansEnums_KmeansInitializationMethod) EnumDescriptor() ([]byte, []int) { 984 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 1, 0} 985} 986 987type Model struct { 988 state protoimpl.MessageState 989 sizeCache protoimpl.SizeCache 990 unknownFields protoimpl.UnknownFields 991 992 // Output only. A hash of this resource. 993 Etag string `protobuf:"bytes,1,opt,name=etag,proto3" json:"etag,omitempty"` 994 // Required. Unique identifier for this model. 995 ModelReference *ModelReference `protobuf:"bytes,2,opt,name=model_reference,json=modelReference,proto3" json:"model_reference,omitempty"` 996 // Output only. The time when this model was created, in millisecs since the epoch. 997 CreationTime int64 `protobuf:"varint,5,opt,name=creation_time,json=creationTime,proto3" json:"creation_time,omitempty"` 998 // Output only. The time when this model was last modified, in millisecs since the epoch. 999 LastModifiedTime int64 `protobuf:"varint,6,opt,name=last_modified_time,json=lastModifiedTime,proto3" json:"last_modified_time,omitempty"` 1000 // Optional. A user-friendly description of this model. 1001 Description string `protobuf:"bytes,12,opt,name=description,proto3" json:"description,omitempty"` 1002 // Optional. A descriptive name for this model. 1003 FriendlyName string `protobuf:"bytes,14,opt,name=friendly_name,json=friendlyName,proto3" json:"friendly_name,omitempty"` 1004 // The labels associated with this model. You can use these to organize 1005 // and group your models. Label keys and values can be no longer 1006 // than 63 characters, can only contain lowercase letters, numeric 1007 // characters, underscores and dashes. International characters are allowed. 1008 // Label values are optional. Label keys must start with a letter and each 1009 // label in the list must have a different key. 1010 Labels map[string]string `protobuf:"bytes,15,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 1011 // Optional. The time when this model expires, in milliseconds since the epoch. 1012 // If not present, the model will persist indefinitely. Expired models 1013 // will be deleted and their storage reclaimed. The defaultTableExpirationMs 1014 // property of the encapsulating dataset can be used to set a default 1015 // expirationTime on newly created models. 1016 ExpirationTime int64 `protobuf:"varint,16,opt,name=expiration_time,json=expirationTime,proto3" json:"expiration_time,omitempty"` 1017 // Output only. The geographic location where the model resides. This value 1018 // is inherited from the dataset. 1019 Location string `protobuf:"bytes,13,opt,name=location,proto3" json:"location,omitempty"` 1020 // Custom encryption configuration (e.g., Cloud KMS keys). This shows the 1021 // encryption configuration of the model data while stored in BigQuery 1022 // storage. This field can be used with PatchModel to update encryption key 1023 // for an already encrypted model. 1024 EncryptionConfiguration *EncryptionConfiguration `protobuf:"bytes,17,opt,name=encryption_configuration,json=encryptionConfiguration,proto3" json:"encryption_configuration,omitempty"` 1025 // Output only. Type of the model resource. 1026 ModelType Model_ModelType `protobuf:"varint,7,opt,name=model_type,json=modelType,proto3,enum=google.cloud.bigquery.v2.Model_ModelType" json:"model_type,omitempty"` 1027 // Output only. Information for all training runs in increasing order of start_time. 1028 TrainingRuns []*Model_TrainingRun `protobuf:"bytes,9,rep,name=training_runs,json=trainingRuns,proto3" json:"training_runs,omitempty"` 1029 // Output only. Input feature columns that were used to train this model. 1030 FeatureColumns []*StandardSqlField `protobuf:"bytes,10,rep,name=feature_columns,json=featureColumns,proto3" json:"feature_columns,omitempty"` 1031 // Output only. Label columns that were used to train this model. 1032 // The output of the model will have a "predicted_" prefix to these columns. 1033 LabelColumns []*StandardSqlField `protobuf:"bytes,11,rep,name=label_columns,json=labelColumns,proto3" json:"label_columns,omitempty"` 1034 // The best trial_id across all training runs. 1035 // 1036 // Deprecated: Do not use. 1037 BestTrialId int64 `protobuf:"varint,19,opt,name=best_trial_id,json=bestTrialId,proto3" json:"best_trial_id,omitempty"` 1038} 1039 1040func (x *Model) Reset() { 1041 *x = Model{} 1042 if protoimpl.UnsafeEnabled { 1043 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[0] 1044 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1045 ms.StoreMessageInfo(mi) 1046 } 1047} 1048 1049func (x *Model) String() string { 1050 return protoimpl.X.MessageStringOf(x) 1051} 1052 1053func (*Model) ProtoMessage() {} 1054 1055func (x *Model) ProtoReflect() protoreflect.Message { 1056 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[0] 1057 if protoimpl.UnsafeEnabled && x != nil { 1058 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1059 if ms.LoadMessageInfo() == nil { 1060 ms.StoreMessageInfo(mi) 1061 } 1062 return ms 1063 } 1064 return mi.MessageOf(x) 1065} 1066 1067// Deprecated: Use Model.ProtoReflect.Descriptor instead. 1068func (*Model) Descriptor() ([]byte, []int) { 1069 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0} 1070} 1071 1072func (x *Model) GetEtag() string { 1073 if x != nil { 1074 return x.Etag 1075 } 1076 return "" 1077} 1078 1079func (x *Model) GetModelReference() *ModelReference { 1080 if x != nil { 1081 return x.ModelReference 1082 } 1083 return nil 1084} 1085 1086func (x *Model) GetCreationTime() int64 { 1087 if x != nil { 1088 return x.CreationTime 1089 } 1090 return 0 1091} 1092 1093func (x *Model) GetLastModifiedTime() int64 { 1094 if x != nil { 1095 return x.LastModifiedTime 1096 } 1097 return 0 1098} 1099 1100func (x *Model) GetDescription() string { 1101 if x != nil { 1102 return x.Description 1103 } 1104 return "" 1105} 1106 1107func (x *Model) GetFriendlyName() string { 1108 if x != nil { 1109 return x.FriendlyName 1110 } 1111 return "" 1112} 1113 1114func (x *Model) GetLabels() map[string]string { 1115 if x != nil { 1116 return x.Labels 1117 } 1118 return nil 1119} 1120 1121func (x *Model) GetExpirationTime() int64 { 1122 if x != nil { 1123 return x.ExpirationTime 1124 } 1125 return 0 1126} 1127 1128func (x *Model) GetLocation() string { 1129 if x != nil { 1130 return x.Location 1131 } 1132 return "" 1133} 1134 1135func (x *Model) GetEncryptionConfiguration() *EncryptionConfiguration { 1136 if x != nil { 1137 return x.EncryptionConfiguration 1138 } 1139 return nil 1140} 1141 1142func (x *Model) GetModelType() Model_ModelType { 1143 if x != nil { 1144 return x.ModelType 1145 } 1146 return Model_MODEL_TYPE_UNSPECIFIED 1147} 1148 1149func (x *Model) GetTrainingRuns() []*Model_TrainingRun { 1150 if x != nil { 1151 return x.TrainingRuns 1152 } 1153 return nil 1154} 1155 1156func (x *Model) GetFeatureColumns() []*StandardSqlField { 1157 if x != nil { 1158 return x.FeatureColumns 1159 } 1160 return nil 1161} 1162 1163func (x *Model) GetLabelColumns() []*StandardSqlField { 1164 if x != nil { 1165 return x.LabelColumns 1166 } 1167 return nil 1168} 1169 1170// Deprecated: Do not use. 1171func (x *Model) GetBestTrialId() int64 { 1172 if x != nil { 1173 return x.BestTrialId 1174 } 1175 return 0 1176} 1177 1178type GetModelRequest struct { 1179 state protoimpl.MessageState 1180 sizeCache protoimpl.SizeCache 1181 unknownFields protoimpl.UnknownFields 1182 1183 // Required. Project ID of the requested model. 1184 ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` 1185 // Required. Dataset ID of the requested model. 1186 DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` 1187 // Required. Model ID of the requested model. 1188 ModelId string `protobuf:"bytes,3,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` 1189} 1190 1191func (x *GetModelRequest) Reset() { 1192 *x = GetModelRequest{} 1193 if protoimpl.UnsafeEnabled { 1194 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[1] 1195 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1196 ms.StoreMessageInfo(mi) 1197 } 1198} 1199 1200func (x *GetModelRequest) String() string { 1201 return protoimpl.X.MessageStringOf(x) 1202} 1203 1204func (*GetModelRequest) ProtoMessage() {} 1205 1206func (x *GetModelRequest) ProtoReflect() protoreflect.Message { 1207 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[1] 1208 if protoimpl.UnsafeEnabled && x != nil { 1209 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1210 if ms.LoadMessageInfo() == nil { 1211 ms.StoreMessageInfo(mi) 1212 } 1213 return ms 1214 } 1215 return mi.MessageOf(x) 1216} 1217 1218// Deprecated: Use GetModelRequest.ProtoReflect.Descriptor instead. 1219func (*GetModelRequest) Descriptor() ([]byte, []int) { 1220 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{1} 1221} 1222 1223func (x *GetModelRequest) GetProjectId() string { 1224 if x != nil { 1225 return x.ProjectId 1226 } 1227 return "" 1228} 1229 1230func (x *GetModelRequest) GetDatasetId() string { 1231 if x != nil { 1232 return x.DatasetId 1233 } 1234 return "" 1235} 1236 1237func (x *GetModelRequest) GetModelId() string { 1238 if x != nil { 1239 return x.ModelId 1240 } 1241 return "" 1242} 1243 1244type PatchModelRequest struct { 1245 state protoimpl.MessageState 1246 sizeCache protoimpl.SizeCache 1247 unknownFields protoimpl.UnknownFields 1248 1249 // Required. Project ID of the model to patch. 1250 ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` 1251 // Required. Dataset ID of the model to patch. 1252 DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` 1253 // Required. Model ID of the model to patch. 1254 ModelId string `protobuf:"bytes,3,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` 1255 // Required. Patched model. 1256 // Follows RFC5789 patch semantics. Missing fields are not updated. 1257 // To clear a field, explicitly set to default value. 1258 Model *Model `protobuf:"bytes,4,opt,name=model,proto3" json:"model,omitempty"` 1259} 1260 1261func (x *PatchModelRequest) Reset() { 1262 *x = PatchModelRequest{} 1263 if protoimpl.UnsafeEnabled { 1264 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[2] 1265 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1266 ms.StoreMessageInfo(mi) 1267 } 1268} 1269 1270func (x *PatchModelRequest) String() string { 1271 return protoimpl.X.MessageStringOf(x) 1272} 1273 1274func (*PatchModelRequest) ProtoMessage() {} 1275 1276func (x *PatchModelRequest) ProtoReflect() protoreflect.Message { 1277 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[2] 1278 if protoimpl.UnsafeEnabled && x != nil { 1279 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1280 if ms.LoadMessageInfo() == nil { 1281 ms.StoreMessageInfo(mi) 1282 } 1283 return ms 1284 } 1285 return mi.MessageOf(x) 1286} 1287 1288// Deprecated: Use PatchModelRequest.ProtoReflect.Descriptor instead. 1289func (*PatchModelRequest) Descriptor() ([]byte, []int) { 1290 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{2} 1291} 1292 1293func (x *PatchModelRequest) GetProjectId() string { 1294 if x != nil { 1295 return x.ProjectId 1296 } 1297 return "" 1298} 1299 1300func (x *PatchModelRequest) GetDatasetId() string { 1301 if x != nil { 1302 return x.DatasetId 1303 } 1304 return "" 1305} 1306 1307func (x *PatchModelRequest) GetModelId() string { 1308 if x != nil { 1309 return x.ModelId 1310 } 1311 return "" 1312} 1313 1314func (x *PatchModelRequest) GetModel() *Model { 1315 if x != nil { 1316 return x.Model 1317 } 1318 return nil 1319} 1320 1321type DeleteModelRequest struct { 1322 state protoimpl.MessageState 1323 sizeCache protoimpl.SizeCache 1324 unknownFields protoimpl.UnknownFields 1325 1326 // Required. Project ID of the model to delete. 1327 ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` 1328 // Required. Dataset ID of the model to delete. 1329 DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` 1330 // Required. Model ID of the model to delete. 1331 ModelId string `protobuf:"bytes,3,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` 1332} 1333 1334func (x *DeleteModelRequest) Reset() { 1335 *x = DeleteModelRequest{} 1336 if protoimpl.UnsafeEnabled { 1337 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[3] 1338 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1339 ms.StoreMessageInfo(mi) 1340 } 1341} 1342 1343func (x *DeleteModelRequest) String() string { 1344 return protoimpl.X.MessageStringOf(x) 1345} 1346 1347func (*DeleteModelRequest) ProtoMessage() {} 1348 1349func (x *DeleteModelRequest) ProtoReflect() protoreflect.Message { 1350 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[3] 1351 if protoimpl.UnsafeEnabled && x != nil { 1352 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1353 if ms.LoadMessageInfo() == nil { 1354 ms.StoreMessageInfo(mi) 1355 } 1356 return ms 1357 } 1358 return mi.MessageOf(x) 1359} 1360 1361// Deprecated: Use DeleteModelRequest.ProtoReflect.Descriptor instead. 1362func (*DeleteModelRequest) Descriptor() ([]byte, []int) { 1363 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{3} 1364} 1365 1366func (x *DeleteModelRequest) GetProjectId() string { 1367 if x != nil { 1368 return x.ProjectId 1369 } 1370 return "" 1371} 1372 1373func (x *DeleteModelRequest) GetDatasetId() string { 1374 if x != nil { 1375 return x.DatasetId 1376 } 1377 return "" 1378} 1379 1380func (x *DeleteModelRequest) GetModelId() string { 1381 if x != nil { 1382 return x.ModelId 1383 } 1384 return "" 1385} 1386 1387type ListModelsRequest struct { 1388 state protoimpl.MessageState 1389 sizeCache protoimpl.SizeCache 1390 unknownFields protoimpl.UnknownFields 1391 1392 // Required. Project ID of the models to list. 1393 ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` 1394 // Required. Dataset ID of the models to list. 1395 DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` 1396 // The maximum number of results to return in a single response page. 1397 // Leverage the page tokens to iterate through the entire collection. 1398 MaxResults *wrapperspb.UInt32Value `protobuf:"bytes,3,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` 1399 // Page token, returned by a previous call to request the next page of 1400 // results 1401 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1402} 1403 1404func (x *ListModelsRequest) Reset() { 1405 *x = ListModelsRequest{} 1406 if protoimpl.UnsafeEnabled { 1407 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[4] 1408 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1409 ms.StoreMessageInfo(mi) 1410 } 1411} 1412 1413func (x *ListModelsRequest) String() string { 1414 return protoimpl.X.MessageStringOf(x) 1415} 1416 1417func (*ListModelsRequest) ProtoMessage() {} 1418 1419func (x *ListModelsRequest) ProtoReflect() protoreflect.Message { 1420 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[4] 1421 if protoimpl.UnsafeEnabled && x != nil { 1422 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1423 if ms.LoadMessageInfo() == nil { 1424 ms.StoreMessageInfo(mi) 1425 } 1426 return ms 1427 } 1428 return mi.MessageOf(x) 1429} 1430 1431// Deprecated: Use ListModelsRequest.ProtoReflect.Descriptor instead. 1432func (*ListModelsRequest) Descriptor() ([]byte, []int) { 1433 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{4} 1434} 1435 1436func (x *ListModelsRequest) GetProjectId() string { 1437 if x != nil { 1438 return x.ProjectId 1439 } 1440 return "" 1441} 1442 1443func (x *ListModelsRequest) GetDatasetId() string { 1444 if x != nil { 1445 return x.DatasetId 1446 } 1447 return "" 1448} 1449 1450func (x *ListModelsRequest) GetMaxResults() *wrapperspb.UInt32Value { 1451 if x != nil { 1452 return x.MaxResults 1453 } 1454 return nil 1455} 1456 1457func (x *ListModelsRequest) GetPageToken() string { 1458 if x != nil { 1459 return x.PageToken 1460 } 1461 return "" 1462} 1463 1464type ListModelsResponse struct { 1465 state protoimpl.MessageState 1466 sizeCache protoimpl.SizeCache 1467 unknownFields protoimpl.UnknownFields 1468 1469 // Models in the requested dataset. Only the following fields are populated: 1470 // model_reference, model_type, creation_time, last_modified_time and 1471 // labels. 1472 Models []*Model `protobuf:"bytes,1,rep,name=models,proto3" json:"models,omitempty"` 1473 // A token to request the next page of results. 1474 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1475} 1476 1477func (x *ListModelsResponse) Reset() { 1478 *x = ListModelsResponse{} 1479 if protoimpl.UnsafeEnabled { 1480 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[5] 1481 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1482 ms.StoreMessageInfo(mi) 1483 } 1484} 1485 1486func (x *ListModelsResponse) String() string { 1487 return protoimpl.X.MessageStringOf(x) 1488} 1489 1490func (*ListModelsResponse) ProtoMessage() {} 1491 1492func (x *ListModelsResponse) ProtoReflect() protoreflect.Message { 1493 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[5] 1494 if protoimpl.UnsafeEnabled && x != nil { 1495 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1496 if ms.LoadMessageInfo() == nil { 1497 ms.StoreMessageInfo(mi) 1498 } 1499 return ms 1500 } 1501 return mi.MessageOf(x) 1502} 1503 1504// Deprecated: Use ListModelsResponse.ProtoReflect.Descriptor instead. 1505func (*ListModelsResponse) Descriptor() ([]byte, []int) { 1506 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{5} 1507} 1508 1509func (x *ListModelsResponse) GetModels() []*Model { 1510 if x != nil { 1511 return x.Models 1512 } 1513 return nil 1514} 1515 1516func (x *ListModelsResponse) GetNextPageToken() string { 1517 if x != nil { 1518 return x.NextPageToken 1519 } 1520 return "" 1521} 1522 1523type Model_SeasonalPeriod struct { 1524 state protoimpl.MessageState 1525 sizeCache protoimpl.SizeCache 1526 unknownFields protoimpl.UnknownFields 1527} 1528 1529func (x *Model_SeasonalPeriod) Reset() { 1530 *x = Model_SeasonalPeriod{} 1531 if protoimpl.UnsafeEnabled { 1532 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[6] 1533 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1534 ms.StoreMessageInfo(mi) 1535 } 1536} 1537 1538func (x *Model_SeasonalPeriod) String() string { 1539 return protoimpl.X.MessageStringOf(x) 1540} 1541 1542func (*Model_SeasonalPeriod) ProtoMessage() {} 1543 1544func (x *Model_SeasonalPeriod) ProtoReflect() protoreflect.Message { 1545 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[6] 1546 if protoimpl.UnsafeEnabled && x != nil { 1547 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1548 if ms.LoadMessageInfo() == nil { 1549 ms.StoreMessageInfo(mi) 1550 } 1551 return ms 1552 } 1553 return mi.MessageOf(x) 1554} 1555 1556// Deprecated: Use Model_SeasonalPeriod.ProtoReflect.Descriptor instead. 1557func (*Model_SeasonalPeriod) Descriptor() ([]byte, []int) { 1558 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 0} 1559} 1560 1561type Model_KmeansEnums struct { 1562 state protoimpl.MessageState 1563 sizeCache protoimpl.SizeCache 1564 unknownFields protoimpl.UnknownFields 1565} 1566 1567func (x *Model_KmeansEnums) Reset() { 1568 *x = Model_KmeansEnums{} 1569 if protoimpl.UnsafeEnabled { 1570 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[7] 1571 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1572 ms.StoreMessageInfo(mi) 1573 } 1574} 1575 1576func (x *Model_KmeansEnums) String() string { 1577 return protoimpl.X.MessageStringOf(x) 1578} 1579 1580func (*Model_KmeansEnums) ProtoMessage() {} 1581 1582func (x *Model_KmeansEnums) ProtoReflect() protoreflect.Message { 1583 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[7] 1584 if protoimpl.UnsafeEnabled && x != nil { 1585 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1586 if ms.LoadMessageInfo() == nil { 1587 ms.StoreMessageInfo(mi) 1588 } 1589 return ms 1590 } 1591 return mi.MessageOf(x) 1592} 1593 1594// Deprecated: Use Model_KmeansEnums.ProtoReflect.Descriptor instead. 1595func (*Model_KmeansEnums) Descriptor() ([]byte, []int) { 1596 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 1} 1597} 1598 1599// Evaluation metrics for regression and explicit feedback type matrix 1600// factorization models. 1601type Model_RegressionMetrics struct { 1602 state protoimpl.MessageState 1603 sizeCache protoimpl.SizeCache 1604 unknownFields protoimpl.UnknownFields 1605 1606 // Mean absolute error. 1607 MeanAbsoluteError *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=mean_absolute_error,json=meanAbsoluteError,proto3" json:"mean_absolute_error,omitempty"` 1608 // Mean squared error. 1609 MeanSquaredError *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=mean_squared_error,json=meanSquaredError,proto3" json:"mean_squared_error,omitempty"` 1610 // Mean squared log error. 1611 MeanSquaredLogError *wrapperspb.DoubleValue `protobuf:"bytes,3,opt,name=mean_squared_log_error,json=meanSquaredLogError,proto3" json:"mean_squared_log_error,omitempty"` 1612 // Median absolute error. 1613 MedianAbsoluteError *wrapperspb.DoubleValue `protobuf:"bytes,4,opt,name=median_absolute_error,json=medianAbsoluteError,proto3" json:"median_absolute_error,omitempty"` 1614 // R^2 score. This corresponds to r2_score in ML.EVALUATE. 1615 RSquared *wrapperspb.DoubleValue `protobuf:"bytes,5,opt,name=r_squared,json=rSquared,proto3" json:"r_squared,omitempty"` 1616} 1617 1618func (x *Model_RegressionMetrics) Reset() { 1619 *x = Model_RegressionMetrics{} 1620 if protoimpl.UnsafeEnabled { 1621 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[8] 1622 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1623 ms.StoreMessageInfo(mi) 1624 } 1625} 1626 1627func (x *Model_RegressionMetrics) String() string { 1628 return protoimpl.X.MessageStringOf(x) 1629} 1630 1631func (*Model_RegressionMetrics) ProtoMessage() {} 1632 1633func (x *Model_RegressionMetrics) ProtoReflect() protoreflect.Message { 1634 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[8] 1635 if protoimpl.UnsafeEnabled && x != nil { 1636 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1637 if ms.LoadMessageInfo() == nil { 1638 ms.StoreMessageInfo(mi) 1639 } 1640 return ms 1641 } 1642 return mi.MessageOf(x) 1643} 1644 1645// Deprecated: Use Model_RegressionMetrics.ProtoReflect.Descriptor instead. 1646func (*Model_RegressionMetrics) Descriptor() ([]byte, []int) { 1647 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 2} 1648} 1649 1650func (x *Model_RegressionMetrics) GetMeanAbsoluteError() *wrapperspb.DoubleValue { 1651 if x != nil { 1652 return x.MeanAbsoluteError 1653 } 1654 return nil 1655} 1656 1657func (x *Model_RegressionMetrics) GetMeanSquaredError() *wrapperspb.DoubleValue { 1658 if x != nil { 1659 return x.MeanSquaredError 1660 } 1661 return nil 1662} 1663 1664func (x *Model_RegressionMetrics) GetMeanSquaredLogError() *wrapperspb.DoubleValue { 1665 if x != nil { 1666 return x.MeanSquaredLogError 1667 } 1668 return nil 1669} 1670 1671func (x *Model_RegressionMetrics) GetMedianAbsoluteError() *wrapperspb.DoubleValue { 1672 if x != nil { 1673 return x.MedianAbsoluteError 1674 } 1675 return nil 1676} 1677 1678func (x *Model_RegressionMetrics) GetRSquared() *wrapperspb.DoubleValue { 1679 if x != nil { 1680 return x.RSquared 1681 } 1682 return nil 1683} 1684 1685// Aggregate metrics for classification/classifier models. For multi-class 1686// models, the metrics are either macro-averaged or micro-averaged. When 1687// macro-averaged, the metrics are calculated for each label and then an 1688// unweighted average is taken of those values. When micro-averaged, the 1689// metric is calculated globally by counting the total number of correctly 1690// predicted rows. 1691type Model_AggregateClassificationMetrics struct { 1692 state protoimpl.MessageState 1693 sizeCache protoimpl.SizeCache 1694 unknownFields protoimpl.UnknownFields 1695 1696 // Precision is the fraction of actual positive predictions that had 1697 // positive actual labels. For multiclass this is a macro-averaged 1698 // metric treating each class as a binary classifier. 1699 Precision *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=precision,proto3" json:"precision,omitempty"` 1700 // Recall is the fraction of actual positive labels that were given a 1701 // positive prediction. For multiclass this is a macro-averaged metric. 1702 Recall *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=recall,proto3" json:"recall,omitempty"` 1703 // Accuracy is the fraction of predictions given the correct label. For 1704 // multiclass this is a micro-averaged metric. 1705 Accuracy *wrapperspb.DoubleValue `protobuf:"bytes,3,opt,name=accuracy,proto3" json:"accuracy,omitempty"` 1706 // Threshold at which the metrics are computed. For binary 1707 // classification models this is the positive class threshold. 1708 // For multi-class classfication models this is the confidence 1709 // threshold. 1710 Threshold *wrapperspb.DoubleValue `protobuf:"bytes,4,opt,name=threshold,proto3" json:"threshold,omitempty"` 1711 // The F1 score is an average of recall and precision. For multiclass 1712 // this is a macro-averaged metric. 1713 F1Score *wrapperspb.DoubleValue `protobuf:"bytes,5,opt,name=f1_score,json=f1Score,proto3" json:"f1_score,omitempty"` 1714 // Logarithmic Loss. For multiclass this is a macro-averaged metric. 1715 LogLoss *wrapperspb.DoubleValue `protobuf:"bytes,6,opt,name=log_loss,json=logLoss,proto3" json:"log_loss,omitempty"` 1716 // Area Under a ROC Curve. For multiclass this is a macro-averaged 1717 // metric. 1718 RocAuc *wrapperspb.DoubleValue `protobuf:"bytes,7,opt,name=roc_auc,json=rocAuc,proto3" json:"roc_auc,omitempty"` 1719} 1720 1721func (x *Model_AggregateClassificationMetrics) Reset() { 1722 *x = Model_AggregateClassificationMetrics{} 1723 if protoimpl.UnsafeEnabled { 1724 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[9] 1725 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1726 ms.StoreMessageInfo(mi) 1727 } 1728} 1729 1730func (x *Model_AggregateClassificationMetrics) String() string { 1731 return protoimpl.X.MessageStringOf(x) 1732} 1733 1734func (*Model_AggregateClassificationMetrics) ProtoMessage() {} 1735 1736func (x *Model_AggregateClassificationMetrics) ProtoReflect() protoreflect.Message { 1737 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[9] 1738 if protoimpl.UnsafeEnabled && x != nil { 1739 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1740 if ms.LoadMessageInfo() == nil { 1741 ms.StoreMessageInfo(mi) 1742 } 1743 return ms 1744 } 1745 return mi.MessageOf(x) 1746} 1747 1748// Deprecated: Use Model_AggregateClassificationMetrics.ProtoReflect.Descriptor instead. 1749func (*Model_AggregateClassificationMetrics) Descriptor() ([]byte, []int) { 1750 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 3} 1751} 1752 1753func (x *Model_AggregateClassificationMetrics) GetPrecision() *wrapperspb.DoubleValue { 1754 if x != nil { 1755 return x.Precision 1756 } 1757 return nil 1758} 1759 1760func (x *Model_AggregateClassificationMetrics) GetRecall() *wrapperspb.DoubleValue { 1761 if x != nil { 1762 return x.Recall 1763 } 1764 return nil 1765} 1766 1767func (x *Model_AggregateClassificationMetrics) GetAccuracy() *wrapperspb.DoubleValue { 1768 if x != nil { 1769 return x.Accuracy 1770 } 1771 return nil 1772} 1773 1774func (x *Model_AggregateClassificationMetrics) GetThreshold() *wrapperspb.DoubleValue { 1775 if x != nil { 1776 return x.Threshold 1777 } 1778 return nil 1779} 1780 1781func (x *Model_AggregateClassificationMetrics) GetF1Score() *wrapperspb.DoubleValue { 1782 if x != nil { 1783 return x.F1Score 1784 } 1785 return nil 1786} 1787 1788func (x *Model_AggregateClassificationMetrics) GetLogLoss() *wrapperspb.DoubleValue { 1789 if x != nil { 1790 return x.LogLoss 1791 } 1792 return nil 1793} 1794 1795func (x *Model_AggregateClassificationMetrics) GetRocAuc() *wrapperspb.DoubleValue { 1796 if x != nil { 1797 return x.RocAuc 1798 } 1799 return nil 1800} 1801 1802// Evaluation metrics for binary classification/classifier models. 1803type Model_BinaryClassificationMetrics struct { 1804 state protoimpl.MessageState 1805 sizeCache protoimpl.SizeCache 1806 unknownFields protoimpl.UnknownFields 1807 1808 // Aggregate classification metrics. 1809 AggregateClassificationMetrics *Model_AggregateClassificationMetrics `protobuf:"bytes,1,opt,name=aggregate_classification_metrics,json=aggregateClassificationMetrics,proto3" json:"aggregate_classification_metrics,omitempty"` 1810 // Binary confusion matrix at multiple thresholds. 1811 BinaryConfusionMatrixList []*Model_BinaryClassificationMetrics_BinaryConfusionMatrix `protobuf:"bytes,2,rep,name=binary_confusion_matrix_list,json=binaryConfusionMatrixList,proto3" json:"binary_confusion_matrix_list,omitempty"` 1812 // Label representing the positive class. 1813 PositiveLabel string `protobuf:"bytes,3,opt,name=positive_label,json=positiveLabel,proto3" json:"positive_label,omitempty"` 1814 // Label representing the negative class. 1815 NegativeLabel string `protobuf:"bytes,4,opt,name=negative_label,json=negativeLabel,proto3" json:"negative_label,omitempty"` 1816} 1817 1818func (x *Model_BinaryClassificationMetrics) Reset() { 1819 *x = Model_BinaryClassificationMetrics{} 1820 if protoimpl.UnsafeEnabled { 1821 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[10] 1822 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1823 ms.StoreMessageInfo(mi) 1824 } 1825} 1826 1827func (x *Model_BinaryClassificationMetrics) String() string { 1828 return protoimpl.X.MessageStringOf(x) 1829} 1830 1831func (*Model_BinaryClassificationMetrics) ProtoMessage() {} 1832 1833func (x *Model_BinaryClassificationMetrics) ProtoReflect() protoreflect.Message { 1834 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[10] 1835 if protoimpl.UnsafeEnabled && x != nil { 1836 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1837 if ms.LoadMessageInfo() == nil { 1838 ms.StoreMessageInfo(mi) 1839 } 1840 return ms 1841 } 1842 return mi.MessageOf(x) 1843} 1844 1845// Deprecated: Use Model_BinaryClassificationMetrics.ProtoReflect.Descriptor instead. 1846func (*Model_BinaryClassificationMetrics) Descriptor() ([]byte, []int) { 1847 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 4} 1848} 1849 1850func (x *Model_BinaryClassificationMetrics) GetAggregateClassificationMetrics() *Model_AggregateClassificationMetrics { 1851 if x != nil { 1852 return x.AggregateClassificationMetrics 1853 } 1854 return nil 1855} 1856 1857func (x *Model_BinaryClassificationMetrics) GetBinaryConfusionMatrixList() []*Model_BinaryClassificationMetrics_BinaryConfusionMatrix { 1858 if x != nil { 1859 return x.BinaryConfusionMatrixList 1860 } 1861 return nil 1862} 1863 1864func (x *Model_BinaryClassificationMetrics) GetPositiveLabel() string { 1865 if x != nil { 1866 return x.PositiveLabel 1867 } 1868 return "" 1869} 1870 1871func (x *Model_BinaryClassificationMetrics) GetNegativeLabel() string { 1872 if x != nil { 1873 return x.NegativeLabel 1874 } 1875 return "" 1876} 1877 1878// Evaluation metrics for multi-class classification/classifier models. 1879type Model_MultiClassClassificationMetrics struct { 1880 state protoimpl.MessageState 1881 sizeCache protoimpl.SizeCache 1882 unknownFields protoimpl.UnknownFields 1883 1884 // Aggregate classification metrics. 1885 AggregateClassificationMetrics *Model_AggregateClassificationMetrics `protobuf:"bytes,1,opt,name=aggregate_classification_metrics,json=aggregateClassificationMetrics,proto3" json:"aggregate_classification_metrics,omitempty"` 1886 // Confusion matrix at different thresholds. 1887 ConfusionMatrixList []*Model_MultiClassClassificationMetrics_ConfusionMatrix `protobuf:"bytes,2,rep,name=confusion_matrix_list,json=confusionMatrixList,proto3" json:"confusion_matrix_list,omitempty"` 1888} 1889 1890func (x *Model_MultiClassClassificationMetrics) Reset() { 1891 *x = Model_MultiClassClassificationMetrics{} 1892 if protoimpl.UnsafeEnabled { 1893 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[11] 1894 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1895 ms.StoreMessageInfo(mi) 1896 } 1897} 1898 1899func (x *Model_MultiClassClassificationMetrics) String() string { 1900 return protoimpl.X.MessageStringOf(x) 1901} 1902 1903func (*Model_MultiClassClassificationMetrics) ProtoMessage() {} 1904 1905func (x *Model_MultiClassClassificationMetrics) ProtoReflect() protoreflect.Message { 1906 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[11] 1907 if protoimpl.UnsafeEnabled && x != nil { 1908 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1909 if ms.LoadMessageInfo() == nil { 1910 ms.StoreMessageInfo(mi) 1911 } 1912 return ms 1913 } 1914 return mi.MessageOf(x) 1915} 1916 1917// Deprecated: Use Model_MultiClassClassificationMetrics.ProtoReflect.Descriptor instead. 1918func (*Model_MultiClassClassificationMetrics) Descriptor() ([]byte, []int) { 1919 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5} 1920} 1921 1922func (x *Model_MultiClassClassificationMetrics) GetAggregateClassificationMetrics() *Model_AggregateClassificationMetrics { 1923 if x != nil { 1924 return x.AggregateClassificationMetrics 1925 } 1926 return nil 1927} 1928 1929func (x *Model_MultiClassClassificationMetrics) GetConfusionMatrixList() []*Model_MultiClassClassificationMetrics_ConfusionMatrix { 1930 if x != nil { 1931 return x.ConfusionMatrixList 1932 } 1933 return nil 1934} 1935 1936// Evaluation metrics for clustering models. 1937type Model_ClusteringMetrics struct { 1938 state protoimpl.MessageState 1939 sizeCache protoimpl.SizeCache 1940 unknownFields protoimpl.UnknownFields 1941 1942 // Davies-Bouldin index. 1943 DaviesBouldinIndex *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=davies_bouldin_index,json=daviesBouldinIndex,proto3" json:"davies_bouldin_index,omitempty"` 1944 // Mean of squared distances between each sample to its cluster centroid. 1945 MeanSquaredDistance *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=mean_squared_distance,json=meanSquaredDistance,proto3" json:"mean_squared_distance,omitempty"` 1946 // Information for all clusters. 1947 Clusters []*Model_ClusteringMetrics_Cluster `protobuf:"bytes,3,rep,name=clusters,proto3" json:"clusters,omitempty"` 1948} 1949 1950func (x *Model_ClusteringMetrics) Reset() { 1951 *x = Model_ClusteringMetrics{} 1952 if protoimpl.UnsafeEnabled { 1953 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[12] 1954 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1955 ms.StoreMessageInfo(mi) 1956 } 1957} 1958 1959func (x *Model_ClusteringMetrics) String() string { 1960 return protoimpl.X.MessageStringOf(x) 1961} 1962 1963func (*Model_ClusteringMetrics) ProtoMessage() {} 1964 1965func (x *Model_ClusteringMetrics) ProtoReflect() protoreflect.Message { 1966 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[12] 1967 if protoimpl.UnsafeEnabled && x != nil { 1968 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1969 if ms.LoadMessageInfo() == nil { 1970 ms.StoreMessageInfo(mi) 1971 } 1972 return ms 1973 } 1974 return mi.MessageOf(x) 1975} 1976 1977// Deprecated: Use Model_ClusteringMetrics.ProtoReflect.Descriptor instead. 1978func (*Model_ClusteringMetrics) Descriptor() ([]byte, []int) { 1979 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6} 1980} 1981 1982func (x *Model_ClusteringMetrics) GetDaviesBouldinIndex() *wrapperspb.DoubleValue { 1983 if x != nil { 1984 return x.DaviesBouldinIndex 1985 } 1986 return nil 1987} 1988 1989func (x *Model_ClusteringMetrics) GetMeanSquaredDistance() *wrapperspb.DoubleValue { 1990 if x != nil { 1991 return x.MeanSquaredDistance 1992 } 1993 return nil 1994} 1995 1996func (x *Model_ClusteringMetrics) GetClusters() []*Model_ClusteringMetrics_Cluster { 1997 if x != nil { 1998 return x.Clusters 1999 } 2000 return nil 2001} 2002 2003// Evaluation metrics used by weighted-ALS models specified by 2004// feedback_type=implicit. 2005type Model_RankingMetrics struct { 2006 state protoimpl.MessageState 2007 sizeCache protoimpl.SizeCache 2008 unknownFields protoimpl.UnknownFields 2009 2010 // Calculates a precision per user for all the items by ranking them and 2011 // then averages all the precisions across all the users. 2012 MeanAveragePrecision *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=mean_average_precision,json=meanAveragePrecision,proto3" json:"mean_average_precision,omitempty"` 2013 // Similar to the mean squared error computed in regression and explicit 2014 // recommendation models except instead of computing the rating directly, 2015 // the output from evaluate is computed against a preference which is 1 or 0 2016 // depending on if the rating exists or not. 2017 MeanSquaredError *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=mean_squared_error,json=meanSquaredError,proto3" json:"mean_squared_error,omitempty"` 2018 // A metric to determine the goodness of a ranking calculated from the 2019 // predicted confidence by comparing it to an ideal rank measured by the 2020 // original ratings. 2021 NormalizedDiscountedCumulativeGain *wrapperspb.DoubleValue `protobuf:"bytes,3,opt,name=normalized_discounted_cumulative_gain,json=normalizedDiscountedCumulativeGain,proto3" json:"normalized_discounted_cumulative_gain,omitempty"` 2022 // Determines the goodness of a ranking by computing the percentile rank 2023 // from the predicted confidence and dividing it by the original rank. 2024 AverageRank *wrapperspb.DoubleValue `protobuf:"bytes,4,opt,name=average_rank,json=averageRank,proto3" json:"average_rank,omitempty"` 2025} 2026 2027func (x *Model_RankingMetrics) Reset() { 2028 *x = Model_RankingMetrics{} 2029 if protoimpl.UnsafeEnabled { 2030 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[13] 2031 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2032 ms.StoreMessageInfo(mi) 2033 } 2034} 2035 2036func (x *Model_RankingMetrics) String() string { 2037 return protoimpl.X.MessageStringOf(x) 2038} 2039 2040func (*Model_RankingMetrics) ProtoMessage() {} 2041 2042func (x *Model_RankingMetrics) ProtoReflect() protoreflect.Message { 2043 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[13] 2044 if protoimpl.UnsafeEnabled && x != nil { 2045 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2046 if ms.LoadMessageInfo() == nil { 2047 ms.StoreMessageInfo(mi) 2048 } 2049 return ms 2050 } 2051 return mi.MessageOf(x) 2052} 2053 2054// Deprecated: Use Model_RankingMetrics.ProtoReflect.Descriptor instead. 2055func (*Model_RankingMetrics) Descriptor() ([]byte, []int) { 2056 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 7} 2057} 2058 2059func (x *Model_RankingMetrics) GetMeanAveragePrecision() *wrapperspb.DoubleValue { 2060 if x != nil { 2061 return x.MeanAveragePrecision 2062 } 2063 return nil 2064} 2065 2066func (x *Model_RankingMetrics) GetMeanSquaredError() *wrapperspb.DoubleValue { 2067 if x != nil { 2068 return x.MeanSquaredError 2069 } 2070 return nil 2071} 2072 2073func (x *Model_RankingMetrics) GetNormalizedDiscountedCumulativeGain() *wrapperspb.DoubleValue { 2074 if x != nil { 2075 return x.NormalizedDiscountedCumulativeGain 2076 } 2077 return nil 2078} 2079 2080func (x *Model_RankingMetrics) GetAverageRank() *wrapperspb.DoubleValue { 2081 if x != nil { 2082 return x.AverageRank 2083 } 2084 return nil 2085} 2086 2087// Model evaluation metrics for ARIMA forecasting models. 2088type Model_ArimaForecastingMetrics struct { 2089 state protoimpl.MessageState 2090 sizeCache protoimpl.SizeCache 2091 unknownFields protoimpl.UnknownFields 2092 2093 // Non-seasonal order. 2094 // 2095 // Deprecated: Do not use. 2096 NonSeasonalOrder []*Model_ArimaOrder `protobuf:"bytes,1,rep,name=non_seasonal_order,json=nonSeasonalOrder,proto3" json:"non_seasonal_order,omitempty"` 2097 // Arima model fitting metrics. 2098 // 2099 // Deprecated: Do not use. 2100 ArimaFittingMetrics []*Model_ArimaFittingMetrics `protobuf:"bytes,2,rep,name=arima_fitting_metrics,json=arimaFittingMetrics,proto3" json:"arima_fitting_metrics,omitempty"` 2101 // Seasonal periods. Repeated because multiple periods are supported for one 2102 // time series. 2103 // 2104 // Deprecated: Do not use. 2105 SeasonalPeriods []Model_SeasonalPeriod_SeasonalPeriodType `protobuf:"varint,3,rep,packed,name=seasonal_periods,json=seasonalPeriods,proto3,enum=google.cloud.bigquery.v2.Model_SeasonalPeriod_SeasonalPeriodType" json:"seasonal_periods,omitempty"` 2106 // Whether Arima model fitted with drift or not. It is always false when d 2107 // is not 1. 2108 // 2109 // Deprecated: Do not use. 2110 HasDrift []bool `protobuf:"varint,4,rep,packed,name=has_drift,json=hasDrift,proto3" json:"has_drift,omitempty"` 2111 // Id to differentiate different time series for the large-scale case. 2112 // 2113 // Deprecated: Do not use. 2114 TimeSeriesId []string `protobuf:"bytes,5,rep,name=time_series_id,json=timeSeriesId,proto3" json:"time_series_id,omitempty"` 2115 // Repeated as there can be many metric sets (one for each model) in 2116 // auto-arima and the large-scale case. 2117 ArimaSingleModelForecastingMetrics []*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics `protobuf:"bytes,6,rep,name=arima_single_model_forecasting_metrics,json=arimaSingleModelForecastingMetrics,proto3" json:"arima_single_model_forecasting_metrics,omitempty"` 2118} 2119 2120func (x *Model_ArimaForecastingMetrics) Reset() { 2121 *x = Model_ArimaForecastingMetrics{} 2122 if protoimpl.UnsafeEnabled { 2123 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[14] 2124 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2125 ms.StoreMessageInfo(mi) 2126 } 2127} 2128 2129func (x *Model_ArimaForecastingMetrics) String() string { 2130 return protoimpl.X.MessageStringOf(x) 2131} 2132 2133func (*Model_ArimaForecastingMetrics) ProtoMessage() {} 2134 2135func (x *Model_ArimaForecastingMetrics) ProtoReflect() protoreflect.Message { 2136 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[14] 2137 if protoimpl.UnsafeEnabled && x != nil { 2138 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2139 if ms.LoadMessageInfo() == nil { 2140 ms.StoreMessageInfo(mi) 2141 } 2142 return ms 2143 } 2144 return mi.MessageOf(x) 2145} 2146 2147// Deprecated: Use Model_ArimaForecastingMetrics.ProtoReflect.Descriptor instead. 2148func (*Model_ArimaForecastingMetrics) Descriptor() ([]byte, []int) { 2149 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 8} 2150} 2151 2152// Deprecated: Do not use. 2153func (x *Model_ArimaForecastingMetrics) GetNonSeasonalOrder() []*Model_ArimaOrder { 2154 if x != nil { 2155 return x.NonSeasonalOrder 2156 } 2157 return nil 2158} 2159 2160// Deprecated: Do not use. 2161func (x *Model_ArimaForecastingMetrics) GetArimaFittingMetrics() []*Model_ArimaFittingMetrics { 2162 if x != nil { 2163 return x.ArimaFittingMetrics 2164 } 2165 return nil 2166} 2167 2168// Deprecated: Do not use. 2169func (x *Model_ArimaForecastingMetrics) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType { 2170 if x != nil { 2171 return x.SeasonalPeriods 2172 } 2173 return nil 2174} 2175 2176// Deprecated: Do not use. 2177func (x *Model_ArimaForecastingMetrics) GetHasDrift() []bool { 2178 if x != nil { 2179 return x.HasDrift 2180 } 2181 return nil 2182} 2183 2184// Deprecated: Do not use. 2185func (x *Model_ArimaForecastingMetrics) GetTimeSeriesId() []string { 2186 if x != nil { 2187 return x.TimeSeriesId 2188 } 2189 return nil 2190} 2191 2192func (x *Model_ArimaForecastingMetrics) GetArimaSingleModelForecastingMetrics() []*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics { 2193 if x != nil { 2194 return x.ArimaSingleModelForecastingMetrics 2195 } 2196 return nil 2197} 2198 2199// Evaluation metrics of a model. These are either computed on all training 2200// data or just the eval data based on whether eval data was used during 2201// training. These are not present for imported models. 2202type Model_EvaluationMetrics struct { 2203 state protoimpl.MessageState 2204 sizeCache protoimpl.SizeCache 2205 unknownFields protoimpl.UnknownFields 2206 2207 // Types that are assignable to Metrics: 2208 // *Model_EvaluationMetrics_RegressionMetrics 2209 // *Model_EvaluationMetrics_BinaryClassificationMetrics 2210 // *Model_EvaluationMetrics_MultiClassClassificationMetrics 2211 // *Model_EvaluationMetrics_ClusteringMetrics 2212 // *Model_EvaluationMetrics_RankingMetrics 2213 // *Model_EvaluationMetrics_ArimaForecastingMetrics 2214 Metrics isModel_EvaluationMetrics_Metrics `protobuf_oneof:"metrics"` 2215} 2216 2217func (x *Model_EvaluationMetrics) Reset() { 2218 *x = Model_EvaluationMetrics{} 2219 if protoimpl.UnsafeEnabled { 2220 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[15] 2221 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2222 ms.StoreMessageInfo(mi) 2223 } 2224} 2225 2226func (x *Model_EvaluationMetrics) String() string { 2227 return protoimpl.X.MessageStringOf(x) 2228} 2229 2230func (*Model_EvaluationMetrics) ProtoMessage() {} 2231 2232func (x *Model_EvaluationMetrics) ProtoReflect() protoreflect.Message { 2233 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[15] 2234 if protoimpl.UnsafeEnabled && x != nil { 2235 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2236 if ms.LoadMessageInfo() == nil { 2237 ms.StoreMessageInfo(mi) 2238 } 2239 return ms 2240 } 2241 return mi.MessageOf(x) 2242} 2243 2244// Deprecated: Use Model_EvaluationMetrics.ProtoReflect.Descriptor instead. 2245func (*Model_EvaluationMetrics) Descriptor() ([]byte, []int) { 2246 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 9} 2247} 2248 2249func (m *Model_EvaluationMetrics) GetMetrics() isModel_EvaluationMetrics_Metrics { 2250 if m != nil { 2251 return m.Metrics 2252 } 2253 return nil 2254} 2255 2256func (x *Model_EvaluationMetrics) GetRegressionMetrics() *Model_RegressionMetrics { 2257 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_RegressionMetrics); ok { 2258 return x.RegressionMetrics 2259 } 2260 return nil 2261} 2262 2263func (x *Model_EvaluationMetrics) GetBinaryClassificationMetrics() *Model_BinaryClassificationMetrics { 2264 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_BinaryClassificationMetrics); ok { 2265 return x.BinaryClassificationMetrics 2266 } 2267 return nil 2268} 2269 2270func (x *Model_EvaluationMetrics) GetMultiClassClassificationMetrics() *Model_MultiClassClassificationMetrics { 2271 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_MultiClassClassificationMetrics); ok { 2272 return x.MultiClassClassificationMetrics 2273 } 2274 return nil 2275} 2276 2277func (x *Model_EvaluationMetrics) GetClusteringMetrics() *Model_ClusteringMetrics { 2278 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_ClusteringMetrics); ok { 2279 return x.ClusteringMetrics 2280 } 2281 return nil 2282} 2283 2284func (x *Model_EvaluationMetrics) GetRankingMetrics() *Model_RankingMetrics { 2285 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_RankingMetrics); ok { 2286 return x.RankingMetrics 2287 } 2288 return nil 2289} 2290 2291func (x *Model_EvaluationMetrics) GetArimaForecastingMetrics() *Model_ArimaForecastingMetrics { 2292 if x, ok := x.GetMetrics().(*Model_EvaluationMetrics_ArimaForecastingMetrics); ok { 2293 return x.ArimaForecastingMetrics 2294 } 2295 return nil 2296} 2297 2298type isModel_EvaluationMetrics_Metrics interface { 2299 isModel_EvaluationMetrics_Metrics() 2300} 2301 2302type Model_EvaluationMetrics_RegressionMetrics struct { 2303 // Populated for regression models and explicit feedback type matrix 2304 // factorization models. 2305 RegressionMetrics *Model_RegressionMetrics `protobuf:"bytes,1,opt,name=regression_metrics,json=regressionMetrics,proto3,oneof"` 2306} 2307 2308type Model_EvaluationMetrics_BinaryClassificationMetrics struct { 2309 // Populated for binary classification/classifier models. 2310 BinaryClassificationMetrics *Model_BinaryClassificationMetrics `protobuf:"bytes,2,opt,name=binary_classification_metrics,json=binaryClassificationMetrics,proto3,oneof"` 2311} 2312 2313type Model_EvaluationMetrics_MultiClassClassificationMetrics struct { 2314 // Populated for multi-class classification/classifier models. 2315 MultiClassClassificationMetrics *Model_MultiClassClassificationMetrics `protobuf:"bytes,3,opt,name=multi_class_classification_metrics,json=multiClassClassificationMetrics,proto3,oneof"` 2316} 2317 2318type Model_EvaluationMetrics_ClusteringMetrics struct { 2319 // Populated for clustering models. 2320 ClusteringMetrics *Model_ClusteringMetrics `protobuf:"bytes,4,opt,name=clustering_metrics,json=clusteringMetrics,proto3,oneof"` 2321} 2322 2323type Model_EvaluationMetrics_RankingMetrics struct { 2324 // Populated for implicit feedback type matrix factorization models. 2325 RankingMetrics *Model_RankingMetrics `protobuf:"bytes,5,opt,name=ranking_metrics,json=rankingMetrics,proto3,oneof"` 2326} 2327 2328type Model_EvaluationMetrics_ArimaForecastingMetrics struct { 2329 // Populated for ARIMA models. 2330 ArimaForecastingMetrics *Model_ArimaForecastingMetrics `protobuf:"bytes,6,opt,name=arima_forecasting_metrics,json=arimaForecastingMetrics,proto3,oneof"` 2331} 2332 2333func (*Model_EvaluationMetrics_RegressionMetrics) isModel_EvaluationMetrics_Metrics() {} 2334 2335func (*Model_EvaluationMetrics_BinaryClassificationMetrics) isModel_EvaluationMetrics_Metrics() {} 2336 2337func (*Model_EvaluationMetrics_MultiClassClassificationMetrics) isModel_EvaluationMetrics_Metrics() {} 2338 2339func (*Model_EvaluationMetrics_ClusteringMetrics) isModel_EvaluationMetrics_Metrics() {} 2340 2341func (*Model_EvaluationMetrics_RankingMetrics) isModel_EvaluationMetrics_Metrics() {} 2342 2343func (*Model_EvaluationMetrics_ArimaForecastingMetrics) isModel_EvaluationMetrics_Metrics() {} 2344 2345// Data split result. This contains references to the training and evaluation 2346// data tables that were used to train the model. 2347type Model_DataSplitResult struct { 2348 state protoimpl.MessageState 2349 sizeCache protoimpl.SizeCache 2350 unknownFields protoimpl.UnknownFields 2351 2352 // Table reference of the training data after split. 2353 TrainingTable *TableReference `protobuf:"bytes,1,opt,name=training_table,json=trainingTable,proto3" json:"training_table,omitempty"` 2354 // Table reference of the evaluation data after split. 2355 EvaluationTable *TableReference `protobuf:"bytes,2,opt,name=evaluation_table,json=evaluationTable,proto3" json:"evaluation_table,omitempty"` 2356} 2357 2358func (x *Model_DataSplitResult) Reset() { 2359 *x = Model_DataSplitResult{} 2360 if protoimpl.UnsafeEnabled { 2361 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[16] 2362 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2363 ms.StoreMessageInfo(mi) 2364 } 2365} 2366 2367func (x *Model_DataSplitResult) String() string { 2368 return protoimpl.X.MessageStringOf(x) 2369} 2370 2371func (*Model_DataSplitResult) ProtoMessage() {} 2372 2373func (x *Model_DataSplitResult) ProtoReflect() protoreflect.Message { 2374 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[16] 2375 if protoimpl.UnsafeEnabled && x != nil { 2376 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2377 if ms.LoadMessageInfo() == nil { 2378 ms.StoreMessageInfo(mi) 2379 } 2380 return ms 2381 } 2382 return mi.MessageOf(x) 2383} 2384 2385// Deprecated: Use Model_DataSplitResult.ProtoReflect.Descriptor instead. 2386func (*Model_DataSplitResult) Descriptor() ([]byte, []int) { 2387 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 10} 2388} 2389 2390func (x *Model_DataSplitResult) GetTrainingTable() *TableReference { 2391 if x != nil { 2392 return x.TrainingTable 2393 } 2394 return nil 2395} 2396 2397func (x *Model_DataSplitResult) GetEvaluationTable() *TableReference { 2398 if x != nil { 2399 return x.EvaluationTable 2400 } 2401 return nil 2402} 2403 2404// Arima order, can be used for both non-seasonal and seasonal parts. 2405type Model_ArimaOrder struct { 2406 state protoimpl.MessageState 2407 sizeCache protoimpl.SizeCache 2408 unknownFields protoimpl.UnknownFields 2409 2410 // Order of the autoregressive part. 2411 P int64 `protobuf:"varint,1,opt,name=p,proto3" json:"p,omitempty"` 2412 // Order of the differencing part. 2413 D int64 `protobuf:"varint,2,opt,name=d,proto3" json:"d,omitempty"` 2414 // Order of the moving-average part. 2415 Q int64 `protobuf:"varint,3,opt,name=q,proto3" json:"q,omitempty"` 2416} 2417 2418func (x *Model_ArimaOrder) Reset() { 2419 *x = Model_ArimaOrder{} 2420 if protoimpl.UnsafeEnabled { 2421 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[17] 2422 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2423 ms.StoreMessageInfo(mi) 2424 } 2425} 2426 2427func (x *Model_ArimaOrder) String() string { 2428 return protoimpl.X.MessageStringOf(x) 2429} 2430 2431func (*Model_ArimaOrder) ProtoMessage() {} 2432 2433func (x *Model_ArimaOrder) ProtoReflect() protoreflect.Message { 2434 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[17] 2435 if protoimpl.UnsafeEnabled && x != nil { 2436 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2437 if ms.LoadMessageInfo() == nil { 2438 ms.StoreMessageInfo(mi) 2439 } 2440 return ms 2441 } 2442 return mi.MessageOf(x) 2443} 2444 2445// Deprecated: Use Model_ArimaOrder.ProtoReflect.Descriptor instead. 2446func (*Model_ArimaOrder) Descriptor() ([]byte, []int) { 2447 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 11} 2448} 2449 2450func (x *Model_ArimaOrder) GetP() int64 { 2451 if x != nil { 2452 return x.P 2453 } 2454 return 0 2455} 2456 2457func (x *Model_ArimaOrder) GetD() int64 { 2458 if x != nil { 2459 return x.D 2460 } 2461 return 0 2462} 2463 2464func (x *Model_ArimaOrder) GetQ() int64 { 2465 if x != nil { 2466 return x.Q 2467 } 2468 return 0 2469} 2470 2471// ARIMA model fitting metrics. 2472type Model_ArimaFittingMetrics struct { 2473 state protoimpl.MessageState 2474 sizeCache protoimpl.SizeCache 2475 unknownFields protoimpl.UnknownFields 2476 2477 // Log-likelihood. 2478 LogLikelihood float64 `protobuf:"fixed64,1,opt,name=log_likelihood,json=logLikelihood,proto3" json:"log_likelihood,omitempty"` 2479 // AIC. 2480 Aic float64 `protobuf:"fixed64,2,opt,name=aic,proto3" json:"aic,omitempty"` 2481 // Variance. 2482 Variance float64 `protobuf:"fixed64,3,opt,name=variance,proto3" json:"variance,omitempty"` 2483} 2484 2485func (x *Model_ArimaFittingMetrics) Reset() { 2486 *x = Model_ArimaFittingMetrics{} 2487 if protoimpl.UnsafeEnabled { 2488 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[18] 2489 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2490 ms.StoreMessageInfo(mi) 2491 } 2492} 2493 2494func (x *Model_ArimaFittingMetrics) String() string { 2495 return protoimpl.X.MessageStringOf(x) 2496} 2497 2498func (*Model_ArimaFittingMetrics) ProtoMessage() {} 2499 2500func (x *Model_ArimaFittingMetrics) ProtoReflect() protoreflect.Message { 2501 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[18] 2502 if protoimpl.UnsafeEnabled && x != nil { 2503 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2504 if ms.LoadMessageInfo() == nil { 2505 ms.StoreMessageInfo(mi) 2506 } 2507 return ms 2508 } 2509 return mi.MessageOf(x) 2510} 2511 2512// Deprecated: Use Model_ArimaFittingMetrics.ProtoReflect.Descriptor instead. 2513func (*Model_ArimaFittingMetrics) Descriptor() ([]byte, []int) { 2514 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 12} 2515} 2516 2517func (x *Model_ArimaFittingMetrics) GetLogLikelihood() float64 { 2518 if x != nil { 2519 return x.LogLikelihood 2520 } 2521 return 0 2522} 2523 2524func (x *Model_ArimaFittingMetrics) GetAic() float64 { 2525 if x != nil { 2526 return x.Aic 2527 } 2528 return 0 2529} 2530 2531func (x *Model_ArimaFittingMetrics) GetVariance() float64 { 2532 if x != nil { 2533 return x.Variance 2534 } 2535 return 0 2536} 2537 2538// Global explanations containing the top most important features 2539// after training. 2540type Model_GlobalExplanation struct { 2541 state protoimpl.MessageState 2542 sizeCache protoimpl.SizeCache 2543 unknownFields protoimpl.UnknownFields 2544 2545 // A list of the top global explanations. Sorted by absolute value of 2546 // attribution in descending order. 2547 Explanations []*Model_GlobalExplanation_Explanation `protobuf:"bytes,1,rep,name=explanations,proto3" json:"explanations,omitempty"` 2548 // Class label for this set of global explanations. Will be empty/null for 2549 // binary logistic and linear regression models. Sorted alphabetically in 2550 // descending order. 2551 ClassLabel string `protobuf:"bytes,2,opt,name=class_label,json=classLabel,proto3" json:"class_label,omitempty"` 2552} 2553 2554func (x *Model_GlobalExplanation) Reset() { 2555 *x = Model_GlobalExplanation{} 2556 if protoimpl.UnsafeEnabled { 2557 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[19] 2558 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2559 ms.StoreMessageInfo(mi) 2560 } 2561} 2562 2563func (x *Model_GlobalExplanation) String() string { 2564 return protoimpl.X.MessageStringOf(x) 2565} 2566 2567func (*Model_GlobalExplanation) ProtoMessage() {} 2568 2569func (x *Model_GlobalExplanation) ProtoReflect() protoreflect.Message { 2570 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[19] 2571 if protoimpl.UnsafeEnabled && x != nil { 2572 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2573 if ms.LoadMessageInfo() == nil { 2574 ms.StoreMessageInfo(mi) 2575 } 2576 return ms 2577 } 2578 return mi.MessageOf(x) 2579} 2580 2581// Deprecated: Use Model_GlobalExplanation.ProtoReflect.Descriptor instead. 2582func (*Model_GlobalExplanation) Descriptor() ([]byte, []int) { 2583 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 13} 2584} 2585 2586func (x *Model_GlobalExplanation) GetExplanations() []*Model_GlobalExplanation_Explanation { 2587 if x != nil { 2588 return x.Explanations 2589 } 2590 return nil 2591} 2592 2593func (x *Model_GlobalExplanation) GetClassLabel() string { 2594 if x != nil { 2595 return x.ClassLabel 2596 } 2597 return "" 2598} 2599 2600// Information about a single training query run for the model. 2601type Model_TrainingRun struct { 2602 state protoimpl.MessageState 2603 sizeCache protoimpl.SizeCache 2604 unknownFields protoimpl.UnknownFields 2605 2606 // Options that were used for this training run, includes 2607 // user specified and default options that were used. 2608 TrainingOptions *Model_TrainingRun_TrainingOptions `protobuf:"bytes,1,opt,name=training_options,json=trainingOptions,proto3" json:"training_options,omitempty"` 2609 // The start time of this training run. 2610 StartTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 2611 // Output of each iteration run, results.size() <= max_iterations. 2612 Results []*Model_TrainingRun_IterationResult `protobuf:"bytes,6,rep,name=results,proto3" json:"results,omitempty"` 2613 // The evaluation metrics over training/eval data that were computed at the 2614 // end of training. 2615 EvaluationMetrics *Model_EvaluationMetrics `protobuf:"bytes,7,opt,name=evaluation_metrics,json=evaluationMetrics,proto3" json:"evaluation_metrics,omitempty"` 2616 // Data split result of the training run. Only set when the input data is 2617 // actually split. 2618 DataSplitResult *Model_DataSplitResult `protobuf:"bytes,9,opt,name=data_split_result,json=dataSplitResult,proto3" json:"data_split_result,omitempty"` 2619 // Global explanations for important features of the model. For multi-class 2620 // models, there is one entry for each label class. For other models, there 2621 // is only one entry in the list. 2622 GlobalExplanations []*Model_GlobalExplanation `protobuf:"bytes,10,rep,name=global_explanations,json=globalExplanations,proto3" json:"global_explanations,omitempty"` 2623} 2624 2625func (x *Model_TrainingRun) Reset() { 2626 *x = Model_TrainingRun{} 2627 if protoimpl.UnsafeEnabled { 2628 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[20] 2629 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2630 ms.StoreMessageInfo(mi) 2631 } 2632} 2633 2634func (x *Model_TrainingRun) String() string { 2635 return protoimpl.X.MessageStringOf(x) 2636} 2637 2638func (*Model_TrainingRun) ProtoMessage() {} 2639 2640func (x *Model_TrainingRun) ProtoReflect() protoreflect.Message { 2641 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[20] 2642 if protoimpl.UnsafeEnabled && x != nil { 2643 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2644 if ms.LoadMessageInfo() == nil { 2645 ms.StoreMessageInfo(mi) 2646 } 2647 return ms 2648 } 2649 return mi.MessageOf(x) 2650} 2651 2652// Deprecated: Use Model_TrainingRun.ProtoReflect.Descriptor instead. 2653func (*Model_TrainingRun) Descriptor() ([]byte, []int) { 2654 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14} 2655} 2656 2657func (x *Model_TrainingRun) GetTrainingOptions() *Model_TrainingRun_TrainingOptions { 2658 if x != nil { 2659 return x.TrainingOptions 2660 } 2661 return nil 2662} 2663 2664func (x *Model_TrainingRun) GetStartTime() *timestamppb.Timestamp { 2665 if x != nil { 2666 return x.StartTime 2667 } 2668 return nil 2669} 2670 2671func (x *Model_TrainingRun) GetResults() []*Model_TrainingRun_IterationResult { 2672 if x != nil { 2673 return x.Results 2674 } 2675 return nil 2676} 2677 2678func (x *Model_TrainingRun) GetEvaluationMetrics() *Model_EvaluationMetrics { 2679 if x != nil { 2680 return x.EvaluationMetrics 2681 } 2682 return nil 2683} 2684 2685func (x *Model_TrainingRun) GetDataSplitResult() *Model_DataSplitResult { 2686 if x != nil { 2687 return x.DataSplitResult 2688 } 2689 return nil 2690} 2691 2692func (x *Model_TrainingRun) GetGlobalExplanations() []*Model_GlobalExplanation { 2693 if x != nil { 2694 return x.GlobalExplanations 2695 } 2696 return nil 2697} 2698 2699// Confusion matrix for binary classification models. 2700type Model_BinaryClassificationMetrics_BinaryConfusionMatrix struct { 2701 state protoimpl.MessageState 2702 sizeCache protoimpl.SizeCache 2703 unknownFields protoimpl.UnknownFields 2704 2705 // Threshold value used when computing each of the following metric. 2706 PositiveClassThreshold *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=positive_class_threshold,json=positiveClassThreshold,proto3" json:"positive_class_threshold,omitempty"` 2707 // Number of true samples predicted as true. 2708 TruePositives *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=true_positives,json=truePositives,proto3" json:"true_positives,omitempty"` 2709 // Number of false samples predicted as true. 2710 FalsePositives *wrapperspb.Int64Value `protobuf:"bytes,3,opt,name=false_positives,json=falsePositives,proto3" json:"false_positives,omitempty"` 2711 // Number of true samples predicted as false. 2712 TrueNegatives *wrapperspb.Int64Value `protobuf:"bytes,4,opt,name=true_negatives,json=trueNegatives,proto3" json:"true_negatives,omitempty"` 2713 // Number of false samples predicted as false. 2714 FalseNegatives *wrapperspb.Int64Value `protobuf:"bytes,5,opt,name=false_negatives,json=falseNegatives,proto3" json:"false_negatives,omitempty"` 2715 // The fraction of actual positive predictions that had positive actual 2716 // labels. 2717 Precision *wrapperspb.DoubleValue `protobuf:"bytes,6,opt,name=precision,proto3" json:"precision,omitempty"` 2718 // The fraction of actual positive labels that were given a positive 2719 // prediction. 2720 Recall *wrapperspb.DoubleValue `protobuf:"bytes,7,opt,name=recall,proto3" json:"recall,omitempty"` 2721 // The equally weighted average of recall and precision. 2722 F1Score *wrapperspb.DoubleValue `protobuf:"bytes,8,opt,name=f1_score,json=f1Score,proto3" json:"f1_score,omitempty"` 2723 // The fraction of predictions given the correct label. 2724 Accuracy *wrapperspb.DoubleValue `protobuf:"bytes,9,opt,name=accuracy,proto3" json:"accuracy,omitempty"` 2725} 2726 2727func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) Reset() { 2728 *x = Model_BinaryClassificationMetrics_BinaryConfusionMatrix{} 2729 if protoimpl.UnsafeEnabled { 2730 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[22] 2731 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2732 ms.StoreMessageInfo(mi) 2733 } 2734} 2735 2736func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) String() string { 2737 return protoimpl.X.MessageStringOf(x) 2738} 2739 2740func (*Model_BinaryClassificationMetrics_BinaryConfusionMatrix) ProtoMessage() {} 2741 2742func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) ProtoReflect() protoreflect.Message { 2743 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[22] 2744 if protoimpl.UnsafeEnabled && x != nil { 2745 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2746 if ms.LoadMessageInfo() == nil { 2747 ms.StoreMessageInfo(mi) 2748 } 2749 return ms 2750 } 2751 return mi.MessageOf(x) 2752} 2753 2754// Deprecated: Use Model_BinaryClassificationMetrics_BinaryConfusionMatrix.ProtoReflect.Descriptor instead. 2755func (*Model_BinaryClassificationMetrics_BinaryConfusionMatrix) Descriptor() ([]byte, []int) { 2756 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 4, 0} 2757} 2758 2759func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetPositiveClassThreshold() *wrapperspb.DoubleValue { 2760 if x != nil { 2761 return x.PositiveClassThreshold 2762 } 2763 return nil 2764} 2765 2766func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetTruePositives() *wrapperspb.Int64Value { 2767 if x != nil { 2768 return x.TruePositives 2769 } 2770 return nil 2771} 2772 2773func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetFalsePositives() *wrapperspb.Int64Value { 2774 if x != nil { 2775 return x.FalsePositives 2776 } 2777 return nil 2778} 2779 2780func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetTrueNegatives() *wrapperspb.Int64Value { 2781 if x != nil { 2782 return x.TrueNegatives 2783 } 2784 return nil 2785} 2786 2787func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetFalseNegatives() *wrapperspb.Int64Value { 2788 if x != nil { 2789 return x.FalseNegatives 2790 } 2791 return nil 2792} 2793 2794func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetPrecision() *wrapperspb.DoubleValue { 2795 if x != nil { 2796 return x.Precision 2797 } 2798 return nil 2799} 2800 2801func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetRecall() *wrapperspb.DoubleValue { 2802 if x != nil { 2803 return x.Recall 2804 } 2805 return nil 2806} 2807 2808func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetF1Score() *wrapperspb.DoubleValue { 2809 if x != nil { 2810 return x.F1Score 2811 } 2812 return nil 2813} 2814 2815func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetAccuracy() *wrapperspb.DoubleValue { 2816 if x != nil { 2817 return x.Accuracy 2818 } 2819 return nil 2820} 2821 2822// Confusion matrix for multi-class classification models. 2823type Model_MultiClassClassificationMetrics_ConfusionMatrix struct { 2824 state protoimpl.MessageState 2825 sizeCache protoimpl.SizeCache 2826 unknownFields protoimpl.UnknownFields 2827 2828 // Confidence threshold used when computing the entries of the 2829 // confusion matrix. 2830 ConfidenceThreshold *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=confidence_threshold,json=confidenceThreshold,proto3" json:"confidence_threshold,omitempty"` 2831 // One row per actual label. 2832 Rows []*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row `protobuf:"bytes,2,rep,name=rows,proto3" json:"rows,omitempty"` 2833} 2834 2835func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) Reset() { 2836 *x = Model_MultiClassClassificationMetrics_ConfusionMatrix{} 2837 if protoimpl.UnsafeEnabled { 2838 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[23] 2839 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2840 ms.StoreMessageInfo(mi) 2841 } 2842} 2843 2844func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) String() string { 2845 return protoimpl.X.MessageStringOf(x) 2846} 2847 2848func (*Model_MultiClassClassificationMetrics_ConfusionMatrix) ProtoMessage() {} 2849 2850func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) ProtoReflect() protoreflect.Message { 2851 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[23] 2852 if protoimpl.UnsafeEnabled && x != nil { 2853 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2854 if ms.LoadMessageInfo() == nil { 2855 ms.StoreMessageInfo(mi) 2856 } 2857 return ms 2858 } 2859 return mi.MessageOf(x) 2860} 2861 2862// Deprecated: Use Model_MultiClassClassificationMetrics_ConfusionMatrix.ProtoReflect.Descriptor instead. 2863func (*Model_MultiClassClassificationMetrics_ConfusionMatrix) Descriptor() ([]byte, []int) { 2864 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0} 2865} 2866 2867func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) GetConfidenceThreshold() *wrapperspb.DoubleValue { 2868 if x != nil { 2869 return x.ConfidenceThreshold 2870 } 2871 return nil 2872} 2873 2874func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) GetRows() []*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row { 2875 if x != nil { 2876 return x.Rows 2877 } 2878 return nil 2879} 2880 2881// A single entry in the confusion matrix. 2882type Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry struct { 2883 state protoimpl.MessageState 2884 sizeCache protoimpl.SizeCache 2885 unknownFields protoimpl.UnknownFields 2886 2887 // The predicted label. For confidence_threshold > 0, we will 2888 // also add an entry indicating the number of items under the 2889 // confidence threshold. 2890 PredictedLabel string `protobuf:"bytes,1,opt,name=predicted_label,json=predictedLabel,proto3" json:"predicted_label,omitempty"` 2891 // Number of items being predicted as this label. 2892 ItemCount *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=item_count,json=itemCount,proto3" json:"item_count,omitempty"` 2893} 2894 2895func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) Reset() { 2896 *x = Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry{} 2897 if protoimpl.UnsafeEnabled { 2898 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[24] 2899 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2900 ms.StoreMessageInfo(mi) 2901 } 2902} 2903 2904func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) String() string { 2905 return protoimpl.X.MessageStringOf(x) 2906} 2907 2908func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) ProtoMessage() {} 2909 2910func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) ProtoReflect() protoreflect.Message { 2911 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[24] 2912 if protoimpl.UnsafeEnabled && x != nil { 2913 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2914 if ms.LoadMessageInfo() == nil { 2915 ms.StoreMessageInfo(mi) 2916 } 2917 return ms 2918 } 2919 return mi.MessageOf(x) 2920} 2921 2922// Deprecated: Use Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry.ProtoReflect.Descriptor instead. 2923func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) Descriptor() ([]byte, []int) { 2924 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0, 0} 2925} 2926 2927func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) GetPredictedLabel() string { 2928 if x != nil { 2929 return x.PredictedLabel 2930 } 2931 return "" 2932} 2933 2934func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) GetItemCount() *wrapperspb.Int64Value { 2935 if x != nil { 2936 return x.ItemCount 2937 } 2938 return nil 2939} 2940 2941// A single row in the confusion matrix. 2942type Model_MultiClassClassificationMetrics_ConfusionMatrix_Row struct { 2943 state protoimpl.MessageState 2944 sizeCache protoimpl.SizeCache 2945 unknownFields protoimpl.UnknownFields 2946 2947 // The original label of this row. 2948 ActualLabel string `protobuf:"bytes,1,opt,name=actual_label,json=actualLabel,proto3" json:"actual_label,omitempty"` 2949 // Info describing predicted label distribution. 2950 Entries []*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"` 2951} 2952 2953func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) Reset() { 2954 *x = Model_MultiClassClassificationMetrics_ConfusionMatrix_Row{} 2955 if protoimpl.UnsafeEnabled { 2956 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[25] 2957 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2958 ms.StoreMessageInfo(mi) 2959 } 2960} 2961 2962func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) String() string { 2963 return protoimpl.X.MessageStringOf(x) 2964} 2965 2966func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) ProtoMessage() {} 2967 2968func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) ProtoReflect() protoreflect.Message { 2969 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[25] 2970 if protoimpl.UnsafeEnabled && x != nil { 2971 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2972 if ms.LoadMessageInfo() == nil { 2973 ms.StoreMessageInfo(mi) 2974 } 2975 return ms 2976 } 2977 return mi.MessageOf(x) 2978} 2979 2980// Deprecated: Use Model_MultiClassClassificationMetrics_ConfusionMatrix_Row.ProtoReflect.Descriptor instead. 2981func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) Descriptor() ([]byte, []int) { 2982 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0, 1} 2983} 2984 2985func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) GetActualLabel() string { 2986 if x != nil { 2987 return x.ActualLabel 2988 } 2989 return "" 2990} 2991 2992func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) GetEntries() []*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry { 2993 if x != nil { 2994 return x.Entries 2995 } 2996 return nil 2997} 2998 2999// Message containing the information about one cluster. 3000type Model_ClusteringMetrics_Cluster struct { 3001 state protoimpl.MessageState 3002 sizeCache protoimpl.SizeCache 3003 unknownFields protoimpl.UnknownFields 3004 3005 // Centroid id. 3006 CentroidId int64 `protobuf:"varint,1,opt,name=centroid_id,json=centroidId,proto3" json:"centroid_id,omitempty"` 3007 // Values of highly variant features for this cluster. 3008 FeatureValues []*Model_ClusteringMetrics_Cluster_FeatureValue `protobuf:"bytes,2,rep,name=feature_values,json=featureValues,proto3" json:"feature_values,omitempty"` 3009 // Count of training data rows that were assigned to this cluster. 3010 Count *wrapperspb.Int64Value `protobuf:"bytes,3,opt,name=count,proto3" json:"count,omitempty"` 3011} 3012 3013func (x *Model_ClusteringMetrics_Cluster) Reset() { 3014 *x = Model_ClusteringMetrics_Cluster{} 3015 if protoimpl.UnsafeEnabled { 3016 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[26] 3017 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3018 ms.StoreMessageInfo(mi) 3019 } 3020} 3021 3022func (x *Model_ClusteringMetrics_Cluster) String() string { 3023 return protoimpl.X.MessageStringOf(x) 3024} 3025 3026func (*Model_ClusteringMetrics_Cluster) ProtoMessage() {} 3027 3028func (x *Model_ClusteringMetrics_Cluster) ProtoReflect() protoreflect.Message { 3029 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[26] 3030 if protoimpl.UnsafeEnabled && x != nil { 3031 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3032 if ms.LoadMessageInfo() == nil { 3033 ms.StoreMessageInfo(mi) 3034 } 3035 return ms 3036 } 3037 return mi.MessageOf(x) 3038} 3039 3040// Deprecated: Use Model_ClusteringMetrics_Cluster.ProtoReflect.Descriptor instead. 3041func (*Model_ClusteringMetrics_Cluster) Descriptor() ([]byte, []int) { 3042 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0} 3043} 3044 3045func (x *Model_ClusteringMetrics_Cluster) GetCentroidId() int64 { 3046 if x != nil { 3047 return x.CentroidId 3048 } 3049 return 0 3050} 3051 3052func (x *Model_ClusteringMetrics_Cluster) GetFeatureValues() []*Model_ClusteringMetrics_Cluster_FeatureValue { 3053 if x != nil { 3054 return x.FeatureValues 3055 } 3056 return nil 3057} 3058 3059func (x *Model_ClusteringMetrics_Cluster) GetCount() *wrapperspb.Int64Value { 3060 if x != nil { 3061 return x.Count 3062 } 3063 return nil 3064} 3065 3066// Representative value of a single feature within the cluster. 3067type Model_ClusteringMetrics_Cluster_FeatureValue struct { 3068 state protoimpl.MessageState 3069 sizeCache protoimpl.SizeCache 3070 unknownFields protoimpl.UnknownFields 3071 3072 // The feature column name. 3073 FeatureColumn string `protobuf:"bytes,1,opt,name=feature_column,json=featureColumn,proto3" json:"feature_column,omitempty"` 3074 // Types that are assignable to Value: 3075 // *Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue 3076 // *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_ 3077 Value isModel_ClusteringMetrics_Cluster_FeatureValue_Value `protobuf_oneof:"value"` 3078} 3079 3080func (x *Model_ClusteringMetrics_Cluster_FeatureValue) Reset() { 3081 *x = Model_ClusteringMetrics_Cluster_FeatureValue{} 3082 if protoimpl.UnsafeEnabled { 3083 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[27] 3084 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3085 ms.StoreMessageInfo(mi) 3086 } 3087} 3088 3089func (x *Model_ClusteringMetrics_Cluster_FeatureValue) String() string { 3090 return protoimpl.X.MessageStringOf(x) 3091} 3092 3093func (*Model_ClusteringMetrics_Cluster_FeatureValue) ProtoMessage() {} 3094 3095func (x *Model_ClusteringMetrics_Cluster_FeatureValue) ProtoReflect() protoreflect.Message { 3096 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[27] 3097 if protoimpl.UnsafeEnabled && x != nil { 3098 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3099 if ms.LoadMessageInfo() == nil { 3100 ms.StoreMessageInfo(mi) 3101 } 3102 return ms 3103 } 3104 return mi.MessageOf(x) 3105} 3106 3107// Deprecated: Use Model_ClusteringMetrics_Cluster_FeatureValue.ProtoReflect.Descriptor instead. 3108func (*Model_ClusteringMetrics_Cluster_FeatureValue) Descriptor() ([]byte, []int) { 3109 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0, 0} 3110} 3111 3112func (x *Model_ClusteringMetrics_Cluster_FeatureValue) GetFeatureColumn() string { 3113 if x != nil { 3114 return x.FeatureColumn 3115 } 3116 return "" 3117} 3118 3119func (m *Model_ClusteringMetrics_Cluster_FeatureValue) GetValue() isModel_ClusteringMetrics_Cluster_FeatureValue_Value { 3120 if m != nil { 3121 return m.Value 3122 } 3123 return nil 3124} 3125 3126func (x *Model_ClusteringMetrics_Cluster_FeatureValue) GetNumericalValue() *wrapperspb.DoubleValue { 3127 if x, ok := x.GetValue().(*Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue); ok { 3128 return x.NumericalValue 3129 } 3130 return nil 3131} 3132 3133func (x *Model_ClusteringMetrics_Cluster_FeatureValue) GetCategoricalValue() *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue { 3134 if x, ok := x.GetValue().(*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_); ok { 3135 return x.CategoricalValue 3136 } 3137 return nil 3138} 3139 3140type isModel_ClusteringMetrics_Cluster_FeatureValue_Value interface { 3141 isModel_ClusteringMetrics_Cluster_FeatureValue_Value() 3142} 3143 3144type Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue struct { 3145 // The numerical feature value. This is the centroid value for this 3146 // feature. 3147 NumericalValue *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=numerical_value,json=numericalValue,proto3,oneof"` 3148} 3149 3150type Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_ struct { 3151 // The categorical feature value. 3152 CategoricalValue *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue `protobuf:"bytes,3,opt,name=categorical_value,json=categoricalValue,proto3,oneof"` 3153} 3154 3155func (*Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue) isModel_ClusteringMetrics_Cluster_FeatureValue_Value() { 3156} 3157 3158func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_) isModel_ClusteringMetrics_Cluster_FeatureValue_Value() { 3159} 3160 3161// Representative value of a categorical feature. 3162type Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue struct { 3163 state protoimpl.MessageState 3164 sizeCache protoimpl.SizeCache 3165 unknownFields protoimpl.UnknownFields 3166 3167 // Counts of all categories for the categorical feature. If there are 3168 // more than ten categories, we return top ten (by count) and return 3169 // one more CategoryCount with category "_OTHER_" and count as 3170 // aggregate counts of remaining categories. 3171 CategoryCounts []*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount `protobuf:"bytes,1,rep,name=category_counts,json=categoryCounts,proto3" json:"category_counts,omitempty"` 3172} 3173 3174func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) Reset() { 3175 *x = Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue{} 3176 if protoimpl.UnsafeEnabled { 3177 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[28] 3178 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3179 ms.StoreMessageInfo(mi) 3180 } 3181} 3182 3183func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) String() string { 3184 return protoimpl.X.MessageStringOf(x) 3185} 3186 3187func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) ProtoMessage() {} 3188 3189func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) ProtoReflect() protoreflect.Message { 3190 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[28] 3191 if protoimpl.UnsafeEnabled && x != nil { 3192 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3193 if ms.LoadMessageInfo() == nil { 3194 ms.StoreMessageInfo(mi) 3195 } 3196 return ms 3197 } 3198 return mi.MessageOf(x) 3199} 3200 3201// Deprecated: Use Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue.ProtoReflect.Descriptor instead. 3202func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) Descriptor() ([]byte, []int) { 3203 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0, 0, 0} 3204} 3205 3206func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) GetCategoryCounts() []*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount { 3207 if x != nil { 3208 return x.CategoryCounts 3209 } 3210 return nil 3211} 3212 3213// Represents the count of a single category within the cluster. 3214type Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount struct { 3215 state protoimpl.MessageState 3216 sizeCache protoimpl.SizeCache 3217 unknownFields protoimpl.UnknownFields 3218 3219 // The name of category. 3220 Category string `protobuf:"bytes,1,opt,name=category,proto3" json:"category,omitempty"` 3221 // The count of training samples matching the category within the 3222 // cluster. 3223 Count *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=count,proto3" json:"count,omitempty"` 3224} 3225 3226func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) Reset() { 3227 *x = Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount{} 3228 if protoimpl.UnsafeEnabled { 3229 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[29] 3230 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3231 ms.StoreMessageInfo(mi) 3232 } 3233} 3234 3235func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) String() string { 3236 return protoimpl.X.MessageStringOf(x) 3237} 3238 3239func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) ProtoMessage() {} 3240 3241func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) ProtoReflect() protoreflect.Message { 3242 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[29] 3243 if protoimpl.UnsafeEnabled && x != nil { 3244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3245 if ms.LoadMessageInfo() == nil { 3246 ms.StoreMessageInfo(mi) 3247 } 3248 return ms 3249 } 3250 return mi.MessageOf(x) 3251} 3252 3253// Deprecated: Use Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount.ProtoReflect.Descriptor instead. 3254func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) Descriptor() ([]byte, []int) { 3255 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0, 0, 0, 0} 3256} 3257 3258func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) GetCategory() string { 3259 if x != nil { 3260 return x.Category 3261 } 3262 return "" 3263} 3264 3265func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) GetCount() *wrapperspb.Int64Value { 3266 if x != nil { 3267 return x.Count 3268 } 3269 return nil 3270} 3271 3272// Model evaluation metrics for a single ARIMA forecasting model. 3273type Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics struct { 3274 state protoimpl.MessageState 3275 sizeCache protoimpl.SizeCache 3276 unknownFields protoimpl.UnknownFields 3277 3278 // Non-seasonal order. 3279 NonSeasonalOrder *Model_ArimaOrder `protobuf:"bytes,1,opt,name=non_seasonal_order,json=nonSeasonalOrder,proto3" json:"non_seasonal_order,omitempty"` 3280 // Arima fitting metrics. 3281 ArimaFittingMetrics *Model_ArimaFittingMetrics `protobuf:"bytes,2,opt,name=arima_fitting_metrics,json=arimaFittingMetrics,proto3" json:"arima_fitting_metrics,omitempty"` 3282 // Is arima model fitted with drift or not. It is always false when d 3283 // is not 1. 3284 HasDrift bool `protobuf:"varint,3,opt,name=has_drift,json=hasDrift,proto3" json:"has_drift,omitempty"` 3285 // The time_series_id value for this time series. It will be one of 3286 // the unique values from the time_series_id_column specified during 3287 // ARIMA model training. Only present when time_series_id_column 3288 // training option was used. 3289 TimeSeriesId string `protobuf:"bytes,4,opt,name=time_series_id,json=timeSeriesId,proto3" json:"time_series_id,omitempty"` 3290 // The tuple of time_series_ids identifying this time series. It will 3291 // be one of the unique tuples of values present in the 3292 // time_series_id_columns specified during ARIMA model training. Only 3293 // present when time_series_id_columns training option was used and 3294 // the order of values here are same as the order of 3295 // time_series_id_columns. 3296 TimeSeriesIds []string `protobuf:"bytes,9,rep,name=time_series_ids,json=timeSeriesIds,proto3" json:"time_series_ids,omitempty"` 3297 // Seasonal periods. Repeated because multiple periods are supported 3298 // for one time series. 3299 SeasonalPeriods []Model_SeasonalPeriod_SeasonalPeriodType `protobuf:"varint,5,rep,packed,name=seasonal_periods,json=seasonalPeriods,proto3,enum=google.cloud.bigquery.v2.Model_SeasonalPeriod_SeasonalPeriodType" json:"seasonal_periods,omitempty"` 3300 // If true, holiday_effect is a part of time series decomposition result. 3301 HasHolidayEffect *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=has_holiday_effect,json=hasHolidayEffect,proto3" json:"has_holiday_effect,omitempty"` 3302 // If true, spikes_and_dips is a part of time series decomposition result. 3303 HasSpikesAndDips *wrapperspb.BoolValue `protobuf:"bytes,7,opt,name=has_spikes_and_dips,json=hasSpikesAndDips,proto3" json:"has_spikes_and_dips,omitempty"` 3304 // If true, step_changes is a part of time series decomposition result. 3305 HasStepChanges *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=has_step_changes,json=hasStepChanges,proto3" json:"has_step_changes,omitempty"` 3306} 3307 3308func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) Reset() { 3309 *x = Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics{} 3310 if protoimpl.UnsafeEnabled { 3311 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[30] 3312 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3313 ms.StoreMessageInfo(mi) 3314 } 3315} 3316 3317func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) String() string { 3318 return protoimpl.X.MessageStringOf(x) 3319} 3320 3321func (*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) ProtoMessage() {} 3322 3323func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) ProtoReflect() protoreflect.Message { 3324 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[30] 3325 if protoimpl.UnsafeEnabled && x != nil { 3326 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3327 if ms.LoadMessageInfo() == nil { 3328 ms.StoreMessageInfo(mi) 3329 } 3330 return ms 3331 } 3332 return mi.MessageOf(x) 3333} 3334 3335// Deprecated: Use Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics.ProtoReflect.Descriptor instead. 3336func (*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) Descriptor() ([]byte, []int) { 3337 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 8, 0} 3338} 3339 3340func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetNonSeasonalOrder() *Model_ArimaOrder { 3341 if x != nil { 3342 return x.NonSeasonalOrder 3343 } 3344 return nil 3345} 3346 3347func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetArimaFittingMetrics() *Model_ArimaFittingMetrics { 3348 if x != nil { 3349 return x.ArimaFittingMetrics 3350 } 3351 return nil 3352} 3353 3354func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasDrift() bool { 3355 if x != nil { 3356 return x.HasDrift 3357 } 3358 return false 3359} 3360 3361func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetTimeSeriesId() string { 3362 if x != nil { 3363 return x.TimeSeriesId 3364 } 3365 return "" 3366} 3367 3368func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetTimeSeriesIds() []string { 3369 if x != nil { 3370 return x.TimeSeriesIds 3371 } 3372 return nil 3373} 3374 3375func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType { 3376 if x != nil { 3377 return x.SeasonalPeriods 3378 } 3379 return nil 3380} 3381 3382func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasHolidayEffect() *wrapperspb.BoolValue { 3383 if x != nil { 3384 return x.HasHolidayEffect 3385 } 3386 return nil 3387} 3388 3389func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasSpikesAndDips() *wrapperspb.BoolValue { 3390 if x != nil { 3391 return x.HasSpikesAndDips 3392 } 3393 return nil 3394} 3395 3396func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasStepChanges() *wrapperspb.BoolValue { 3397 if x != nil { 3398 return x.HasStepChanges 3399 } 3400 return nil 3401} 3402 3403// Explanation for a single feature. 3404type Model_GlobalExplanation_Explanation struct { 3405 state protoimpl.MessageState 3406 sizeCache protoimpl.SizeCache 3407 unknownFields protoimpl.UnknownFields 3408 3409 // Full name of the feature. For non-numerical features, will be 3410 // formatted like <column_name>.<encoded_feature_name>. Overall size of 3411 // feature name will always be truncated to first 120 characters. 3412 FeatureName string `protobuf:"bytes,1,opt,name=feature_name,json=featureName,proto3" json:"feature_name,omitempty"` 3413 // Attribution of feature. 3414 Attribution *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=attribution,proto3" json:"attribution,omitempty"` 3415} 3416 3417func (x *Model_GlobalExplanation_Explanation) Reset() { 3418 *x = Model_GlobalExplanation_Explanation{} 3419 if protoimpl.UnsafeEnabled { 3420 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[31] 3421 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3422 ms.StoreMessageInfo(mi) 3423 } 3424} 3425 3426func (x *Model_GlobalExplanation_Explanation) String() string { 3427 return protoimpl.X.MessageStringOf(x) 3428} 3429 3430func (*Model_GlobalExplanation_Explanation) ProtoMessage() {} 3431 3432func (x *Model_GlobalExplanation_Explanation) ProtoReflect() protoreflect.Message { 3433 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[31] 3434 if protoimpl.UnsafeEnabled && x != nil { 3435 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3436 if ms.LoadMessageInfo() == nil { 3437 ms.StoreMessageInfo(mi) 3438 } 3439 return ms 3440 } 3441 return mi.MessageOf(x) 3442} 3443 3444// Deprecated: Use Model_GlobalExplanation_Explanation.ProtoReflect.Descriptor instead. 3445func (*Model_GlobalExplanation_Explanation) Descriptor() ([]byte, []int) { 3446 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 13, 0} 3447} 3448 3449func (x *Model_GlobalExplanation_Explanation) GetFeatureName() string { 3450 if x != nil { 3451 return x.FeatureName 3452 } 3453 return "" 3454} 3455 3456func (x *Model_GlobalExplanation_Explanation) GetAttribution() *wrapperspb.DoubleValue { 3457 if x != nil { 3458 return x.Attribution 3459 } 3460 return nil 3461} 3462 3463// Options used in model training. 3464type Model_TrainingRun_TrainingOptions struct { 3465 state protoimpl.MessageState 3466 sizeCache protoimpl.SizeCache 3467 unknownFields protoimpl.UnknownFields 3468 3469 // The maximum number of iterations in training. Used only for iterative 3470 // training algorithms. 3471 MaxIterations int64 `protobuf:"varint,1,opt,name=max_iterations,json=maxIterations,proto3" json:"max_iterations,omitempty"` 3472 // Type of loss function used during training run. 3473 LossType Model_LossType `protobuf:"varint,2,opt,name=loss_type,json=lossType,proto3,enum=google.cloud.bigquery.v2.Model_LossType" json:"loss_type,omitempty"` 3474 // Learning rate in training. Used only for iterative training algorithms. 3475 LearnRate float64 `protobuf:"fixed64,3,opt,name=learn_rate,json=learnRate,proto3" json:"learn_rate,omitempty"` 3476 // L1 regularization coefficient. 3477 L1Regularization *wrapperspb.DoubleValue `protobuf:"bytes,4,opt,name=l1_regularization,json=l1Regularization,proto3" json:"l1_regularization,omitempty"` 3478 // L2 regularization coefficient. 3479 L2Regularization *wrapperspb.DoubleValue `protobuf:"bytes,5,opt,name=l2_regularization,json=l2Regularization,proto3" json:"l2_regularization,omitempty"` 3480 // When early_stop is true, stops training when accuracy improvement is 3481 // less than 'min_relative_progress'. Used only for iterative training 3482 // algorithms. 3483 MinRelativeProgress *wrapperspb.DoubleValue `protobuf:"bytes,6,opt,name=min_relative_progress,json=minRelativeProgress,proto3" json:"min_relative_progress,omitempty"` 3484 // Whether to train a model from the last checkpoint. 3485 WarmStart *wrapperspb.BoolValue `protobuf:"bytes,7,opt,name=warm_start,json=warmStart,proto3" json:"warm_start,omitempty"` 3486 // Whether to stop early when the loss doesn't improve significantly 3487 // any more (compared to min_relative_progress). Used only for iterative 3488 // training algorithms. 3489 EarlyStop *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=early_stop,json=earlyStop,proto3" json:"early_stop,omitempty"` 3490 // Name of input label columns in training data. 3491 InputLabelColumns []string `protobuf:"bytes,9,rep,name=input_label_columns,json=inputLabelColumns,proto3" json:"input_label_columns,omitempty"` 3492 // The data split type for training and evaluation, e.g. RANDOM. 3493 DataSplitMethod Model_DataSplitMethod `protobuf:"varint,10,opt,name=data_split_method,json=dataSplitMethod,proto3,enum=google.cloud.bigquery.v2.Model_DataSplitMethod" json:"data_split_method,omitempty"` 3494 // The fraction of evaluation data over the whole input data. The rest 3495 // of data will be used as training data. The format should be double. 3496 // Accurate to two decimal places. 3497 // Default value is 0.2. 3498 DataSplitEvalFraction float64 `protobuf:"fixed64,11,opt,name=data_split_eval_fraction,json=dataSplitEvalFraction,proto3" json:"data_split_eval_fraction,omitempty"` 3499 // The column to split data with. This column won't be used as a 3500 // feature. 3501 // 1. When data_split_method is CUSTOM, the corresponding column should 3502 // be boolean. The rows with true value tag are eval data, and the false 3503 // are training data. 3504 // 2. When data_split_method is SEQ, the first DATA_SPLIT_EVAL_FRACTION 3505 // rows (from smallest to largest) in the corresponding column are used 3506 // as training data, and the rest are eval data. It respects the order 3507 // in Orderable data types: 3508 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#data-type-properties 3509 DataSplitColumn string `protobuf:"bytes,12,opt,name=data_split_column,json=dataSplitColumn,proto3" json:"data_split_column,omitempty"` 3510 // The strategy to determine learn rate for the current iteration. 3511 LearnRateStrategy Model_LearnRateStrategy `protobuf:"varint,13,opt,name=learn_rate_strategy,json=learnRateStrategy,proto3,enum=google.cloud.bigquery.v2.Model_LearnRateStrategy" json:"learn_rate_strategy,omitempty"` 3512 // Specifies the initial learning rate for the line search learn rate 3513 // strategy. 3514 InitialLearnRate float64 `protobuf:"fixed64,16,opt,name=initial_learn_rate,json=initialLearnRate,proto3" json:"initial_learn_rate,omitempty"` 3515 // Weights associated with each label class, for rebalancing the 3516 // training data. Only applicable for classification models. 3517 LabelClassWeights map[string]float64 `protobuf:"bytes,17,rep,name=label_class_weights,json=labelClassWeights,proto3" json:"label_class_weights,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"` 3518 // User column specified for matrix factorization models. 3519 UserColumn string `protobuf:"bytes,18,opt,name=user_column,json=userColumn,proto3" json:"user_column,omitempty"` 3520 // Item column specified for matrix factorization models. 3521 ItemColumn string `protobuf:"bytes,19,opt,name=item_column,json=itemColumn,proto3" json:"item_column,omitempty"` 3522 // Distance type for clustering models. 3523 DistanceType Model_DistanceType `protobuf:"varint,20,opt,name=distance_type,json=distanceType,proto3,enum=google.cloud.bigquery.v2.Model_DistanceType" json:"distance_type,omitempty"` 3524 // Number of clusters for clustering models. 3525 NumClusters int64 `protobuf:"varint,21,opt,name=num_clusters,json=numClusters,proto3" json:"num_clusters,omitempty"` 3526 // Google Cloud Storage URI from which the model was imported. Only 3527 // applicable for imported models. 3528 ModelUri string `protobuf:"bytes,22,opt,name=model_uri,json=modelUri,proto3" json:"model_uri,omitempty"` 3529 // Optimization strategy for training linear regression models. 3530 OptimizationStrategy Model_OptimizationStrategy `protobuf:"varint,23,opt,name=optimization_strategy,json=optimizationStrategy,proto3,enum=google.cloud.bigquery.v2.Model_OptimizationStrategy" json:"optimization_strategy,omitempty"` 3531 // Hidden units for dnn models. 3532 HiddenUnits []int64 `protobuf:"varint,24,rep,packed,name=hidden_units,json=hiddenUnits,proto3" json:"hidden_units,omitempty"` 3533 // Batch size for dnn models. 3534 BatchSize int64 `protobuf:"varint,25,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` 3535 // Dropout probability for dnn models. 3536 Dropout *wrapperspb.DoubleValue `protobuf:"bytes,26,opt,name=dropout,proto3" json:"dropout,omitempty"` 3537 // Maximum depth of a tree for boosted tree models. 3538 MaxTreeDepth int64 `protobuf:"varint,27,opt,name=max_tree_depth,json=maxTreeDepth,proto3" json:"max_tree_depth,omitempty"` 3539 // Subsample fraction of the training data to grow tree to prevent 3540 // overfitting for boosted tree models. 3541 Subsample float64 `protobuf:"fixed64,28,opt,name=subsample,proto3" json:"subsample,omitempty"` 3542 // Minimum split loss for boosted tree models. 3543 MinSplitLoss *wrapperspb.DoubleValue `protobuf:"bytes,29,opt,name=min_split_loss,json=minSplitLoss,proto3" json:"min_split_loss,omitempty"` 3544 // Num factors specified for matrix factorization models. 3545 NumFactors int64 `protobuf:"varint,30,opt,name=num_factors,json=numFactors,proto3" json:"num_factors,omitempty"` 3546 // Feedback type that specifies which algorithm to run for matrix 3547 // factorization. 3548 FeedbackType Model_FeedbackType `protobuf:"varint,31,opt,name=feedback_type,json=feedbackType,proto3,enum=google.cloud.bigquery.v2.Model_FeedbackType" json:"feedback_type,omitempty"` 3549 // Hyperparameter for matrix factoration when implicit feedback type is 3550 // specified. 3551 WalsAlpha *wrapperspb.DoubleValue `protobuf:"bytes,32,opt,name=wals_alpha,json=walsAlpha,proto3" json:"wals_alpha,omitempty"` 3552 // The method used to initialize the centroids for kmeans algorithm. 3553 KmeansInitializationMethod Model_KmeansEnums_KmeansInitializationMethod `protobuf:"varint,33,opt,name=kmeans_initialization_method,json=kmeansInitializationMethod,proto3,enum=google.cloud.bigquery.v2.Model_KmeansEnums_KmeansInitializationMethod" json:"kmeans_initialization_method,omitempty"` 3554 // The column used to provide the initial centroids for kmeans algorithm 3555 // when kmeans_initialization_method is CUSTOM. 3556 KmeansInitializationColumn string `protobuf:"bytes,34,opt,name=kmeans_initialization_column,json=kmeansInitializationColumn,proto3" json:"kmeans_initialization_column,omitempty"` 3557 // Column to be designated as time series timestamp for ARIMA model. 3558 TimeSeriesTimestampColumn string `protobuf:"bytes,35,opt,name=time_series_timestamp_column,json=timeSeriesTimestampColumn,proto3" json:"time_series_timestamp_column,omitempty"` 3559 // Column to be designated as time series data for ARIMA model. 3560 TimeSeriesDataColumn string `protobuf:"bytes,36,opt,name=time_series_data_column,json=timeSeriesDataColumn,proto3" json:"time_series_data_column,omitempty"` 3561 // Whether to enable auto ARIMA or not. 3562 AutoArima bool `protobuf:"varint,37,opt,name=auto_arima,json=autoArima,proto3" json:"auto_arima,omitempty"` 3563 // A specification of the non-seasonal part of the ARIMA model: the three 3564 // components (p, d, q) are the AR order, the degree of differencing, and 3565 // the MA order. 3566 NonSeasonalOrder *Model_ArimaOrder `protobuf:"bytes,38,opt,name=non_seasonal_order,json=nonSeasonalOrder,proto3" json:"non_seasonal_order,omitempty"` 3567 // The data frequency of a time series. 3568 DataFrequency Model_DataFrequency `protobuf:"varint,39,opt,name=data_frequency,json=dataFrequency,proto3,enum=google.cloud.bigquery.v2.Model_DataFrequency" json:"data_frequency,omitempty"` 3569 // Include drift when fitting an ARIMA model. 3570 IncludeDrift bool `protobuf:"varint,41,opt,name=include_drift,json=includeDrift,proto3" json:"include_drift,omitempty"` 3571 // The geographical region based on which the holidays are considered in 3572 // time series modeling. If a valid value is specified, then holiday 3573 // effects modeling is enabled. 3574 HolidayRegion Model_HolidayRegion `protobuf:"varint,42,opt,name=holiday_region,json=holidayRegion,proto3,enum=google.cloud.bigquery.v2.Model_HolidayRegion" json:"holiday_region,omitempty"` 3575 // The time series id column that was used during ARIMA model training. 3576 TimeSeriesIdColumn string `protobuf:"bytes,43,opt,name=time_series_id_column,json=timeSeriesIdColumn,proto3" json:"time_series_id_column,omitempty"` 3577 // The time series id columns that were used during ARIMA model training. 3578 TimeSeriesIdColumns []string `protobuf:"bytes,51,rep,name=time_series_id_columns,json=timeSeriesIdColumns,proto3" json:"time_series_id_columns,omitempty"` 3579 // The number of periods ahead that need to be forecasted. 3580 Horizon int64 `protobuf:"varint,44,opt,name=horizon,proto3" json:"horizon,omitempty"` 3581 // Whether to preserve the input structs in output feature names. 3582 // Suppose there is a struct A with field b. 3583 // When false (default), the output feature name is A_b. 3584 // When true, the output feature name is A.b. 3585 PreserveInputStructs bool `protobuf:"varint,45,opt,name=preserve_input_structs,json=preserveInputStructs,proto3" json:"preserve_input_structs,omitempty"` 3586 // The max value of non-seasonal p and q. 3587 AutoArimaMaxOrder int64 `protobuf:"varint,46,opt,name=auto_arima_max_order,json=autoArimaMaxOrder,proto3" json:"auto_arima_max_order,omitempty"` 3588 // If true, perform decompose time series and save the results. 3589 DecomposeTimeSeries *wrapperspb.BoolValue `protobuf:"bytes,50,opt,name=decompose_time_series,json=decomposeTimeSeries,proto3" json:"decompose_time_series,omitempty"` 3590 // If true, clean spikes and dips in the input time series. 3591 CleanSpikesAndDips *wrapperspb.BoolValue `protobuf:"bytes,52,opt,name=clean_spikes_and_dips,json=cleanSpikesAndDips,proto3" json:"clean_spikes_and_dips,omitempty"` 3592 // If true, detect step changes and make data adjustment in the input time 3593 // series. 3594 AdjustStepChanges *wrapperspb.BoolValue `protobuf:"bytes,53,opt,name=adjust_step_changes,json=adjustStepChanges,proto3" json:"adjust_step_changes,omitempty"` 3595} 3596 3597func (x *Model_TrainingRun_TrainingOptions) Reset() { 3598 *x = Model_TrainingRun_TrainingOptions{} 3599 if protoimpl.UnsafeEnabled { 3600 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[32] 3601 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3602 ms.StoreMessageInfo(mi) 3603 } 3604} 3605 3606func (x *Model_TrainingRun_TrainingOptions) String() string { 3607 return protoimpl.X.MessageStringOf(x) 3608} 3609 3610func (*Model_TrainingRun_TrainingOptions) ProtoMessage() {} 3611 3612func (x *Model_TrainingRun_TrainingOptions) ProtoReflect() protoreflect.Message { 3613 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[32] 3614 if protoimpl.UnsafeEnabled && x != nil { 3615 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3616 if ms.LoadMessageInfo() == nil { 3617 ms.StoreMessageInfo(mi) 3618 } 3619 return ms 3620 } 3621 return mi.MessageOf(x) 3622} 3623 3624// Deprecated: Use Model_TrainingRun_TrainingOptions.ProtoReflect.Descriptor instead. 3625func (*Model_TrainingRun_TrainingOptions) Descriptor() ([]byte, []int) { 3626 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 0} 3627} 3628 3629func (x *Model_TrainingRun_TrainingOptions) GetMaxIterations() int64 { 3630 if x != nil { 3631 return x.MaxIterations 3632 } 3633 return 0 3634} 3635 3636func (x *Model_TrainingRun_TrainingOptions) GetLossType() Model_LossType { 3637 if x != nil { 3638 return x.LossType 3639 } 3640 return Model_LOSS_TYPE_UNSPECIFIED 3641} 3642 3643func (x *Model_TrainingRun_TrainingOptions) GetLearnRate() float64 { 3644 if x != nil { 3645 return x.LearnRate 3646 } 3647 return 0 3648} 3649 3650func (x *Model_TrainingRun_TrainingOptions) GetL1Regularization() *wrapperspb.DoubleValue { 3651 if x != nil { 3652 return x.L1Regularization 3653 } 3654 return nil 3655} 3656 3657func (x *Model_TrainingRun_TrainingOptions) GetL2Regularization() *wrapperspb.DoubleValue { 3658 if x != nil { 3659 return x.L2Regularization 3660 } 3661 return nil 3662} 3663 3664func (x *Model_TrainingRun_TrainingOptions) GetMinRelativeProgress() *wrapperspb.DoubleValue { 3665 if x != nil { 3666 return x.MinRelativeProgress 3667 } 3668 return nil 3669} 3670 3671func (x *Model_TrainingRun_TrainingOptions) GetWarmStart() *wrapperspb.BoolValue { 3672 if x != nil { 3673 return x.WarmStart 3674 } 3675 return nil 3676} 3677 3678func (x *Model_TrainingRun_TrainingOptions) GetEarlyStop() *wrapperspb.BoolValue { 3679 if x != nil { 3680 return x.EarlyStop 3681 } 3682 return nil 3683} 3684 3685func (x *Model_TrainingRun_TrainingOptions) GetInputLabelColumns() []string { 3686 if x != nil { 3687 return x.InputLabelColumns 3688 } 3689 return nil 3690} 3691 3692func (x *Model_TrainingRun_TrainingOptions) GetDataSplitMethod() Model_DataSplitMethod { 3693 if x != nil { 3694 return x.DataSplitMethod 3695 } 3696 return Model_DATA_SPLIT_METHOD_UNSPECIFIED 3697} 3698 3699func (x *Model_TrainingRun_TrainingOptions) GetDataSplitEvalFraction() float64 { 3700 if x != nil { 3701 return x.DataSplitEvalFraction 3702 } 3703 return 0 3704} 3705 3706func (x *Model_TrainingRun_TrainingOptions) GetDataSplitColumn() string { 3707 if x != nil { 3708 return x.DataSplitColumn 3709 } 3710 return "" 3711} 3712 3713func (x *Model_TrainingRun_TrainingOptions) GetLearnRateStrategy() Model_LearnRateStrategy { 3714 if x != nil { 3715 return x.LearnRateStrategy 3716 } 3717 return Model_LEARN_RATE_STRATEGY_UNSPECIFIED 3718} 3719 3720func (x *Model_TrainingRun_TrainingOptions) GetInitialLearnRate() float64 { 3721 if x != nil { 3722 return x.InitialLearnRate 3723 } 3724 return 0 3725} 3726 3727func (x *Model_TrainingRun_TrainingOptions) GetLabelClassWeights() map[string]float64 { 3728 if x != nil { 3729 return x.LabelClassWeights 3730 } 3731 return nil 3732} 3733 3734func (x *Model_TrainingRun_TrainingOptions) GetUserColumn() string { 3735 if x != nil { 3736 return x.UserColumn 3737 } 3738 return "" 3739} 3740 3741func (x *Model_TrainingRun_TrainingOptions) GetItemColumn() string { 3742 if x != nil { 3743 return x.ItemColumn 3744 } 3745 return "" 3746} 3747 3748func (x *Model_TrainingRun_TrainingOptions) GetDistanceType() Model_DistanceType { 3749 if x != nil { 3750 return x.DistanceType 3751 } 3752 return Model_DISTANCE_TYPE_UNSPECIFIED 3753} 3754 3755func (x *Model_TrainingRun_TrainingOptions) GetNumClusters() int64 { 3756 if x != nil { 3757 return x.NumClusters 3758 } 3759 return 0 3760} 3761 3762func (x *Model_TrainingRun_TrainingOptions) GetModelUri() string { 3763 if x != nil { 3764 return x.ModelUri 3765 } 3766 return "" 3767} 3768 3769func (x *Model_TrainingRun_TrainingOptions) GetOptimizationStrategy() Model_OptimizationStrategy { 3770 if x != nil { 3771 return x.OptimizationStrategy 3772 } 3773 return Model_OPTIMIZATION_STRATEGY_UNSPECIFIED 3774} 3775 3776func (x *Model_TrainingRun_TrainingOptions) GetHiddenUnits() []int64 { 3777 if x != nil { 3778 return x.HiddenUnits 3779 } 3780 return nil 3781} 3782 3783func (x *Model_TrainingRun_TrainingOptions) GetBatchSize() int64 { 3784 if x != nil { 3785 return x.BatchSize 3786 } 3787 return 0 3788} 3789 3790func (x *Model_TrainingRun_TrainingOptions) GetDropout() *wrapperspb.DoubleValue { 3791 if x != nil { 3792 return x.Dropout 3793 } 3794 return nil 3795} 3796 3797func (x *Model_TrainingRun_TrainingOptions) GetMaxTreeDepth() int64 { 3798 if x != nil { 3799 return x.MaxTreeDepth 3800 } 3801 return 0 3802} 3803 3804func (x *Model_TrainingRun_TrainingOptions) GetSubsample() float64 { 3805 if x != nil { 3806 return x.Subsample 3807 } 3808 return 0 3809} 3810 3811func (x *Model_TrainingRun_TrainingOptions) GetMinSplitLoss() *wrapperspb.DoubleValue { 3812 if x != nil { 3813 return x.MinSplitLoss 3814 } 3815 return nil 3816} 3817 3818func (x *Model_TrainingRun_TrainingOptions) GetNumFactors() int64 { 3819 if x != nil { 3820 return x.NumFactors 3821 } 3822 return 0 3823} 3824 3825func (x *Model_TrainingRun_TrainingOptions) GetFeedbackType() Model_FeedbackType { 3826 if x != nil { 3827 return x.FeedbackType 3828 } 3829 return Model_FEEDBACK_TYPE_UNSPECIFIED 3830} 3831 3832func (x *Model_TrainingRun_TrainingOptions) GetWalsAlpha() *wrapperspb.DoubleValue { 3833 if x != nil { 3834 return x.WalsAlpha 3835 } 3836 return nil 3837} 3838 3839func (x *Model_TrainingRun_TrainingOptions) GetKmeansInitializationMethod() Model_KmeansEnums_KmeansInitializationMethod { 3840 if x != nil { 3841 return x.KmeansInitializationMethod 3842 } 3843 return Model_KmeansEnums_KMEANS_INITIALIZATION_METHOD_UNSPECIFIED 3844} 3845 3846func (x *Model_TrainingRun_TrainingOptions) GetKmeansInitializationColumn() string { 3847 if x != nil { 3848 return x.KmeansInitializationColumn 3849 } 3850 return "" 3851} 3852 3853func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesTimestampColumn() string { 3854 if x != nil { 3855 return x.TimeSeriesTimestampColumn 3856 } 3857 return "" 3858} 3859 3860func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesDataColumn() string { 3861 if x != nil { 3862 return x.TimeSeriesDataColumn 3863 } 3864 return "" 3865} 3866 3867func (x *Model_TrainingRun_TrainingOptions) GetAutoArima() bool { 3868 if x != nil { 3869 return x.AutoArima 3870 } 3871 return false 3872} 3873 3874func (x *Model_TrainingRun_TrainingOptions) GetNonSeasonalOrder() *Model_ArimaOrder { 3875 if x != nil { 3876 return x.NonSeasonalOrder 3877 } 3878 return nil 3879} 3880 3881func (x *Model_TrainingRun_TrainingOptions) GetDataFrequency() Model_DataFrequency { 3882 if x != nil { 3883 return x.DataFrequency 3884 } 3885 return Model_DATA_FREQUENCY_UNSPECIFIED 3886} 3887 3888func (x *Model_TrainingRun_TrainingOptions) GetIncludeDrift() bool { 3889 if x != nil { 3890 return x.IncludeDrift 3891 } 3892 return false 3893} 3894 3895func (x *Model_TrainingRun_TrainingOptions) GetHolidayRegion() Model_HolidayRegion { 3896 if x != nil { 3897 return x.HolidayRegion 3898 } 3899 return Model_HOLIDAY_REGION_UNSPECIFIED 3900} 3901 3902func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesIdColumn() string { 3903 if x != nil { 3904 return x.TimeSeriesIdColumn 3905 } 3906 return "" 3907} 3908 3909func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesIdColumns() []string { 3910 if x != nil { 3911 return x.TimeSeriesIdColumns 3912 } 3913 return nil 3914} 3915 3916func (x *Model_TrainingRun_TrainingOptions) GetHorizon() int64 { 3917 if x != nil { 3918 return x.Horizon 3919 } 3920 return 0 3921} 3922 3923func (x *Model_TrainingRun_TrainingOptions) GetPreserveInputStructs() bool { 3924 if x != nil { 3925 return x.PreserveInputStructs 3926 } 3927 return false 3928} 3929 3930func (x *Model_TrainingRun_TrainingOptions) GetAutoArimaMaxOrder() int64 { 3931 if x != nil { 3932 return x.AutoArimaMaxOrder 3933 } 3934 return 0 3935} 3936 3937func (x *Model_TrainingRun_TrainingOptions) GetDecomposeTimeSeries() *wrapperspb.BoolValue { 3938 if x != nil { 3939 return x.DecomposeTimeSeries 3940 } 3941 return nil 3942} 3943 3944func (x *Model_TrainingRun_TrainingOptions) GetCleanSpikesAndDips() *wrapperspb.BoolValue { 3945 if x != nil { 3946 return x.CleanSpikesAndDips 3947 } 3948 return nil 3949} 3950 3951func (x *Model_TrainingRun_TrainingOptions) GetAdjustStepChanges() *wrapperspb.BoolValue { 3952 if x != nil { 3953 return x.AdjustStepChanges 3954 } 3955 return nil 3956} 3957 3958// Information about a single iteration of the training run. 3959type Model_TrainingRun_IterationResult struct { 3960 state protoimpl.MessageState 3961 sizeCache protoimpl.SizeCache 3962 unknownFields protoimpl.UnknownFields 3963 3964 // Index of the iteration, 0 based. 3965 Index *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=index,proto3" json:"index,omitempty"` 3966 // Time taken to run the iteration in milliseconds. 3967 DurationMs *wrapperspb.Int64Value `protobuf:"bytes,4,opt,name=duration_ms,json=durationMs,proto3" json:"duration_ms,omitempty"` 3968 // Loss computed on the training data at the end of iteration. 3969 TrainingLoss *wrapperspb.DoubleValue `protobuf:"bytes,5,opt,name=training_loss,json=trainingLoss,proto3" json:"training_loss,omitempty"` 3970 // Loss computed on the eval data at the end of iteration. 3971 EvalLoss *wrapperspb.DoubleValue `protobuf:"bytes,6,opt,name=eval_loss,json=evalLoss,proto3" json:"eval_loss,omitempty"` 3972 // Learn rate used for this iteration. 3973 LearnRate float64 `protobuf:"fixed64,7,opt,name=learn_rate,json=learnRate,proto3" json:"learn_rate,omitempty"` 3974 // Information about top clusters for clustering models. 3975 ClusterInfos []*Model_TrainingRun_IterationResult_ClusterInfo `protobuf:"bytes,8,rep,name=cluster_infos,json=clusterInfos,proto3" json:"cluster_infos,omitempty"` 3976 ArimaResult *Model_TrainingRun_IterationResult_ArimaResult `protobuf:"bytes,9,opt,name=arima_result,json=arimaResult,proto3" json:"arima_result,omitempty"` 3977} 3978 3979func (x *Model_TrainingRun_IterationResult) Reset() { 3980 *x = Model_TrainingRun_IterationResult{} 3981 if protoimpl.UnsafeEnabled { 3982 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[33] 3983 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3984 ms.StoreMessageInfo(mi) 3985 } 3986} 3987 3988func (x *Model_TrainingRun_IterationResult) String() string { 3989 return protoimpl.X.MessageStringOf(x) 3990} 3991 3992func (*Model_TrainingRun_IterationResult) ProtoMessage() {} 3993 3994func (x *Model_TrainingRun_IterationResult) ProtoReflect() protoreflect.Message { 3995 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[33] 3996 if protoimpl.UnsafeEnabled && x != nil { 3997 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3998 if ms.LoadMessageInfo() == nil { 3999 ms.StoreMessageInfo(mi) 4000 } 4001 return ms 4002 } 4003 return mi.MessageOf(x) 4004} 4005 4006// Deprecated: Use Model_TrainingRun_IterationResult.ProtoReflect.Descriptor instead. 4007func (*Model_TrainingRun_IterationResult) Descriptor() ([]byte, []int) { 4008 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1} 4009} 4010 4011func (x *Model_TrainingRun_IterationResult) GetIndex() *wrapperspb.Int32Value { 4012 if x != nil { 4013 return x.Index 4014 } 4015 return nil 4016} 4017 4018func (x *Model_TrainingRun_IterationResult) GetDurationMs() *wrapperspb.Int64Value { 4019 if x != nil { 4020 return x.DurationMs 4021 } 4022 return nil 4023} 4024 4025func (x *Model_TrainingRun_IterationResult) GetTrainingLoss() *wrapperspb.DoubleValue { 4026 if x != nil { 4027 return x.TrainingLoss 4028 } 4029 return nil 4030} 4031 4032func (x *Model_TrainingRun_IterationResult) GetEvalLoss() *wrapperspb.DoubleValue { 4033 if x != nil { 4034 return x.EvalLoss 4035 } 4036 return nil 4037} 4038 4039func (x *Model_TrainingRun_IterationResult) GetLearnRate() float64 { 4040 if x != nil { 4041 return x.LearnRate 4042 } 4043 return 0 4044} 4045 4046func (x *Model_TrainingRun_IterationResult) GetClusterInfos() []*Model_TrainingRun_IterationResult_ClusterInfo { 4047 if x != nil { 4048 return x.ClusterInfos 4049 } 4050 return nil 4051} 4052 4053func (x *Model_TrainingRun_IterationResult) GetArimaResult() *Model_TrainingRun_IterationResult_ArimaResult { 4054 if x != nil { 4055 return x.ArimaResult 4056 } 4057 return nil 4058} 4059 4060// Information about a single cluster for clustering model. 4061type Model_TrainingRun_IterationResult_ClusterInfo struct { 4062 state protoimpl.MessageState 4063 sizeCache protoimpl.SizeCache 4064 unknownFields protoimpl.UnknownFields 4065 4066 // Centroid id. 4067 CentroidId int64 `protobuf:"varint,1,opt,name=centroid_id,json=centroidId,proto3" json:"centroid_id,omitempty"` 4068 // Cluster radius, the average distance from centroid 4069 // to each point assigned to the cluster. 4070 ClusterRadius *wrapperspb.DoubleValue `protobuf:"bytes,2,opt,name=cluster_radius,json=clusterRadius,proto3" json:"cluster_radius,omitempty"` 4071 // Cluster size, the total number of points assigned to the cluster. 4072 ClusterSize *wrapperspb.Int64Value `protobuf:"bytes,3,opt,name=cluster_size,json=clusterSize,proto3" json:"cluster_size,omitempty"` 4073} 4074 4075func (x *Model_TrainingRun_IterationResult_ClusterInfo) Reset() { 4076 *x = Model_TrainingRun_IterationResult_ClusterInfo{} 4077 if protoimpl.UnsafeEnabled { 4078 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[35] 4079 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4080 ms.StoreMessageInfo(mi) 4081 } 4082} 4083 4084func (x *Model_TrainingRun_IterationResult_ClusterInfo) String() string { 4085 return protoimpl.X.MessageStringOf(x) 4086} 4087 4088func (*Model_TrainingRun_IterationResult_ClusterInfo) ProtoMessage() {} 4089 4090func (x *Model_TrainingRun_IterationResult_ClusterInfo) ProtoReflect() protoreflect.Message { 4091 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[35] 4092 if protoimpl.UnsafeEnabled && x != nil { 4093 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4094 if ms.LoadMessageInfo() == nil { 4095 ms.StoreMessageInfo(mi) 4096 } 4097 return ms 4098 } 4099 return mi.MessageOf(x) 4100} 4101 4102// Deprecated: Use Model_TrainingRun_IterationResult_ClusterInfo.ProtoReflect.Descriptor instead. 4103func (*Model_TrainingRun_IterationResult_ClusterInfo) Descriptor() ([]byte, []int) { 4104 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 0} 4105} 4106 4107func (x *Model_TrainingRun_IterationResult_ClusterInfo) GetCentroidId() int64 { 4108 if x != nil { 4109 return x.CentroidId 4110 } 4111 return 0 4112} 4113 4114func (x *Model_TrainingRun_IterationResult_ClusterInfo) GetClusterRadius() *wrapperspb.DoubleValue { 4115 if x != nil { 4116 return x.ClusterRadius 4117 } 4118 return nil 4119} 4120 4121func (x *Model_TrainingRun_IterationResult_ClusterInfo) GetClusterSize() *wrapperspb.Int64Value { 4122 if x != nil { 4123 return x.ClusterSize 4124 } 4125 return nil 4126} 4127 4128// (Auto-)arima fitting result. Wrap everything in ArimaResult for easier 4129// refactoring if we want to use model-specific iteration results. 4130type Model_TrainingRun_IterationResult_ArimaResult struct { 4131 state protoimpl.MessageState 4132 sizeCache protoimpl.SizeCache 4133 unknownFields protoimpl.UnknownFields 4134 4135 // This message is repeated because there are multiple arima models 4136 // fitted in auto-arima. For non-auto-arima model, its size is one. 4137 ArimaModelInfo []*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo `protobuf:"bytes,1,rep,name=arima_model_info,json=arimaModelInfo,proto3" json:"arima_model_info,omitempty"` 4138 // Seasonal periods. Repeated because multiple periods are supported for 4139 // one time series. 4140 SeasonalPeriods []Model_SeasonalPeriod_SeasonalPeriodType `protobuf:"varint,2,rep,packed,name=seasonal_periods,json=seasonalPeriods,proto3,enum=google.cloud.bigquery.v2.Model_SeasonalPeriod_SeasonalPeriodType" json:"seasonal_periods,omitempty"` 4141} 4142 4143func (x *Model_TrainingRun_IterationResult_ArimaResult) Reset() { 4144 *x = Model_TrainingRun_IterationResult_ArimaResult{} 4145 if protoimpl.UnsafeEnabled { 4146 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[36] 4147 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4148 ms.StoreMessageInfo(mi) 4149 } 4150} 4151 4152func (x *Model_TrainingRun_IterationResult_ArimaResult) String() string { 4153 return protoimpl.X.MessageStringOf(x) 4154} 4155 4156func (*Model_TrainingRun_IterationResult_ArimaResult) ProtoMessage() {} 4157 4158func (x *Model_TrainingRun_IterationResult_ArimaResult) ProtoReflect() protoreflect.Message { 4159 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[36] 4160 if protoimpl.UnsafeEnabled && x != nil { 4161 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4162 if ms.LoadMessageInfo() == nil { 4163 ms.StoreMessageInfo(mi) 4164 } 4165 return ms 4166 } 4167 return mi.MessageOf(x) 4168} 4169 4170// Deprecated: Use Model_TrainingRun_IterationResult_ArimaResult.ProtoReflect.Descriptor instead. 4171func (*Model_TrainingRun_IterationResult_ArimaResult) Descriptor() ([]byte, []int) { 4172 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 1} 4173} 4174 4175func (x *Model_TrainingRun_IterationResult_ArimaResult) GetArimaModelInfo() []*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo { 4176 if x != nil { 4177 return x.ArimaModelInfo 4178 } 4179 return nil 4180} 4181 4182func (x *Model_TrainingRun_IterationResult_ArimaResult) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType { 4183 if x != nil { 4184 return x.SeasonalPeriods 4185 } 4186 return nil 4187} 4188 4189// Arima coefficients. 4190type Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients struct { 4191 state protoimpl.MessageState 4192 sizeCache protoimpl.SizeCache 4193 unknownFields protoimpl.UnknownFields 4194 4195 // Auto-regressive coefficients, an array of double. 4196 AutoRegressiveCoefficients []float64 `protobuf:"fixed64,1,rep,packed,name=auto_regressive_coefficients,json=autoRegressiveCoefficients,proto3" json:"auto_regressive_coefficients,omitempty"` 4197 // Moving-average coefficients, an array of double. 4198 MovingAverageCoefficients []float64 `protobuf:"fixed64,2,rep,packed,name=moving_average_coefficients,json=movingAverageCoefficients,proto3" json:"moving_average_coefficients,omitempty"` 4199 // Intercept coefficient, just a double not an array. 4200 InterceptCoefficient float64 `protobuf:"fixed64,3,opt,name=intercept_coefficient,json=interceptCoefficient,proto3" json:"intercept_coefficient,omitempty"` 4201} 4202 4203func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) Reset() { 4204 *x = Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients{} 4205 if protoimpl.UnsafeEnabled { 4206 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[37] 4207 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4208 ms.StoreMessageInfo(mi) 4209 } 4210} 4211 4212func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) String() string { 4213 return protoimpl.X.MessageStringOf(x) 4214} 4215 4216func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) ProtoMessage() {} 4217 4218func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) ProtoReflect() protoreflect.Message { 4219 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[37] 4220 if protoimpl.UnsafeEnabled && x != nil { 4221 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4222 if ms.LoadMessageInfo() == nil { 4223 ms.StoreMessageInfo(mi) 4224 } 4225 return ms 4226 } 4227 return mi.MessageOf(x) 4228} 4229 4230// Deprecated: Use Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients.ProtoReflect.Descriptor instead. 4231func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) Descriptor() ([]byte, []int) { 4232 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 1, 0} 4233} 4234 4235func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) GetAutoRegressiveCoefficients() []float64 { 4236 if x != nil { 4237 return x.AutoRegressiveCoefficients 4238 } 4239 return nil 4240} 4241 4242func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) GetMovingAverageCoefficients() []float64 { 4243 if x != nil { 4244 return x.MovingAverageCoefficients 4245 } 4246 return nil 4247} 4248 4249func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) GetInterceptCoefficient() float64 { 4250 if x != nil { 4251 return x.InterceptCoefficient 4252 } 4253 return 0 4254} 4255 4256// Arima model information. 4257type Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo struct { 4258 state protoimpl.MessageState 4259 sizeCache protoimpl.SizeCache 4260 unknownFields protoimpl.UnknownFields 4261 4262 // Non-seasonal order. 4263 NonSeasonalOrder *Model_ArimaOrder `protobuf:"bytes,1,opt,name=non_seasonal_order,json=nonSeasonalOrder,proto3" json:"non_seasonal_order,omitempty"` 4264 // Arima coefficients. 4265 ArimaCoefficients *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients `protobuf:"bytes,2,opt,name=arima_coefficients,json=arimaCoefficients,proto3" json:"arima_coefficients,omitempty"` 4266 // Arima fitting metrics. 4267 ArimaFittingMetrics *Model_ArimaFittingMetrics `protobuf:"bytes,3,opt,name=arima_fitting_metrics,json=arimaFittingMetrics,proto3" json:"arima_fitting_metrics,omitempty"` 4268 // Whether Arima model fitted with drift or not. It is always false 4269 // when d is not 1. 4270 HasDrift bool `protobuf:"varint,4,opt,name=has_drift,json=hasDrift,proto3" json:"has_drift,omitempty"` 4271 // The time_series_id value for this time series. It will be one of 4272 // the unique values from the time_series_id_column specified during 4273 // ARIMA model training. Only present when time_series_id_column 4274 // training option was used. 4275 TimeSeriesId string `protobuf:"bytes,5,opt,name=time_series_id,json=timeSeriesId,proto3" json:"time_series_id,omitempty"` 4276 // The tuple of time_series_ids identifying this time series. It will 4277 // be one of the unique tuples of values present in the 4278 // time_series_id_columns specified during ARIMA model training. Only 4279 // present when time_series_id_columns training option was used and 4280 // the order of values here are same as the order of 4281 // time_series_id_columns. 4282 TimeSeriesIds []string `protobuf:"bytes,10,rep,name=time_series_ids,json=timeSeriesIds,proto3" json:"time_series_ids,omitempty"` 4283 // Seasonal periods. Repeated because multiple periods are supported 4284 // for one time series. 4285 SeasonalPeriods []Model_SeasonalPeriod_SeasonalPeriodType `protobuf:"varint,6,rep,packed,name=seasonal_periods,json=seasonalPeriods,proto3,enum=google.cloud.bigquery.v2.Model_SeasonalPeriod_SeasonalPeriodType" json:"seasonal_periods,omitempty"` 4286 // If true, holiday_effect is a part of time series decomposition 4287 // result. 4288 HasHolidayEffect *wrapperspb.BoolValue `protobuf:"bytes,7,opt,name=has_holiday_effect,json=hasHolidayEffect,proto3" json:"has_holiday_effect,omitempty"` 4289 // If true, spikes_and_dips is a part of time series decomposition 4290 // result. 4291 HasSpikesAndDips *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=has_spikes_and_dips,json=hasSpikesAndDips,proto3" json:"has_spikes_and_dips,omitempty"` 4292 // If true, step_changes is a part of time series decomposition 4293 // result. 4294 HasStepChanges *wrapperspb.BoolValue `protobuf:"bytes,9,opt,name=has_step_changes,json=hasStepChanges,proto3" json:"has_step_changes,omitempty"` 4295} 4296 4297func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) Reset() { 4298 *x = Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo{} 4299 if protoimpl.UnsafeEnabled { 4300 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[38] 4301 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4302 ms.StoreMessageInfo(mi) 4303 } 4304} 4305 4306func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) String() string { 4307 return protoimpl.X.MessageStringOf(x) 4308} 4309 4310func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) ProtoMessage() {} 4311 4312func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) ProtoReflect() protoreflect.Message { 4313 mi := &file_google_cloud_bigquery_v2_model_proto_msgTypes[38] 4314 if protoimpl.UnsafeEnabled && x != nil { 4315 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 4316 if ms.LoadMessageInfo() == nil { 4317 ms.StoreMessageInfo(mi) 4318 } 4319 return ms 4320 } 4321 return mi.MessageOf(x) 4322} 4323 4324// Deprecated: Use Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo.ProtoReflect.Descriptor instead. 4325func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) Descriptor() ([]byte, []int) { 4326 return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 1, 1} 4327} 4328 4329func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetNonSeasonalOrder() *Model_ArimaOrder { 4330 if x != nil { 4331 return x.NonSeasonalOrder 4332 } 4333 return nil 4334} 4335 4336func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetArimaCoefficients() *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients { 4337 if x != nil { 4338 return x.ArimaCoefficients 4339 } 4340 return nil 4341} 4342 4343func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetArimaFittingMetrics() *Model_ArimaFittingMetrics { 4344 if x != nil { 4345 return x.ArimaFittingMetrics 4346 } 4347 return nil 4348} 4349 4350func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasDrift() bool { 4351 if x != nil { 4352 return x.HasDrift 4353 } 4354 return false 4355} 4356 4357func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetTimeSeriesId() string { 4358 if x != nil { 4359 return x.TimeSeriesId 4360 } 4361 return "" 4362} 4363 4364func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetTimeSeriesIds() []string { 4365 if x != nil { 4366 return x.TimeSeriesIds 4367 } 4368 return nil 4369} 4370 4371func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType { 4372 if x != nil { 4373 return x.SeasonalPeriods 4374 } 4375 return nil 4376} 4377 4378func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasHolidayEffect() *wrapperspb.BoolValue { 4379 if x != nil { 4380 return x.HasHolidayEffect 4381 } 4382 return nil 4383} 4384 4385func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasSpikesAndDips() *wrapperspb.BoolValue { 4386 if x != nil { 4387 return x.HasSpikesAndDips 4388 } 4389 return nil 4390} 4391 4392func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasStepChanges() *wrapperspb.BoolValue { 4393 if x != nil { 4394 return x.HasStepChanges 4395 } 4396 return nil 4397} 4398 4399var File_google_cloud_bigquery_v2_model_proto protoreflect.FileDescriptor 4400 4401var file_google_cloud_bigquery_v2_model_proto_rawDesc = []byte{ 4402 0x0a, 0x24, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 4403 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 4404 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4405 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4406 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 4407 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4408 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 4409 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 4410 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 4411 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 4412 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x67, 0x6f, 4413 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 4414 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 4415 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x67, 0x6f, 4416 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 4417 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x5f, 4418 0x73, 0x71, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4419 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 4420 0x2f, 0x76, 0x32, 0x2f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 4421 0x6e, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4422 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 4423 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 4424 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 4425 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 4426 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 4427 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 4428 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 4429 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa6, 0x75, 0x0a, 0x05, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 4430 0x17, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 4431 0x41, 0x03, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x56, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 4432 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 4433 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 4434 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 4435 0x65, 0x6c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 4436 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 4437 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 4438 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x63, 0x72, 4439 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x12, 0x6c, 0x61, 4440 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 4441 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6c, 0x61, 0x73, 4442 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 4443 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 4444 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 4445 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 4446 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 4447 0x52, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x43, 4448 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 4449 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 4450 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 4451 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 4452 0x65, 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 4453 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 4454 0x01, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 4455 0x65, 0x12, 0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 4456 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 4457 0x6f, 0x6e, 0x12, 0x6c, 0x0a, 0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 4458 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 4459 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4460 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 4461 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 4462 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 4463 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4464 0x12, 0x4d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 4465 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4466 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 4467 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x42, 4468 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 4469 0x55, 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6e, 0x73, 4470 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4471 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 4472 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 4473 0x52, 0x75, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 4474 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x73, 0x12, 0x58, 0x0a, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 4475 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 4476 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 4477 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, 4478 0x61, 0x72, 0x64, 0x53, 0x71, 0x6c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x03, 4479 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 4480 0x12, 0x54, 0x0a, 0x0d, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 4481 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4482 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 4483 0x76, 0x32, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x53, 0x71, 0x6c, 0x46, 0x69, 4484 0x65, 0x6c, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x43, 4485 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x74, 4486 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 4487 0x01, 0x52, 0x0b, 0x62, 0x65, 0x73, 0x74, 0x54, 0x72, 0x69, 0x61, 0x6c, 0x49, 0x64, 0x1a, 0xa0, 4488 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 4489 0x64, 0x22, 0x8d, 0x01, 0x0a, 0x12, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 4490 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x45, 0x41, 0x53, 4491 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 4492 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 4493 0x0a, 0x0e, 0x4e, 0x4f, 0x5f, 0x53, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x41, 0x4c, 0x49, 0x54, 0x59, 4494 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x41, 0x49, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x0a, 0x0a, 4495 0x06, 0x57, 0x45, 0x45, 0x4b, 0x4c, 0x59, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x4f, 0x4e, 4496 0x54, 0x48, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x51, 0x55, 0x41, 0x52, 0x54, 0x45, 4497 0x52, 0x4c, 0x59, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x59, 0x45, 0x41, 0x52, 0x4c, 0x59, 0x10, 4498 0x06, 0x1a, 0x87, 0x01, 0x0a, 0x0b, 0x4b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x45, 0x6e, 0x75, 0x6d, 4499 0x73, 0x22, 0x78, 0x0a, 0x1a, 0x4b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x69, 0x74, 0x69, 4500 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 4501 0x2c, 0x0a, 0x28, 0x4b, 0x4d, 0x45, 0x41, 0x4e, 0x53, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 4502 0x4c, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 4503 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 4504 0x06, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55, 0x53, 4505 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x4b, 0x4d, 0x45, 0x41, 0x4e, 0x53, 0x5f, 4506 0x50, 0x4c, 0x55, 0x53, 0x5f, 0x50, 0x4c, 0x55, 0x53, 0x10, 0x03, 0x1a, 0x8d, 0x03, 0x0a, 0x11, 4507 0x52, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 4508 0x73, 0x12, 0x4c, 0x0a, 0x13, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 4509 0x74, 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 4510 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 4511 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x6d, 0x65, 4512 0x61, 0x6e, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 4513 0x4a, 0x0a, 0x12, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x5f, 4514 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 4515 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 4516 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6d, 0x65, 0x61, 0x6e, 0x53, 4517 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x51, 0x0a, 0x16, 0x6d, 4518 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 4519 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 4520 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 4521 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x6d, 0x65, 0x61, 0x6e, 0x53, 4522 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x50, 4523 0x0a, 0x15, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 4524 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 4525 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 4526 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x6d, 0x65, 0x64, 4527 0x69, 0x61, 0x6e, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 4528 0x12, 0x39, 0x0a, 0x09, 0x72, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 4529 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4530 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 4531 0x65, 0x52, 0x08, 0x72, 0x53, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x1a, 0xb1, 0x03, 0x0a, 0x1e, 4532 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 4533 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x3a, 4534 0x0a, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 4535 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4536 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 4537 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x06, 0x72, 0x65, 4538 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 4539 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 4540 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x6c, 4541 0x12, 0x38, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 4542 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 4543 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 4544 0x52, 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x12, 0x3a, 0x0a, 0x09, 0x74, 0x68, 4545 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 4546 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 4547 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x74, 0x68, 0x72, 4548 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x37, 0x0a, 0x08, 0x66, 0x31, 0x5f, 0x73, 0x63, 0x6f, 4549 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4550 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 4551 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x66, 0x31, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 4552 0x37, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 4553 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4554 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 4555 0x07, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x73, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x72, 0x6f, 0x63, 0x5f, 4556 0x61, 0x75, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4557 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 4558 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x63, 0x41, 0x75, 0x63, 0x1a, 4559 0xf6, 0x07, 0x0a, 0x1b, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 4560 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 4561 0x88, 0x01, 0x0a, 0x20, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 4562 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 4563 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 4564 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 4565 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x67, 0x67, 0x72, 4566 0x65, 0x67, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 4567 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x1e, 0x61, 0x67, 0x67, 0x72, 4568 0x65, 0x67, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 4569 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x92, 0x01, 0x0a, 0x1c, 0x62, 4570 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 4571 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 4572 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 4573 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 4574 0x65, 0x6c, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 4575 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x42, 4576 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 4577 0x74, 0x72, 0x69, 0x78, 0x52, 0x19, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 4578 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x12, 4579 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 4580 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 4581 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 4582 0x76, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 4583 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x1a, 0xe8, 0x04, 4584 0x0a, 0x15, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 4585 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x12, 0x56, 0x0a, 0x18, 0x70, 0x6f, 0x73, 0x69, 0x74, 4586 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 4587 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4588 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 4589 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x16, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 4590 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 4591 0x42, 0x0a, 0x0e, 0x74, 0x72, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 4592 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4593 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 4594 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x74, 0x72, 0x75, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 4595 0x76, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x70, 0x6f, 0x73, 4596 0x69, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 4597 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 4598 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x66, 0x61, 0x6c, 0x73, 0x65, 4599 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0e, 0x74, 0x72, 0x75, 4600 0x65, 0x5f, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 4601 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4602 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 4603 0x74, 0x72, 0x75, 0x65, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x44, 0x0a, 4604 0x0f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 4605 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4606 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 4607 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 4608 0x76, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 4609 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4610 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 4611 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 4612 0x34, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 4613 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4614 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 4615 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x37, 0x0a, 0x08, 0x66, 0x31, 0x5f, 0x73, 0x63, 0x6f, 0x72, 4616 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4617 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 4618 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x66, 0x31, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x38, 4619 0x0a, 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 4620 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 4621 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 4622 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x1a, 0x8a, 0x06, 0x0a, 0x1f, 0x4d, 0x75, 0x6c, 4623 0x74, 0x69, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 4624 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x88, 0x01, 0x0a, 4625 0x20, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 4626 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 4627 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4628 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 4629 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 4630 0x74, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4631 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x1e, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 4632 0x74, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4633 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x83, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6e, 0x66, 4634 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x5f, 0x6c, 0x69, 0x73, 4635 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4636 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 4637 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x6c, 4638 0x61, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 4639 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 4640 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x75, 0x73, 4641 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0xd5, 0x03, 4642 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 4643 0x78, 0x12, 0x4f, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 4644 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 4645 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4646 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x63, 4647 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 4648 0x6c, 0x64, 0x12, 0x67, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 4649 0x32, 0x53, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4650 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 4651 0x6c, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 4652 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 4653 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x72, 0x69, 4654 0x78, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x1a, 0x6c, 0x0a, 0x05, 0x45, 4655 0x6e, 0x74, 0x72, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 4656 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 4657 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x3a, 0x0a, 4658 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 4659 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4660 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 4661 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x99, 0x01, 0x0a, 0x03, 0x52, 0x6f, 4662 0x77, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x6c, 0x61, 0x62, 0x65, 4663 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x4c, 4664 0x61, 0x62, 0x65, 0x6c, 0x12, 0x6f, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 4665 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x55, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4666 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4667 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x6c, 0x61, 0x73, 4668 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 4669 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 4670 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 4671 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, 0xf4, 0x07, 0x0a, 0x11, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 4672 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x64, 4673 0x61, 0x76, 0x69, 0x65, 0x73, 0x5f, 0x62, 0x6f, 0x75, 0x6c, 0x64, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 4674 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4675 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 4676 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x64, 0x61, 0x76, 0x69, 0x65, 0x73, 0x42, 4677 0x6f, 0x75, 0x6c, 0x64, 0x69, 0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x50, 0x0a, 0x15, 0x6d, 4678 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x64, 0x69, 0x73, 0x74, 4679 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 4680 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 4681 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x6d, 0x65, 0x61, 0x6e, 0x53, 0x71, 4682 0x75, 0x61, 0x72, 0x65, 0x64, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x55, 0x0a, 4683 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 4684 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 4685 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 4686 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 4687 0x63, 0x73, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 4688 0x74, 0x65, 0x72, 0x73, 0x1a, 0xe5, 0x05, 0x0a, 0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 4689 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 4690 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x69, 0x64, 0x49, 4691 0x64, 0x12, 0x6d, 0x0a, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x61, 0x6c, 4692 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4693 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 4694 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 4695 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x43, 0x6c, 0x75, 4696 0x73, 0x74, 0x65, 0x72, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 4697 0x65, 0x52, 0x0d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 4698 0x12, 0x31, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 4699 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4700 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x63, 0x6f, 4701 0x75, 0x6e, 0x74, 0x1a, 0x96, 0x04, 0x0a, 0x0c, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 4702 0x61, 0x6c, 0x75, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 4703 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x65, 4704 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x47, 0x0a, 0x0f, 0x6e, 4705 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 4706 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 4707 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 4708 0x75, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 4709 0x61, 0x6c, 0x75, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x11, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 4710 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 4711 0x32, 0x57, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4712 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 4713 0x6c, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 4714 0x69, 0x63, 0x73, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x46, 0x65, 0x61, 0x74, 4715 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 4716 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x10, 0x63, 0x61, 0x74, 4717 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x83, 0x02, 4718 0x0a, 0x10, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 4719 0x75, 0x65, 0x12, 0x8e, 0x01, 0x0a, 0x0f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 4720 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x65, 0x2e, 0x67, 4721 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 4722 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x43, 0x6c, 4723 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 4724 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 4725 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 4726 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x43, 0x6f, 4727 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x75, 4728 0x6e, 0x74, 0x73, 0x1a, 0x5e, 0x0a, 0x0d, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x43, 4729 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 4730 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 4731 0x12, 0x31, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 4732 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4733 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x63, 0x6f, 4734 0x75, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xe2, 0x02, 0x0a, 4735 0x0e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 4736 0x52, 0x0a, 0x16, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 4737 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 4738 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4739 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x6d, 4740 0x65, 0x61, 0x6e, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x63, 0x69, 0x73, 4741 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x12, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x71, 0x75, 0x61, 4742 0x72, 0x65, 0x64, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 4743 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4744 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6d, 4745 0x65, 0x61, 0x6e, 0x53, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 4746 0x6f, 0x0a, 0x25, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x64, 0x69, 4747 0x73, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 4748 0x69, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 4749 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 4750 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x22, 0x6e, 0x6f, 4751 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x75, 0x6e, 0x74, 4752 0x65, 0x64, 0x43, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x47, 0x61, 0x69, 0x6e, 4753 0x12, 0x3f, 0x0a, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 4754 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4755 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 4756 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 4757 0x6b, 0x1a, 0xf0, 0x09, 0x0a, 0x17, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x6f, 0x72, 0x65, 0x63, 4758 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x5c, 0x0a, 4759 0x12, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 4760 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4761 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 4762 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 4763 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x02, 0x18, 0x01, 0x52, 0x10, 0x6e, 0x6f, 0x6e, 0x53, 0x65, 4764 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x6b, 0x0a, 0x15, 0x61, 4765 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x66, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 4766 0x72, 0x69, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 4767 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 4768 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 4769 0x61, 0x46, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 4770 0x02, 0x18, 0x01, 0x52, 0x13, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x69, 0x74, 0x74, 0x69, 0x6e, 4771 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x70, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x73, 4772 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 4773 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 4774 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 4775 0x64, 0x65, 0x6c, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 4776 0x6f, 0x64, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 4777 0x64, 0x54, 0x79, 0x70, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x73, 0x65, 0x61, 0x73, 0x6f, 4778 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x09, 0x68, 0x61, 4779 0x73, 0x5f, 0x64, 0x72, 0x69, 0x66, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x08, 0x42, 0x02, 0x18, 4780 0x01, 0x52, 0x08, 0x68, 0x61, 0x73, 0x44, 0x72, 0x69, 0x66, 0x74, 0x12, 0x28, 0x0a, 0x0e, 0x74, 4781 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 4782 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 4783 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0xae, 0x01, 0x0a, 0x26, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 4784 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 4785 0x65, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4786 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4787 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 4788 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x6f, 0x72, 4789 0x65, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 4790 0x41, 0x72, 0x69, 0x6d, 0x61, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 4791 0x46, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 4792 0x63, 0x73, 0x52, 0x22, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 4793 0x6f, 0x64, 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 4794 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x1a, 0x9b, 0x05, 0x0a, 0x22, 0x41, 0x72, 0x69, 0x6d, 0x61, 4795 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x65, 0x63, 4796 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x58, 0x0a, 4797 0x12, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 4798 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4799 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 4800 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 4801 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x10, 0x6e, 0x6f, 0x6e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 4802 0x61, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x67, 0x0a, 0x15, 0x61, 0x72, 0x69, 0x6d, 0x61, 4803 0x5f, 0x66, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4804 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4805 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 4806 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x69, 0x74, 4807 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x13, 0x61, 0x72, 0x69, 4808 0x6d, 0x61, 0x46, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4809 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x64, 0x72, 0x69, 0x66, 0x74, 0x18, 0x03, 0x20, 4810 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x44, 0x72, 0x69, 0x66, 0x74, 0x12, 0x24, 0x0a, 4811 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 4812 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 4813 0x73, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 4814 0x65, 0x73, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x69, 4815 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x73, 0x12, 0x6c, 0x0a, 0x10, 0x73, 4816 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 4817 0x05, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4818 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4819 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 4820 0x65, 0x72, 0x69, 0x6f, 0x64, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 4821 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 4822 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x68, 0x61, 0x73, 4823 0x5f, 0x68, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 4824 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 4825 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 4826 0x65, 0x52, 0x10, 0x68, 0x61, 0x73, 0x48, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x45, 0x66, 0x66, 4827 0x65, 0x63, 0x74, 0x12, 0x49, 0x0a, 0x13, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x70, 0x69, 0x6b, 0x65, 4828 0x73, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x69, 0x70, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 4829 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 4830 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x68, 0x61, 4831 0x73, 0x53, 0x70, 0x69, 0x6b, 0x65, 0x73, 0x41, 0x6e, 0x64, 0x44, 0x69, 0x70, 0x73, 0x12, 0x44, 4832 0x0a, 0x10, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 4833 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4834 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 4835 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x68, 0x61, 0x73, 0x53, 0x74, 0x65, 0x70, 0x43, 0x68, 0x61, 4836 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xcd, 0x05, 0x0a, 0x11, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 4837 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x62, 0x0a, 0x12, 0x72, 0x65, 4838 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4839 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4840 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 4841 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x52, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 4842 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x11, 0x72, 0x65, 0x67, 4843 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x81, 4844 0x01, 0x0a, 0x1d, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 4845 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4846 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4847 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 4848 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6c, 4849 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 4850 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x1b, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x6c, 0x61, 4851 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 4852 0x63, 0x73, 0x12, 0x8e, 0x01, 0x0a, 0x22, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x63, 0x6c, 0x61, 4853 0x73, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 4854 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 4855 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 4856 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 4857 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 4858 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4859 0x48, 0x00, 0x52, 0x1f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x6c, 4860 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 4861 0x69, 0x63, 0x73, 0x12, 0x62, 0x0a, 0x12, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 4862 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 4863 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 4864 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 4865 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 4866 0x63, 0x73, 0x48, 0x00, 0x52, 0x11, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 4867 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x59, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x6b, 0x69, 4868 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 4869 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4870 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 4871 0x6c, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 4872 0x48, 0x00, 0x52, 0x0e, 0x72, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 4873 0x63, 0x73, 0x12, 0x75, 0x0a, 0x19, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x66, 0x6f, 0x72, 0x65, 4874 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 4875 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4876 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4877 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x6f, 0x72, 0x65, 4878 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x48, 0x00, 4879 0x52, 0x17, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x73, 0x74, 0x69, 4880 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x6d, 0x65, 0x74, 4881 0x72, 0x69, 0x63, 0x73, 0x1a, 0xb7, 0x01, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 4882 0x69, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4f, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x69, 4883 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 4884 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4885 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x61, 0x62, 0x6c, 4886 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x69, 4887 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x53, 0x0a, 0x10, 0x65, 0x76, 0x61, 4888 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 4889 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 4890 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x54, 4891 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0f, 0x65, 4892 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x36, 4893 0x0a, 0x0a, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x0c, 0x0a, 0x01, 4894 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x01, 0x70, 0x12, 0x0c, 0x0a, 0x01, 0x64, 0x18, 4895 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x01, 0x64, 0x12, 0x0c, 0x0a, 0x01, 0x71, 0x18, 0x03, 0x20, 4896 0x01, 0x28, 0x03, 0x52, 0x01, 0x71, 0x1a, 0x6a, 0x0a, 0x13, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 4897 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x25, 0x0a, 4898 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 4899 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 4900 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 4901 0x01, 0x52, 0x03, 0x61, 0x69, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 4902 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 4903 0x63, 0x65, 0x1a, 0x89, 0x02, 0x0a, 0x11, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x78, 0x70, 4904 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x61, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x6c, 4905 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 4906 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 4907 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 4908 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 4909 0x6e, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x65, 4910 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 4911 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 4912 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x1a, 0x70, 0x0a, 0x0b, 4913 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x66, 4914 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 4915 0x09, 0x52, 0x0b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 4916 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 4917 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4918 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 4919 0x65, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xe2, 4920 0x2a, 0x0a, 0x0b, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x12, 0x66, 4921 0x0a, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 4922 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4923 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 4924 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 4925 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 0x70, 4926 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 4927 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 4928 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 4929 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 4930 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 4931 0x65, 0x12, 0x55, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 4932 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 4933 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 4934 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x2e, 4935 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 4936 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x60, 0x0a, 0x12, 0x65, 0x76, 0x61, 0x6c, 4937 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x07, 4938 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4939 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 4940 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4941 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x11, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 4942 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x5b, 0x0a, 0x11, 0x64, 0x61, 4943 0x74, 0x61, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 4944 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4945 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4946 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 0x69, 0x74, 4947 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 0x69, 4948 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x62, 0x0a, 0x13, 0x67, 0x6c, 0x6f, 0x62, 0x61, 4949 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 4950 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4951 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 4952 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6c, 4953 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 4954 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xa0, 0x17, 0x0a, 0x0f, 4955 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 4956 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4957 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x72, 4958 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x09, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x74, 4959 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4960 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 4961 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4c, 0x6f, 0x73, 0x73, 0x54, 4962 0x79, 0x70, 0x65, 0x52, 0x08, 0x6c, 0x6f, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 4963 0x0a, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 4964 0x01, 0x52, 0x09, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x11, 4965 0x6c, 0x31, 0x5f, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 4966 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4967 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 4968 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x6c, 0x31, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 4969 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x11, 0x6c, 0x32, 0x5f, 0x72, 0x65, 4970 0x67, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 4971 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 4972 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 4973 0x52, 0x10, 0x6c, 0x32, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 4974 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 4975 0x76, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 4976 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4977 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 4978 0x13, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x72, 0x6f, 0x67, 4979 0x72, 0x65, 0x73, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x77, 0x61, 0x72, 0x6d, 0x5f, 0x73, 0x74, 0x61, 4980 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4981 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 4982 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x77, 0x61, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 4983 0x39, 0x0a, 0x0a, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x08, 0x20, 4984 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4985 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 4986 0x09, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 4987 0x70, 0x75, 0x74, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 4988 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4c, 0x61, 4989 0x62, 0x65, 0x6c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x5b, 0x0a, 0x11, 0x64, 0x61, 4990 0x74, 0x61, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 4991 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4992 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 4993 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 0x69, 0x74, 4994 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 0x69, 4995 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x64, 0x61, 0x74, 0x61, 0x5f, 4996 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x65, 0x76, 0x61, 0x6c, 0x5f, 0x66, 0x72, 0x61, 0x63, 0x74, 4997 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x01, 0x52, 0x15, 0x64, 0x61, 0x74, 0x61, 0x53, 4998 0x70, 0x6c, 0x69, 0x74, 0x45, 0x76, 0x61, 0x6c, 0x46, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 4999 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x63, 5000 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x74, 5001 0x61, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x61, 0x0a, 0x13, 5002 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 5003 0x65, 0x67, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 5004 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 5005 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4c, 0x65, 0x61, 0x72, 0x6e, 5006 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x11, 0x6c, 0x65, 5007 0x61, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 5008 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6c, 0x65, 0x61, 0x72, 0x6e, 5009 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x01, 0x52, 0x10, 0x69, 0x6e, 0x69, 5010 0x74, 0x69, 0x61, 0x6c, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x82, 0x01, 5011 0x0a, 0x13, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x77, 0x65, 5012 0x69, 0x67, 0x68, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 5013 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 5014 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 5015 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 5016 0x67, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x43, 0x6c, 5017 0x61, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 5018 0x11, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 5019 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 5020 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x6c, 5021 0x75, 0x6d, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 5022 0x6d, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 5023 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x51, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 5024 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 5025 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 5026 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x69, 0x73, 5027 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x74, 0x61, 5028 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 5029 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6e, 5030 0x75, 0x6d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x6f, 5031 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 5032 0x6f, 0x64, 0x65, 0x6c, 0x55, 0x72, 0x69, 0x12, 0x69, 0x0a, 0x15, 0x6f, 0x70, 0x74, 0x69, 0x6d, 5033 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 5034 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 5035 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 5036 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 5037 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x14, 0x6f, 0x70, 5038 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 5039 0x67, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x75, 0x6e, 0x69, 5040 0x74, 0x73, 0x18, 0x18, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0b, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 5041 0x55, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 5042 0x69, 0x7a, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 5043 0x53, 0x69, 0x7a, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x75, 0x74, 0x18, 5044 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 5045 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 5046 0x6c, 0x75, 0x65, 0x52, 0x07, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x0e, 5047 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x1b, 5048 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x54, 0x72, 0x65, 0x65, 0x44, 0x65, 0x70, 5049 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 5050 0x1c, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 5051 0x12, 0x42, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x5f, 0x6c, 0x6f, 5052 0x73, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 5053 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 5054 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x53, 0x70, 0x6c, 0x69, 0x74, 5055 0x4c, 0x6f, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x61, 0x63, 0x74, 5056 0x6f, 0x72, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x46, 0x61, 5057 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x51, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 5058 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 5059 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 5060 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x46, 0x65, 5061 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x64, 5062 0x62, 0x61, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x77, 0x61, 0x6c, 0x73, 5063 0x5f, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 5064 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 5065 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x77, 0x61, 0x6c, 0x73, 5066 0x41, 0x6c, 0x70, 0x68, 0x61, 0x12, 0x88, 0x01, 0x0a, 0x1c, 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 5067 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 5068 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x67, 5069 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 5070 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4b, 0x6d, 5071 0x65, 0x61, 0x6e, 0x73, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x4b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 5072 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 5073 0x74, 0x68, 0x6f, 0x64, 0x52, 0x1a, 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x69, 0x74, 5074 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 5075 0x12, 0x40, 0x0a, 0x1c, 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 5076 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 5077 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1a, 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x49, 0x6e, 5078 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6c, 0x75, 5079 0x6d, 0x6e, 0x12, 0x3f, 0x0a, 0x1c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 5080 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 5081 0x6d, 0x6e, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 5082 0x72, 0x69, 0x65, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x43, 0x6f, 0x6c, 5083 0x75, 0x6d, 0x6e, 0x12, 0x35, 0x0a, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 5084 0x65, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x24, 5085 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 5086 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 5087 0x74, 0x6f, 0x5f, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x18, 0x25, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 5088 0x61, 0x75, 0x74, 0x6f, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x12, 0x58, 0x0a, 0x12, 0x6e, 0x6f, 0x6e, 5089 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 5090 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 5091 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 5092 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x4f, 0x72, 0x64, 0x65, 5093 0x72, 0x52, 0x10, 0x6e, 0x6f, 0x6e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x72, 5094 0x64, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x72, 0x65, 0x71, 5095 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 5096 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 5097 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x61, 0x74, 5098 0x61, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 5099 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x63, 5100 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x64, 0x72, 0x69, 0x66, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x08, 5101 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x44, 0x72, 0x69, 0x66, 0x74, 0x12, 0x54, 5102 0x0a, 0x0e, 0x68, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 5103 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 5104 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 5105 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x48, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x52, 5106 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x68, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x52, 0x65, 5107 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 5108 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x2b, 0x20, 5109 0x01, 0x28, 0x09, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 5110 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x5f, 5111 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 5112 0x73, 0x18, 0x33, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 5113 0x69, 0x65, 0x73, 0x49, 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 5114 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x68, 5115 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 5116 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 5117 0x18, 0x2d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 5118 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x14, 5119 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6f, 5120 0x72, 0x64, 0x65, 0x72, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 5121 0x41, 0x72, 0x69, 0x6d, 0x61, 0x4d, 0x61, 0x78, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x4e, 0x0a, 5122 0x15, 0x64, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 5123 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 5124 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 5125 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x64, 0x65, 0x63, 0x6f, 0x6d, 0x70, 5126 0x6f, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4d, 0x0a, 5127 0x15, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x73, 0x70, 0x69, 0x6b, 0x65, 0x73, 0x5f, 0x61, 0x6e, 5128 0x64, 0x5f, 0x64, 0x69, 0x70, 0x73, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 5129 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 5130 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 5131 0x70, 0x69, 0x6b, 0x65, 0x73, 0x41, 0x6e, 0x64, 0x44, 0x69, 0x70, 0x73, 0x12, 0x4a, 0x0a, 0x13, 5132 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x63, 0x68, 0x61, 0x6e, 5133 0x67, 0x65, 0x73, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 5134 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 5135 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x53, 0x74, 0x65, 5136 0x70, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0x44, 0x0a, 0x16, 0x4c, 0x61, 0x62, 0x65, 5137 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x74, 5138 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 5139 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 5140 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x92, 5141 0x0f, 0x0a, 0x0f, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 5142 0x6c, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 5143 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 5144 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 5145 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3c, 0x0a, 0x0b, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 5146 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 5147 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 5148 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 5149 0x6e, 0x4d, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 5150 0x6c, 0x6f, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 5151 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 5152 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 5153 0x6e, 0x67, 0x4c, 0x6f, 0x73, 0x73, 0x12, 0x39, 0x0a, 0x09, 0x65, 0x76, 0x61, 0x6c, 0x5f, 0x6c, 5154 0x6f, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 5155 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 5156 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x65, 0x76, 0x61, 0x6c, 0x4c, 0x6f, 0x73, 5157 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 5158 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 5159 0x12, 0x6c, 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 5160 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 5161 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 5162 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 5163 0x67, 0x52, 0x75, 0x6e, 0x2e, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 5164 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 5165 0x52, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x6a, 5166 0x0a, 0x0c, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x09, 5167 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 5168 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 5169 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 5170 0x6e, 0x2e, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 5171 0x74, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0b, 0x61, 5172 0x72, 0x69, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x1a, 0xb3, 0x01, 0x0a, 0x0b, 0x43, 5173 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x65, 5174 0x6e, 0x74, 0x72, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 5175 0x0a, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0e, 0x63, 5176 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x02, 0x20, 5177 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 5178 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 5179 0x65, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 5180 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, 0x65, 5181 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 5182 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 5183 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 5184 0x1a, 0xe0, 0x09, 0x0a, 0x0b, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 5185 0x12, 0x80, 0x01, 0x0a, 0x10, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 5186 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x67, 0x6f, 5187 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 5188 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 5189 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x2e, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 5190 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x52, 0x65, 5191 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 5192 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 5193 0x6e, 0x66, 0x6f, 0x12, 0x6c, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 5194 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x41, 0x2e, 5195 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 5196 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x53, 5197 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x2e, 0x53, 0x65, 5198 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 5199 0x52, 0x0f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 5200 0x73, 0x1a, 0xca, 0x01, 0x0a, 0x11, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x43, 0x6f, 0x65, 0x66, 0x66, 5201 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x1c, 0x61, 0x75, 0x74, 0x6f, 0x5f, 5202 0x72, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x65, 0x66, 0x66, 5203 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x1a, 0x61, 5204 0x75, 0x74, 0x6f, 0x52, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x65, 5205 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3e, 0x0a, 0x1b, 0x6d, 0x6f, 0x76, 5206 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x65, 0x66, 5207 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x01, 0x52, 0x19, 5208 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x65, 5209 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x15, 0x69, 0x6e, 0x74, 5210 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x63, 0x6f, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 5211 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x14, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 5212 0x65, 0x70, 0x74, 0x43, 0x6f, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x1a, 0x92, 5213 0x06, 0x0a, 0x0e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66, 5214 0x6f, 0x12, 0x58, 0x0a, 0x12, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 5215 0x6c, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 5216 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 5217 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 5218 0x72, 0x69, 0x6d, 0x61, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x10, 0x6e, 0x6f, 0x6e, 0x53, 0x65, 5219 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x88, 0x01, 0x0a, 0x12, 5220 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 0x63, 0x6f, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 5221 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 5222 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 5223 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 5224 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x2e, 0x49, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 5225 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 5226 0x74, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x43, 0x6f, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 5227 0x6e, 0x74, 0x73, 0x52, 0x11, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x43, 0x6f, 0x65, 0x66, 0x66, 0x69, 5228 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x67, 0x0a, 0x15, 0x61, 0x72, 0x69, 0x6d, 0x61, 0x5f, 5229 0x66, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 5230 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 5231 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 5232 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x41, 0x72, 0x69, 0x6d, 0x61, 0x46, 0x69, 0x74, 0x74, 5233 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x13, 0x61, 0x72, 0x69, 0x6d, 5234 0x61, 0x46, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 5235 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x64, 0x72, 0x69, 0x66, 0x74, 0x18, 0x04, 0x20, 0x01, 5236 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x44, 0x72, 0x69, 0x66, 0x74, 0x12, 0x24, 0x0a, 0x0e, 5237 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x05, 5238 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 5239 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 5240 0x73, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x69, 0x6d, 5241 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x73, 0x12, 0x6c, 0x0a, 0x10, 0x73, 0x65, 5242 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 0x06, 5243 0x20, 0x03, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 5244 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 5245 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 5246 0x72, 0x69, 0x6f, 0x64, 0x2e, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x72, 5247 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 5248 0x6c, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x68, 0x61, 0x73, 0x5f, 5249 0x68, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x07, 5250 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 5251 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 5252 0x52, 0x10, 0x68, 0x61, 0x73, 0x48, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x45, 0x66, 0x66, 0x65, 5253 0x63, 0x74, 0x12, 0x49, 0x0a, 0x13, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x70, 0x69, 0x6b, 0x65, 0x73, 5254 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x69, 0x70, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 5255 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 5256 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x68, 0x61, 0x73, 5257 0x53, 0x70, 0x69, 0x6b, 0x65, 0x73, 0x41, 0x6e, 0x64, 0x44, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, 5258 0x10, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 5259 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 5260 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 5261 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x68, 0x61, 0x73, 0x53, 0x74, 0x65, 0x70, 0x43, 0x68, 0x61, 0x6e, 5262 0x67, 0x65, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 5263 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 5264 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 5265 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb5, 5266 0x02, 0x0a, 0x09, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 5267 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 5268 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x49, 0x4e, 0x45, 5269 0x41, 0x52, 0x5f, 0x52, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 5270 0x17, 0x0a, 0x13, 0x4c, 0x4f, 0x47, 0x49, 0x53, 0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x47, 0x52, 5271 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4b, 0x4d, 0x45, 0x41, 5272 0x4e, 0x53, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x41, 0x54, 0x52, 0x49, 0x58, 0x5f, 0x46, 5273 0x41, 0x43, 0x54, 0x4f, 0x52, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x12, 5274 0x0a, 0x0e, 0x44, 0x4e, 0x4e, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x45, 0x52, 5275 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x45, 0x4e, 0x53, 0x4f, 0x52, 0x46, 0x4c, 0x4f, 0x57, 5276 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x4e, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x52, 0x45, 0x53, 5277 0x53, 0x4f, 0x52, 0x10, 0x07, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x4f, 0x53, 0x54, 0x45, 0x44, 5278 0x5f, 0x54, 0x52, 0x45, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x10, 5279 0x09, 0x12, 0x1b, 0x0a, 0x17, 0x42, 0x4f, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x52, 0x45, 5280 0x45, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x0a, 0x12, 0x09, 5281 0x0a, 0x05, 0x41, 0x52, 0x49, 0x4d, 0x41, 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x55, 0x54, 5282 0x4f, 0x4d, 0x4c, 0x5f, 0x52, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x10, 0x0c, 0x12, 5283 0x15, 0x0a, 0x11, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 5284 0x46, 0x49, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x52, 0x49, 0x4d, 0x41, 0x5f, 5285 0x50, 0x4c, 0x55, 0x53, 0x10, 0x13, 0x22, 0x4f, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x73, 0x54, 0x79, 5286 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x4c, 0x4f, 0x53, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 5287 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 5288 0x11, 0x4d, 0x45, 0x41, 0x4e, 0x5f, 0x53, 0x51, 0x55, 0x41, 0x52, 0x45, 0x44, 0x5f, 0x4c, 0x4f, 5289 0x53, 0x53, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x45, 0x41, 0x4e, 0x5f, 0x4c, 0x4f, 0x47, 5290 0x5f, 0x4c, 0x4f, 0x53, 0x53, 0x10, 0x02, 0x22, 0x48, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x74, 0x61, 5291 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x49, 0x53, 0x54, 0x41, 5292 0x4e, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 5293 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x55, 0x43, 0x4c, 0x49, 0x44, 5294 0x45, 0x41, 0x4e, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 0x53, 0x49, 0x4e, 0x45, 0x10, 5295 0x02, 0x22, 0x7a, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x4d, 0x65, 5296 0x74, 0x68, 0x6f, 0x64, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x50, 0x4c, 5297 0x49, 0x54, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 5298 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x41, 0x4e, 0x44, 0x4f, 5299 0x4d, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, 5300 0x0e, 0x0a, 0x0a, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x10, 0x03, 0x12, 5301 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 5302 0x0a, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x10, 0x05, 0x22, 0x9e, 0x01, 5303 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 5304 0x1e, 0x0a, 0x1a, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x46, 0x52, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 5305 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 5306 0x12, 0x0a, 0x0e, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x46, 0x52, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 5307 0x59, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x59, 0x45, 0x41, 0x52, 0x4c, 0x59, 0x10, 0x02, 0x12, 5308 0x0d, 0x0a, 0x09, 0x51, 0x55, 0x41, 0x52, 0x54, 0x45, 0x52, 0x4c, 0x59, 0x10, 0x03, 0x12, 0x0b, 5309 0x0a, 0x07, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x57, 5310 0x45, 0x45, 0x4b, 0x4c, 0x59, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x41, 0x49, 0x4c, 0x59, 5311 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x48, 0x4f, 0x55, 0x52, 0x4c, 0x59, 0x10, 0x07, 0x12, 0x0e, 5312 0x0a, 0x0a, 0x50, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x4e, 0x55, 0x54, 0x45, 0x10, 0x08, 0x22, 0xd9, 5313 0x04, 0x0a, 0x0d, 0x48, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 5314 0x12, 0x1e, 0x0a, 0x1a, 0x48, 0x4f, 0x4c, 0x49, 0x44, 0x41, 0x59, 0x5f, 0x52, 0x45, 0x47, 0x49, 5315 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 5316 0x12, 0x0a, 0x0a, 0x06, 0x47, 0x4c, 0x4f, 0x42, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 5317 0x4e, 0x41, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x4a, 0x41, 0x50, 0x41, 0x43, 0x10, 0x03, 0x12, 5318 0x08, 0x0a, 0x04, 0x45, 0x4d, 0x45, 0x41, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x4c, 0x41, 0x43, 5319 0x10, 0x05, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x45, 0x10, 0x06, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x52, 5320 0x10, 0x07, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x54, 0x10, 0x08, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x55, 5321 0x10, 0x09, 0x12, 0x06, 0x0a, 0x02, 0x42, 0x45, 0x10, 0x0a, 0x12, 0x06, 0x0a, 0x02, 0x42, 0x52, 5322 0x10, 0x0b, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x41, 0x10, 0x0c, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x48, 5323 0x10, 0x0d, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x4c, 0x10, 0x0e, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x4e, 5324 0x10, 0x0f, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x4f, 0x10, 0x10, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x53, 5325 0x10, 0x11, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x5a, 0x10, 0x12, 0x12, 0x06, 0x0a, 0x02, 0x44, 0x45, 5326 0x10, 0x13, 0x12, 0x06, 0x0a, 0x02, 0x44, 0x4b, 0x10, 0x14, 0x12, 0x06, 0x0a, 0x02, 0x44, 0x5a, 5327 0x10, 0x15, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x43, 0x10, 0x16, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x45, 5328 0x10, 0x17, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x47, 0x10, 0x18, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x53, 5329 0x10, 0x19, 0x12, 0x06, 0x0a, 0x02, 0x46, 0x49, 0x10, 0x1a, 0x12, 0x06, 0x0a, 0x02, 0x46, 0x52, 5330 0x10, 0x1b, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x42, 0x10, 0x1c, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x52, 5331 0x10, 0x1d, 0x12, 0x06, 0x0a, 0x02, 0x48, 0x4b, 0x10, 0x1e, 0x12, 0x06, 0x0a, 0x02, 0x48, 0x55, 5332 0x10, 0x1f, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x44, 0x10, 0x20, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x45, 5333 0x10, 0x21, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4c, 0x10, 0x22, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 5334 0x10, 0x23, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x52, 0x10, 0x24, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x54, 5335 0x10, 0x25, 0x12, 0x06, 0x0a, 0x02, 0x4a, 0x50, 0x10, 0x26, 0x12, 0x06, 0x0a, 0x02, 0x4b, 0x52, 5336 0x10, 0x27, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x56, 0x10, 0x28, 0x12, 0x06, 0x0a, 0x02, 0x4d, 0x41, 5337 0x10, 0x29, 0x12, 0x06, 0x0a, 0x02, 0x4d, 0x58, 0x10, 0x2a, 0x12, 0x06, 0x0a, 0x02, 0x4d, 0x59, 5338 0x10, 0x2b, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x47, 0x10, 0x2c, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x4c, 5339 0x10, 0x2d, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x4f, 0x10, 0x2e, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x5a, 5340 0x10, 0x2f, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x45, 0x10, 0x30, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x48, 5341 0x10, 0x31, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x4b, 0x10, 0x32, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x4c, 5342 0x10, 0x33, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x54, 0x10, 0x34, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x4f, 5343 0x10, 0x35, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x53, 0x10, 0x36, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x55, 5344 0x10, 0x37, 0x12, 0x06, 0x0a, 0x02, 0x53, 0x41, 0x10, 0x38, 0x12, 0x06, 0x0a, 0x02, 0x53, 0x45, 5345 0x10, 0x39, 0x12, 0x06, 0x0a, 0x02, 0x53, 0x47, 0x10, 0x3a, 0x12, 0x06, 0x0a, 0x02, 0x53, 0x49, 5346 0x10, 0x3b, 0x12, 0x06, 0x0a, 0x02, 0x53, 0x4b, 0x10, 0x3c, 0x12, 0x06, 0x0a, 0x02, 0x54, 0x48, 5347 0x10, 0x3d, 0x12, 0x06, 0x0a, 0x02, 0x54, 0x52, 0x10, 0x3e, 0x12, 0x06, 0x0a, 0x02, 0x54, 0x57, 5348 0x10, 0x3f, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x41, 0x10, 0x40, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x53, 5349 0x10, 0x41, 0x12, 0x06, 0x0a, 0x02, 0x56, 0x45, 0x10, 0x42, 0x12, 0x06, 0x0a, 0x02, 0x56, 0x4e, 5350 0x10, 0x43, 0x12, 0x06, 0x0a, 0x02, 0x5a, 0x41, 0x10, 0x44, 0x22, 0x57, 0x0a, 0x11, 0x4c, 0x65, 5351 0x61, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 5352 0x23, 0x0a, 0x1f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 5353 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 5354 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x53, 0x45, 0x41, 5355 0x52, 0x43, 0x48, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x4e, 5356 0x54, 0x10, 0x02, 0x22, 0x6e, 0x0a, 0x14, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 5357 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x25, 0x0a, 0x21, 0x4f, 5358 0x50, 0x54, 0x49, 0x4d, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x41, 5359 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 5360 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x47, 0x52, 0x41, 0x44, 5361 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x53, 0x43, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x13, 5362 0x0a, 0x0f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x54, 0x49, 0x4f, 5363 0x4e, 0x10, 0x02, 0x22, 0x49, 0x0a, 0x0c, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x54, 5364 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x45, 0x45, 0x44, 0x42, 0x41, 0x43, 0x4b, 0x5f, 5365 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 5366 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x01, 5367 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x02, 0x22, 0x79, 5368 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 5369 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 5370 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 5371 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 5372 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 5373 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 5374 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 5375 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x22, 0xb7, 0x01, 0x0a, 0x11, 0x50, 0x61, 5376 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 5377 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 5378 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 5379 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 5380 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x64, 0x61, 5381 0x74, 0x61, 0x73, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 5382 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 5383 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 5384 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 5385 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 5386 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6d, 0x6f, 5387 0x64, 0x65, 0x6c, 0x22, 0x7c, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 5388 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 5389 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 5390 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 5391 0x0a, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 5392 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x49, 5393 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 5394 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 5395 0x64, 0x22, 0xb9, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 5396 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 5397 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 5398 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x64, 5399 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 5400 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x49, 0x64, 0x12, 5401 0x3d, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 5402 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 5403 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 5404 0x75, 0x65, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1d, 5405 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 5406 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x75, 0x0a, 5407 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 5408 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 5409 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 5410 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 5411 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 5412 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 5413 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 5414 0x6f, 0x6b, 0x65, 0x6e, 0x32, 0xd7, 0x08, 0x0a, 0x0c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 5415 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xd1, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 5416 0x65, 0x6c, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 5417 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 5418 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 5419 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 5420 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x79, 5421 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x12, 0x50, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 5422 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 5423 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x64, 0x61, 0x74, 5424 0x61, 0x73, 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 5425 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 5426 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0xda, 0x41, 0x1e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 5427 0x63, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 5428 0x2c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x12, 0xd8, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 5429 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 5430 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 5431 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, 5432 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 5433 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 5434 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 5435 0x6e, 0x73, 0x65, 0x22, 0x6f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x12, 0x43, 0x2f, 0x62, 0x69, 5436 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 5437 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 5438 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 5439 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 5440 0xda, 0x41, 0x21, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x64, 0x61, 5441 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 5442 0x75, 0x6c, 0x74, 0x73, 0x12, 0xe3, 0x01, 0x0a, 0x0a, 0x50, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 5443 0x64, 0x65, 0x6c, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 5444 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x50, 5445 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 5446 0x1a, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 5447 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 5448 0x6c, 0x22, 0x86, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x59, 0x32, 0x50, 0x2f, 0x62, 0x69, 0x67, 5449 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 5450 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 5451 0x2f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x73, 5452 0x65, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 5453 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x3a, 0x05, 0x6d, 0x6f, 5454 0x64, 0x65, 0x6c, 0xda, 0x41, 0x24, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 5455 0x2c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x6d, 0x6f, 0x64, 0x65, 5456 0x6c, 0x5f, 0x69, 0x64, 0x2c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0xce, 0x01, 0x0a, 0x0b, 0x44, 5457 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 5458 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 5459 0x72, 0x79, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 5460 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 5461 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 5462 0x22, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x2a, 0x50, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 5463 0x65, 0x72, 0x79, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 5464 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x64, 5465 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 5466 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x7b, 0x6d, 5467 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x3d, 0x2a, 0x7d, 0xda, 0x41, 0x1e, 0x70, 0x72, 0x6f, 5468 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 5469 0x69, 0x64, 0x2c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x1a, 0xe0, 0x01, 0xca, 0x41, 5470 0x17, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 5471 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0xc2, 0x01, 0x68, 0x74, 0x74, 0x70, 5472 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 5473 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x62, 0x69, 0x67, 0x71, 5474 0x75, 0x65, 0x72, 0x79, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 5475 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 5476 0x61, 0x75, 0x74, 0x68, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x72, 0x65, 5477 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 5478 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 5479 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 5480 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 5481 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 5482 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 5483 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x2d, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x6c, 5484 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 5485 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x32, 0x42, 0x0a, 5486 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x5a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 5487 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 5488 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 5489 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 5490 0x2f, 0x76, 0x32, 0x3b, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x62, 0x06, 0x70, 0x72, 5491 0x6f, 0x74, 0x6f, 0x33, 5492} 5493 5494var ( 5495 file_google_cloud_bigquery_v2_model_proto_rawDescOnce sync.Once 5496 file_google_cloud_bigquery_v2_model_proto_rawDescData = file_google_cloud_bigquery_v2_model_proto_rawDesc 5497) 5498 5499func file_google_cloud_bigquery_v2_model_proto_rawDescGZIP() []byte { 5500 file_google_cloud_bigquery_v2_model_proto_rawDescOnce.Do(func() { 5501 file_google_cloud_bigquery_v2_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_bigquery_v2_model_proto_rawDescData) 5502 }) 5503 return file_google_cloud_bigquery_v2_model_proto_rawDescData 5504} 5505 5506var file_google_cloud_bigquery_v2_model_proto_enumTypes = make([]protoimpl.EnumInfo, 11) 5507var file_google_cloud_bigquery_v2_model_proto_msgTypes = make([]protoimpl.MessageInfo, 39) 5508var file_google_cloud_bigquery_v2_model_proto_goTypes = []interface{}{ 5509 (Model_ModelType)(0), // 0: google.cloud.bigquery.v2.Model.ModelType 5510 (Model_LossType)(0), // 1: google.cloud.bigquery.v2.Model.LossType 5511 (Model_DistanceType)(0), // 2: google.cloud.bigquery.v2.Model.DistanceType 5512 (Model_DataSplitMethod)(0), // 3: google.cloud.bigquery.v2.Model.DataSplitMethod 5513 (Model_DataFrequency)(0), // 4: google.cloud.bigquery.v2.Model.DataFrequency 5514 (Model_HolidayRegion)(0), // 5: google.cloud.bigquery.v2.Model.HolidayRegion 5515 (Model_LearnRateStrategy)(0), // 6: google.cloud.bigquery.v2.Model.LearnRateStrategy 5516 (Model_OptimizationStrategy)(0), // 7: google.cloud.bigquery.v2.Model.OptimizationStrategy 5517 (Model_FeedbackType)(0), // 8: google.cloud.bigquery.v2.Model.FeedbackType 5518 (Model_SeasonalPeriod_SeasonalPeriodType)(0), // 9: google.cloud.bigquery.v2.Model.SeasonalPeriod.SeasonalPeriodType 5519 (Model_KmeansEnums_KmeansInitializationMethod)(0), // 10: google.cloud.bigquery.v2.Model.KmeansEnums.KmeansInitializationMethod 5520 (*Model)(nil), // 11: google.cloud.bigquery.v2.Model 5521 (*GetModelRequest)(nil), // 12: google.cloud.bigquery.v2.GetModelRequest 5522 (*PatchModelRequest)(nil), // 13: google.cloud.bigquery.v2.PatchModelRequest 5523 (*DeleteModelRequest)(nil), // 14: google.cloud.bigquery.v2.DeleteModelRequest 5524 (*ListModelsRequest)(nil), // 15: google.cloud.bigquery.v2.ListModelsRequest 5525 (*ListModelsResponse)(nil), // 16: google.cloud.bigquery.v2.ListModelsResponse 5526 (*Model_SeasonalPeriod)(nil), // 17: google.cloud.bigquery.v2.Model.SeasonalPeriod 5527 (*Model_KmeansEnums)(nil), // 18: google.cloud.bigquery.v2.Model.KmeansEnums 5528 (*Model_RegressionMetrics)(nil), // 19: google.cloud.bigquery.v2.Model.RegressionMetrics 5529 (*Model_AggregateClassificationMetrics)(nil), // 20: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics 5530 (*Model_BinaryClassificationMetrics)(nil), // 21: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics 5531 (*Model_MultiClassClassificationMetrics)(nil), // 22: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics 5532 (*Model_ClusteringMetrics)(nil), // 23: google.cloud.bigquery.v2.Model.ClusteringMetrics 5533 (*Model_RankingMetrics)(nil), // 24: google.cloud.bigquery.v2.Model.RankingMetrics 5534 (*Model_ArimaForecastingMetrics)(nil), // 25: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics 5535 (*Model_EvaluationMetrics)(nil), // 26: google.cloud.bigquery.v2.Model.EvaluationMetrics 5536 (*Model_DataSplitResult)(nil), // 27: google.cloud.bigquery.v2.Model.DataSplitResult 5537 (*Model_ArimaOrder)(nil), // 28: google.cloud.bigquery.v2.Model.ArimaOrder 5538 (*Model_ArimaFittingMetrics)(nil), // 29: google.cloud.bigquery.v2.Model.ArimaFittingMetrics 5539 (*Model_GlobalExplanation)(nil), // 30: google.cloud.bigquery.v2.Model.GlobalExplanation 5540 (*Model_TrainingRun)(nil), // 31: google.cloud.bigquery.v2.Model.TrainingRun 5541 nil, // 32: google.cloud.bigquery.v2.Model.LabelsEntry 5542 (*Model_BinaryClassificationMetrics_BinaryConfusionMatrix)(nil), // 33: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix 5543 (*Model_MultiClassClassificationMetrics_ConfusionMatrix)(nil), // 34: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix 5544 (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry)(nil), // 35: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Entry 5545 (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row)(nil), // 36: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Row 5546 (*Model_ClusteringMetrics_Cluster)(nil), // 37: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster 5547 (*Model_ClusteringMetrics_Cluster_FeatureValue)(nil), // 38: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue 5548 (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue)(nil), // 39: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue 5549 (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount)(nil), // 40: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue.CategoryCount 5550 (*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics)(nil), // 41: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics 5551 (*Model_GlobalExplanation_Explanation)(nil), // 42: google.cloud.bigquery.v2.Model.GlobalExplanation.Explanation 5552 (*Model_TrainingRun_TrainingOptions)(nil), // 43: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions 5553 (*Model_TrainingRun_IterationResult)(nil), // 44: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult 5554 nil, // 45: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.LabelClassWeightsEntry 5555 (*Model_TrainingRun_IterationResult_ClusterInfo)(nil), // 46: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ClusterInfo 5556 (*Model_TrainingRun_IterationResult_ArimaResult)(nil), // 47: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult 5557 (*Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients)(nil), // 48: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaCoefficients 5558 (*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo)(nil), // 49: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo 5559 (*ModelReference)(nil), // 50: google.cloud.bigquery.v2.ModelReference 5560 (*EncryptionConfiguration)(nil), // 51: google.cloud.bigquery.v2.EncryptionConfiguration 5561 (*StandardSqlField)(nil), // 52: google.cloud.bigquery.v2.StandardSqlField 5562 (*wrapperspb.UInt32Value)(nil), // 53: google.protobuf.UInt32Value 5563 (*wrapperspb.DoubleValue)(nil), // 54: google.protobuf.DoubleValue 5564 (*TableReference)(nil), // 55: google.cloud.bigquery.v2.TableReference 5565 (*timestamppb.Timestamp)(nil), // 56: google.protobuf.Timestamp 5566 (*wrapperspb.Int64Value)(nil), // 57: google.protobuf.Int64Value 5567 (*wrapperspb.BoolValue)(nil), // 58: google.protobuf.BoolValue 5568 (*wrapperspb.Int32Value)(nil), // 59: google.protobuf.Int32Value 5569 (*emptypb.Empty)(nil), // 60: google.protobuf.Empty 5570} 5571var file_google_cloud_bigquery_v2_model_proto_depIdxs = []int32{ 5572 50, // 0: google.cloud.bigquery.v2.Model.model_reference:type_name -> google.cloud.bigquery.v2.ModelReference 5573 32, // 1: google.cloud.bigquery.v2.Model.labels:type_name -> google.cloud.bigquery.v2.Model.LabelsEntry 5574 51, // 2: google.cloud.bigquery.v2.Model.encryption_configuration:type_name -> google.cloud.bigquery.v2.EncryptionConfiguration 5575 0, // 3: google.cloud.bigquery.v2.Model.model_type:type_name -> google.cloud.bigquery.v2.Model.ModelType 5576 31, // 4: google.cloud.bigquery.v2.Model.training_runs:type_name -> google.cloud.bigquery.v2.Model.TrainingRun 5577 52, // 5: google.cloud.bigquery.v2.Model.feature_columns:type_name -> google.cloud.bigquery.v2.StandardSqlField 5578 52, // 6: google.cloud.bigquery.v2.Model.label_columns:type_name -> google.cloud.bigquery.v2.StandardSqlField 5579 11, // 7: google.cloud.bigquery.v2.PatchModelRequest.model:type_name -> google.cloud.bigquery.v2.Model 5580 53, // 8: google.cloud.bigquery.v2.ListModelsRequest.max_results:type_name -> google.protobuf.UInt32Value 5581 11, // 9: google.cloud.bigquery.v2.ListModelsResponse.models:type_name -> google.cloud.bigquery.v2.Model 5582 54, // 10: google.cloud.bigquery.v2.Model.RegressionMetrics.mean_absolute_error:type_name -> google.protobuf.DoubleValue 5583 54, // 11: google.cloud.bigquery.v2.Model.RegressionMetrics.mean_squared_error:type_name -> google.protobuf.DoubleValue 5584 54, // 12: google.cloud.bigquery.v2.Model.RegressionMetrics.mean_squared_log_error:type_name -> google.protobuf.DoubleValue 5585 54, // 13: google.cloud.bigquery.v2.Model.RegressionMetrics.median_absolute_error:type_name -> google.protobuf.DoubleValue 5586 54, // 14: google.cloud.bigquery.v2.Model.RegressionMetrics.r_squared:type_name -> google.protobuf.DoubleValue 5587 54, // 15: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.precision:type_name -> google.protobuf.DoubleValue 5588 54, // 16: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.recall:type_name -> google.protobuf.DoubleValue 5589 54, // 17: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.accuracy:type_name -> google.protobuf.DoubleValue 5590 54, // 18: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.threshold:type_name -> google.protobuf.DoubleValue 5591 54, // 19: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.f1_score:type_name -> google.protobuf.DoubleValue 5592 54, // 20: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.log_loss:type_name -> google.protobuf.DoubleValue 5593 54, // 21: google.cloud.bigquery.v2.Model.AggregateClassificationMetrics.roc_auc:type_name -> google.protobuf.DoubleValue 5594 20, // 22: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.aggregate_classification_metrics:type_name -> google.cloud.bigquery.v2.Model.AggregateClassificationMetrics 5595 33, // 23: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.binary_confusion_matrix_list:type_name -> google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix 5596 20, // 24: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.aggregate_classification_metrics:type_name -> google.cloud.bigquery.v2.Model.AggregateClassificationMetrics 5597 34, // 25: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.confusion_matrix_list:type_name -> google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix 5598 54, // 26: google.cloud.bigquery.v2.Model.ClusteringMetrics.davies_bouldin_index:type_name -> google.protobuf.DoubleValue 5599 54, // 27: google.cloud.bigquery.v2.Model.ClusteringMetrics.mean_squared_distance:type_name -> google.protobuf.DoubleValue 5600 37, // 28: google.cloud.bigquery.v2.Model.ClusteringMetrics.clusters:type_name -> google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster 5601 54, // 29: google.cloud.bigquery.v2.Model.RankingMetrics.mean_average_precision:type_name -> google.protobuf.DoubleValue 5602 54, // 30: google.cloud.bigquery.v2.Model.RankingMetrics.mean_squared_error:type_name -> google.protobuf.DoubleValue 5603 54, // 31: google.cloud.bigquery.v2.Model.RankingMetrics.normalized_discounted_cumulative_gain:type_name -> google.protobuf.DoubleValue 5604 54, // 32: google.cloud.bigquery.v2.Model.RankingMetrics.average_rank:type_name -> google.protobuf.DoubleValue 5605 28, // 33: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.non_seasonal_order:type_name -> google.cloud.bigquery.v2.Model.ArimaOrder 5606 29, // 34: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.arima_fitting_metrics:type_name -> google.cloud.bigquery.v2.Model.ArimaFittingMetrics 5607 9, // 35: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.seasonal_periods:type_name -> google.cloud.bigquery.v2.Model.SeasonalPeriod.SeasonalPeriodType 5608 41, // 36: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.arima_single_model_forecasting_metrics:type_name -> google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics 5609 19, // 37: google.cloud.bigquery.v2.Model.EvaluationMetrics.regression_metrics:type_name -> google.cloud.bigquery.v2.Model.RegressionMetrics 5610 21, // 38: google.cloud.bigquery.v2.Model.EvaluationMetrics.binary_classification_metrics:type_name -> google.cloud.bigquery.v2.Model.BinaryClassificationMetrics 5611 22, // 39: google.cloud.bigquery.v2.Model.EvaluationMetrics.multi_class_classification_metrics:type_name -> google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics 5612 23, // 40: google.cloud.bigquery.v2.Model.EvaluationMetrics.clustering_metrics:type_name -> google.cloud.bigquery.v2.Model.ClusteringMetrics 5613 24, // 41: google.cloud.bigquery.v2.Model.EvaluationMetrics.ranking_metrics:type_name -> google.cloud.bigquery.v2.Model.RankingMetrics 5614 25, // 42: google.cloud.bigquery.v2.Model.EvaluationMetrics.arima_forecasting_metrics:type_name -> google.cloud.bigquery.v2.Model.ArimaForecastingMetrics 5615 55, // 43: google.cloud.bigquery.v2.Model.DataSplitResult.training_table:type_name -> google.cloud.bigquery.v2.TableReference 5616 55, // 44: google.cloud.bigquery.v2.Model.DataSplitResult.evaluation_table:type_name -> google.cloud.bigquery.v2.TableReference 5617 42, // 45: google.cloud.bigquery.v2.Model.GlobalExplanation.explanations:type_name -> google.cloud.bigquery.v2.Model.GlobalExplanation.Explanation 5618 43, // 46: google.cloud.bigquery.v2.Model.TrainingRun.training_options:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions 5619 56, // 47: google.cloud.bigquery.v2.Model.TrainingRun.start_time:type_name -> google.protobuf.Timestamp 5620 44, // 48: google.cloud.bigquery.v2.Model.TrainingRun.results:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.IterationResult 5621 26, // 49: google.cloud.bigquery.v2.Model.TrainingRun.evaluation_metrics:type_name -> google.cloud.bigquery.v2.Model.EvaluationMetrics 5622 27, // 50: google.cloud.bigquery.v2.Model.TrainingRun.data_split_result:type_name -> google.cloud.bigquery.v2.Model.DataSplitResult 5623 30, // 51: google.cloud.bigquery.v2.Model.TrainingRun.global_explanations:type_name -> google.cloud.bigquery.v2.Model.GlobalExplanation 5624 54, // 52: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.positive_class_threshold:type_name -> google.protobuf.DoubleValue 5625 57, // 53: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.true_positives:type_name -> google.protobuf.Int64Value 5626 57, // 54: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.false_positives:type_name -> google.protobuf.Int64Value 5627 57, // 55: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.true_negatives:type_name -> google.protobuf.Int64Value 5628 57, // 56: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.false_negatives:type_name -> google.protobuf.Int64Value 5629 54, // 57: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.precision:type_name -> google.protobuf.DoubleValue 5630 54, // 58: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.recall:type_name -> google.protobuf.DoubleValue 5631 54, // 59: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.f1_score:type_name -> google.protobuf.DoubleValue 5632 54, // 60: google.cloud.bigquery.v2.Model.BinaryClassificationMetrics.BinaryConfusionMatrix.accuracy:type_name -> google.protobuf.DoubleValue 5633 54, // 61: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.confidence_threshold:type_name -> google.protobuf.DoubleValue 5634 36, // 62: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.rows:type_name -> google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Row 5635 57, // 63: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Entry.item_count:type_name -> google.protobuf.Int64Value 5636 35, // 64: google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Row.entries:type_name -> google.cloud.bigquery.v2.Model.MultiClassClassificationMetrics.ConfusionMatrix.Entry 5637 38, // 65: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.feature_values:type_name -> google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue 5638 57, // 66: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.count:type_name -> google.protobuf.Int64Value 5639 54, // 67: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.numerical_value:type_name -> google.protobuf.DoubleValue 5640 39, // 68: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.categorical_value:type_name -> google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue 5641 40, // 69: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue.category_counts:type_name -> google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue.CategoryCount 5642 57, // 70: google.cloud.bigquery.v2.Model.ClusteringMetrics.Cluster.FeatureValue.CategoricalValue.CategoryCount.count:type_name -> google.protobuf.Int64Value 5643 28, // 71: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.non_seasonal_order:type_name -> google.cloud.bigquery.v2.Model.ArimaOrder 5644 29, // 72: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.arima_fitting_metrics:type_name -> google.cloud.bigquery.v2.Model.ArimaFittingMetrics 5645 9, // 73: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.seasonal_periods:type_name -> google.cloud.bigquery.v2.Model.SeasonalPeriod.SeasonalPeriodType 5646 58, // 74: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.has_holiday_effect:type_name -> google.protobuf.BoolValue 5647 58, // 75: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.has_spikes_and_dips:type_name -> google.protobuf.BoolValue 5648 58, // 76: google.cloud.bigquery.v2.Model.ArimaForecastingMetrics.ArimaSingleModelForecastingMetrics.has_step_changes:type_name -> google.protobuf.BoolValue 5649 54, // 77: google.cloud.bigquery.v2.Model.GlobalExplanation.Explanation.attribution:type_name -> google.protobuf.DoubleValue 5650 1, // 78: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.loss_type:type_name -> google.cloud.bigquery.v2.Model.LossType 5651 54, // 79: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.l1_regularization:type_name -> google.protobuf.DoubleValue 5652 54, // 80: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.l2_regularization:type_name -> google.protobuf.DoubleValue 5653 54, // 81: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.min_relative_progress:type_name -> google.protobuf.DoubleValue 5654 58, // 82: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.warm_start:type_name -> google.protobuf.BoolValue 5655 58, // 83: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.early_stop:type_name -> google.protobuf.BoolValue 5656 3, // 84: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.data_split_method:type_name -> google.cloud.bigquery.v2.Model.DataSplitMethod 5657 6, // 85: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.learn_rate_strategy:type_name -> google.cloud.bigquery.v2.Model.LearnRateStrategy 5658 45, // 86: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.label_class_weights:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.LabelClassWeightsEntry 5659 2, // 87: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.distance_type:type_name -> google.cloud.bigquery.v2.Model.DistanceType 5660 7, // 88: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.optimization_strategy:type_name -> google.cloud.bigquery.v2.Model.OptimizationStrategy 5661 54, // 89: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.dropout:type_name -> google.protobuf.DoubleValue 5662 54, // 90: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.min_split_loss:type_name -> google.protobuf.DoubleValue 5663 8, // 91: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.feedback_type:type_name -> google.cloud.bigquery.v2.Model.FeedbackType 5664 54, // 92: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.wals_alpha:type_name -> google.protobuf.DoubleValue 5665 10, // 93: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.kmeans_initialization_method:type_name -> google.cloud.bigquery.v2.Model.KmeansEnums.KmeansInitializationMethod 5666 28, // 94: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.non_seasonal_order:type_name -> google.cloud.bigquery.v2.Model.ArimaOrder 5667 4, // 95: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.data_frequency:type_name -> google.cloud.bigquery.v2.Model.DataFrequency 5668 5, // 96: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.holiday_region:type_name -> google.cloud.bigquery.v2.Model.HolidayRegion 5669 58, // 97: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.decompose_time_series:type_name -> google.protobuf.BoolValue 5670 58, // 98: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.clean_spikes_and_dips:type_name -> google.protobuf.BoolValue 5671 58, // 99: google.cloud.bigquery.v2.Model.TrainingRun.TrainingOptions.adjust_step_changes:type_name -> google.protobuf.BoolValue 5672 59, // 100: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.index:type_name -> google.protobuf.Int32Value 5673 57, // 101: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.duration_ms:type_name -> google.protobuf.Int64Value 5674 54, // 102: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.training_loss:type_name -> google.protobuf.DoubleValue 5675 54, // 103: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.eval_loss:type_name -> google.protobuf.DoubleValue 5676 46, // 104: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.cluster_infos:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ClusterInfo 5677 47, // 105: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.arima_result:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult 5678 54, // 106: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ClusterInfo.cluster_radius:type_name -> google.protobuf.DoubleValue 5679 57, // 107: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ClusterInfo.cluster_size:type_name -> google.protobuf.Int64Value 5680 49, // 108: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.arima_model_info:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo 5681 9, // 109: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.seasonal_periods:type_name -> google.cloud.bigquery.v2.Model.SeasonalPeriod.SeasonalPeriodType 5682 28, // 110: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.non_seasonal_order:type_name -> google.cloud.bigquery.v2.Model.ArimaOrder 5683 48, // 111: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.arima_coefficients:type_name -> google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaCoefficients 5684 29, // 112: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.arima_fitting_metrics:type_name -> google.cloud.bigquery.v2.Model.ArimaFittingMetrics 5685 9, // 113: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.seasonal_periods:type_name -> google.cloud.bigquery.v2.Model.SeasonalPeriod.SeasonalPeriodType 5686 58, // 114: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.has_holiday_effect:type_name -> google.protobuf.BoolValue 5687 58, // 115: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.has_spikes_and_dips:type_name -> google.protobuf.BoolValue 5688 58, // 116: google.cloud.bigquery.v2.Model.TrainingRun.IterationResult.ArimaResult.ArimaModelInfo.has_step_changes:type_name -> google.protobuf.BoolValue 5689 12, // 117: google.cloud.bigquery.v2.ModelService.GetModel:input_type -> google.cloud.bigquery.v2.GetModelRequest 5690 15, // 118: google.cloud.bigquery.v2.ModelService.ListModels:input_type -> google.cloud.bigquery.v2.ListModelsRequest 5691 13, // 119: google.cloud.bigquery.v2.ModelService.PatchModel:input_type -> google.cloud.bigquery.v2.PatchModelRequest 5692 14, // 120: google.cloud.bigquery.v2.ModelService.DeleteModel:input_type -> google.cloud.bigquery.v2.DeleteModelRequest 5693 11, // 121: google.cloud.bigquery.v2.ModelService.GetModel:output_type -> google.cloud.bigquery.v2.Model 5694 16, // 122: google.cloud.bigquery.v2.ModelService.ListModels:output_type -> google.cloud.bigquery.v2.ListModelsResponse 5695 11, // 123: google.cloud.bigquery.v2.ModelService.PatchModel:output_type -> google.cloud.bigquery.v2.Model 5696 60, // 124: google.cloud.bigquery.v2.ModelService.DeleteModel:output_type -> google.protobuf.Empty 5697 121, // [121:125] is the sub-list for method output_type 5698 117, // [117:121] is the sub-list for method input_type 5699 117, // [117:117] is the sub-list for extension type_name 5700 117, // [117:117] is the sub-list for extension extendee 5701 0, // [0:117] is the sub-list for field type_name 5702} 5703 5704func init() { file_google_cloud_bigquery_v2_model_proto_init() } 5705func file_google_cloud_bigquery_v2_model_proto_init() { 5706 if File_google_cloud_bigquery_v2_model_proto != nil { 5707 return 5708 } 5709 file_google_cloud_bigquery_v2_encryption_config_proto_init() 5710 file_google_cloud_bigquery_v2_model_reference_proto_init() 5711 file_google_cloud_bigquery_v2_standard_sql_proto_init() 5712 file_google_cloud_bigquery_v2_table_reference_proto_init() 5713 if !protoimpl.UnsafeEnabled { 5714 file_google_cloud_bigquery_v2_model_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 5715 switch v := v.(*Model); i { 5716 case 0: 5717 return &v.state 5718 case 1: 5719 return &v.sizeCache 5720 case 2: 5721 return &v.unknownFields 5722 default: 5723 return nil 5724 } 5725 } 5726 file_google_cloud_bigquery_v2_model_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 5727 switch v := v.(*GetModelRequest); i { 5728 case 0: 5729 return &v.state 5730 case 1: 5731 return &v.sizeCache 5732 case 2: 5733 return &v.unknownFields 5734 default: 5735 return nil 5736 } 5737 } 5738 file_google_cloud_bigquery_v2_model_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 5739 switch v := v.(*PatchModelRequest); i { 5740 case 0: 5741 return &v.state 5742 case 1: 5743 return &v.sizeCache 5744 case 2: 5745 return &v.unknownFields 5746 default: 5747 return nil 5748 } 5749 } 5750 file_google_cloud_bigquery_v2_model_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 5751 switch v := v.(*DeleteModelRequest); i { 5752 case 0: 5753 return &v.state 5754 case 1: 5755 return &v.sizeCache 5756 case 2: 5757 return &v.unknownFields 5758 default: 5759 return nil 5760 } 5761 } 5762 file_google_cloud_bigquery_v2_model_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 5763 switch v := v.(*ListModelsRequest); i { 5764 case 0: 5765 return &v.state 5766 case 1: 5767 return &v.sizeCache 5768 case 2: 5769 return &v.unknownFields 5770 default: 5771 return nil 5772 } 5773 } 5774 file_google_cloud_bigquery_v2_model_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 5775 switch v := v.(*ListModelsResponse); i { 5776 case 0: 5777 return &v.state 5778 case 1: 5779 return &v.sizeCache 5780 case 2: 5781 return &v.unknownFields 5782 default: 5783 return nil 5784 } 5785 } 5786 file_google_cloud_bigquery_v2_model_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 5787 switch v := v.(*Model_SeasonalPeriod); i { 5788 case 0: 5789 return &v.state 5790 case 1: 5791 return &v.sizeCache 5792 case 2: 5793 return &v.unknownFields 5794 default: 5795 return nil 5796 } 5797 } 5798 file_google_cloud_bigquery_v2_model_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 5799 switch v := v.(*Model_KmeansEnums); i { 5800 case 0: 5801 return &v.state 5802 case 1: 5803 return &v.sizeCache 5804 case 2: 5805 return &v.unknownFields 5806 default: 5807 return nil 5808 } 5809 } 5810 file_google_cloud_bigquery_v2_model_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 5811 switch v := v.(*Model_RegressionMetrics); i { 5812 case 0: 5813 return &v.state 5814 case 1: 5815 return &v.sizeCache 5816 case 2: 5817 return &v.unknownFields 5818 default: 5819 return nil 5820 } 5821 } 5822 file_google_cloud_bigquery_v2_model_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 5823 switch v := v.(*Model_AggregateClassificationMetrics); i { 5824 case 0: 5825 return &v.state 5826 case 1: 5827 return &v.sizeCache 5828 case 2: 5829 return &v.unknownFields 5830 default: 5831 return nil 5832 } 5833 } 5834 file_google_cloud_bigquery_v2_model_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 5835 switch v := v.(*Model_BinaryClassificationMetrics); i { 5836 case 0: 5837 return &v.state 5838 case 1: 5839 return &v.sizeCache 5840 case 2: 5841 return &v.unknownFields 5842 default: 5843 return nil 5844 } 5845 } 5846 file_google_cloud_bigquery_v2_model_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 5847 switch v := v.(*Model_MultiClassClassificationMetrics); i { 5848 case 0: 5849 return &v.state 5850 case 1: 5851 return &v.sizeCache 5852 case 2: 5853 return &v.unknownFields 5854 default: 5855 return nil 5856 } 5857 } 5858 file_google_cloud_bigquery_v2_model_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 5859 switch v := v.(*Model_ClusteringMetrics); i { 5860 case 0: 5861 return &v.state 5862 case 1: 5863 return &v.sizeCache 5864 case 2: 5865 return &v.unknownFields 5866 default: 5867 return nil 5868 } 5869 } 5870 file_google_cloud_bigquery_v2_model_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 5871 switch v := v.(*Model_RankingMetrics); i { 5872 case 0: 5873 return &v.state 5874 case 1: 5875 return &v.sizeCache 5876 case 2: 5877 return &v.unknownFields 5878 default: 5879 return nil 5880 } 5881 } 5882 file_google_cloud_bigquery_v2_model_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 5883 switch v := v.(*Model_ArimaForecastingMetrics); i { 5884 case 0: 5885 return &v.state 5886 case 1: 5887 return &v.sizeCache 5888 case 2: 5889 return &v.unknownFields 5890 default: 5891 return nil 5892 } 5893 } 5894 file_google_cloud_bigquery_v2_model_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 5895 switch v := v.(*Model_EvaluationMetrics); i { 5896 case 0: 5897 return &v.state 5898 case 1: 5899 return &v.sizeCache 5900 case 2: 5901 return &v.unknownFields 5902 default: 5903 return nil 5904 } 5905 } 5906 file_google_cloud_bigquery_v2_model_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 5907 switch v := v.(*Model_DataSplitResult); i { 5908 case 0: 5909 return &v.state 5910 case 1: 5911 return &v.sizeCache 5912 case 2: 5913 return &v.unknownFields 5914 default: 5915 return nil 5916 } 5917 } 5918 file_google_cloud_bigquery_v2_model_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 5919 switch v := v.(*Model_ArimaOrder); i { 5920 case 0: 5921 return &v.state 5922 case 1: 5923 return &v.sizeCache 5924 case 2: 5925 return &v.unknownFields 5926 default: 5927 return nil 5928 } 5929 } 5930 file_google_cloud_bigquery_v2_model_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 5931 switch v := v.(*Model_ArimaFittingMetrics); i { 5932 case 0: 5933 return &v.state 5934 case 1: 5935 return &v.sizeCache 5936 case 2: 5937 return &v.unknownFields 5938 default: 5939 return nil 5940 } 5941 } 5942 file_google_cloud_bigquery_v2_model_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 5943 switch v := v.(*Model_GlobalExplanation); i { 5944 case 0: 5945 return &v.state 5946 case 1: 5947 return &v.sizeCache 5948 case 2: 5949 return &v.unknownFields 5950 default: 5951 return nil 5952 } 5953 } 5954 file_google_cloud_bigquery_v2_model_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 5955 switch v := v.(*Model_TrainingRun); i { 5956 case 0: 5957 return &v.state 5958 case 1: 5959 return &v.sizeCache 5960 case 2: 5961 return &v.unknownFields 5962 default: 5963 return nil 5964 } 5965 } 5966 file_google_cloud_bigquery_v2_model_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 5967 switch v := v.(*Model_BinaryClassificationMetrics_BinaryConfusionMatrix); i { 5968 case 0: 5969 return &v.state 5970 case 1: 5971 return &v.sizeCache 5972 case 2: 5973 return &v.unknownFields 5974 default: 5975 return nil 5976 } 5977 } 5978 file_google_cloud_bigquery_v2_model_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 5979 switch v := v.(*Model_MultiClassClassificationMetrics_ConfusionMatrix); i { 5980 case 0: 5981 return &v.state 5982 case 1: 5983 return &v.sizeCache 5984 case 2: 5985 return &v.unknownFields 5986 default: 5987 return nil 5988 } 5989 } 5990 file_google_cloud_bigquery_v2_model_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { 5991 switch v := v.(*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry); i { 5992 case 0: 5993 return &v.state 5994 case 1: 5995 return &v.sizeCache 5996 case 2: 5997 return &v.unknownFields 5998 default: 5999 return nil 6000 } 6001 } 6002 file_google_cloud_bigquery_v2_model_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { 6003 switch v := v.(*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row); i { 6004 case 0: 6005 return &v.state 6006 case 1: 6007 return &v.sizeCache 6008 case 2: 6009 return &v.unknownFields 6010 default: 6011 return nil 6012 } 6013 } 6014 file_google_cloud_bigquery_v2_model_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { 6015 switch v := v.(*Model_ClusteringMetrics_Cluster); i { 6016 case 0: 6017 return &v.state 6018 case 1: 6019 return &v.sizeCache 6020 case 2: 6021 return &v.unknownFields 6022 default: 6023 return nil 6024 } 6025 } 6026 file_google_cloud_bigquery_v2_model_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { 6027 switch v := v.(*Model_ClusteringMetrics_Cluster_FeatureValue); i { 6028 case 0: 6029 return &v.state 6030 case 1: 6031 return &v.sizeCache 6032 case 2: 6033 return &v.unknownFields 6034 default: 6035 return nil 6036 } 6037 } 6038 file_google_cloud_bigquery_v2_model_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { 6039 switch v := v.(*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue); i { 6040 case 0: 6041 return &v.state 6042 case 1: 6043 return &v.sizeCache 6044 case 2: 6045 return &v.unknownFields 6046 default: 6047 return nil 6048 } 6049 } 6050 file_google_cloud_bigquery_v2_model_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { 6051 switch v := v.(*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount); i { 6052 case 0: 6053 return &v.state 6054 case 1: 6055 return &v.sizeCache 6056 case 2: 6057 return &v.unknownFields 6058 default: 6059 return nil 6060 } 6061 } 6062 file_google_cloud_bigquery_v2_model_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { 6063 switch v := v.(*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics); i { 6064 case 0: 6065 return &v.state 6066 case 1: 6067 return &v.sizeCache 6068 case 2: 6069 return &v.unknownFields 6070 default: 6071 return nil 6072 } 6073 } 6074 file_google_cloud_bigquery_v2_model_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { 6075 switch v := v.(*Model_GlobalExplanation_Explanation); i { 6076 case 0: 6077 return &v.state 6078 case 1: 6079 return &v.sizeCache 6080 case 2: 6081 return &v.unknownFields 6082 default: 6083 return nil 6084 } 6085 } 6086 file_google_cloud_bigquery_v2_model_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { 6087 switch v := v.(*Model_TrainingRun_TrainingOptions); i { 6088 case 0: 6089 return &v.state 6090 case 1: 6091 return &v.sizeCache 6092 case 2: 6093 return &v.unknownFields 6094 default: 6095 return nil 6096 } 6097 } 6098 file_google_cloud_bigquery_v2_model_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { 6099 switch v := v.(*Model_TrainingRun_IterationResult); i { 6100 case 0: 6101 return &v.state 6102 case 1: 6103 return &v.sizeCache 6104 case 2: 6105 return &v.unknownFields 6106 default: 6107 return nil 6108 } 6109 } 6110 file_google_cloud_bigquery_v2_model_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { 6111 switch v := v.(*Model_TrainingRun_IterationResult_ClusterInfo); i { 6112 case 0: 6113 return &v.state 6114 case 1: 6115 return &v.sizeCache 6116 case 2: 6117 return &v.unknownFields 6118 default: 6119 return nil 6120 } 6121 } 6122 file_google_cloud_bigquery_v2_model_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { 6123 switch v := v.(*Model_TrainingRun_IterationResult_ArimaResult); i { 6124 case 0: 6125 return &v.state 6126 case 1: 6127 return &v.sizeCache 6128 case 2: 6129 return &v.unknownFields 6130 default: 6131 return nil 6132 } 6133 } 6134 file_google_cloud_bigquery_v2_model_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { 6135 switch v := v.(*Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients); i { 6136 case 0: 6137 return &v.state 6138 case 1: 6139 return &v.sizeCache 6140 case 2: 6141 return &v.unknownFields 6142 default: 6143 return nil 6144 } 6145 } 6146 file_google_cloud_bigquery_v2_model_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { 6147 switch v := v.(*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo); i { 6148 case 0: 6149 return &v.state 6150 case 1: 6151 return &v.sizeCache 6152 case 2: 6153 return &v.unknownFields 6154 default: 6155 return nil 6156 } 6157 } 6158 } 6159 file_google_cloud_bigquery_v2_model_proto_msgTypes[15].OneofWrappers = []interface{}{ 6160 (*Model_EvaluationMetrics_RegressionMetrics)(nil), 6161 (*Model_EvaluationMetrics_BinaryClassificationMetrics)(nil), 6162 (*Model_EvaluationMetrics_MultiClassClassificationMetrics)(nil), 6163 (*Model_EvaluationMetrics_ClusteringMetrics)(nil), 6164 (*Model_EvaluationMetrics_RankingMetrics)(nil), 6165 (*Model_EvaluationMetrics_ArimaForecastingMetrics)(nil), 6166 } 6167 file_google_cloud_bigquery_v2_model_proto_msgTypes[27].OneofWrappers = []interface{}{ 6168 (*Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue)(nil), 6169 (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_)(nil), 6170 } 6171 type x struct{} 6172 out := protoimpl.TypeBuilder{ 6173 File: protoimpl.DescBuilder{ 6174 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 6175 RawDescriptor: file_google_cloud_bigquery_v2_model_proto_rawDesc, 6176 NumEnums: 11, 6177 NumMessages: 39, 6178 NumExtensions: 0, 6179 NumServices: 1, 6180 }, 6181 GoTypes: file_google_cloud_bigquery_v2_model_proto_goTypes, 6182 DependencyIndexes: file_google_cloud_bigquery_v2_model_proto_depIdxs, 6183 EnumInfos: file_google_cloud_bigquery_v2_model_proto_enumTypes, 6184 MessageInfos: file_google_cloud_bigquery_v2_model_proto_msgTypes, 6185 }.Build() 6186 File_google_cloud_bigquery_v2_model_proto = out.File 6187 file_google_cloud_bigquery_v2_model_proto_rawDesc = nil 6188 file_google_cloud_bigquery_v2_model_proto_goTypes = nil 6189 file_google_cloud_bigquery_v2_model_proto_depIdxs = nil 6190} 6191 6192// Reference imports to suppress errors if they are not otherwise used. 6193var _ context.Context 6194var _ grpc.ClientConnInterface 6195 6196// This is a compile-time assertion to ensure that this generated file 6197// is compatible with the grpc package it is being compiled against. 6198const _ = grpc.SupportPackageIsVersion6 6199 6200// ModelServiceClient is the client API for ModelService service. 6201// 6202// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 6203type ModelServiceClient interface { 6204 // Gets the specified model resource by model ID. 6205 GetModel(ctx context.Context, in *GetModelRequest, opts ...grpc.CallOption) (*Model, error) 6206 // Lists all models in the specified dataset. Requires the READER dataset 6207 // role. After retrieving the list of models, you can get information about a 6208 // particular model by calling the models.get method. 6209 ListModels(ctx context.Context, in *ListModelsRequest, opts ...grpc.CallOption) (*ListModelsResponse, error) 6210 // Patch specific fields in the specified model. 6211 PatchModel(ctx context.Context, in *PatchModelRequest, opts ...grpc.CallOption) (*Model, error) 6212 // Deletes the model specified by modelId from the dataset. 6213 DeleteModel(ctx context.Context, in *DeleteModelRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) 6214} 6215 6216type modelServiceClient struct { 6217 cc grpc.ClientConnInterface 6218} 6219 6220func NewModelServiceClient(cc grpc.ClientConnInterface) ModelServiceClient { 6221 return &modelServiceClient{cc} 6222} 6223 6224func (c *modelServiceClient) GetModel(ctx context.Context, in *GetModelRequest, opts ...grpc.CallOption) (*Model, error) { 6225 out := new(Model) 6226 err := c.cc.Invoke(ctx, "/google.cloud.bigquery.v2.ModelService/GetModel", in, out, opts...) 6227 if err != nil { 6228 return nil, err 6229 } 6230 return out, nil 6231} 6232 6233func (c *modelServiceClient) ListModels(ctx context.Context, in *ListModelsRequest, opts ...grpc.CallOption) (*ListModelsResponse, error) { 6234 out := new(ListModelsResponse) 6235 err := c.cc.Invoke(ctx, "/google.cloud.bigquery.v2.ModelService/ListModels", in, out, opts...) 6236 if err != nil { 6237 return nil, err 6238 } 6239 return out, nil 6240} 6241 6242func (c *modelServiceClient) PatchModel(ctx context.Context, in *PatchModelRequest, opts ...grpc.CallOption) (*Model, error) { 6243 out := new(Model) 6244 err := c.cc.Invoke(ctx, "/google.cloud.bigquery.v2.ModelService/PatchModel", in, out, opts...) 6245 if err != nil { 6246 return nil, err 6247 } 6248 return out, nil 6249} 6250 6251func (c *modelServiceClient) DeleteModel(ctx context.Context, in *DeleteModelRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { 6252 out := new(emptypb.Empty) 6253 err := c.cc.Invoke(ctx, "/google.cloud.bigquery.v2.ModelService/DeleteModel", in, out, opts...) 6254 if err != nil { 6255 return nil, err 6256 } 6257 return out, nil 6258} 6259 6260// ModelServiceServer is the server API for ModelService service. 6261type ModelServiceServer interface { 6262 // Gets the specified model resource by model ID. 6263 GetModel(context.Context, *GetModelRequest) (*Model, error) 6264 // Lists all models in the specified dataset. Requires the READER dataset 6265 // role. After retrieving the list of models, you can get information about a 6266 // particular model by calling the models.get method. 6267 ListModels(context.Context, *ListModelsRequest) (*ListModelsResponse, error) 6268 // Patch specific fields in the specified model. 6269 PatchModel(context.Context, *PatchModelRequest) (*Model, error) 6270 // Deletes the model specified by modelId from the dataset. 6271 DeleteModel(context.Context, *DeleteModelRequest) (*emptypb.Empty, error) 6272} 6273 6274// UnimplementedModelServiceServer can be embedded to have forward compatible implementations. 6275type UnimplementedModelServiceServer struct { 6276} 6277 6278func (*UnimplementedModelServiceServer) GetModel(context.Context, *GetModelRequest) (*Model, error) { 6279 return nil, status.Errorf(codes.Unimplemented, "method GetModel not implemented") 6280} 6281func (*UnimplementedModelServiceServer) ListModels(context.Context, *ListModelsRequest) (*ListModelsResponse, error) { 6282 return nil, status.Errorf(codes.Unimplemented, "method ListModels not implemented") 6283} 6284func (*UnimplementedModelServiceServer) PatchModel(context.Context, *PatchModelRequest) (*Model, error) { 6285 return nil, status.Errorf(codes.Unimplemented, "method PatchModel not implemented") 6286} 6287func (*UnimplementedModelServiceServer) DeleteModel(context.Context, *DeleteModelRequest) (*emptypb.Empty, error) { 6288 return nil, status.Errorf(codes.Unimplemented, "method DeleteModel not implemented") 6289} 6290 6291func RegisterModelServiceServer(s *grpc.Server, srv ModelServiceServer) { 6292 s.RegisterService(&_ModelService_serviceDesc, srv) 6293} 6294 6295func _ModelService_GetModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 6296 in := new(GetModelRequest) 6297 if err := dec(in); err != nil { 6298 return nil, err 6299 } 6300 if interceptor == nil { 6301 return srv.(ModelServiceServer).GetModel(ctx, in) 6302 } 6303 info := &grpc.UnaryServerInfo{ 6304 Server: srv, 6305 FullMethod: "/google.cloud.bigquery.v2.ModelService/GetModel", 6306 } 6307 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 6308 return srv.(ModelServiceServer).GetModel(ctx, req.(*GetModelRequest)) 6309 } 6310 return interceptor(ctx, in, info, handler) 6311} 6312 6313func _ModelService_ListModels_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 6314 in := new(ListModelsRequest) 6315 if err := dec(in); err != nil { 6316 return nil, err 6317 } 6318 if interceptor == nil { 6319 return srv.(ModelServiceServer).ListModels(ctx, in) 6320 } 6321 info := &grpc.UnaryServerInfo{ 6322 Server: srv, 6323 FullMethod: "/google.cloud.bigquery.v2.ModelService/ListModels", 6324 } 6325 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 6326 return srv.(ModelServiceServer).ListModels(ctx, req.(*ListModelsRequest)) 6327 } 6328 return interceptor(ctx, in, info, handler) 6329} 6330 6331func _ModelService_PatchModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 6332 in := new(PatchModelRequest) 6333 if err := dec(in); err != nil { 6334 return nil, err 6335 } 6336 if interceptor == nil { 6337 return srv.(ModelServiceServer).PatchModel(ctx, in) 6338 } 6339 info := &grpc.UnaryServerInfo{ 6340 Server: srv, 6341 FullMethod: "/google.cloud.bigquery.v2.ModelService/PatchModel", 6342 } 6343 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 6344 return srv.(ModelServiceServer).PatchModel(ctx, req.(*PatchModelRequest)) 6345 } 6346 return interceptor(ctx, in, info, handler) 6347} 6348 6349func _ModelService_DeleteModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 6350 in := new(DeleteModelRequest) 6351 if err := dec(in); err != nil { 6352 return nil, err 6353 } 6354 if interceptor == nil { 6355 return srv.(ModelServiceServer).DeleteModel(ctx, in) 6356 } 6357 info := &grpc.UnaryServerInfo{ 6358 Server: srv, 6359 FullMethod: "/google.cloud.bigquery.v2.ModelService/DeleteModel", 6360 } 6361 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 6362 return srv.(ModelServiceServer).DeleteModel(ctx, req.(*DeleteModelRequest)) 6363 } 6364 return interceptor(ctx, in, info, handler) 6365} 6366 6367var _ModelService_serviceDesc = grpc.ServiceDesc{ 6368 ServiceName: "google.cloud.bigquery.v2.ModelService", 6369 HandlerType: (*ModelServiceServer)(nil), 6370 Methods: []grpc.MethodDesc{ 6371 { 6372 MethodName: "GetModel", 6373 Handler: _ModelService_GetModel_Handler, 6374 }, 6375 { 6376 MethodName: "ListModels", 6377 Handler: _ModelService_ListModels_Handler, 6378 }, 6379 { 6380 MethodName: "PatchModel", 6381 Handler: _ModelService_PatchModel_Handler, 6382 }, 6383 { 6384 MethodName: "DeleteModel", 6385 Handler: _ModelService_DeleteModel_Handler, 6386 }, 6387 }, 6388 Streams: []grpc.StreamDesc{}, 6389 Metadata: "google/cloud/bigquery/v2/model.proto", 6390} 6391