...

Source file src/google.golang.org/genproto/googleapis/cloud/bigquery/v2/model.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/bigquery/v2

     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  
    21  package bigquery
    22  
    23  import (
    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  
    39  const (
    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.
    47  type Model_ModelType int32
    48  
    49  const (
    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.
    80  var (
    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  
   115  func (x Model_ModelType) Enum() *Model_ModelType {
   116  	p := new(Model_ModelType)
   117  	*p = x
   118  	return p
   119  }
   120  
   121  func (x Model_ModelType) String() string {
   122  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   123  }
   124  
   125  func (Model_ModelType) Descriptor() protoreflect.EnumDescriptor {
   126  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[0].Descriptor()
   127  }
   128  
   129  func (Model_ModelType) Type() protoreflect.EnumType {
   130  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[0]
   131  }
   132  
   133  func (x Model_ModelType) Number() protoreflect.EnumNumber {
   134  	return protoreflect.EnumNumber(x)
   135  }
   136  
   137  // Deprecated: Use Model_ModelType.Descriptor instead.
   138  func (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.
   143  type Model_LossType int32
   144  
   145  const (
   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.
   154  var (
   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  
   167  func (x Model_LossType) Enum() *Model_LossType {
   168  	p := new(Model_LossType)
   169  	*p = x
   170  	return p
   171  }
   172  
   173  func (x Model_LossType) String() string {
   174  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   175  }
   176  
   177  func (Model_LossType) Descriptor() protoreflect.EnumDescriptor {
   178  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[1].Descriptor()
   179  }
   180  
   181  func (Model_LossType) Type() protoreflect.EnumType {
   182  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[1]
   183  }
   184  
   185  func (x Model_LossType) Number() protoreflect.EnumNumber {
   186  	return protoreflect.EnumNumber(x)
   187  }
   188  
   189  // Deprecated: Use Model_LossType.Descriptor instead.
   190  func (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.
   195  type Model_DistanceType int32
   196  
   197  const (
   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.
   206  var (
   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  
   219  func (x Model_DistanceType) Enum() *Model_DistanceType {
   220  	p := new(Model_DistanceType)
   221  	*p = x
   222  	return p
   223  }
   224  
   225  func (x Model_DistanceType) String() string {
   226  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   227  }
   228  
   229  func (Model_DistanceType) Descriptor() protoreflect.EnumDescriptor {
   230  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[2].Descriptor()
   231  }
   232  
   233  func (Model_DistanceType) Type() protoreflect.EnumType {
   234  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[2]
   235  }
   236  
   237  func (x Model_DistanceType) Number() protoreflect.EnumNumber {
   238  	return protoreflect.EnumNumber(x)
   239  }
   240  
   241  // Deprecated: Use Model_DistanceType.Descriptor instead.
   242  func (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.
   247  type Model_DataSplitMethod int32
   248  
   249  const (
   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.
   265  var (
   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  
   284  func (x Model_DataSplitMethod) Enum() *Model_DataSplitMethod {
   285  	p := new(Model_DataSplitMethod)
   286  	*p = x
   287  	return p
   288  }
   289  
   290  func (x Model_DataSplitMethod) String() string {
   291  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   292  }
   293  
   294  func (Model_DataSplitMethod) Descriptor() protoreflect.EnumDescriptor {
   295  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[3].Descriptor()
   296  }
   297  
   298  func (Model_DataSplitMethod) Type() protoreflect.EnumType {
   299  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[3]
   300  }
   301  
   302  func (x Model_DataSplitMethod) Number() protoreflect.EnumNumber {
   303  	return protoreflect.EnumNumber(x)
   304  }
   305  
   306  // Deprecated: Use Model_DataSplitMethod.Descriptor instead.
   307  func (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.
   312  type Model_DataFrequency int32
   313  
   314  const (
   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.
   335  var (
   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  
   360  func (x Model_DataFrequency) Enum() *Model_DataFrequency {
   361  	p := new(Model_DataFrequency)
   362  	*p = x
   363  	return p
   364  }
   365  
   366  func (x Model_DataFrequency) String() string {
   367  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   368  }
   369  
   370  func (Model_DataFrequency) Descriptor() protoreflect.EnumDescriptor {
   371  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[4].Descriptor()
   372  }
   373  
   374  func (Model_DataFrequency) Type() protoreflect.EnumType {
   375  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[4]
   376  }
   377  
   378  func (x Model_DataFrequency) Number() protoreflect.EnumNumber {
   379  	return protoreflect.EnumNumber(x)
   380  }
   381  
   382  // Deprecated: Use Model_DataFrequency.Descriptor instead.
   383  func (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.
   388  type Model_HolidayRegion int32
   389  
   390  const (
   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.
   533  var (
   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  
   678  func (x Model_HolidayRegion) Enum() *Model_HolidayRegion {
   679  	p := new(Model_HolidayRegion)
   680  	*p = x
   681  	return p
   682  }
   683  
   684  func (x Model_HolidayRegion) String() string {
   685  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   686  }
   687  
   688  func (Model_HolidayRegion) Descriptor() protoreflect.EnumDescriptor {
   689  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[5].Descriptor()
   690  }
   691  
   692  func (Model_HolidayRegion) Type() protoreflect.EnumType {
   693  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[5]
   694  }
   695  
   696  func (x Model_HolidayRegion) Number() protoreflect.EnumNumber {
   697  	return protoreflect.EnumNumber(x)
   698  }
   699  
   700  // Deprecated: Use Model_HolidayRegion.Descriptor instead.
   701  func (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.
   706  type Model_LearnRateStrategy int32
   707  
   708  const (
   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.
   717  var (
   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  
   730  func (x Model_LearnRateStrategy) Enum() *Model_LearnRateStrategy {
   731  	p := new(Model_LearnRateStrategy)
   732  	*p = x
   733  	return p
   734  }
   735  
   736  func (x Model_LearnRateStrategy) String() string {
   737  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   738  }
   739  
   740  func (Model_LearnRateStrategy) Descriptor() protoreflect.EnumDescriptor {
   741  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[6].Descriptor()
   742  }
   743  
   744  func (Model_LearnRateStrategy) Type() protoreflect.EnumType {
   745  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[6]
   746  }
   747  
   748  func (x Model_LearnRateStrategy) Number() protoreflect.EnumNumber {
   749  	return protoreflect.EnumNumber(x)
   750  }
   751  
   752  // Deprecated: Use Model_LearnRateStrategy.Descriptor instead.
   753  func (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.
   758  type Model_OptimizationStrategy int32
   759  
   760  const (
   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.
   769  var (
   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  
   782  func (x Model_OptimizationStrategy) Enum() *Model_OptimizationStrategy {
   783  	p := new(Model_OptimizationStrategy)
   784  	*p = x
   785  	return p
   786  }
   787  
   788  func (x Model_OptimizationStrategy) String() string {
   789  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   790  }
   791  
   792  func (Model_OptimizationStrategy) Descriptor() protoreflect.EnumDescriptor {
   793  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[7].Descriptor()
   794  }
   795  
   796  func (Model_OptimizationStrategy) Type() protoreflect.EnumType {
   797  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[7]
   798  }
   799  
   800  func (x Model_OptimizationStrategy) Number() protoreflect.EnumNumber {
   801  	return protoreflect.EnumNumber(x)
   802  }
   803  
   804  // Deprecated: Use Model_OptimizationStrategy.Descriptor instead.
   805  func (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.
   810  type Model_FeedbackType int32
   811  
   812  const (
   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.
   821  var (
   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  
   834  func (x Model_FeedbackType) Enum() *Model_FeedbackType {
   835  	p := new(Model_FeedbackType)
   836  	*p = x
   837  	return p
   838  }
   839  
   840  func (x Model_FeedbackType) String() string {
   841  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   842  }
   843  
   844  func (Model_FeedbackType) Descriptor() protoreflect.EnumDescriptor {
   845  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[8].Descriptor()
   846  }
   847  
   848  func (Model_FeedbackType) Type() protoreflect.EnumType {
   849  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[8]
   850  }
   851  
   852  func (x Model_FeedbackType) Number() protoreflect.EnumNumber {
   853  	return protoreflect.EnumNumber(x)
   854  }
   855  
   856  // Deprecated: Use Model_FeedbackType.Descriptor instead.
   857  func (Model_FeedbackType) EnumDescriptor() ([]byte, []int) {
   858  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 8}
   859  }
   860  
   861  type Model_SeasonalPeriod_SeasonalPeriodType int32
   862  
   863  const (
   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.
   880  var (
   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  
   901  func (x Model_SeasonalPeriod_SeasonalPeriodType) Enum() *Model_SeasonalPeriod_SeasonalPeriodType {
   902  	p := new(Model_SeasonalPeriod_SeasonalPeriodType)
   903  	*p = x
   904  	return p
   905  }
   906  
   907  func (x Model_SeasonalPeriod_SeasonalPeriodType) String() string {
   908  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   909  }
   910  
   911  func (Model_SeasonalPeriod_SeasonalPeriodType) Descriptor() protoreflect.EnumDescriptor {
   912  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[9].Descriptor()
   913  }
   914  
   915  func (Model_SeasonalPeriod_SeasonalPeriodType) Type() protoreflect.EnumType {
   916  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[9]
   917  }
   918  
   919  func (x Model_SeasonalPeriod_SeasonalPeriodType) Number() protoreflect.EnumNumber {
   920  	return protoreflect.EnumNumber(x)
   921  }
   922  
   923  // Deprecated: Use Model_SeasonalPeriod_SeasonalPeriodType.Descriptor instead.
   924  func (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.
   930  type Model_KmeansEnums_KmeansInitializationMethod int32
   931  
   932  const (
   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.
   945  var (
   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  
   960  func (x Model_KmeansEnums_KmeansInitializationMethod) Enum() *Model_KmeansEnums_KmeansInitializationMethod {
   961  	p := new(Model_KmeansEnums_KmeansInitializationMethod)
   962  	*p = x
   963  	return p
   964  }
   965  
   966  func (x Model_KmeansEnums_KmeansInitializationMethod) String() string {
   967  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   968  }
   969  
   970  func (Model_KmeansEnums_KmeansInitializationMethod) Descriptor() protoreflect.EnumDescriptor {
   971  	return file_google_cloud_bigquery_v2_model_proto_enumTypes[10].Descriptor()
   972  }
   973  
   974  func (Model_KmeansEnums_KmeansInitializationMethod) Type() protoreflect.EnumType {
   975  	return &file_google_cloud_bigquery_v2_model_proto_enumTypes[10]
   976  }
   977  
   978  func (x Model_KmeansEnums_KmeansInitializationMethod) Number() protoreflect.EnumNumber {
   979  	return protoreflect.EnumNumber(x)
   980  }
   981  
   982  // Deprecated: Use Model_KmeansEnums_KmeansInitializationMethod.Descriptor instead.
   983  func (Model_KmeansEnums_KmeansInitializationMethod) EnumDescriptor() ([]byte, []int) {
   984  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 1, 0}
   985  }
   986  
   987  type 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  
  1040  func (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  
  1049  func (x *Model) String() string {
  1050  	return protoimpl.X.MessageStringOf(x)
  1051  }
  1052  
  1053  func (*Model) ProtoMessage() {}
  1054  
  1055  func (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.
  1068  func (*Model) Descriptor() ([]byte, []int) {
  1069  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0}
  1070  }
  1071  
  1072  func (x *Model) GetEtag() string {
  1073  	if x != nil {
  1074  		return x.Etag
  1075  	}
  1076  	return ""
  1077  }
  1078  
  1079  func (x *Model) GetModelReference() *ModelReference {
  1080  	if x != nil {
  1081  		return x.ModelReference
  1082  	}
  1083  	return nil
  1084  }
  1085  
  1086  func (x *Model) GetCreationTime() int64 {
  1087  	if x != nil {
  1088  		return x.CreationTime
  1089  	}
  1090  	return 0
  1091  }
  1092  
  1093  func (x *Model) GetLastModifiedTime() int64 {
  1094  	if x != nil {
  1095  		return x.LastModifiedTime
  1096  	}
  1097  	return 0
  1098  }
  1099  
  1100  func (x *Model) GetDescription() string {
  1101  	if x != nil {
  1102  		return x.Description
  1103  	}
  1104  	return ""
  1105  }
  1106  
  1107  func (x *Model) GetFriendlyName() string {
  1108  	if x != nil {
  1109  		return x.FriendlyName
  1110  	}
  1111  	return ""
  1112  }
  1113  
  1114  func (x *Model) GetLabels() map[string]string {
  1115  	if x != nil {
  1116  		return x.Labels
  1117  	}
  1118  	return nil
  1119  }
  1120  
  1121  func (x *Model) GetExpirationTime() int64 {
  1122  	if x != nil {
  1123  		return x.ExpirationTime
  1124  	}
  1125  	return 0
  1126  }
  1127  
  1128  func (x *Model) GetLocation() string {
  1129  	if x != nil {
  1130  		return x.Location
  1131  	}
  1132  	return ""
  1133  }
  1134  
  1135  func (x *Model) GetEncryptionConfiguration() *EncryptionConfiguration {
  1136  	if x != nil {
  1137  		return x.EncryptionConfiguration
  1138  	}
  1139  	return nil
  1140  }
  1141  
  1142  func (x *Model) GetModelType() Model_ModelType {
  1143  	if x != nil {
  1144  		return x.ModelType
  1145  	}
  1146  	return Model_MODEL_TYPE_UNSPECIFIED
  1147  }
  1148  
  1149  func (x *Model) GetTrainingRuns() []*Model_TrainingRun {
  1150  	if x != nil {
  1151  		return x.TrainingRuns
  1152  	}
  1153  	return nil
  1154  }
  1155  
  1156  func (x *Model) GetFeatureColumns() []*StandardSqlField {
  1157  	if x != nil {
  1158  		return x.FeatureColumns
  1159  	}
  1160  	return nil
  1161  }
  1162  
  1163  func (x *Model) GetLabelColumns() []*StandardSqlField {
  1164  	if x != nil {
  1165  		return x.LabelColumns
  1166  	}
  1167  	return nil
  1168  }
  1169  
  1170  // Deprecated: Do not use.
  1171  func (x *Model) GetBestTrialId() int64 {
  1172  	if x != nil {
  1173  		return x.BestTrialId
  1174  	}
  1175  	return 0
  1176  }
  1177  
  1178  type 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  
  1191  func (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  
  1200  func (x *GetModelRequest) String() string {
  1201  	return protoimpl.X.MessageStringOf(x)
  1202  }
  1203  
  1204  func (*GetModelRequest) ProtoMessage() {}
  1205  
  1206  func (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.
  1219  func (*GetModelRequest) Descriptor() ([]byte, []int) {
  1220  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{1}
  1221  }
  1222  
  1223  func (x *GetModelRequest) GetProjectId() string {
  1224  	if x != nil {
  1225  		return x.ProjectId
  1226  	}
  1227  	return ""
  1228  }
  1229  
  1230  func (x *GetModelRequest) GetDatasetId() string {
  1231  	if x != nil {
  1232  		return x.DatasetId
  1233  	}
  1234  	return ""
  1235  }
  1236  
  1237  func (x *GetModelRequest) GetModelId() string {
  1238  	if x != nil {
  1239  		return x.ModelId
  1240  	}
  1241  	return ""
  1242  }
  1243  
  1244  type 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  
  1261  func (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  
  1270  func (x *PatchModelRequest) String() string {
  1271  	return protoimpl.X.MessageStringOf(x)
  1272  }
  1273  
  1274  func (*PatchModelRequest) ProtoMessage() {}
  1275  
  1276  func (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.
  1289  func (*PatchModelRequest) Descriptor() ([]byte, []int) {
  1290  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{2}
  1291  }
  1292  
  1293  func (x *PatchModelRequest) GetProjectId() string {
  1294  	if x != nil {
  1295  		return x.ProjectId
  1296  	}
  1297  	return ""
  1298  }
  1299  
  1300  func (x *PatchModelRequest) GetDatasetId() string {
  1301  	if x != nil {
  1302  		return x.DatasetId
  1303  	}
  1304  	return ""
  1305  }
  1306  
  1307  func (x *PatchModelRequest) GetModelId() string {
  1308  	if x != nil {
  1309  		return x.ModelId
  1310  	}
  1311  	return ""
  1312  }
  1313  
  1314  func (x *PatchModelRequest) GetModel() *Model {
  1315  	if x != nil {
  1316  		return x.Model
  1317  	}
  1318  	return nil
  1319  }
  1320  
  1321  type 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  
  1334  func (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  
  1343  func (x *DeleteModelRequest) String() string {
  1344  	return protoimpl.X.MessageStringOf(x)
  1345  }
  1346  
  1347  func (*DeleteModelRequest) ProtoMessage() {}
  1348  
  1349  func (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.
  1362  func (*DeleteModelRequest) Descriptor() ([]byte, []int) {
  1363  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{3}
  1364  }
  1365  
  1366  func (x *DeleteModelRequest) GetProjectId() string {
  1367  	if x != nil {
  1368  		return x.ProjectId
  1369  	}
  1370  	return ""
  1371  }
  1372  
  1373  func (x *DeleteModelRequest) GetDatasetId() string {
  1374  	if x != nil {
  1375  		return x.DatasetId
  1376  	}
  1377  	return ""
  1378  }
  1379  
  1380  func (x *DeleteModelRequest) GetModelId() string {
  1381  	if x != nil {
  1382  		return x.ModelId
  1383  	}
  1384  	return ""
  1385  }
  1386  
  1387  type 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  
  1404  func (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  
  1413  func (x *ListModelsRequest) String() string {
  1414  	return protoimpl.X.MessageStringOf(x)
  1415  }
  1416  
  1417  func (*ListModelsRequest) ProtoMessage() {}
  1418  
  1419  func (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.
  1432  func (*ListModelsRequest) Descriptor() ([]byte, []int) {
  1433  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{4}
  1434  }
  1435  
  1436  func (x *ListModelsRequest) GetProjectId() string {
  1437  	if x != nil {
  1438  		return x.ProjectId
  1439  	}
  1440  	return ""
  1441  }
  1442  
  1443  func (x *ListModelsRequest) GetDatasetId() string {
  1444  	if x != nil {
  1445  		return x.DatasetId
  1446  	}
  1447  	return ""
  1448  }
  1449  
  1450  func (x *ListModelsRequest) GetMaxResults() *wrapperspb.UInt32Value {
  1451  	if x != nil {
  1452  		return x.MaxResults
  1453  	}
  1454  	return nil
  1455  }
  1456  
  1457  func (x *ListModelsRequest) GetPageToken() string {
  1458  	if x != nil {
  1459  		return x.PageToken
  1460  	}
  1461  	return ""
  1462  }
  1463  
  1464  type 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  
  1477  func (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  
  1486  func (x *ListModelsResponse) String() string {
  1487  	return protoimpl.X.MessageStringOf(x)
  1488  }
  1489  
  1490  func (*ListModelsResponse) ProtoMessage() {}
  1491  
  1492  func (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.
  1505  func (*ListModelsResponse) Descriptor() ([]byte, []int) {
  1506  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{5}
  1507  }
  1508  
  1509  func (x *ListModelsResponse) GetModels() []*Model {
  1510  	if x != nil {
  1511  		return x.Models
  1512  	}
  1513  	return nil
  1514  }
  1515  
  1516  func (x *ListModelsResponse) GetNextPageToken() string {
  1517  	if x != nil {
  1518  		return x.NextPageToken
  1519  	}
  1520  	return ""
  1521  }
  1522  
  1523  type Model_SeasonalPeriod struct {
  1524  	state         protoimpl.MessageState
  1525  	sizeCache     protoimpl.SizeCache
  1526  	unknownFields protoimpl.UnknownFields
  1527  }
  1528  
  1529  func (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  
  1538  func (x *Model_SeasonalPeriod) String() string {
  1539  	return protoimpl.X.MessageStringOf(x)
  1540  }
  1541  
  1542  func (*Model_SeasonalPeriod) ProtoMessage() {}
  1543  
  1544  func (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.
  1557  func (*Model_SeasonalPeriod) Descriptor() ([]byte, []int) {
  1558  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 0}
  1559  }
  1560  
  1561  type Model_KmeansEnums struct {
  1562  	state         protoimpl.MessageState
  1563  	sizeCache     protoimpl.SizeCache
  1564  	unknownFields protoimpl.UnknownFields
  1565  }
  1566  
  1567  func (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  
  1576  func (x *Model_KmeansEnums) String() string {
  1577  	return protoimpl.X.MessageStringOf(x)
  1578  }
  1579  
  1580  func (*Model_KmeansEnums) ProtoMessage() {}
  1581  
  1582  func (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.
  1595  func (*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.
  1601  type 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  
  1618  func (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  
  1627  func (x *Model_RegressionMetrics) String() string {
  1628  	return protoimpl.X.MessageStringOf(x)
  1629  }
  1630  
  1631  func (*Model_RegressionMetrics) ProtoMessage() {}
  1632  
  1633  func (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.
  1646  func (*Model_RegressionMetrics) Descriptor() ([]byte, []int) {
  1647  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 2}
  1648  }
  1649  
  1650  func (x *Model_RegressionMetrics) GetMeanAbsoluteError() *wrapperspb.DoubleValue {
  1651  	if x != nil {
  1652  		return x.MeanAbsoluteError
  1653  	}
  1654  	return nil
  1655  }
  1656  
  1657  func (x *Model_RegressionMetrics) GetMeanSquaredError() *wrapperspb.DoubleValue {
  1658  	if x != nil {
  1659  		return x.MeanSquaredError
  1660  	}
  1661  	return nil
  1662  }
  1663  
  1664  func (x *Model_RegressionMetrics) GetMeanSquaredLogError() *wrapperspb.DoubleValue {
  1665  	if x != nil {
  1666  		return x.MeanSquaredLogError
  1667  	}
  1668  	return nil
  1669  }
  1670  
  1671  func (x *Model_RegressionMetrics) GetMedianAbsoluteError() *wrapperspb.DoubleValue {
  1672  	if x != nil {
  1673  		return x.MedianAbsoluteError
  1674  	}
  1675  	return nil
  1676  }
  1677  
  1678  func (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.
  1691  type 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  
  1721  func (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  
  1730  func (x *Model_AggregateClassificationMetrics) String() string {
  1731  	return protoimpl.X.MessageStringOf(x)
  1732  }
  1733  
  1734  func (*Model_AggregateClassificationMetrics) ProtoMessage() {}
  1735  
  1736  func (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.
  1749  func (*Model_AggregateClassificationMetrics) Descriptor() ([]byte, []int) {
  1750  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 3}
  1751  }
  1752  
  1753  func (x *Model_AggregateClassificationMetrics) GetPrecision() *wrapperspb.DoubleValue {
  1754  	if x != nil {
  1755  		return x.Precision
  1756  	}
  1757  	return nil
  1758  }
  1759  
  1760  func (x *Model_AggregateClassificationMetrics) GetRecall() *wrapperspb.DoubleValue {
  1761  	if x != nil {
  1762  		return x.Recall
  1763  	}
  1764  	return nil
  1765  }
  1766  
  1767  func (x *Model_AggregateClassificationMetrics) GetAccuracy() *wrapperspb.DoubleValue {
  1768  	if x != nil {
  1769  		return x.Accuracy
  1770  	}
  1771  	return nil
  1772  }
  1773  
  1774  func (x *Model_AggregateClassificationMetrics) GetThreshold() *wrapperspb.DoubleValue {
  1775  	if x != nil {
  1776  		return x.Threshold
  1777  	}
  1778  	return nil
  1779  }
  1780  
  1781  func (x *Model_AggregateClassificationMetrics) GetF1Score() *wrapperspb.DoubleValue {
  1782  	if x != nil {
  1783  		return x.F1Score
  1784  	}
  1785  	return nil
  1786  }
  1787  
  1788  func (x *Model_AggregateClassificationMetrics) GetLogLoss() *wrapperspb.DoubleValue {
  1789  	if x != nil {
  1790  		return x.LogLoss
  1791  	}
  1792  	return nil
  1793  }
  1794  
  1795  func (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.
  1803  type 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  
  1818  func (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  
  1827  func (x *Model_BinaryClassificationMetrics) String() string {
  1828  	return protoimpl.X.MessageStringOf(x)
  1829  }
  1830  
  1831  func (*Model_BinaryClassificationMetrics) ProtoMessage() {}
  1832  
  1833  func (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.
  1846  func (*Model_BinaryClassificationMetrics) Descriptor() ([]byte, []int) {
  1847  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 4}
  1848  }
  1849  
  1850  func (x *Model_BinaryClassificationMetrics) GetAggregateClassificationMetrics() *Model_AggregateClassificationMetrics {
  1851  	if x != nil {
  1852  		return x.AggregateClassificationMetrics
  1853  	}
  1854  	return nil
  1855  }
  1856  
  1857  func (x *Model_BinaryClassificationMetrics) GetBinaryConfusionMatrixList() []*Model_BinaryClassificationMetrics_BinaryConfusionMatrix {
  1858  	if x != nil {
  1859  		return x.BinaryConfusionMatrixList
  1860  	}
  1861  	return nil
  1862  }
  1863  
  1864  func (x *Model_BinaryClassificationMetrics) GetPositiveLabel() string {
  1865  	if x != nil {
  1866  		return x.PositiveLabel
  1867  	}
  1868  	return ""
  1869  }
  1870  
  1871  func (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.
  1879  type 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  
  1890  func (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  
  1899  func (x *Model_MultiClassClassificationMetrics) String() string {
  1900  	return protoimpl.X.MessageStringOf(x)
  1901  }
  1902  
  1903  func (*Model_MultiClassClassificationMetrics) ProtoMessage() {}
  1904  
  1905  func (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.
  1918  func (*Model_MultiClassClassificationMetrics) Descriptor() ([]byte, []int) {
  1919  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5}
  1920  }
  1921  
  1922  func (x *Model_MultiClassClassificationMetrics) GetAggregateClassificationMetrics() *Model_AggregateClassificationMetrics {
  1923  	if x != nil {
  1924  		return x.AggregateClassificationMetrics
  1925  	}
  1926  	return nil
  1927  }
  1928  
  1929  func (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.
  1937  type 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  
  1950  func (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  
  1959  func (x *Model_ClusteringMetrics) String() string {
  1960  	return protoimpl.X.MessageStringOf(x)
  1961  }
  1962  
  1963  func (*Model_ClusteringMetrics) ProtoMessage() {}
  1964  
  1965  func (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.
  1978  func (*Model_ClusteringMetrics) Descriptor() ([]byte, []int) {
  1979  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6}
  1980  }
  1981  
  1982  func (x *Model_ClusteringMetrics) GetDaviesBouldinIndex() *wrapperspb.DoubleValue {
  1983  	if x != nil {
  1984  		return x.DaviesBouldinIndex
  1985  	}
  1986  	return nil
  1987  }
  1988  
  1989  func (x *Model_ClusteringMetrics) GetMeanSquaredDistance() *wrapperspb.DoubleValue {
  1990  	if x != nil {
  1991  		return x.MeanSquaredDistance
  1992  	}
  1993  	return nil
  1994  }
  1995  
  1996  func (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.
  2005  type 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  
  2027  func (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  
  2036  func (x *Model_RankingMetrics) String() string {
  2037  	return protoimpl.X.MessageStringOf(x)
  2038  }
  2039  
  2040  func (*Model_RankingMetrics) ProtoMessage() {}
  2041  
  2042  func (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.
  2055  func (*Model_RankingMetrics) Descriptor() ([]byte, []int) {
  2056  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 7}
  2057  }
  2058  
  2059  func (x *Model_RankingMetrics) GetMeanAveragePrecision() *wrapperspb.DoubleValue {
  2060  	if x != nil {
  2061  		return x.MeanAveragePrecision
  2062  	}
  2063  	return nil
  2064  }
  2065  
  2066  func (x *Model_RankingMetrics) GetMeanSquaredError() *wrapperspb.DoubleValue {
  2067  	if x != nil {
  2068  		return x.MeanSquaredError
  2069  	}
  2070  	return nil
  2071  }
  2072  
  2073  func (x *Model_RankingMetrics) GetNormalizedDiscountedCumulativeGain() *wrapperspb.DoubleValue {
  2074  	if x != nil {
  2075  		return x.NormalizedDiscountedCumulativeGain
  2076  	}
  2077  	return nil
  2078  }
  2079  
  2080  func (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.
  2088  type 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  
  2120  func (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  
  2129  func (x *Model_ArimaForecastingMetrics) String() string {
  2130  	return protoimpl.X.MessageStringOf(x)
  2131  }
  2132  
  2133  func (*Model_ArimaForecastingMetrics) ProtoMessage() {}
  2134  
  2135  func (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.
  2148  func (*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.
  2153  func (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.
  2161  func (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.
  2169  func (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.
  2177  func (x *Model_ArimaForecastingMetrics) GetHasDrift() []bool {
  2178  	if x != nil {
  2179  		return x.HasDrift
  2180  	}
  2181  	return nil
  2182  }
  2183  
  2184  // Deprecated: Do not use.
  2185  func (x *Model_ArimaForecastingMetrics) GetTimeSeriesId() []string {
  2186  	if x != nil {
  2187  		return x.TimeSeriesId
  2188  	}
  2189  	return nil
  2190  }
  2191  
  2192  func (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.
  2202  type 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  
  2217  func (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  
  2226  func (x *Model_EvaluationMetrics) String() string {
  2227  	return protoimpl.X.MessageStringOf(x)
  2228  }
  2229  
  2230  func (*Model_EvaluationMetrics) ProtoMessage() {}
  2231  
  2232  func (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.
  2245  func (*Model_EvaluationMetrics) Descriptor() ([]byte, []int) {
  2246  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 9}
  2247  }
  2248  
  2249  func (m *Model_EvaluationMetrics) GetMetrics() isModel_EvaluationMetrics_Metrics {
  2250  	if m != nil {
  2251  		return m.Metrics
  2252  	}
  2253  	return nil
  2254  }
  2255  
  2256  func (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  
  2263  func (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  
  2270  func (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  
  2277  func (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  
  2284  func (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  
  2291  func (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  
  2298  type isModel_EvaluationMetrics_Metrics interface {
  2299  	isModel_EvaluationMetrics_Metrics()
  2300  }
  2301  
  2302  type 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  
  2308  type 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  
  2313  type 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  
  2318  type 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  
  2323  type 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  
  2328  type 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  
  2333  func (*Model_EvaluationMetrics_RegressionMetrics) isModel_EvaluationMetrics_Metrics() {}
  2334  
  2335  func (*Model_EvaluationMetrics_BinaryClassificationMetrics) isModel_EvaluationMetrics_Metrics() {}
  2336  
  2337  func (*Model_EvaluationMetrics_MultiClassClassificationMetrics) isModel_EvaluationMetrics_Metrics() {}
  2338  
  2339  func (*Model_EvaluationMetrics_ClusteringMetrics) isModel_EvaluationMetrics_Metrics() {}
  2340  
  2341  func (*Model_EvaluationMetrics_RankingMetrics) isModel_EvaluationMetrics_Metrics() {}
  2342  
  2343  func (*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.
  2347  type 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  
  2358  func (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  
  2367  func (x *Model_DataSplitResult) String() string {
  2368  	return protoimpl.X.MessageStringOf(x)
  2369  }
  2370  
  2371  func (*Model_DataSplitResult) ProtoMessage() {}
  2372  
  2373  func (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.
  2386  func (*Model_DataSplitResult) Descriptor() ([]byte, []int) {
  2387  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 10}
  2388  }
  2389  
  2390  func (x *Model_DataSplitResult) GetTrainingTable() *TableReference {
  2391  	if x != nil {
  2392  		return x.TrainingTable
  2393  	}
  2394  	return nil
  2395  }
  2396  
  2397  func (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.
  2405  type 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  
  2418  func (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  
  2427  func (x *Model_ArimaOrder) String() string {
  2428  	return protoimpl.X.MessageStringOf(x)
  2429  }
  2430  
  2431  func (*Model_ArimaOrder) ProtoMessage() {}
  2432  
  2433  func (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.
  2446  func (*Model_ArimaOrder) Descriptor() ([]byte, []int) {
  2447  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 11}
  2448  }
  2449  
  2450  func (x *Model_ArimaOrder) GetP() int64 {
  2451  	if x != nil {
  2452  		return x.P
  2453  	}
  2454  	return 0
  2455  }
  2456  
  2457  func (x *Model_ArimaOrder) GetD() int64 {
  2458  	if x != nil {
  2459  		return x.D
  2460  	}
  2461  	return 0
  2462  }
  2463  
  2464  func (x *Model_ArimaOrder) GetQ() int64 {
  2465  	if x != nil {
  2466  		return x.Q
  2467  	}
  2468  	return 0
  2469  }
  2470  
  2471  // ARIMA model fitting metrics.
  2472  type 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  
  2485  func (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  
  2494  func (x *Model_ArimaFittingMetrics) String() string {
  2495  	return protoimpl.X.MessageStringOf(x)
  2496  }
  2497  
  2498  func (*Model_ArimaFittingMetrics) ProtoMessage() {}
  2499  
  2500  func (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.
  2513  func (*Model_ArimaFittingMetrics) Descriptor() ([]byte, []int) {
  2514  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 12}
  2515  }
  2516  
  2517  func (x *Model_ArimaFittingMetrics) GetLogLikelihood() float64 {
  2518  	if x != nil {
  2519  		return x.LogLikelihood
  2520  	}
  2521  	return 0
  2522  }
  2523  
  2524  func (x *Model_ArimaFittingMetrics) GetAic() float64 {
  2525  	if x != nil {
  2526  		return x.Aic
  2527  	}
  2528  	return 0
  2529  }
  2530  
  2531  func (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.
  2540  type 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  
  2554  func (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  
  2563  func (x *Model_GlobalExplanation) String() string {
  2564  	return protoimpl.X.MessageStringOf(x)
  2565  }
  2566  
  2567  func (*Model_GlobalExplanation) ProtoMessage() {}
  2568  
  2569  func (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.
  2582  func (*Model_GlobalExplanation) Descriptor() ([]byte, []int) {
  2583  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 13}
  2584  }
  2585  
  2586  func (x *Model_GlobalExplanation) GetExplanations() []*Model_GlobalExplanation_Explanation {
  2587  	if x != nil {
  2588  		return x.Explanations
  2589  	}
  2590  	return nil
  2591  }
  2592  
  2593  func (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.
  2601  type 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  
  2625  func (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  
  2634  func (x *Model_TrainingRun) String() string {
  2635  	return protoimpl.X.MessageStringOf(x)
  2636  }
  2637  
  2638  func (*Model_TrainingRun) ProtoMessage() {}
  2639  
  2640  func (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.
  2653  func (*Model_TrainingRun) Descriptor() ([]byte, []int) {
  2654  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14}
  2655  }
  2656  
  2657  func (x *Model_TrainingRun) GetTrainingOptions() *Model_TrainingRun_TrainingOptions {
  2658  	if x != nil {
  2659  		return x.TrainingOptions
  2660  	}
  2661  	return nil
  2662  }
  2663  
  2664  func (x *Model_TrainingRun) GetStartTime() *timestamppb.Timestamp {
  2665  	if x != nil {
  2666  		return x.StartTime
  2667  	}
  2668  	return nil
  2669  }
  2670  
  2671  func (x *Model_TrainingRun) GetResults() []*Model_TrainingRun_IterationResult {
  2672  	if x != nil {
  2673  		return x.Results
  2674  	}
  2675  	return nil
  2676  }
  2677  
  2678  func (x *Model_TrainingRun) GetEvaluationMetrics() *Model_EvaluationMetrics {
  2679  	if x != nil {
  2680  		return x.EvaluationMetrics
  2681  	}
  2682  	return nil
  2683  }
  2684  
  2685  func (x *Model_TrainingRun) GetDataSplitResult() *Model_DataSplitResult {
  2686  	if x != nil {
  2687  		return x.DataSplitResult
  2688  	}
  2689  	return nil
  2690  }
  2691  
  2692  func (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.
  2700  type 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  
  2727  func (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  
  2736  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) String() string {
  2737  	return protoimpl.X.MessageStringOf(x)
  2738  }
  2739  
  2740  func (*Model_BinaryClassificationMetrics_BinaryConfusionMatrix) ProtoMessage() {}
  2741  
  2742  func (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.
  2755  func (*Model_BinaryClassificationMetrics_BinaryConfusionMatrix) Descriptor() ([]byte, []int) {
  2756  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 4, 0}
  2757  }
  2758  
  2759  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetPositiveClassThreshold() *wrapperspb.DoubleValue {
  2760  	if x != nil {
  2761  		return x.PositiveClassThreshold
  2762  	}
  2763  	return nil
  2764  }
  2765  
  2766  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetTruePositives() *wrapperspb.Int64Value {
  2767  	if x != nil {
  2768  		return x.TruePositives
  2769  	}
  2770  	return nil
  2771  }
  2772  
  2773  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetFalsePositives() *wrapperspb.Int64Value {
  2774  	if x != nil {
  2775  		return x.FalsePositives
  2776  	}
  2777  	return nil
  2778  }
  2779  
  2780  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetTrueNegatives() *wrapperspb.Int64Value {
  2781  	if x != nil {
  2782  		return x.TrueNegatives
  2783  	}
  2784  	return nil
  2785  }
  2786  
  2787  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetFalseNegatives() *wrapperspb.Int64Value {
  2788  	if x != nil {
  2789  		return x.FalseNegatives
  2790  	}
  2791  	return nil
  2792  }
  2793  
  2794  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetPrecision() *wrapperspb.DoubleValue {
  2795  	if x != nil {
  2796  		return x.Precision
  2797  	}
  2798  	return nil
  2799  }
  2800  
  2801  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetRecall() *wrapperspb.DoubleValue {
  2802  	if x != nil {
  2803  		return x.Recall
  2804  	}
  2805  	return nil
  2806  }
  2807  
  2808  func (x *Model_BinaryClassificationMetrics_BinaryConfusionMatrix) GetF1Score() *wrapperspb.DoubleValue {
  2809  	if x != nil {
  2810  		return x.F1Score
  2811  	}
  2812  	return nil
  2813  }
  2814  
  2815  func (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.
  2823  type 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  
  2835  func (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  
  2844  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) String() string {
  2845  	return protoimpl.X.MessageStringOf(x)
  2846  }
  2847  
  2848  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix) ProtoMessage() {}
  2849  
  2850  func (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.
  2863  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix) Descriptor() ([]byte, []int) {
  2864  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0}
  2865  }
  2866  
  2867  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix) GetConfidenceThreshold() *wrapperspb.DoubleValue {
  2868  	if x != nil {
  2869  		return x.ConfidenceThreshold
  2870  	}
  2871  	return nil
  2872  }
  2873  
  2874  func (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.
  2882  type 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  
  2895  func (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  
  2904  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) String() string {
  2905  	return protoimpl.X.MessageStringOf(x)
  2906  }
  2907  
  2908  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) ProtoMessage() {}
  2909  
  2910  func (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.
  2923  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) Descriptor() ([]byte, []int) {
  2924  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0, 0}
  2925  }
  2926  
  2927  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Entry) GetPredictedLabel() string {
  2928  	if x != nil {
  2929  		return x.PredictedLabel
  2930  	}
  2931  	return ""
  2932  }
  2933  
  2934  func (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.
  2942  type 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  
  2953  func (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  
  2962  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) String() string {
  2963  	return protoimpl.X.MessageStringOf(x)
  2964  }
  2965  
  2966  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) ProtoMessage() {}
  2967  
  2968  func (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.
  2981  func (*Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) Descriptor() ([]byte, []int) {
  2982  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 5, 0, 1}
  2983  }
  2984  
  2985  func (x *Model_MultiClassClassificationMetrics_ConfusionMatrix_Row) GetActualLabel() string {
  2986  	if x != nil {
  2987  		return x.ActualLabel
  2988  	}
  2989  	return ""
  2990  }
  2991  
  2992  func (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.
  3000  type 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  
  3013  func (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  
  3022  func (x *Model_ClusteringMetrics_Cluster) String() string {
  3023  	return protoimpl.X.MessageStringOf(x)
  3024  }
  3025  
  3026  func (*Model_ClusteringMetrics_Cluster) ProtoMessage() {}
  3027  
  3028  func (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.
  3041  func (*Model_ClusteringMetrics_Cluster) Descriptor() ([]byte, []int) {
  3042  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0}
  3043  }
  3044  
  3045  func (x *Model_ClusteringMetrics_Cluster) GetCentroidId() int64 {
  3046  	if x != nil {
  3047  		return x.CentroidId
  3048  	}
  3049  	return 0
  3050  }
  3051  
  3052  func (x *Model_ClusteringMetrics_Cluster) GetFeatureValues() []*Model_ClusteringMetrics_Cluster_FeatureValue {
  3053  	if x != nil {
  3054  		return x.FeatureValues
  3055  	}
  3056  	return nil
  3057  }
  3058  
  3059  func (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.
  3067  type 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  
  3080  func (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  
  3089  func (x *Model_ClusteringMetrics_Cluster_FeatureValue) String() string {
  3090  	return protoimpl.X.MessageStringOf(x)
  3091  }
  3092  
  3093  func (*Model_ClusteringMetrics_Cluster_FeatureValue) ProtoMessage() {}
  3094  
  3095  func (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.
  3108  func (*Model_ClusteringMetrics_Cluster_FeatureValue) Descriptor() ([]byte, []int) {
  3109  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 6, 0, 0}
  3110  }
  3111  
  3112  func (x *Model_ClusteringMetrics_Cluster_FeatureValue) GetFeatureColumn() string {
  3113  	if x != nil {
  3114  		return x.FeatureColumn
  3115  	}
  3116  	return ""
  3117  }
  3118  
  3119  func (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  
  3126  func (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  
  3133  func (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  
  3140  type isModel_ClusteringMetrics_Cluster_FeatureValue_Value interface {
  3141  	isModel_ClusteringMetrics_Cluster_FeatureValue_Value()
  3142  }
  3143  
  3144  type 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  
  3150  type 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  
  3155  func (*Model_ClusteringMetrics_Cluster_FeatureValue_NumericalValue) isModel_ClusteringMetrics_Cluster_FeatureValue_Value() {
  3156  }
  3157  
  3158  func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_) isModel_ClusteringMetrics_Cluster_FeatureValue_Value() {
  3159  }
  3160  
  3161  // Representative value of a categorical feature.
  3162  type 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  
  3174  func (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  
  3183  func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) String() string {
  3184  	return protoimpl.X.MessageStringOf(x)
  3185  }
  3186  
  3187  func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue) ProtoMessage() {}
  3188  
  3189  func (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.
  3202  func (*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  
  3206  func (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.
  3214  type 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  
  3226  func (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  
  3235  func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) String() string {
  3236  	return protoimpl.X.MessageStringOf(x)
  3237  }
  3238  
  3239  func (*Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) ProtoMessage() {}
  3240  
  3241  func (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.
  3254  func (*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  
  3258  func (x *Model_ClusteringMetrics_Cluster_FeatureValue_CategoricalValue_CategoryCount) GetCategory() string {
  3259  	if x != nil {
  3260  		return x.Category
  3261  	}
  3262  	return ""
  3263  }
  3264  
  3265  func (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.
  3273  type 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  
  3308  func (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  
  3317  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) String() string {
  3318  	return protoimpl.X.MessageStringOf(x)
  3319  }
  3320  
  3321  func (*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) ProtoMessage() {}
  3322  
  3323  func (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.
  3336  func (*Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) Descriptor() ([]byte, []int) {
  3337  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 8, 0}
  3338  }
  3339  
  3340  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetNonSeasonalOrder() *Model_ArimaOrder {
  3341  	if x != nil {
  3342  		return x.NonSeasonalOrder
  3343  	}
  3344  	return nil
  3345  }
  3346  
  3347  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetArimaFittingMetrics() *Model_ArimaFittingMetrics {
  3348  	if x != nil {
  3349  		return x.ArimaFittingMetrics
  3350  	}
  3351  	return nil
  3352  }
  3353  
  3354  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasDrift() bool {
  3355  	if x != nil {
  3356  		return x.HasDrift
  3357  	}
  3358  	return false
  3359  }
  3360  
  3361  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetTimeSeriesId() string {
  3362  	if x != nil {
  3363  		return x.TimeSeriesId
  3364  	}
  3365  	return ""
  3366  }
  3367  
  3368  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetTimeSeriesIds() []string {
  3369  	if x != nil {
  3370  		return x.TimeSeriesIds
  3371  	}
  3372  	return nil
  3373  }
  3374  
  3375  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType {
  3376  	if x != nil {
  3377  		return x.SeasonalPeriods
  3378  	}
  3379  	return nil
  3380  }
  3381  
  3382  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasHolidayEffect() *wrapperspb.BoolValue {
  3383  	if x != nil {
  3384  		return x.HasHolidayEffect
  3385  	}
  3386  	return nil
  3387  }
  3388  
  3389  func (x *Model_ArimaForecastingMetrics_ArimaSingleModelForecastingMetrics) GetHasSpikesAndDips() *wrapperspb.BoolValue {
  3390  	if x != nil {
  3391  		return x.HasSpikesAndDips
  3392  	}
  3393  	return nil
  3394  }
  3395  
  3396  func (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.
  3404  type 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  
  3417  func (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  
  3426  func (x *Model_GlobalExplanation_Explanation) String() string {
  3427  	return protoimpl.X.MessageStringOf(x)
  3428  }
  3429  
  3430  func (*Model_GlobalExplanation_Explanation) ProtoMessage() {}
  3431  
  3432  func (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.
  3445  func (*Model_GlobalExplanation_Explanation) Descriptor() ([]byte, []int) {
  3446  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 13, 0}
  3447  }
  3448  
  3449  func (x *Model_GlobalExplanation_Explanation) GetFeatureName() string {
  3450  	if x != nil {
  3451  		return x.FeatureName
  3452  	}
  3453  	return ""
  3454  }
  3455  
  3456  func (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.
  3464  type 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  
  3597  func (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  
  3606  func (x *Model_TrainingRun_TrainingOptions) String() string {
  3607  	return protoimpl.X.MessageStringOf(x)
  3608  }
  3609  
  3610  func (*Model_TrainingRun_TrainingOptions) ProtoMessage() {}
  3611  
  3612  func (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.
  3625  func (*Model_TrainingRun_TrainingOptions) Descriptor() ([]byte, []int) {
  3626  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 0}
  3627  }
  3628  
  3629  func (x *Model_TrainingRun_TrainingOptions) GetMaxIterations() int64 {
  3630  	if x != nil {
  3631  		return x.MaxIterations
  3632  	}
  3633  	return 0
  3634  }
  3635  
  3636  func (x *Model_TrainingRun_TrainingOptions) GetLossType() Model_LossType {
  3637  	if x != nil {
  3638  		return x.LossType
  3639  	}
  3640  	return Model_LOSS_TYPE_UNSPECIFIED
  3641  }
  3642  
  3643  func (x *Model_TrainingRun_TrainingOptions) GetLearnRate() float64 {
  3644  	if x != nil {
  3645  		return x.LearnRate
  3646  	}
  3647  	return 0
  3648  }
  3649  
  3650  func (x *Model_TrainingRun_TrainingOptions) GetL1Regularization() *wrapperspb.DoubleValue {
  3651  	if x != nil {
  3652  		return x.L1Regularization
  3653  	}
  3654  	return nil
  3655  }
  3656  
  3657  func (x *Model_TrainingRun_TrainingOptions) GetL2Regularization() *wrapperspb.DoubleValue {
  3658  	if x != nil {
  3659  		return x.L2Regularization
  3660  	}
  3661  	return nil
  3662  }
  3663  
  3664  func (x *Model_TrainingRun_TrainingOptions) GetMinRelativeProgress() *wrapperspb.DoubleValue {
  3665  	if x != nil {
  3666  		return x.MinRelativeProgress
  3667  	}
  3668  	return nil
  3669  }
  3670  
  3671  func (x *Model_TrainingRun_TrainingOptions) GetWarmStart() *wrapperspb.BoolValue {
  3672  	if x != nil {
  3673  		return x.WarmStart
  3674  	}
  3675  	return nil
  3676  }
  3677  
  3678  func (x *Model_TrainingRun_TrainingOptions) GetEarlyStop() *wrapperspb.BoolValue {
  3679  	if x != nil {
  3680  		return x.EarlyStop
  3681  	}
  3682  	return nil
  3683  }
  3684  
  3685  func (x *Model_TrainingRun_TrainingOptions) GetInputLabelColumns() []string {
  3686  	if x != nil {
  3687  		return x.InputLabelColumns
  3688  	}
  3689  	return nil
  3690  }
  3691  
  3692  func (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  
  3699  func (x *Model_TrainingRun_TrainingOptions) GetDataSplitEvalFraction() float64 {
  3700  	if x != nil {
  3701  		return x.DataSplitEvalFraction
  3702  	}
  3703  	return 0
  3704  }
  3705  
  3706  func (x *Model_TrainingRun_TrainingOptions) GetDataSplitColumn() string {
  3707  	if x != nil {
  3708  		return x.DataSplitColumn
  3709  	}
  3710  	return ""
  3711  }
  3712  
  3713  func (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  
  3720  func (x *Model_TrainingRun_TrainingOptions) GetInitialLearnRate() float64 {
  3721  	if x != nil {
  3722  		return x.InitialLearnRate
  3723  	}
  3724  	return 0
  3725  }
  3726  
  3727  func (x *Model_TrainingRun_TrainingOptions) GetLabelClassWeights() map[string]float64 {
  3728  	if x != nil {
  3729  		return x.LabelClassWeights
  3730  	}
  3731  	return nil
  3732  }
  3733  
  3734  func (x *Model_TrainingRun_TrainingOptions) GetUserColumn() string {
  3735  	if x != nil {
  3736  		return x.UserColumn
  3737  	}
  3738  	return ""
  3739  }
  3740  
  3741  func (x *Model_TrainingRun_TrainingOptions) GetItemColumn() string {
  3742  	if x != nil {
  3743  		return x.ItemColumn
  3744  	}
  3745  	return ""
  3746  }
  3747  
  3748  func (x *Model_TrainingRun_TrainingOptions) GetDistanceType() Model_DistanceType {
  3749  	if x != nil {
  3750  		return x.DistanceType
  3751  	}
  3752  	return Model_DISTANCE_TYPE_UNSPECIFIED
  3753  }
  3754  
  3755  func (x *Model_TrainingRun_TrainingOptions) GetNumClusters() int64 {
  3756  	if x != nil {
  3757  		return x.NumClusters
  3758  	}
  3759  	return 0
  3760  }
  3761  
  3762  func (x *Model_TrainingRun_TrainingOptions) GetModelUri() string {
  3763  	if x != nil {
  3764  		return x.ModelUri
  3765  	}
  3766  	return ""
  3767  }
  3768  
  3769  func (x *Model_TrainingRun_TrainingOptions) GetOptimizationStrategy() Model_OptimizationStrategy {
  3770  	if x != nil {
  3771  		return x.OptimizationStrategy
  3772  	}
  3773  	return Model_OPTIMIZATION_STRATEGY_UNSPECIFIED
  3774  }
  3775  
  3776  func (x *Model_TrainingRun_TrainingOptions) GetHiddenUnits() []int64 {
  3777  	if x != nil {
  3778  		return x.HiddenUnits
  3779  	}
  3780  	return nil
  3781  }
  3782  
  3783  func (x *Model_TrainingRun_TrainingOptions) GetBatchSize() int64 {
  3784  	if x != nil {
  3785  		return x.BatchSize
  3786  	}
  3787  	return 0
  3788  }
  3789  
  3790  func (x *Model_TrainingRun_TrainingOptions) GetDropout() *wrapperspb.DoubleValue {
  3791  	if x != nil {
  3792  		return x.Dropout
  3793  	}
  3794  	return nil
  3795  }
  3796  
  3797  func (x *Model_TrainingRun_TrainingOptions) GetMaxTreeDepth() int64 {
  3798  	if x != nil {
  3799  		return x.MaxTreeDepth
  3800  	}
  3801  	return 0
  3802  }
  3803  
  3804  func (x *Model_TrainingRun_TrainingOptions) GetSubsample() float64 {
  3805  	if x != nil {
  3806  		return x.Subsample
  3807  	}
  3808  	return 0
  3809  }
  3810  
  3811  func (x *Model_TrainingRun_TrainingOptions) GetMinSplitLoss() *wrapperspb.DoubleValue {
  3812  	if x != nil {
  3813  		return x.MinSplitLoss
  3814  	}
  3815  	return nil
  3816  }
  3817  
  3818  func (x *Model_TrainingRun_TrainingOptions) GetNumFactors() int64 {
  3819  	if x != nil {
  3820  		return x.NumFactors
  3821  	}
  3822  	return 0
  3823  }
  3824  
  3825  func (x *Model_TrainingRun_TrainingOptions) GetFeedbackType() Model_FeedbackType {
  3826  	if x != nil {
  3827  		return x.FeedbackType
  3828  	}
  3829  	return Model_FEEDBACK_TYPE_UNSPECIFIED
  3830  }
  3831  
  3832  func (x *Model_TrainingRun_TrainingOptions) GetWalsAlpha() *wrapperspb.DoubleValue {
  3833  	if x != nil {
  3834  		return x.WalsAlpha
  3835  	}
  3836  	return nil
  3837  }
  3838  
  3839  func (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  
  3846  func (x *Model_TrainingRun_TrainingOptions) GetKmeansInitializationColumn() string {
  3847  	if x != nil {
  3848  		return x.KmeansInitializationColumn
  3849  	}
  3850  	return ""
  3851  }
  3852  
  3853  func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesTimestampColumn() string {
  3854  	if x != nil {
  3855  		return x.TimeSeriesTimestampColumn
  3856  	}
  3857  	return ""
  3858  }
  3859  
  3860  func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesDataColumn() string {
  3861  	if x != nil {
  3862  		return x.TimeSeriesDataColumn
  3863  	}
  3864  	return ""
  3865  }
  3866  
  3867  func (x *Model_TrainingRun_TrainingOptions) GetAutoArima() bool {
  3868  	if x != nil {
  3869  		return x.AutoArima
  3870  	}
  3871  	return false
  3872  }
  3873  
  3874  func (x *Model_TrainingRun_TrainingOptions) GetNonSeasonalOrder() *Model_ArimaOrder {
  3875  	if x != nil {
  3876  		return x.NonSeasonalOrder
  3877  	}
  3878  	return nil
  3879  }
  3880  
  3881  func (x *Model_TrainingRun_TrainingOptions) GetDataFrequency() Model_DataFrequency {
  3882  	if x != nil {
  3883  		return x.DataFrequency
  3884  	}
  3885  	return Model_DATA_FREQUENCY_UNSPECIFIED
  3886  }
  3887  
  3888  func (x *Model_TrainingRun_TrainingOptions) GetIncludeDrift() bool {
  3889  	if x != nil {
  3890  		return x.IncludeDrift
  3891  	}
  3892  	return false
  3893  }
  3894  
  3895  func (x *Model_TrainingRun_TrainingOptions) GetHolidayRegion() Model_HolidayRegion {
  3896  	if x != nil {
  3897  		return x.HolidayRegion
  3898  	}
  3899  	return Model_HOLIDAY_REGION_UNSPECIFIED
  3900  }
  3901  
  3902  func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesIdColumn() string {
  3903  	if x != nil {
  3904  		return x.TimeSeriesIdColumn
  3905  	}
  3906  	return ""
  3907  }
  3908  
  3909  func (x *Model_TrainingRun_TrainingOptions) GetTimeSeriesIdColumns() []string {
  3910  	if x != nil {
  3911  		return x.TimeSeriesIdColumns
  3912  	}
  3913  	return nil
  3914  }
  3915  
  3916  func (x *Model_TrainingRun_TrainingOptions) GetHorizon() int64 {
  3917  	if x != nil {
  3918  		return x.Horizon
  3919  	}
  3920  	return 0
  3921  }
  3922  
  3923  func (x *Model_TrainingRun_TrainingOptions) GetPreserveInputStructs() bool {
  3924  	if x != nil {
  3925  		return x.PreserveInputStructs
  3926  	}
  3927  	return false
  3928  }
  3929  
  3930  func (x *Model_TrainingRun_TrainingOptions) GetAutoArimaMaxOrder() int64 {
  3931  	if x != nil {
  3932  		return x.AutoArimaMaxOrder
  3933  	}
  3934  	return 0
  3935  }
  3936  
  3937  func (x *Model_TrainingRun_TrainingOptions) GetDecomposeTimeSeries() *wrapperspb.BoolValue {
  3938  	if x != nil {
  3939  		return x.DecomposeTimeSeries
  3940  	}
  3941  	return nil
  3942  }
  3943  
  3944  func (x *Model_TrainingRun_TrainingOptions) GetCleanSpikesAndDips() *wrapperspb.BoolValue {
  3945  	if x != nil {
  3946  		return x.CleanSpikesAndDips
  3947  	}
  3948  	return nil
  3949  }
  3950  
  3951  func (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.
  3959  type 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  
  3979  func (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  
  3988  func (x *Model_TrainingRun_IterationResult) String() string {
  3989  	return protoimpl.X.MessageStringOf(x)
  3990  }
  3991  
  3992  func (*Model_TrainingRun_IterationResult) ProtoMessage() {}
  3993  
  3994  func (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.
  4007  func (*Model_TrainingRun_IterationResult) Descriptor() ([]byte, []int) {
  4008  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1}
  4009  }
  4010  
  4011  func (x *Model_TrainingRun_IterationResult) GetIndex() *wrapperspb.Int32Value {
  4012  	if x != nil {
  4013  		return x.Index
  4014  	}
  4015  	return nil
  4016  }
  4017  
  4018  func (x *Model_TrainingRun_IterationResult) GetDurationMs() *wrapperspb.Int64Value {
  4019  	if x != nil {
  4020  		return x.DurationMs
  4021  	}
  4022  	return nil
  4023  }
  4024  
  4025  func (x *Model_TrainingRun_IterationResult) GetTrainingLoss() *wrapperspb.DoubleValue {
  4026  	if x != nil {
  4027  		return x.TrainingLoss
  4028  	}
  4029  	return nil
  4030  }
  4031  
  4032  func (x *Model_TrainingRun_IterationResult) GetEvalLoss() *wrapperspb.DoubleValue {
  4033  	if x != nil {
  4034  		return x.EvalLoss
  4035  	}
  4036  	return nil
  4037  }
  4038  
  4039  func (x *Model_TrainingRun_IterationResult) GetLearnRate() float64 {
  4040  	if x != nil {
  4041  		return x.LearnRate
  4042  	}
  4043  	return 0
  4044  }
  4045  
  4046  func (x *Model_TrainingRun_IterationResult) GetClusterInfos() []*Model_TrainingRun_IterationResult_ClusterInfo {
  4047  	if x != nil {
  4048  		return x.ClusterInfos
  4049  	}
  4050  	return nil
  4051  }
  4052  
  4053  func (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.
  4061  type 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  
  4075  func (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  
  4084  func (x *Model_TrainingRun_IterationResult_ClusterInfo) String() string {
  4085  	return protoimpl.X.MessageStringOf(x)
  4086  }
  4087  
  4088  func (*Model_TrainingRun_IterationResult_ClusterInfo) ProtoMessage() {}
  4089  
  4090  func (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.
  4103  func (*Model_TrainingRun_IterationResult_ClusterInfo) Descriptor() ([]byte, []int) {
  4104  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 0}
  4105  }
  4106  
  4107  func (x *Model_TrainingRun_IterationResult_ClusterInfo) GetCentroidId() int64 {
  4108  	if x != nil {
  4109  		return x.CentroidId
  4110  	}
  4111  	return 0
  4112  }
  4113  
  4114  func (x *Model_TrainingRun_IterationResult_ClusterInfo) GetClusterRadius() *wrapperspb.DoubleValue {
  4115  	if x != nil {
  4116  		return x.ClusterRadius
  4117  	}
  4118  	return nil
  4119  }
  4120  
  4121  func (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.
  4130  type 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  
  4143  func (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  
  4152  func (x *Model_TrainingRun_IterationResult_ArimaResult) String() string {
  4153  	return protoimpl.X.MessageStringOf(x)
  4154  }
  4155  
  4156  func (*Model_TrainingRun_IterationResult_ArimaResult) ProtoMessage() {}
  4157  
  4158  func (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.
  4171  func (*Model_TrainingRun_IterationResult_ArimaResult) Descriptor() ([]byte, []int) {
  4172  	return file_google_cloud_bigquery_v2_model_proto_rawDescGZIP(), []int{0, 14, 1, 1}
  4173  }
  4174  
  4175  func (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  
  4182  func (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.
  4190  type 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  
  4203  func (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  
  4212  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) String() string {
  4213  	return protoimpl.X.MessageStringOf(x)
  4214  }
  4215  
  4216  func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) ProtoMessage() {}
  4217  
  4218  func (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.
  4231  func (*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  
  4235  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) GetAutoRegressiveCoefficients() []float64 {
  4236  	if x != nil {
  4237  		return x.AutoRegressiveCoefficients
  4238  	}
  4239  	return nil
  4240  }
  4241  
  4242  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaCoefficients) GetMovingAverageCoefficients() []float64 {
  4243  	if x != nil {
  4244  		return x.MovingAverageCoefficients
  4245  	}
  4246  	return nil
  4247  }
  4248  
  4249  func (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.
  4257  type 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  
  4297  func (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  
  4306  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) String() string {
  4307  	return protoimpl.X.MessageStringOf(x)
  4308  }
  4309  
  4310  func (*Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) ProtoMessage() {}
  4311  
  4312  func (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.
  4325  func (*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  
  4329  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetNonSeasonalOrder() *Model_ArimaOrder {
  4330  	if x != nil {
  4331  		return x.NonSeasonalOrder
  4332  	}
  4333  	return nil
  4334  }
  4335  
  4336  func (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  
  4343  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetArimaFittingMetrics() *Model_ArimaFittingMetrics {
  4344  	if x != nil {
  4345  		return x.ArimaFittingMetrics
  4346  	}
  4347  	return nil
  4348  }
  4349  
  4350  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasDrift() bool {
  4351  	if x != nil {
  4352  		return x.HasDrift
  4353  	}
  4354  	return false
  4355  }
  4356  
  4357  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetTimeSeriesId() string {
  4358  	if x != nil {
  4359  		return x.TimeSeriesId
  4360  	}
  4361  	return ""
  4362  }
  4363  
  4364  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetTimeSeriesIds() []string {
  4365  	if x != nil {
  4366  		return x.TimeSeriesIds
  4367  	}
  4368  	return nil
  4369  }
  4370  
  4371  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetSeasonalPeriods() []Model_SeasonalPeriod_SeasonalPeriodType {
  4372  	if x != nil {
  4373  		return x.SeasonalPeriods
  4374  	}
  4375  	return nil
  4376  }
  4377  
  4378  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasHolidayEffect() *wrapperspb.BoolValue {
  4379  	if x != nil {
  4380  		return x.HasHolidayEffect
  4381  	}
  4382  	return nil
  4383  }
  4384  
  4385  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasSpikesAndDips() *wrapperspb.BoolValue {
  4386  	if x != nil {
  4387  		return x.HasSpikesAndDips
  4388  	}
  4389  	return nil
  4390  }
  4391  
  4392  func (x *Model_TrainingRun_IterationResult_ArimaResult_ArimaModelInfo) GetHasStepChanges() *wrapperspb.BoolValue {
  4393  	if x != nil {
  4394  		return x.HasStepChanges
  4395  	}
  4396  	return nil
  4397  }
  4398  
  4399  var File_google_cloud_bigquery_v2_model_proto protoreflect.FileDescriptor
  4400  
  4401  var 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  
  5494  var (
  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  
  5499  func 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  
  5506  var file_google_cloud_bigquery_v2_model_proto_enumTypes = make([]protoimpl.EnumInfo, 11)
  5507  var file_google_cloud_bigquery_v2_model_proto_msgTypes = make([]protoimpl.MessageInfo, 39)
  5508  var 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  }
  5571  var 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  
  5704  func init() { file_google_cloud_bigquery_v2_model_proto_init() }
  5705  func 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.
  6193  var _ context.Context
  6194  var _ 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.
  6198  const _ = 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.
  6203  type 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  
  6216  type modelServiceClient struct {
  6217  	cc grpc.ClientConnInterface
  6218  }
  6219  
  6220  func NewModelServiceClient(cc grpc.ClientConnInterface) ModelServiceClient {
  6221  	return &modelServiceClient{cc}
  6222  }
  6223  
  6224  func (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  
  6233  func (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  
  6242  func (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  
  6251  func (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.
  6261  type 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.
  6275  type UnimplementedModelServiceServer struct {
  6276  }
  6277  
  6278  func (*UnimplementedModelServiceServer) GetModel(context.Context, *GetModelRequest) (*Model, error) {
  6279  	return nil, status.Errorf(codes.Unimplemented, "method GetModel not implemented")
  6280  }
  6281  func (*UnimplementedModelServiceServer) ListModels(context.Context, *ListModelsRequest) (*ListModelsResponse, error) {
  6282  	return nil, status.Errorf(codes.Unimplemented, "method ListModels not implemented")
  6283  }
  6284  func (*UnimplementedModelServiceServer) PatchModel(context.Context, *PatchModelRequest) (*Model, error) {
  6285  	return nil, status.Errorf(codes.Unimplemented, "method PatchModel not implemented")
  6286  }
  6287  func (*UnimplementedModelServiceServer) DeleteModel(context.Context, *DeleteModelRequest) (*emptypb.Empty, error) {
  6288  	return nil, status.Errorf(codes.Unimplemented, "method DeleteModel not implemented")
  6289  }
  6290  
  6291  func RegisterModelServiceServer(s *grpc.Server, srv ModelServiceServer) {
  6292  	s.RegisterService(&_ModelService_serviceDesc, srv)
  6293  }
  6294  
  6295  func _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  
  6313  func _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  
  6331  func _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  
  6349  func _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  
  6367  var _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  

View as plain text