cloud.google.com/go/aiplatform@v1.106.0/apiv1/aiplatformpb/model.pb.go (about)

     1  // Copyright 2025 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.35.2
    18  // 	protoc        v4.25.7
    19  // source: google/cloud/aiplatform/v1/model.proto
    20  
    21  package aiplatformpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    26  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    27  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    28  	structpb "google.golang.org/protobuf/types/known/structpb"
    29  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    30  	reflect "reflect"
    31  	sync "sync"
    32  )
    33  
    34  const (
    35  	// Verify that this generated code is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    37  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    38  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    39  )
    40  
    41  // Identifies a type of Model's prediction resources.
    42  type Model_DeploymentResourcesType int32
    43  
    44  const (
    45  	// Should not be used.
    46  	Model_DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED Model_DeploymentResourcesType = 0
    47  	// Resources that are dedicated to the
    48  	// [DeployedModel][google.cloud.aiplatform.v1.DeployedModel], and that need
    49  	// a higher degree of manual configuration.
    50  	Model_DEDICATED_RESOURCES Model_DeploymentResourcesType = 1
    51  	// Resources that to large degree are decided by Vertex AI, and require
    52  	// only a modest additional configuration.
    53  	Model_AUTOMATIC_RESOURCES Model_DeploymentResourcesType = 2
    54  	// Resources that can be shared by multiple
    55  	// [DeployedModels][google.cloud.aiplatform.v1.DeployedModel]. A
    56  	// pre-configured
    57  	// [DeploymentResourcePool][google.cloud.aiplatform.v1.DeploymentResourcePool]
    58  	// is required.
    59  	Model_SHARED_RESOURCES Model_DeploymentResourcesType = 3
    60  )
    61  
    62  // Enum value maps for Model_DeploymentResourcesType.
    63  var (
    64  	Model_DeploymentResourcesType_name = map[int32]string{
    65  		0: "DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED",
    66  		1: "DEDICATED_RESOURCES",
    67  		2: "AUTOMATIC_RESOURCES",
    68  		3: "SHARED_RESOURCES",
    69  	}
    70  	Model_DeploymentResourcesType_value = map[string]int32{
    71  		"DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED": 0,
    72  		"DEDICATED_RESOURCES":                   1,
    73  		"AUTOMATIC_RESOURCES":                   2,
    74  		"SHARED_RESOURCES":                      3,
    75  	}
    76  )
    77  
    78  func (x Model_DeploymentResourcesType) Enum() *Model_DeploymentResourcesType {
    79  	p := new(Model_DeploymentResourcesType)
    80  	*p = x
    81  	return p
    82  }
    83  
    84  func (x Model_DeploymentResourcesType) String() string {
    85  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    86  }
    87  
    88  func (Model_DeploymentResourcesType) Descriptor() protoreflect.EnumDescriptor {
    89  	return file_google_cloud_aiplatform_v1_model_proto_enumTypes[0].Descriptor()
    90  }
    91  
    92  func (Model_DeploymentResourcesType) Type() protoreflect.EnumType {
    93  	return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[0]
    94  }
    95  
    96  func (x Model_DeploymentResourcesType) Number() protoreflect.EnumNumber {
    97  	return protoreflect.EnumNumber(x)
    98  }
    99  
   100  // Deprecated: Use Model_DeploymentResourcesType.Descriptor instead.
   101  func (Model_DeploymentResourcesType) EnumDescriptor() ([]byte, []int) {
   102  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0}
   103  }
   104  
   105  // The Model content that can be exported.
   106  type Model_ExportFormat_ExportableContent int32
   107  
   108  const (
   109  	// Should not be used.
   110  	Model_ExportFormat_EXPORTABLE_CONTENT_UNSPECIFIED Model_ExportFormat_ExportableContent = 0
   111  	// Model artifact and any of its supported files. Will be exported to the
   112  	// location specified by the `artifactDestination` field of the
   113  	// [ExportModelRequest.output_config][google.cloud.aiplatform.v1.ExportModelRequest.output_config]
   114  	// object.
   115  	Model_ExportFormat_ARTIFACT Model_ExportFormat_ExportableContent = 1
   116  	// The container image that is to be used when deploying this Model. Will
   117  	// be exported to the location specified by the `imageDestination` field
   118  	// of the
   119  	// [ExportModelRequest.output_config][google.cloud.aiplatform.v1.ExportModelRequest.output_config]
   120  	// object.
   121  	Model_ExportFormat_IMAGE Model_ExportFormat_ExportableContent = 2
   122  )
   123  
   124  // Enum value maps for Model_ExportFormat_ExportableContent.
   125  var (
   126  	Model_ExportFormat_ExportableContent_name = map[int32]string{
   127  		0: "EXPORTABLE_CONTENT_UNSPECIFIED",
   128  		1: "ARTIFACT",
   129  		2: "IMAGE",
   130  	}
   131  	Model_ExportFormat_ExportableContent_value = map[string]int32{
   132  		"EXPORTABLE_CONTENT_UNSPECIFIED": 0,
   133  		"ARTIFACT":                       1,
   134  		"IMAGE":                          2,
   135  	}
   136  )
   137  
   138  func (x Model_ExportFormat_ExportableContent) Enum() *Model_ExportFormat_ExportableContent {
   139  	p := new(Model_ExportFormat_ExportableContent)
   140  	*p = x
   141  	return p
   142  }
   143  
   144  func (x Model_ExportFormat_ExportableContent) String() string {
   145  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   146  }
   147  
   148  func (Model_ExportFormat_ExportableContent) Descriptor() protoreflect.EnumDescriptor {
   149  	return file_google_cloud_aiplatform_v1_model_proto_enumTypes[1].Descriptor()
   150  }
   151  
   152  func (Model_ExportFormat_ExportableContent) Type() protoreflect.EnumType {
   153  	return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[1]
   154  }
   155  
   156  func (x Model_ExportFormat_ExportableContent) Number() protoreflect.EnumNumber {
   157  	return protoreflect.EnumNumber(x)
   158  }
   159  
   160  // Deprecated: Use Model_ExportFormat_ExportableContent.Descriptor instead.
   161  func (Model_ExportFormat_ExportableContent) EnumDescriptor() ([]byte, []int) {
   162  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0, 0}
   163  }
   164  
   165  // Source of the model.
   166  // Different from `objective` field, this `ModelSourceType` enum
   167  // indicates the source from which the model was accessed or obtained,
   168  // whereas the `objective` indicates the overall aim or function of this
   169  // model.
   170  type ModelSourceInfo_ModelSourceType int32
   171  
   172  const (
   173  	// Should not be used.
   174  	ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED ModelSourceInfo_ModelSourceType = 0
   175  	// The Model is uploaded by automl training pipeline.
   176  	ModelSourceInfo_AUTOML ModelSourceInfo_ModelSourceType = 1
   177  	// The Model is uploaded by user or custom training pipeline.
   178  	ModelSourceInfo_CUSTOM ModelSourceInfo_ModelSourceType = 2
   179  	// The Model is registered and sync'ed from BigQuery ML.
   180  	ModelSourceInfo_BQML ModelSourceInfo_ModelSourceType = 3
   181  	// The Model is saved or tuned from Model Garden.
   182  	ModelSourceInfo_MODEL_GARDEN ModelSourceInfo_ModelSourceType = 4
   183  	// The Model is saved or tuned from Genie.
   184  	ModelSourceInfo_GENIE ModelSourceInfo_ModelSourceType = 5
   185  	// The Model is uploaded by text embedding finetuning pipeline.
   186  	ModelSourceInfo_CUSTOM_TEXT_EMBEDDING ModelSourceInfo_ModelSourceType = 6
   187  	// The Model is saved or tuned from Marketplace.
   188  	ModelSourceInfo_MARKETPLACE ModelSourceInfo_ModelSourceType = 7
   189  )
   190  
   191  // Enum value maps for ModelSourceInfo_ModelSourceType.
   192  var (
   193  	ModelSourceInfo_ModelSourceType_name = map[int32]string{
   194  		0: "MODEL_SOURCE_TYPE_UNSPECIFIED",
   195  		1: "AUTOML",
   196  		2: "CUSTOM",
   197  		3: "BQML",
   198  		4: "MODEL_GARDEN",
   199  		5: "GENIE",
   200  		6: "CUSTOM_TEXT_EMBEDDING",
   201  		7: "MARKETPLACE",
   202  	}
   203  	ModelSourceInfo_ModelSourceType_value = map[string]int32{
   204  		"MODEL_SOURCE_TYPE_UNSPECIFIED": 0,
   205  		"AUTOML":                        1,
   206  		"CUSTOM":                        2,
   207  		"BQML":                          3,
   208  		"MODEL_GARDEN":                  4,
   209  		"GENIE":                         5,
   210  		"CUSTOM_TEXT_EMBEDDING":         6,
   211  		"MARKETPLACE":                   7,
   212  	}
   213  )
   214  
   215  func (x ModelSourceInfo_ModelSourceType) Enum() *ModelSourceInfo_ModelSourceType {
   216  	p := new(ModelSourceInfo_ModelSourceType)
   217  	*p = x
   218  	return p
   219  }
   220  
   221  func (x ModelSourceInfo_ModelSourceType) String() string {
   222  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   223  }
   224  
   225  func (ModelSourceInfo_ModelSourceType) Descriptor() protoreflect.EnumDescriptor {
   226  	return file_google_cloud_aiplatform_v1_model_proto_enumTypes[2].Descriptor()
   227  }
   228  
   229  func (ModelSourceInfo_ModelSourceType) Type() protoreflect.EnumType {
   230  	return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[2]
   231  }
   232  
   233  func (x ModelSourceInfo_ModelSourceType) Number() protoreflect.EnumNumber {
   234  	return protoreflect.EnumNumber(x)
   235  }
   236  
   237  // Deprecated: Use ModelSourceInfo_ModelSourceType.Descriptor instead.
   238  func (ModelSourceInfo_ModelSourceType) EnumDescriptor() ([]byte, []int) {
   239  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{7, 0}
   240  }
   241  
   242  // A trained machine learning Model.
   243  type Model struct {
   244  	state         protoimpl.MessageState
   245  	sizeCache     protoimpl.SizeCache
   246  	unknownFields protoimpl.UnknownFields
   247  
   248  	// The resource name of the Model.
   249  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   250  	// Output only. Immutable. The version ID of the model.
   251  	// A new version is committed when a new model version is uploaded or
   252  	// trained under an existing model id. It is an auto-incrementing decimal
   253  	// number in string representation.
   254  	VersionId string `protobuf:"bytes,28,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
   255  	// User provided version aliases so that a model version can be referenced via
   256  	// alias (i.e.
   257  	// `projects/{project}/locations/{location}/models/{model_id}@{version_alias}`
   258  	// instead of auto-generated version id (i.e.
   259  	// `projects/{project}/locations/{location}/models/{model_id}@{version_id})`.
   260  	// The format is [a-z][a-zA-Z0-9-]{0,126}[a-z0-9] to distinguish from
   261  	// version_id. A default version alias will be created for the first version
   262  	// of the model, and there must be exactly one default version alias for a
   263  	// model.
   264  	VersionAliases []string `protobuf:"bytes,29,rep,name=version_aliases,json=versionAliases,proto3" json:"version_aliases,omitempty"`
   265  	// Output only. Timestamp when this version was created.
   266  	VersionCreateTime *timestamppb.Timestamp `protobuf:"bytes,31,opt,name=version_create_time,json=versionCreateTime,proto3" json:"version_create_time,omitempty"`
   267  	// Output only. Timestamp when this version was most recently updated.
   268  	VersionUpdateTime *timestamppb.Timestamp `protobuf:"bytes,32,opt,name=version_update_time,json=versionUpdateTime,proto3" json:"version_update_time,omitempty"`
   269  	// Required. The display name of the Model.
   270  	// The name can be up to 128 characters long and can consist of any UTF-8
   271  	// characters.
   272  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   273  	// The description of the Model.
   274  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   275  	// The description of this version.
   276  	VersionDescription string `protobuf:"bytes,30,opt,name=version_description,json=versionDescription,proto3" json:"version_description,omitempty"`
   277  	// The default checkpoint id of a model version.
   278  	DefaultCheckpointId string `protobuf:"bytes,53,opt,name=default_checkpoint_id,json=defaultCheckpointId,proto3" json:"default_checkpoint_id,omitempty"`
   279  	// The schemata that describe formats of the Model's predictions and
   280  	// explanations as given and returned via
   281  	// [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict]
   282  	// and
   283  	// [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain].
   284  	PredictSchemata *PredictSchemata `protobuf:"bytes,4,opt,name=predict_schemata,json=predictSchemata,proto3" json:"predict_schemata,omitempty"`
   285  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   286  	// additional information about the Model, that is specific to it. Unset if
   287  	// the Model does not have any additional information. The schema is defined
   288  	// as an OpenAPI 3.0.2 [Schema
   289  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   290  	// AutoML Models always have this field populated by Vertex AI, if no
   291  	// additional metadata is needed, this field is set to an empty string.
   292  	// Note: The URI given on output will be immutable and probably different,
   293  	// including the URI scheme, than the one given on input. The output URI will
   294  	// point to a location where the user only has a read access.
   295  	MetadataSchemaUri string `protobuf:"bytes,5,opt,name=metadata_schema_uri,json=metadataSchemaUri,proto3" json:"metadata_schema_uri,omitempty"`
   296  	// Immutable. An additional information about the Model; the schema of the
   297  	// metadata can be found in
   298  	// [metadata_schema][google.cloud.aiplatform.v1.Model.metadata_schema_uri].
   299  	// Unset if the Model does not have any additional information.
   300  	Metadata *structpb.Value `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
   301  	// Output only. The formats in which this Model may be exported. If empty,
   302  	// this Model is not available for export.
   303  	SupportedExportFormats []*Model_ExportFormat `protobuf:"bytes,20,rep,name=supported_export_formats,json=supportedExportFormats,proto3" json:"supported_export_formats,omitempty"`
   304  	// Output only. The resource name of the TrainingPipeline that uploaded this
   305  	// Model, if any.
   306  	TrainingPipeline string `protobuf:"bytes,7,opt,name=training_pipeline,json=trainingPipeline,proto3" json:"training_pipeline,omitempty"`
   307  	// Optional. This field is populated if the model is produced by a pipeline
   308  	// job.
   309  	PipelineJob string `protobuf:"bytes,47,opt,name=pipeline_job,json=pipelineJob,proto3" json:"pipeline_job,omitempty"`
   310  	// Input only. The specification of the container that is to be used when
   311  	// deploying this Model. The specification is ingested upon
   312  	// [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel],
   313  	// and all binaries it contains are copied and stored internally by Vertex AI.
   314  	// Not required for AutoML Models.
   315  	ContainerSpec *ModelContainerSpec `protobuf:"bytes,9,opt,name=container_spec,json=containerSpec,proto3" json:"container_spec,omitempty"`
   316  	// Immutable. The path to the directory containing the Model artifact and any
   317  	// of its supporting files. Not required for AutoML Models.
   318  	ArtifactUri string `protobuf:"bytes,26,opt,name=artifact_uri,json=artifactUri,proto3" json:"artifact_uri,omitempty"`
   319  	// Output only. When this Model is deployed, its prediction resources are
   320  	// described by the `prediction_resources` field of the
   321  	// [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models]
   322  	// object. Because not all Models support all resource configuration types,
   323  	// the configuration types this Model supports are listed here. If no
   324  	// configuration types are listed, the Model cannot be deployed to an
   325  	// [Endpoint][google.cloud.aiplatform.v1.Endpoint] and does not support
   326  	// online predictions
   327  	// ([PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict]
   328  	// or
   329  	// [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]).
   330  	// Such a Model can serve predictions by using a
   331  	// [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob], if it
   332  	// has at least one entry each in
   333  	// [supported_input_storage_formats][google.cloud.aiplatform.v1.Model.supported_input_storage_formats]
   334  	// and
   335  	// [supported_output_storage_formats][google.cloud.aiplatform.v1.Model.supported_output_storage_formats].
   336  	SupportedDeploymentResourcesTypes []Model_DeploymentResourcesType `protobuf:"varint,10,rep,packed,name=supported_deployment_resources_types,json=supportedDeploymentResourcesTypes,proto3,enum=google.cloud.aiplatform.v1.Model_DeploymentResourcesType" json:"supported_deployment_resources_types,omitempty"`
   337  	// Output only. The formats this Model supports in
   338  	// [BatchPredictionJob.input_config][google.cloud.aiplatform.v1.BatchPredictionJob.input_config].
   339  	// If
   340  	// [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri]
   341  	// exists, the instances should be given as per that schema.
   342  	//
   343  	// The possible formats are:
   344  	//
   345  	// * `jsonl`
   346  	// The JSON Lines format, where each instance is a single line. Uses
   347  	// [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source].
   348  	//
   349  	// * `csv`
   350  	// The CSV format, where each instance is a single comma-separated line.
   351  	// The first line in the file is the header, containing comma-separated field
   352  	// names. Uses
   353  	// [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source].
   354  	//
   355  	// * `tf-record`
   356  	// The TFRecord format, where each instance is a single record in tfrecord
   357  	// syntax. Uses
   358  	// [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source].
   359  	//
   360  	// * `tf-record-gzip`
   361  	// Similar to `tf-record`, but the file is gzipped. Uses
   362  	// [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source].
   363  	//
   364  	// * `bigquery`
   365  	// Each instance is a single row in BigQuery. Uses
   366  	// [BigQuerySource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.bigquery_source].
   367  	//
   368  	// * `file-list`
   369  	// Each line of the file is the location of an instance to process, uses
   370  	// `gcs_source` field of the
   371  	// [InputConfig][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig]
   372  	// object.
   373  	//
   374  	// If this Model doesn't support any of these formats it means it cannot be
   375  	// used with a
   376  	// [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob].
   377  	// However, if it has
   378  	// [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types],
   379  	// it could serve online predictions by using
   380  	// [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict]
   381  	// or
   382  	// [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain].
   383  	SupportedInputStorageFormats []string `protobuf:"bytes,11,rep,name=supported_input_storage_formats,json=supportedInputStorageFormats,proto3" json:"supported_input_storage_formats,omitempty"`
   384  	// Output only. The formats this Model supports in
   385  	// [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config].
   386  	// If both
   387  	// [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri]
   388  	// and
   389  	// [PredictSchemata.prediction_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.prediction_schema_uri]
   390  	// exist, the predictions are returned together with their instances. In other
   391  	// words, the prediction has the original instance data first, followed by the
   392  	// actual prediction content (as per the schema).
   393  	//
   394  	// The possible formats are:
   395  	//
   396  	// * `jsonl`
   397  	// The JSON Lines format, where each prediction is a single line. Uses
   398  	// [GcsDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.gcs_destination].
   399  	//
   400  	// * `csv`
   401  	// The CSV format, where each prediction is a single comma-separated line.
   402  	// The first line in the file is the header, containing comma-separated field
   403  	// names. Uses
   404  	// [GcsDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.gcs_destination].
   405  	//
   406  	// * `bigquery`
   407  	// Each prediction is a single row in a BigQuery table, uses
   408  	// [BigQueryDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.bigquery_destination]
   409  	// .
   410  	//
   411  	// If this Model doesn't support any of these formats it means it cannot be
   412  	// used with a
   413  	// [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob].
   414  	// However, if it has
   415  	// [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types],
   416  	// it could serve online predictions by using
   417  	// [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict]
   418  	// or
   419  	// [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain].
   420  	SupportedOutputStorageFormats []string `protobuf:"bytes,12,rep,name=supported_output_storage_formats,json=supportedOutputStorageFormats,proto3" json:"supported_output_storage_formats,omitempty"`
   421  	// Output only. Timestamp when this Model was uploaded into Vertex AI.
   422  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   423  	// Output only. Timestamp when this Model was most recently updated.
   424  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   425  	// Output only. The pointers to DeployedModels created from this Model. Note
   426  	// that Model could have been deployed to Endpoints in different Locations.
   427  	DeployedModels []*DeployedModelRef `protobuf:"bytes,15,rep,name=deployed_models,json=deployedModels,proto3" json:"deployed_models,omitempty"`
   428  	// The default explanation specification for this Model.
   429  	//
   430  	// The Model can be used for
   431  	// [requesting
   432  	// explanation][google.cloud.aiplatform.v1.PredictionService.Explain] after
   433  	// being [deployed][google.cloud.aiplatform.v1.EndpointService.DeployModel] if
   434  	// it is populated. The Model can be used for [batch
   435  	// explanation][google.cloud.aiplatform.v1.BatchPredictionJob.generate_explanation]
   436  	// if it is populated.
   437  	//
   438  	// All fields of the explanation_spec can be overridden by
   439  	// [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec]
   440  	// of
   441  	// [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model],
   442  	// or
   443  	// [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec]
   444  	// of [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob].
   445  	//
   446  	// If the default explanation specification is not set for this Model, this
   447  	// Model can still be used for
   448  	// [requesting
   449  	// explanation][google.cloud.aiplatform.v1.PredictionService.Explain] by
   450  	// setting
   451  	// [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec]
   452  	// of
   453  	// [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model]
   454  	// and for [batch
   455  	// explanation][google.cloud.aiplatform.v1.BatchPredictionJob.generate_explanation]
   456  	// by setting
   457  	// [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec]
   458  	// of [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob].
   459  	ExplanationSpec *ExplanationSpec `protobuf:"bytes,23,opt,name=explanation_spec,json=explanationSpec,proto3" json:"explanation_spec,omitempty"`
   460  	// Used to perform consistent read-modify-write updates. If not set, a blind
   461  	// "overwrite" update happens.
   462  	Etag string `protobuf:"bytes,16,opt,name=etag,proto3" json:"etag,omitempty"`
   463  	// The labels with user-defined metadata to organize your Models.
   464  	//
   465  	// Label keys and values can be no longer than 64 characters
   466  	// (Unicode codepoints), can only contain lowercase letters, numeric
   467  	// characters, underscores and dashes. International characters are allowed.
   468  	//
   469  	// See https://goo.gl/xmQnxf for more information and examples of labels.
   470  	Labels map[string]string `protobuf:"bytes,17,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   471  	// Stats of data used for training or evaluating the Model.
   472  	//
   473  	// Only populated when the Model is trained by a TrainingPipeline with
   474  	// [data_input_config][google.cloud.aiplatform.v1.TrainingPipeline.input_data_config].
   475  	DataStats *Model_DataStats `protobuf:"bytes,21,opt,name=data_stats,json=dataStats,proto3" json:"data_stats,omitempty"`
   476  	// Customer-managed encryption key spec for a Model. If set, this
   477  	// Model and all sub-resources of this Model will be secured by this key.
   478  	EncryptionSpec *EncryptionSpec `protobuf:"bytes,24,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"`
   479  	// Output only. Source of a model. It can either be automl training pipeline,
   480  	// custom training pipeline, BigQuery ML, or saved and tuned from Genie or
   481  	// Model Garden.
   482  	ModelSourceInfo *ModelSourceInfo `protobuf:"bytes,38,opt,name=model_source_info,json=modelSourceInfo,proto3" json:"model_source_info,omitempty"`
   483  	// Output only. If this Model is a copy of another Model, this contains info
   484  	// about the original.
   485  	OriginalModelInfo *Model_OriginalModelInfo `protobuf:"bytes,34,opt,name=original_model_info,json=originalModelInfo,proto3" json:"original_model_info,omitempty"`
   486  	// Output only. The resource name of the Artifact that was created in
   487  	// MetadataStore when creating the Model. The Artifact resource name pattern
   488  	// is
   489  	// `projects/{project}/locations/{location}/metadataStores/{metadata_store}/artifacts/{artifact}`.
   490  	MetadataArtifact string `protobuf:"bytes,44,opt,name=metadata_artifact,json=metadataArtifact,proto3" json:"metadata_artifact,omitempty"`
   491  	// Optional. User input field to specify the base model source. Currently it
   492  	// only supports specifing the Model Garden models and Genie models.
   493  	BaseModelSource *Model_BaseModelSource `protobuf:"bytes,50,opt,name=base_model_source,json=baseModelSource,proto3" json:"base_model_source,omitempty"`
   494  	// Output only. Reserved for future use.
   495  	SatisfiesPzs bool `protobuf:"varint,51,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"`
   496  	// Output only. Reserved for future use.
   497  	SatisfiesPzi bool `protobuf:"varint,52,opt,name=satisfies_pzi,json=satisfiesPzi,proto3" json:"satisfies_pzi,omitempty"`
   498  	// Optional. Output only. The checkpoints of the model.
   499  	Checkpoints []*Checkpoint `protobuf:"bytes,57,rep,name=checkpoints,proto3" json:"checkpoints,omitempty"`
   500  }
   501  
   502  func (x *Model) Reset() {
   503  	*x = Model{}
   504  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[0]
   505  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   506  	ms.StoreMessageInfo(mi)
   507  }
   508  
   509  func (x *Model) String() string {
   510  	return protoimpl.X.MessageStringOf(x)
   511  }
   512  
   513  func (*Model) ProtoMessage() {}
   514  
   515  func (x *Model) ProtoReflect() protoreflect.Message {
   516  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[0]
   517  	if x != nil {
   518  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   519  		if ms.LoadMessageInfo() == nil {
   520  			ms.StoreMessageInfo(mi)
   521  		}
   522  		return ms
   523  	}
   524  	return mi.MessageOf(x)
   525  }
   526  
   527  // Deprecated: Use Model.ProtoReflect.Descriptor instead.
   528  func (*Model) Descriptor() ([]byte, []int) {
   529  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0}
   530  }
   531  
   532  func (x *Model) GetName() string {
   533  	if x != nil {
   534  		return x.Name
   535  	}
   536  	return ""
   537  }
   538  
   539  func (x *Model) GetVersionId() string {
   540  	if x != nil {
   541  		return x.VersionId
   542  	}
   543  	return ""
   544  }
   545  
   546  func (x *Model) GetVersionAliases() []string {
   547  	if x != nil {
   548  		return x.VersionAliases
   549  	}
   550  	return nil
   551  }
   552  
   553  func (x *Model) GetVersionCreateTime() *timestamppb.Timestamp {
   554  	if x != nil {
   555  		return x.VersionCreateTime
   556  	}
   557  	return nil
   558  }
   559  
   560  func (x *Model) GetVersionUpdateTime() *timestamppb.Timestamp {
   561  	if x != nil {
   562  		return x.VersionUpdateTime
   563  	}
   564  	return nil
   565  }
   566  
   567  func (x *Model) GetDisplayName() string {
   568  	if x != nil {
   569  		return x.DisplayName
   570  	}
   571  	return ""
   572  }
   573  
   574  func (x *Model) GetDescription() string {
   575  	if x != nil {
   576  		return x.Description
   577  	}
   578  	return ""
   579  }
   580  
   581  func (x *Model) GetVersionDescription() string {
   582  	if x != nil {
   583  		return x.VersionDescription
   584  	}
   585  	return ""
   586  }
   587  
   588  func (x *Model) GetDefaultCheckpointId() string {
   589  	if x != nil {
   590  		return x.DefaultCheckpointId
   591  	}
   592  	return ""
   593  }
   594  
   595  func (x *Model) GetPredictSchemata() *PredictSchemata {
   596  	if x != nil {
   597  		return x.PredictSchemata
   598  	}
   599  	return nil
   600  }
   601  
   602  func (x *Model) GetMetadataSchemaUri() string {
   603  	if x != nil {
   604  		return x.MetadataSchemaUri
   605  	}
   606  	return ""
   607  }
   608  
   609  func (x *Model) GetMetadata() *structpb.Value {
   610  	if x != nil {
   611  		return x.Metadata
   612  	}
   613  	return nil
   614  }
   615  
   616  func (x *Model) GetSupportedExportFormats() []*Model_ExportFormat {
   617  	if x != nil {
   618  		return x.SupportedExportFormats
   619  	}
   620  	return nil
   621  }
   622  
   623  func (x *Model) GetTrainingPipeline() string {
   624  	if x != nil {
   625  		return x.TrainingPipeline
   626  	}
   627  	return ""
   628  }
   629  
   630  func (x *Model) GetPipelineJob() string {
   631  	if x != nil {
   632  		return x.PipelineJob
   633  	}
   634  	return ""
   635  }
   636  
   637  func (x *Model) GetContainerSpec() *ModelContainerSpec {
   638  	if x != nil {
   639  		return x.ContainerSpec
   640  	}
   641  	return nil
   642  }
   643  
   644  func (x *Model) GetArtifactUri() string {
   645  	if x != nil {
   646  		return x.ArtifactUri
   647  	}
   648  	return ""
   649  }
   650  
   651  func (x *Model) GetSupportedDeploymentResourcesTypes() []Model_DeploymentResourcesType {
   652  	if x != nil {
   653  		return x.SupportedDeploymentResourcesTypes
   654  	}
   655  	return nil
   656  }
   657  
   658  func (x *Model) GetSupportedInputStorageFormats() []string {
   659  	if x != nil {
   660  		return x.SupportedInputStorageFormats
   661  	}
   662  	return nil
   663  }
   664  
   665  func (x *Model) GetSupportedOutputStorageFormats() []string {
   666  	if x != nil {
   667  		return x.SupportedOutputStorageFormats
   668  	}
   669  	return nil
   670  }
   671  
   672  func (x *Model) GetCreateTime() *timestamppb.Timestamp {
   673  	if x != nil {
   674  		return x.CreateTime
   675  	}
   676  	return nil
   677  }
   678  
   679  func (x *Model) GetUpdateTime() *timestamppb.Timestamp {
   680  	if x != nil {
   681  		return x.UpdateTime
   682  	}
   683  	return nil
   684  }
   685  
   686  func (x *Model) GetDeployedModels() []*DeployedModelRef {
   687  	if x != nil {
   688  		return x.DeployedModels
   689  	}
   690  	return nil
   691  }
   692  
   693  func (x *Model) GetExplanationSpec() *ExplanationSpec {
   694  	if x != nil {
   695  		return x.ExplanationSpec
   696  	}
   697  	return nil
   698  }
   699  
   700  func (x *Model) GetEtag() string {
   701  	if x != nil {
   702  		return x.Etag
   703  	}
   704  	return ""
   705  }
   706  
   707  func (x *Model) GetLabels() map[string]string {
   708  	if x != nil {
   709  		return x.Labels
   710  	}
   711  	return nil
   712  }
   713  
   714  func (x *Model) GetDataStats() *Model_DataStats {
   715  	if x != nil {
   716  		return x.DataStats
   717  	}
   718  	return nil
   719  }
   720  
   721  func (x *Model) GetEncryptionSpec() *EncryptionSpec {
   722  	if x != nil {
   723  		return x.EncryptionSpec
   724  	}
   725  	return nil
   726  }
   727  
   728  func (x *Model) GetModelSourceInfo() *ModelSourceInfo {
   729  	if x != nil {
   730  		return x.ModelSourceInfo
   731  	}
   732  	return nil
   733  }
   734  
   735  func (x *Model) GetOriginalModelInfo() *Model_OriginalModelInfo {
   736  	if x != nil {
   737  		return x.OriginalModelInfo
   738  	}
   739  	return nil
   740  }
   741  
   742  func (x *Model) GetMetadataArtifact() string {
   743  	if x != nil {
   744  		return x.MetadataArtifact
   745  	}
   746  	return ""
   747  }
   748  
   749  func (x *Model) GetBaseModelSource() *Model_BaseModelSource {
   750  	if x != nil {
   751  		return x.BaseModelSource
   752  	}
   753  	return nil
   754  }
   755  
   756  func (x *Model) GetSatisfiesPzs() bool {
   757  	if x != nil {
   758  		return x.SatisfiesPzs
   759  	}
   760  	return false
   761  }
   762  
   763  func (x *Model) GetSatisfiesPzi() bool {
   764  	if x != nil {
   765  		return x.SatisfiesPzi
   766  	}
   767  	return false
   768  }
   769  
   770  func (x *Model) GetCheckpoints() []*Checkpoint {
   771  	if x != nil {
   772  		return x.Checkpoints
   773  	}
   774  	return nil
   775  }
   776  
   777  // Contains information about the Large Model.
   778  type LargeModelReference struct {
   779  	state         protoimpl.MessageState
   780  	sizeCache     protoimpl.SizeCache
   781  	unknownFields protoimpl.UnknownFields
   782  
   783  	// Required. The unique name of the large Foundation or pre-built model. Like
   784  	// "chat-bison", "text-bison". Or model name with version ID, like
   785  	// "chat-bison@001", "text-bison@005", etc.
   786  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   787  }
   788  
   789  func (x *LargeModelReference) Reset() {
   790  	*x = LargeModelReference{}
   791  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[1]
   792  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   793  	ms.StoreMessageInfo(mi)
   794  }
   795  
   796  func (x *LargeModelReference) String() string {
   797  	return protoimpl.X.MessageStringOf(x)
   798  }
   799  
   800  func (*LargeModelReference) ProtoMessage() {}
   801  
   802  func (x *LargeModelReference) ProtoReflect() protoreflect.Message {
   803  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[1]
   804  	if x != nil {
   805  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   806  		if ms.LoadMessageInfo() == nil {
   807  			ms.StoreMessageInfo(mi)
   808  		}
   809  		return ms
   810  	}
   811  	return mi.MessageOf(x)
   812  }
   813  
   814  // Deprecated: Use LargeModelReference.ProtoReflect.Descriptor instead.
   815  func (*LargeModelReference) Descriptor() ([]byte, []int) {
   816  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{1}
   817  }
   818  
   819  func (x *LargeModelReference) GetName() string {
   820  	if x != nil {
   821  		return x.Name
   822  	}
   823  	return ""
   824  }
   825  
   826  // Contains information about the source of the models generated from Model
   827  // Garden.
   828  type ModelGardenSource struct {
   829  	state         protoimpl.MessageState
   830  	sizeCache     protoimpl.SizeCache
   831  	unknownFields protoimpl.UnknownFields
   832  
   833  	// Required. The model garden source model resource name.
   834  	PublicModelName string `protobuf:"bytes,1,opt,name=public_model_name,json=publicModelName,proto3" json:"public_model_name,omitempty"`
   835  	// Optional. The model garden source model version ID.
   836  	VersionId string `protobuf:"bytes,3,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
   837  	// Optional. Whether to avoid pulling the model from the HF cache.
   838  	SkipHfModelCache bool `protobuf:"varint,4,opt,name=skip_hf_model_cache,json=skipHfModelCache,proto3" json:"skip_hf_model_cache,omitempty"`
   839  }
   840  
   841  func (x *ModelGardenSource) Reset() {
   842  	*x = ModelGardenSource{}
   843  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[2]
   844  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   845  	ms.StoreMessageInfo(mi)
   846  }
   847  
   848  func (x *ModelGardenSource) String() string {
   849  	return protoimpl.X.MessageStringOf(x)
   850  }
   851  
   852  func (*ModelGardenSource) ProtoMessage() {}
   853  
   854  func (x *ModelGardenSource) ProtoReflect() protoreflect.Message {
   855  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[2]
   856  	if x != nil {
   857  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   858  		if ms.LoadMessageInfo() == nil {
   859  			ms.StoreMessageInfo(mi)
   860  		}
   861  		return ms
   862  	}
   863  	return mi.MessageOf(x)
   864  }
   865  
   866  // Deprecated: Use ModelGardenSource.ProtoReflect.Descriptor instead.
   867  func (*ModelGardenSource) Descriptor() ([]byte, []int) {
   868  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{2}
   869  }
   870  
   871  func (x *ModelGardenSource) GetPublicModelName() string {
   872  	if x != nil {
   873  		return x.PublicModelName
   874  	}
   875  	return ""
   876  }
   877  
   878  func (x *ModelGardenSource) GetVersionId() string {
   879  	if x != nil {
   880  		return x.VersionId
   881  	}
   882  	return ""
   883  }
   884  
   885  func (x *ModelGardenSource) GetSkipHfModelCache() bool {
   886  	if x != nil {
   887  		return x.SkipHfModelCache
   888  	}
   889  	return false
   890  }
   891  
   892  // Contains information about the source of the models generated from Generative
   893  // AI Studio.
   894  type GenieSource struct {
   895  	state         protoimpl.MessageState
   896  	sizeCache     protoimpl.SizeCache
   897  	unknownFields protoimpl.UnknownFields
   898  
   899  	// Required. The public base model URI.
   900  	BaseModelUri string `protobuf:"bytes,1,opt,name=base_model_uri,json=baseModelUri,proto3" json:"base_model_uri,omitempty"`
   901  }
   902  
   903  func (x *GenieSource) Reset() {
   904  	*x = GenieSource{}
   905  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[3]
   906  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   907  	ms.StoreMessageInfo(mi)
   908  }
   909  
   910  func (x *GenieSource) String() string {
   911  	return protoimpl.X.MessageStringOf(x)
   912  }
   913  
   914  func (*GenieSource) ProtoMessage() {}
   915  
   916  func (x *GenieSource) ProtoReflect() protoreflect.Message {
   917  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[3]
   918  	if x != nil {
   919  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   920  		if ms.LoadMessageInfo() == nil {
   921  			ms.StoreMessageInfo(mi)
   922  		}
   923  		return ms
   924  	}
   925  	return mi.MessageOf(x)
   926  }
   927  
   928  // Deprecated: Use GenieSource.ProtoReflect.Descriptor instead.
   929  func (*GenieSource) Descriptor() ([]byte, []int) {
   930  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{3}
   931  }
   932  
   933  func (x *GenieSource) GetBaseModelUri() string {
   934  	if x != nil {
   935  		return x.BaseModelUri
   936  	}
   937  	return ""
   938  }
   939  
   940  // Contains the schemata used in Model's predictions and explanations via
   941  // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict],
   942  // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]
   943  // and [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob].
   944  type PredictSchemata struct {
   945  	state         protoimpl.MessageState
   946  	sizeCache     protoimpl.SizeCache
   947  	unknownFields protoimpl.UnknownFields
   948  
   949  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   950  	// the format of a single instance, which are used in
   951  	// [PredictRequest.instances][google.cloud.aiplatform.v1.PredictRequest.instances],
   952  	// [ExplainRequest.instances][google.cloud.aiplatform.v1.ExplainRequest.instances]
   953  	// and
   954  	// [BatchPredictionJob.input_config][google.cloud.aiplatform.v1.BatchPredictionJob.input_config].
   955  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   956  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   957  	// AutoML Models always have this field populated by Vertex AI.
   958  	// Note: The URI given on output will be immutable and probably different,
   959  	// including the URI scheme, than the one given on input. The output URI will
   960  	// point to a location where the user only has a read access.
   961  	InstanceSchemaUri string `protobuf:"bytes,1,opt,name=instance_schema_uri,json=instanceSchemaUri,proto3" json:"instance_schema_uri,omitempty"`
   962  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   963  	// the parameters of prediction and explanation via
   964  	// [PredictRequest.parameters][google.cloud.aiplatform.v1.PredictRequest.parameters],
   965  	// [ExplainRequest.parameters][google.cloud.aiplatform.v1.ExplainRequest.parameters]
   966  	// and
   967  	// [BatchPredictionJob.model_parameters][google.cloud.aiplatform.v1.BatchPredictionJob.model_parameters].
   968  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   969  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   970  	// AutoML Models always have this field populated by Vertex AI, if no
   971  	// parameters are supported, then it is set to an empty string.
   972  	// Note: The URI given on output will be immutable and probably different,
   973  	// including the URI scheme, than the one given on input. The output URI will
   974  	// point to a location where the user only has a read access.
   975  	ParametersSchemaUri string `protobuf:"bytes,2,opt,name=parameters_schema_uri,json=parametersSchemaUri,proto3" json:"parameters_schema_uri,omitempty"`
   976  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   977  	// the format of a single prediction produced by this Model, which are
   978  	// returned via
   979  	// [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions],
   980  	// [ExplainResponse.explanations][google.cloud.aiplatform.v1.ExplainResponse.explanations],
   981  	// and
   982  	// [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config].
   983  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   984  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   985  	// AutoML Models always have this field populated by Vertex AI.
   986  	// Note: The URI given on output will be immutable and probably different,
   987  	// including the URI scheme, than the one given on input. The output URI will
   988  	// point to a location where the user only has a read access.
   989  	PredictionSchemaUri string `protobuf:"bytes,3,opt,name=prediction_schema_uri,json=predictionSchemaUri,proto3" json:"prediction_schema_uri,omitempty"`
   990  }
   991  
   992  func (x *PredictSchemata) Reset() {
   993  	*x = PredictSchemata{}
   994  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[4]
   995  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   996  	ms.StoreMessageInfo(mi)
   997  }
   998  
   999  func (x *PredictSchemata) String() string {
  1000  	return protoimpl.X.MessageStringOf(x)
  1001  }
  1002  
  1003  func (*PredictSchemata) ProtoMessage() {}
  1004  
  1005  func (x *PredictSchemata) ProtoReflect() protoreflect.Message {
  1006  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[4]
  1007  	if x != nil {
  1008  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1009  		if ms.LoadMessageInfo() == nil {
  1010  			ms.StoreMessageInfo(mi)
  1011  		}
  1012  		return ms
  1013  	}
  1014  	return mi.MessageOf(x)
  1015  }
  1016  
  1017  // Deprecated: Use PredictSchemata.ProtoReflect.Descriptor instead.
  1018  func (*PredictSchemata) Descriptor() ([]byte, []int) {
  1019  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{4}
  1020  }
  1021  
  1022  func (x *PredictSchemata) GetInstanceSchemaUri() string {
  1023  	if x != nil {
  1024  		return x.InstanceSchemaUri
  1025  	}
  1026  	return ""
  1027  }
  1028  
  1029  func (x *PredictSchemata) GetParametersSchemaUri() string {
  1030  	if x != nil {
  1031  		return x.ParametersSchemaUri
  1032  	}
  1033  	return ""
  1034  }
  1035  
  1036  func (x *PredictSchemata) GetPredictionSchemaUri() string {
  1037  	if x != nil {
  1038  		return x.PredictionSchemaUri
  1039  	}
  1040  	return ""
  1041  }
  1042  
  1043  // Specification of a container for serving predictions. Some fields in this
  1044  // message correspond to fields in the [Kubernetes Container v1 core
  1045  // specification](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1046  type ModelContainerSpec struct {
  1047  	state         protoimpl.MessageState
  1048  	sizeCache     protoimpl.SizeCache
  1049  	unknownFields protoimpl.UnknownFields
  1050  
  1051  	// Required. Immutable. URI of the Docker image to be used as the custom
  1052  	// container for serving predictions. This URI must identify an image in
  1053  	// Artifact Registry or Container Registry. Learn more about the [container
  1054  	// publishing
  1055  	// requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#publishing),
  1056  	// including permissions requirements for the Vertex AI Service Agent.
  1057  	//
  1058  	// The container image is ingested upon
  1059  	// [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel],
  1060  	// stored internally, and this original path is afterwards not used.
  1061  	//
  1062  	// To learn about the requirements for the Docker image itself, see
  1063  	// [Custom container
  1064  	// requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#).
  1065  	//
  1066  	// You can use the URI to one of Vertex AI's [pre-built container images for
  1067  	// prediction](https://cloud.google.com/vertex-ai/docs/predictions/pre-built-containers)
  1068  	// in this field.
  1069  	ImageUri string `protobuf:"bytes,1,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
  1070  	// Immutable. Specifies the command that runs when the container starts. This
  1071  	// overrides the container's
  1072  	// [ENTRYPOINT](https://docs.docker.com/engine/reference/builder/#entrypoint).
  1073  	// Specify this field as an array of executable and arguments, similar to a
  1074  	// Docker `ENTRYPOINT`'s "exec" form, not its "shell" form.
  1075  	//
  1076  	// If you do not specify this field, then the container's `ENTRYPOINT` runs,
  1077  	// in conjunction with the
  1078  	// [args][google.cloud.aiplatform.v1.ModelContainerSpec.args] field or the
  1079  	// container's [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd),
  1080  	// if either exists. If this field is not specified and the container does not
  1081  	// have an `ENTRYPOINT`, then refer to the Docker documentation about [how
  1082  	// `CMD` and `ENTRYPOINT`
  1083  	// interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact).
  1084  	//
  1085  	// If you specify this field, then you can also specify the `args` field to
  1086  	// provide additional arguments for this command. However, if you specify this
  1087  	// field, then the container's `CMD` is ignored. See the
  1088  	// [Kubernetes documentation about how the
  1089  	// `command` and `args` fields interact with a container's `ENTRYPOINT` and
  1090  	// `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes).
  1091  	//
  1092  	// In this field, you can reference [environment variables set by Vertex
  1093  	// AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables)
  1094  	// and environment variables set in the
  1095  	// [env][google.cloud.aiplatform.v1.ModelContainerSpec.env] field. You cannot
  1096  	// reference environment variables set in the Docker image. In order for
  1097  	// environment variables to be expanded, reference them by using the following
  1098  	// syntax: <code>$(<var>VARIABLE_NAME</var>)</code> Note that this differs
  1099  	// from Bash variable expansion, which does not use parentheses. If a variable
  1100  	// cannot be resolved, the reference in the input string is used unchanged. To
  1101  	// avoid variable expansion, you can escape this syntax with `$$`; for
  1102  	// example: <code>$$(<var>VARIABLE_NAME</var>)</code> This field corresponds
  1103  	// to the `command` field of the Kubernetes Containers [v1 core
  1104  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1105  	Command []string `protobuf:"bytes,2,rep,name=command,proto3" json:"command,omitempty"`
  1106  	// Immutable. Specifies arguments for the command that runs when the container
  1107  	// starts. This overrides the container's
  1108  	// [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd). Specify
  1109  	// this field as an array of executable and arguments, similar to a Docker
  1110  	// `CMD`'s "default parameters" form.
  1111  	//
  1112  	// If you don't specify this field but do specify the
  1113  	// [command][google.cloud.aiplatform.v1.ModelContainerSpec.command] field,
  1114  	// then the command from the `command` field runs without any additional
  1115  	// arguments. See the [Kubernetes documentation about how the `command` and
  1116  	// `args` fields interact with a container's `ENTRYPOINT` and
  1117  	// `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes).
  1118  	//
  1119  	// If you don't specify this field and don't specify the `command` field,
  1120  	// then the container's
  1121  	// [`ENTRYPOINT`](https://docs.docker.com/engine/reference/builder/#cmd) and
  1122  	// `CMD` determine what runs based on their default behavior. See the Docker
  1123  	// documentation about [how `CMD` and `ENTRYPOINT`
  1124  	// interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact).
  1125  	//
  1126  	// In this field, you can reference [environment variables
  1127  	// set by Vertex
  1128  	// AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables)
  1129  	// and environment variables set in the
  1130  	// [env][google.cloud.aiplatform.v1.ModelContainerSpec.env] field. You cannot
  1131  	// reference environment variables set in the Docker image. In order for
  1132  	// environment variables to be expanded, reference them by using the following
  1133  	// syntax: <code>$(<var>VARIABLE_NAME</var>)</code> Note that this differs
  1134  	// from Bash variable expansion, which does not use parentheses. If a variable
  1135  	// cannot be resolved, the reference in the input string is used unchanged. To
  1136  	// avoid variable expansion, you can escape this syntax with `$$`; for
  1137  	// example: <code>$$(<var>VARIABLE_NAME</var>)</code> This field corresponds
  1138  	// to the `args` field of the Kubernetes Containers [v1 core
  1139  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1140  	Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"`
  1141  	// Immutable. List of environment variables to set in the container. After the
  1142  	// container starts running, code running in the container can read these
  1143  	// environment variables.
  1144  	//
  1145  	// Additionally, the
  1146  	// [command][google.cloud.aiplatform.v1.ModelContainerSpec.command] and
  1147  	// [args][google.cloud.aiplatform.v1.ModelContainerSpec.args] fields can
  1148  	// reference these variables. Later entries in this list can also reference
  1149  	// earlier entries. For example, the following example sets the variable
  1150  	// `VAR_2` to have the value `foo bar`:
  1151  	//
  1152  	// ```json
  1153  	// [
  1154  	//
  1155  	//	{
  1156  	//	  "name": "VAR_1",
  1157  	//	  "value": "foo"
  1158  	//	},
  1159  	//	{
  1160  	//	  "name": "VAR_2",
  1161  	//	  "value": "$(VAR_1) bar"
  1162  	//	}
  1163  	//
  1164  	// ]
  1165  	// ```
  1166  	//
  1167  	// If you switch the order of the variables in the example, then the expansion
  1168  	// does not occur.
  1169  	//
  1170  	// This field corresponds to the `env` field of the Kubernetes Containers
  1171  	// [v1 core
  1172  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1173  	Env []*EnvVar `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty"`
  1174  	// Immutable. List of ports to expose from the container. Vertex AI sends any
  1175  	// prediction requests that it receives to the first port on this list. Vertex
  1176  	// AI also sends
  1177  	// [liveness and health
  1178  	// checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#liveness)
  1179  	// to this port.
  1180  	//
  1181  	// If you do not specify this field, it defaults to following value:
  1182  	//
  1183  	// ```json
  1184  	// [
  1185  	//
  1186  	//	{
  1187  	//	  "containerPort": 8080
  1188  	//	}
  1189  	//
  1190  	// ]
  1191  	// ```
  1192  	//
  1193  	// Vertex AI does not use ports other than the first one listed. This field
  1194  	// corresponds to the `ports` field of the Kubernetes Containers
  1195  	// [v1 core
  1196  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1197  	Ports []*Port `protobuf:"bytes,5,rep,name=ports,proto3" json:"ports,omitempty"`
  1198  	// Immutable. HTTP path on the container to send prediction requests to.
  1199  	// Vertex AI forwards requests sent using
  1200  	// [projects.locations.endpoints.predict][google.cloud.aiplatform.v1.PredictionService.Predict]
  1201  	// to this path on the container's IP address and port. Vertex AI then returns
  1202  	// the container's response in the API response.
  1203  	//
  1204  	// For example, if you set this field to `/foo`, then when Vertex AI
  1205  	// receives a prediction request, it forwards the request body in a POST
  1206  	// request to the `/foo` path on the port of your container specified by the
  1207  	// first value of this `ModelContainerSpec`'s
  1208  	// [ports][google.cloud.aiplatform.v1.ModelContainerSpec.ports] field.
  1209  	//
  1210  	// If you don't specify this field, it defaults to the following value when
  1211  	// you [deploy this Model to an
  1212  	// Endpoint][google.cloud.aiplatform.v1.EndpointService.DeployModel]:
  1213  	// <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code>
  1214  	// The placeholders in this value are replaced as follows:
  1215  	//
  1216  	//   - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the
  1217  	//     Endpoint.name][] field of the Endpoint where this Model has been
  1218  	//     deployed. (Vertex AI makes this value available to your container code
  1219  	//     as the [`AIP_ENDPOINT_ID` environment
  1220  	//     variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1221  	//
  1222  	// * <var>DEPLOYED_MODEL</var>:
  1223  	// [DeployedModel.id][google.cloud.aiplatform.v1.DeployedModel.id] of the
  1224  	// `DeployedModel`.
  1225  	//
  1226  	//	(Vertex AI makes this value available to your container code
  1227  	//	as the [`AIP_DEPLOYED_MODEL_ID` environment
  1228  	//	variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1229  	PredictRoute string `protobuf:"bytes,6,opt,name=predict_route,json=predictRoute,proto3" json:"predict_route,omitempty"`
  1230  	// Immutable. HTTP path on the container to send health checks to. Vertex AI
  1231  	// intermittently sends GET requests to this path on the container's IP
  1232  	// address and port to check that the container is healthy. Read more about
  1233  	// [health
  1234  	// checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#health).
  1235  	//
  1236  	// For example, if you set this field to `/bar`, then Vertex AI
  1237  	// intermittently sends a GET request to the `/bar` path on the port of your
  1238  	// container specified by the first value of this `ModelContainerSpec`'s
  1239  	// [ports][google.cloud.aiplatform.v1.ModelContainerSpec.ports] field.
  1240  	//
  1241  	// If you don't specify this field, it defaults to the following value when
  1242  	// you [deploy this Model to an
  1243  	// Endpoint][google.cloud.aiplatform.v1.EndpointService.DeployModel]:
  1244  	// <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code>
  1245  	// The placeholders in this value are replaced as follows:
  1246  	//
  1247  	//   - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the
  1248  	//     Endpoint.name][] field of the Endpoint where this Model has been
  1249  	//     deployed. (Vertex AI makes this value available to your container code
  1250  	//     as the [`AIP_ENDPOINT_ID` environment
  1251  	//     variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1252  	//
  1253  	// * <var>DEPLOYED_MODEL</var>:
  1254  	// [DeployedModel.id][google.cloud.aiplatform.v1.DeployedModel.id] of the
  1255  	// `DeployedModel`.
  1256  	//
  1257  	//	(Vertex AI makes this value available to your container code as the
  1258  	//	[`AIP_DEPLOYED_MODEL_ID` environment
  1259  	//	variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1260  	HealthRoute string `protobuf:"bytes,7,opt,name=health_route,json=healthRoute,proto3" json:"health_route,omitempty"`
  1261  	// Immutable. Invoke route prefix for the custom container. "/*" is the only
  1262  	// supported value right now. By setting this field, any non-root route on
  1263  	// this model will be accessible with invoke http call eg: "/invoke/foo/bar",
  1264  	// however the [PredictionService.Invoke] RPC is not supported yet.
  1265  	//
  1266  	// Only one of `predict_route` or `invoke_route_prefix` can be set, and we
  1267  	// default to using `predict_route` if this field is not set. If this field
  1268  	// is set, the Model can only be deployed to dedicated endpoint.
  1269  	InvokeRoutePrefix string `protobuf:"bytes,15,opt,name=invoke_route_prefix,json=invokeRoutePrefix,proto3" json:"invoke_route_prefix,omitempty"`
  1270  	// Immutable. List of ports to expose from the container. Vertex AI sends gRPC
  1271  	// prediction requests that it receives to the first port on this list. Vertex
  1272  	// AI also sends liveness and health checks to this port.
  1273  	//
  1274  	// If you do not specify this field, gRPC requests to the container will be
  1275  	// disabled.
  1276  	//
  1277  	// Vertex AI does not use ports other than the first one listed. This field
  1278  	// corresponds to the `ports` field of the Kubernetes Containers v1 core API.
  1279  	GrpcPorts []*Port `protobuf:"bytes,9,rep,name=grpc_ports,json=grpcPorts,proto3" json:"grpc_ports,omitempty"`
  1280  	// Immutable. Deployment timeout.
  1281  	// Limit for deployment timeout is 2 hours.
  1282  	DeploymentTimeout *durationpb.Duration `protobuf:"bytes,10,opt,name=deployment_timeout,json=deploymentTimeout,proto3" json:"deployment_timeout,omitempty"`
  1283  	// Immutable. The amount of the VM memory to reserve as the shared memory for
  1284  	// the model in megabytes.
  1285  	SharedMemorySizeMb int64 `protobuf:"varint,11,opt,name=shared_memory_size_mb,json=sharedMemorySizeMb,proto3" json:"shared_memory_size_mb,omitempty"`
  1286  	// Immutable. Specification for Kubernetes startup probe.
  1287  	StartupProbe *Probe `protobuf:"bytes,12,opt,name=startup_probe,json=startupProbe,proto3" json:"startup_probe,omitempty"`
  1288  	// Immutable. Specification for Kubernetes readiness probe.
  1289  	HealthProbe *Probe `protobuf:"bytes,13,opt,name=health_probe,json=healthProbe,proto3" json:"health_probe,omitempty"`
  1290  	// Immutable. Specification for Kubernetes liveness probe.
  1291  	LivenessProbe *Probe `protobuf:"bytes,14,opt,name=liveness_probe,json=livenessProbe,proto3" json:"liveness_probe,omitempty"`
  1292  }
  1293  
  1294  func (x *ModelContainerSpec) Reset() {
  1295  	*x = ModelContainerSpec{}
  1296  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[5]
  1297  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1298  	ms.StoreMessageInfo(mi)
  1299  }
  1300  
  1301  func (x *ModelContainerSpec) String() string {
  1302  	return protoimpl.X.MessageStringOf(x)
  1303  }
  1304  
  1305  func (*ModelContainerSpec) ProtoMessage() {}
  1306  
  1307  func (x *ModelContainerSpec) ProtoReflect() protoreflect.Message {
  1308  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[5]
  1309  	if x != nil {
  1310  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1311  		if ms.LoadMessageInfo() == nil {
  1312  			ms.StoreMessageInfo(mi)
  1313  		}
  1314  		return ms
  1315  	}
  1316  	return mi.MessageOf(x)
  1317  }
  1318  
  1319  // Deprecated: Use ModelContainerSpec.ProtoReflect.Descriptor instead.
  1320  func (*ModelContainerSpec) Descriptor() ([]byte, []int) {
  1321  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{5}
  1322  }
  1323  
  1324  func (x *ModelContainerSpec) GetImageUri() string {
  1325  	if x != nil {
  1326  		return x.ImageUri
  1327  	}
  1328  	return ""
  1329  }
  1330  
  1331  func (x *ModelContainerSpec) GetCommand() []string {
  1332  	if x != nil {
  1333  		return x.Command
  1334  	}
  1335  	return nil
  1336  }
  1337  
  1338  func (x *ModelContainerSpec) GetArgs() []string {
  1339  	if x != nil {
  1340  		return x.Args
  1341  	}
  1342  	return nil
  1343  }
  1344  
  1345  func (x *ModelContainerSpec) GetEnv() []*EnvVar {
  1346  	if x != nil {
  1347  		return x.Env
  1348  	}
  1349  	return nil
  1350  }
  1351  
  1352  func (x *ModelContainerSpec) GetPorts() []*Port {
  1353  	if x != nil {
  1354  		return x.Ports
  1355  	}
  1356  	return nil
  1357  }
  1358  
  1359  func (x *ModelContainerSpec) GetPredictRoute() string {
  1360  	if x != nil {
  1361  		return x.PredictRoute
  1362  	}
  1363  	return ""
  1364  }
  1365  
  1366  func (x *ModelContainerSpec) GetHealthRoute() string {
  1367  	if x != nil {
  1368  		return x.HealthRoute
  1369  	}
  1370  	return ""
  1371  }
  1372  
  1373  func (x *ModelContainerSpec) GetInvokeRoutePrefix() string {
  1374  	if x != nil {
  1375  		return x.InvokeRoutePrefix
  1376  	}
  1377  	return ""
  1378  }
  1379  
  1380  func (x *ModelContainerSpec) GetGrpcPorts() []*Port {
  1381  	if x != nil {
  1382  		return x.GrpcPorts
  1383  	}
  1384  	return nil
  1385  }
  1386  
  1387  func (x *ModelContainerSpec) GetDeploymentTimeout() *durationpb.Duration {
  1388  	if x != nil {
  1389  		return x.DeploymentTimeout
  1390  	}
  1391  	return nil
  1392  }
  1393  
  1394  func (x *ModelContainerSpec) GetSharedMemorySizeMb() int64 {
  1395  	if x != nil {
  1396  		return x.SharedMemorySizeMb
  1397  	}
  1398  	return 0
  1399  }
  1400  
  1401  func (x *ModelContainerSpec) GetStartupProbe() *Probe {
  1402  	if x != nil {
  1403  		return x.StartupProbe
  1404  	}
  1405  	return nil
  1406  }
  1407  
  1408  func (x *ModelContainerSpec) GetHealthProbe() *Probe {
  1409  	if x != nil {
  1410  		return x.HealthProbe
  1411  	}
  1412  	return nil
  1413  }
  1414  
  1415  func (x *ModelContainerSpec) GetLivenessProbe() *Probe {
  1416  	if x != nil {
  1417  		return x.LivenessProbe
  1418  	}
  1419  	return nil
  1420  }
  1421  
  1422  // Represents a network port in a container.
  1423  type Port struct {
  1424  	state         protoimpl.MessageState
  1425  	sizeCache     protoimpl.SizeCache
  1426  	unknownFields protoimpl.UnknownFields
  1427  
  1428  	// The number of the port to expose on the pod's IP address.
  1429  	// Must be a valid port number, between 1 and 65535 inclusive.
  1430  	ContainerPort int32 `protobuf:"varint,3,opt,name=container_port,json=containerPort,proto3" json:"container_port,omitempty"`
  1431  }
  1432  
  1433  func (x *Port) Reset() {
  1434  	*x = Port{}
  1435  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[6]
  1436  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1437  	ms.StoreMessageInfo(mi)
  1438  }
  1439  
  1440  func (x *Port) String() string {
  1441  	return protoimpl.X.MessageStringOf(x)
  1442  }
  1443  
  1444  func (*Port) ProtoMessage() {}
  1445  
  1446  func (x *Port) ProtoReflect() protoreflect.Message {
  1447  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[6]
  1448  	if x != nil {
  1449  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1450  		if ms.LoadMessageInfo() == nil {
  1451  			ms.StoreMessageInfo(mi)
  1452  		}
  1453  		return ms
  1454  	}
  1455  	return mi.MessageOf(x)
  1456  }
  1457  
  1458  // Deprecated: Use Port.ProtoReflect.Descriptor instead.
  1459  func (*Port) Descriptor() ([]byte, []int) {
  1460  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{6}
  1461  }
  1462  
  1463  func (x *Port) GetContainerPort() int32 {
  1464  	if x != nil {
  1465  		return x.ContainerPort
  1466  	}
  1467  	return 0
  1468  }
  1469  
  1470  // Detail description of the source information of the model.
  1471  type ModelSourceInfo struct {
  1472  	state         protoimpl.MessageState
  1473  	sizeCache     protoimpl.SizeCache
  1474  	unknownFields protoimpl.UnknownFields
  1475  
  1476  	// Type of the model source.
  1477  	SourceType ModelSourceInfo_ModelSourceType `protobuf:"varint,1,opt,name=source_type,json=sourceType,proto3,enum=google.cloud.aiplatform.v1.ModelSourceInfo_ModelSourceType" json:"source_type,omitempty"`
  1478  	// If this Model is copy of another Model. If true then
  1479  	// [source_type][google.cloud.aiplatform.v1.ModelSourceInfo.source_type]
  1480  	// pertains to the original.
  1481  	Copy bool `protobuf:"varint,2,opt,name=copy,proto3" json:"copy,omitempty"`
  1482  }
  1483  
  1484  func (x *ModelSourceInfo) Reset() {
  1485  	*x = ModelSourceInfo{}
  1486  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[7]
  1487  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1488  	ms.StoreMessageInfo(mi)
  1489  }
  1490  
  1491  func (x *ModelSourceInfo) String() string {
  1492  	return protoimpl.X.MessageStringOf(x)
  1493  }
  1494  
  1495  func (*ModelSourceInfo) ProtoMessage() {}
  1496  
  1497  func (x *ModelSourceInfo) ProtoReflect() protoreflect.Message {
  1498  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[7]
  1499  	if x != nil {
  1500  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1501  		if ms.LoadMessageInfo() == nil {
  1502  			ms.StoreMessageInfo(mi)
  1503  		}
  1504  		return ms
  1505  	}
  1506  	return mi.MessageOf(x)
  1507  }
  1508  
  1509  // Deprecated: Use ModelSourceInfo.ProtoReflect.Descriptor instead.
  1510  func (*ModelSourceInfo) Descriptor() ([]byte, []int) {
  1511  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{7}
  1512  }
  1513  
  1514  func (x *ModelSourceInfo) GetSourceType() ModelSourceInfo_ModelSourceType {
  1515  	if x != nil {
  1516  		return x.SourceType
  1517  	}
  1518  	return ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED
  1519  }
  1520  
  1521  func (x *ModelSourceInfo) GetCopy() bool {
  1522  	if x != nil {
  1523  		return x.Copy
  1524  	}
  1525  	return false
  1526  }
  1527  
  1528  // Probe describes a health check to be performed against a container to
  1529  // determine whether it is alive or ready to receive traffic.
  1530  type Probe struct {
  1531  	state         protoimpl.MessageState
  1532  	sizeCache     protoimpl.SizeCache
  1533  	unknownFields protoimpl.UnknownFields
  1534  
  1535  	// Types that are assignable to ProbeType:
  1536  	//
  1537  	//	*Probe_Exec
  1538  	//	*Probe_HttpGet
  1539  	//	*Probe_Grpc
  1540  	//	*Probe_TcpSocket
  1541  	ProbeType isProbe_ProbeType `protobuf_oneof:"probe_type"`
  1542  	// How often (in seconds) to perform the probe. Default to 10 seconds.
  1543  	// Minimum value is 1. Must be less than timeout_seconds.
  1544  	//
  1545  	// Maps to Kubernetes probe argument 'periodSeconds'.
  1546  	PeriodSeconds int32 `protobuf:"varint,2,opt,name=period_seconds,json=periodSeconds,proto3" json:"period_seconds,omitempty"`
  1547  	// Number of seconds after which the probe times out. Defaults to 1 second.
  1548  	// Minimum value is 1. Must be greater or equal to period_seconds.
  1549  	//
  1550  	// Maps to Kubernetes probe argument 'timeoutSeconds'.
  1551  	TimeoutSeconds int32 `protobuf:"varint,3,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"`
  1552  	// Number of consecutive failures before the probe is considered failed.
  1553  	// Defaults to 3. Minimum value is 1.
  1554  	//
  1555  	// Maps to Kubernetes probe argument 'failureThreshold'.
  1556  	FailureThreshold int32 `protobuf:"varint,7,opt,name=failure_threshold,json=failureThreshold,proto3" json:"failure_threshold,omitempty"`
  1557  	// Number of consecutive successes before the probe is considered successful.
  1558  	// Defaults to 1. Minimum value is 1.
  1559  	//
  1560  	// Maps to Kubernetes probe argument 'successThreshold'.
  1561  	SuccessThreshold int32 `protobuf:"varint,8,opt,name=success_threshold,json=successThreshold,proto3" json:"success_threshold,omitempty"`
  1562  	// Number of seconds to wait before starting the probe. Defaults to 0.
  1563  	// Minimum value is 0.
  1564  	//
  1565  	// Maps to Kubernetes probe argument 'initialDelaySeconds'.
  1566  	InitialDelaySeconds int32 `protobuf:"varint,9,opt,name=initial_delay_seconds,json=initialDelaySeconds,proto3" json:"initial_delay_seconds,omitempty"`
  1567  }
  1568  
  1569  func (x *Probe) Reset() {
  1570  	*x = Probe{}
  1571  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[8]
  1572  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1573  	ms.StoreMessageInfo(mi)
  1574  }
  1575  
  1576  func (x *Probe) String() string {
  1577  	return protoimpl.X.MessageStringOf(x)
  1578  }
  1579  
  1580  func (*Probe) ProtoMessage() {}
  1581  
  1582  func (x *Probe) ProtoReflect() protoreflect.Message {
  1583  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[8]
  1584  	if 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 Probe.ProtoReflect.Descriptor instead.
  1595  func (*Probe) Descriptor() ([]byte, []int) {
  1596  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8}
  1597  }
  1598  
  1599  func (m *Probe) GetProbeType() isProbe_ProbeType {
  1600  	if m != nil {
  1601  		return m.ProbeType
  1602  	}
  1603  	return nil
  1604  }
  1605  
  1606  func (x *Probe) GetExec() *Probe_ExecAction {
  1607  	if x, ok := x.GetProbeType().(*Probe_Exec); ok {
  1608  		return x.Exec
  1609  	}
  1610  	return nil
  1611  }
  1612  
  1613  func (x *Probe) GetHttpGet() *Probe_HttpGetAction {
  1614  	if x, ok := x.GetProbeType().(*Probe_HttpGet); ok {
  1615  		return x.HttpGet
  1616  	}
  1617  	return nil
  1618  }
  1619  
  1620  func (x *Probe) GetGrpc() *Probe_GrpcAction {
  1621  	if x, ok := x.GetProbeType().(*Probe_Grpc); ok {
  1622  		return x.Grpc
  1623  	}
  1624  	return nil
  1625  }
  1626  
  1627  func (x *Probe) GetTcpSocket() *Probe_TcpSocketAction {
  1628  	if x, ok := x.GetProbeType().(*Probe_TcpSocket); ok {
  1629  		return x.TcpSocket
  1630  	}
  1631  	return nil
  1632  }
  1633  
  1634  func (x *Probe) GetPeriodSeconds() int32 {
  1635  	if x != nil {
  1636  		return x.PeriodSeconds
  1637  	}
  1638  	return 0
  1639  }
  1640  
  1641  func (x *Probe) GetTimeoutSeconds() int32 {
  1642  	if x != nil {
  1643  		return x.TimeoutSeconds
  1644  	}
  1645  	return 0
  1646  }
  1647  
  1648  func (x *Probe) GetFailureThreshold() int32 {
  1649  	if x != nil {
  1650  		return x.FailureThreshold
  1651  	}
  1652  	return 0
  1653  }
  1654  
  1655  func (x *Probe) GetSuccessThreshold() int32 {
  1656  	if x != nil {
  1657  		return x.SuccessThreshold
  1658  	}
  1659  	return 0
  1660  }
  1661  
  1662  func (x *Probe) GetInitialDelaySeconds() int32 {
  1663  	if x != nil {
  1664  		return x.InitialDelaySeconds
  1665  	}
  1666  	return 0
  1667  }
  1668  
  1669  type isProbe_ProbeType interface {
  1670  	isProbe_ProbeType()
  1671  }
  1672  
  1673  type Probe_Exec struct {
  1674  	// ExecAction probes the health of a container by executing a command.
  1675  	Exec *Probe_ExecAction `protobuf:"bytes,1,opt,name=exec,proto3,oneof"`
  1676  }
  1677  
  1678  type Probe_HttpGet struct {
  1679  	// HttpGetAction probes the health of a container by sending an HTTP GET
  1680  	// request.
  1681  	HttpGet *Probe_HttpGetAction `protobuf:"bytes,4,opt,name=http_get,json=httpGet,proto3,oneof"`
  1682  }
  1683  
  1684  type Probe_Grpc struct {
  1685  	// GrpcAction probes the health of a container by sending a gRPC request.
  1686  	Grpc *Probe_GrpcAction `protobuf:"bytes,5,opt,name=grpc,proto3,oneof"`
  1687  }
  1688  
  1689  type Probe_TcpSocket struct {
  1690  	// TcpSocketAction probes the health of a container by opening a TCP socket
  1691  	// connection.
  1692  	TcpSocket *Probe_TcpSocketAction `protobuf:"bytes,6,opt,name=tcp_socket,json=tcpSocket,proto3,oneof"`
  1693  }
  1694  
  1695  func (*Probe_Exec) isProbe_ProbeType() {}
  1696  
  1697  func (*Probe_HttpGet) isProbe_ProbeType() {}
  1698  
  1699  func (*Probe_Grpc) isProbe_ProbeType() {}
  1700  
  1701  func (*Probe_TcpSocket) isProbe_ProbeType() {}
  1702  
  1703  // Describes the machine learning model version checkpoint.
  1704  type Checkpoint struct {
  1705  	state         protoimpl.MessageState
  1706  	sizeCache     protoimpl.SizeCache
  1707  	unknownFields protoimpl.UnknownFields
  1708  
  1709  	// The ID of the checkpoint.
  1710  	CheckpointId string `protobuf:"bytes,1,opt,name=checkpoint_id,json=checkpointId,proto3" json:"checkpoint_id,omitempty"`
  1711  	// The epoch of the checkpoint.
  1712  	Epoch int64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
  1713  	// The step of the checkpoint.
  1714  	Step int64 `protobuf:"varint,3,opt,name=step,proto3" json:"step,omitempty"`
  1715  }
  1716  
  1717  func (x *Checkpoint) Reset() {
  1718  	*x = Checkpoint{}
  1719  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[9]
  1720  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1721  	ms.StoreMessageInfo(mi)
  1722  }
  1723  
  1724  func (x *Checkpoint) String() string {
  1725  	return protoimpl.X.MessageStringOf(x)
  1726  }
  1727  
  1728  func (*Checkpoint) ProtoMessage() {}
  1729  
  1730  func (x *Checkpoint) ProtoReflect() protoreflect.Message {
  1731  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[9]
  1732  	if x != nil {
  1733  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1734  		if ms.LoadMessageInfo() == nil {
  1735  			ms.StoreMessageInfo(mi)
  1736  		}
  1737  		return ms
  1738  	}
  1739  	return mi.MessageOf(x)
  1740  }
  1741  
  1742  // Deprecated: Use Checkpoint.ProtoReflect.Descriptor instead.
  1743  func (*Checkpoint) Descriptor() ([]byte, []int) {
  1744  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{9}
  1745  }
  1746  
  1747  func (x *Checkpoint) GetCheckpointId() string {
  1748  	if x != nil {
  1749  		return x.CheckpointId
  1750  	}
  1751  	return ""
  1752  }
  1753  
  1754  func (x *Checkpoint) GetEpoch() int64 {
  1755  	if x != nil {
  1756  		return x.Epoch
  1757  	}
  1758  	return 0
  1759  }
  1760  
  1761  func (x *Checkpoint) GetStep() int64 {
  1762  	if x != nil {
  1763  		return x.Step
  1764  	}
  1765  	return 0
  1766  }
  1767  
  1768  // Represents export format supported by the Model.
  1769  // All formats export to Google Cloud Storage.
  1770  type Model_ExportFormat struct {
  1771  	state         protoimpl.MessageState
  1772  	sizeCache     protoimpl.SizeCache
  1773  	unknownFields protoimpl.UnknownFields
  1774  
  1775  	// Output only. The ID of the export format.
  1776  	// The possible format IDs are:
  1777  	//
  1778  	// * `tflite`
  1779  	// Used for Android mobile devices.
  1780  	//
  1781  	// * `edgetpu-tflite`
  1782  	// Used for [Edge TPU](https://cloud.google.com/edge-tpu/) devices.
  1783  	//
  1784  	// * `tf-saved-model`
  1785  	// A tensorflow model in SavedModel format.
  1786  	//
  1787  	// * `tf-js`
  1788  	// A [TensorFlow.js](https://www.tensorflow.org/js) model that can be used
  1789  	// in the browser and in Node.js using JavaScript.
  1790  	//
  1791  	// * `core-ml`
  1792  	// Used for iOS mobile devices.
  1793  	//
  1794  	// * `custom-trained`
  1795  	// A Model that was uploaded or trained by custom code.
  1796  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1797  	// Output only. The content of this Model that may be exported.
  1798  	ExportableContents []Model_ExportFormat_ExportableContent `protobuf:"varint,2,rep,packed,name=exportable_contents,json=exportableContents,proto3,enum=google.cloud.aiplatform.v1.Model_ExportFormat_ExportableContent" json:"exportable_contents,omitempty"`
  1799  }
  1800  
  1801  func (x *Model_ExportFormat) Reset() {
  1802  	*x = Model_ExportFormat{}
  1803  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[10]
  1804  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1805  	ms.StoreMessageInfo(mi)
  1806  }
  1807  
  1808  func (x *Model_ExportFormat) String() string {
  1809  	return protoimpl.X.MessageStringOf(x)
  1810  }
  1811  
  1812  func (*Model_ExportFormat) ProtoMessage() {}
  1813  
  1814  func (x *Model_ExportFormat) ProtoReflect() protoreflect.Message {
  1815  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[10]
  1816  	if x != nil {
  1817  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1818  		if ms.LoadMessageInfo() == nil {
  1819  			ms.StoreMessageInfo(mi)
  1820  		}
  1821  		return ms
  1822  	}
  1823  	return mi.MessageOf(x)
  1824  }
  1825  
  1826  // Deprecated: Use Model_ExportFormat.ProtoReflect.Descriptor instead.
  1827  func (*Model_ExportFormat) Descriptor() ([]byte, []int) {
  1828  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0}
  1829  }
  1830  
  1831  func (x *Model_ExportFormat) GetId() string {
  1832  	if x != nil {
  1833  		return x.Id
  1834  	}
  1835  	return ""
  1836  }
  1837  
  1838  func (x *Model_ExportFormat) GetExportableContents() []Model_ExportFormat_ExportableContent {
  1839  	if x != nil {
  1840  		return x.ExportableContents
  1841  	}
  1842  	return nil
  1843  }
  1844  
  1845  // Stats of data used for train or evaluate the Model.
  1846  type Model_DataStats struct {
  1847  	state         protoimpl.MessageState
  1848  	sizeCache     protoimpl.SizeCache
  1849  	unknownFields protoimpl.UnknownFields
  1850  
  1851  	// Number of DataItems that were used for training this Model.
  1852  	TrainingDataItemsCount int64 `protobuf:"varint,1,opt,name=training_data_items_count,json=trainingDataItemsCount,proto3" json:"training_data_items_count,omitempty"`
  1853  	// Number of DataItems that were used for validating this Model during
  1854  	// training.
  1855  	ValidationDataItemsCount int64 `protobuf:"varint,2,opt,name=validation_data_items_count,json=validationDataItemsCount,proto3" json:"validation_data_items_count,omitempty"`
  1856  	// Number of DataItems that were used for evaluating this Model. If the
  1857  	// Model is evaluated multiple times, this will be the number of test
  1858  	// DataItems used by the first evaluation. If the Model is not evaluated,
  1859  	// the number is 0.
  1860  	TestDataItemsCount int64 `protobuf:"varint,3,opt,name=test_data_items_count,json=testDataItemsCount,proto3" json:"test_data_items_count,omitempty"`
  1861  	// Number of Annotations that are used for training this Model.
  1862  	TrainingAnnotationsCount int64 `protobuf:"varint,4,opt,name=training_annotations_count,json=trainingAnnotationsCount,proto3" json:"training_annotations_count,omitempty"`
  1863  	// Number of Annotations that are used for validating this Model during
  1864  	// training.
  1865  	ValidationAnnotationsCount int64 `protobuf:"varint,5,opt,name=validation_annotations_count,json=validationAnnotationsCount,proto3" json:"validation_annotations_count,omitempty"`
  1866  	// Number of Annotations that are used for evaluating this Model. If the
  1867  	// Model is evaluated multiple times, this will be the number of test
  1868  	// Annotations used by the first evaluation. If the Model is not evaluated,
  1869  	// the number is 0.
  1870  	TestAnnotationsCount int64 `protobuf:"varint,6,opt,name=test_annotations_count,json=testAnnotationsCount,proto3" json:"test_annotations_count,omitempty"`
  1871  }
  1872  
  1873  func (x *Model_DataStats) Reset() {
  1874  	*x = Model_DataStats{}
  1875  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[11]
  1876  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1877  	ms.StoreMessageInfo(mi)
  1878  }
  1879  
  1880  func (x *Model_DataStats) String() string {
  1881  	return protoimpl.X.MessageStringOf(x)
  1882  }
  1883  
  1884  func (*Model_DataStats) ProtoMessage() {}
  1885  
  1886  func (x *Model_DataStats) ProtoReflect() protoreflect.Message {
  1887  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[11]
  1888  	if x != nil {
  1889  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1890  		if ms.LoadMessageInfo() == nil {
  1891  			ms.StoreMessageInfo(mi)
  1892  		}
  1893  		return ms
  1894  	}
  1895  	return mi.MessageOf(x)
  1896  }
  1897  
  1898  // Deprecated: Use Model_DataStats.ProtoReflect.Descriptor instead.
  1899  func (*Model_DataStats) Descriptor() ([]byte, []int) {
  1900  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 1}
  1901  }
  1902  
  1903  func (x *Model_DataStats) GetTrainingDataItemsCount() int64 {
  1904  	if x != nil {
  1905  		return x.TrainingDataItemsCount
  1906  	}
  1907  	return 0
  1908  }
  1909  
  1910  func (x *Model_DataStats) GetValidationDataItemsCount() int64 {
  1911  	if x != nil {
  1912  		return x.ValidationDataItemsCount
  1913  	}
  1914  	return 0
  1915  }
  1916  
  1917  func (x *Model_DataStats) GetTestDataItemsCount() int64 {
  1918  	if x != nil {
  1919  		return x.TestDataItemsCount
  1920  	}
  1921  	return 0
  1922  }
  1923  
  1924  func (x *Model_DataStats) GetTrainingAnnotationsCount() int64 {
  1925  	if x != nil {
  1926  		return x.TrainingAnnotationsCount
  1927  	}
  1928  	return 0
  1929  }
  1930  
  1931  func (x *Model_DataStats) GetValidationAnnotationsCount() int64 {
  1932  	if x != nil {
  1933  		return x.ValidationAnnotationsCount
  1934  	}
  1935  	return 0
  1936  }
  1937  
  1938  func (x *Model_DataStats) GetTestAnnotationsCount() int64 {
  1939  	if x != nil {
  1940  		return x.TestAnnotationsCount
  1941  	}
  1942  	return 0
  1943  }
  1944  
  1945  // Contains information about the original Model if this Model is a copy.
  1946  type Model_OriginalModelInfo struct {
  1947  	state         protoimpl.MessageState
  1948  	sizeCache     protoimpl.SizeCache
  1949  	unknownFields protoimpl.UnknownFields
  1950  
  1951  	// Output only. The resource name of the Model this Model is a copy of,
  1952  	// including the revision. Format:
  1953  	// `projects/{project}/locations/{location}/models/{model_id}@{version_id}`
  1954  	Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
  1955  }
  1956  
  1957  func (x *Model_OriginalModelInfo) Reset() {
  1958  	*x = Model_OriginalModelInfo{}
  1959  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[12]
  1960  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1961  	ms.StoreMessageInfo(mi)
  1962  }
  1963  
  1964  func (x *Model_OriginalModelInfo) String() string {
  1965  	return protoimpl.X.MessageStringOf(x)
  1966  }
  1967  
  1968  func (*Model_OriginalModelInfo) ProtoMessage() {}
  1969  
  1970  func (x *Model_OriginalModelInfo) ProtoReflect() protoreflect.Message {
  1971  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[12]
  1972  	if x != nil {
  1973  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1974  		if ms.LoadMessageInfo() == nil {
  1975  			ms.StoreMessageInfo(mi)
  1976  		}
  1977  		return ms
  1978  	}
  1979  	return mi.MessageOf(x)
  1980  }
  1981  
  1982  // Deprecated: Use Model_OriginalModelInfo.ProtoReflect.Descriptor instead.
  1983  func (*Model_OriginalModelInfo) Descriptor() ([]byte, []int) {
  1984  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 2}
  1985  }
  1986  
  1987  func (x *Model_OriginalModelInfo) GetModel() string {
  1988  	if x != nil {
  1989  		return x.Model
  1990  	}
  1991  	return ""
  1992  }
  1993  
  1994  // User input field to specify the base model source. Currently it only
  1995  // supports specifing the Model Garden models and Genie models.
  1996  type Model_BaseModelSource struct {
  1997  	state         protoimpl.MessageState
  1998  	sizeCache     protoimpl.SizeCache
  1999  	unknownFields protoimpl.UnknownFields
  2000  
  2001  	// Types that are assignable to Source:
  2002  	//
  2003  	//	*Model_BaseModelSource_ModelGardenSource
  2004  	//	*Model_BaseModelSource_GenieSource
  2005  	Source isModel_BaseModelSource_Source `protobuf_oneof:"source"`
  2006  }
  2007  
  2008  func (x *Model_BaseModelSource) Reset() {
  2009  	*x = Model_BaseModelSource{}
  2010  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[13]
  2011  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2012  	ms.StoreMessageInfo(mi)
  2013  }
  2014  
  2015  func (x *Model_BaseModelSource) String() string {
  2016  	return protoimpl.X.MessageStringOf(x)
  2017  }
  2018  
  2019  func (*Model_BaseModelSource) ProtoMessage() {}
  2020  
  2021  func (x *Model_BaseModelSource) ProtoReflect() protoreflect.Message {
  2022  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[13]
  2023  	if x != nil {
  2024  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2025  		if ms.LoadMessageInfo() == nil {
  2026  			ms.StoreMessageInfo(mi)
  2027  		}
  2028  		return ms
  2029  	}
  2030  	return mi.MessageOf(x)
  2031  }
  2032  
  2033  // Deprecated: Use Model_BaseModelSource.ProtoReflect.Descriptor instead.
  2034  func (*Model_BaseModelSource) Descriptor() ([]byte, []int) {
  2035  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 3}
  2036  }
  2037  
  2038  func (m *Model_BaseModelSource) GetSource() isModel_BaseModelSource_Source {
  2039  	if m != nil {
  2040  		return m.Source
  2041  	}
  2042  	return nil
  2043  }
  2044  
  2045  func (x *Model_BaseModelSource) GetModelGardenSource() *ModelGardenSource {
  2046  	if x, ok := x.GetSource().(*Model_BaseModelSource_ModelGardenSource); ok {
  2047  		return x.ModelGardenSource
  2048  	}
  2049  	return nil
  2050  }
  2051  
  2052  func (x *Model_BaseModelSource) GetGenieSource() *GenieSource {
  2053  	if x, ok := x.GetSource().(*Model_BaseModelSource_GenieSource); ok {
  2054  		return x.GenieSource
  2055  	}
  2056  	return nil
  2057  }
  2058  
  2059  type isModel_BaseModelSource_Source interface {
  2060  	isModel_BaseModelSource_Source()
  2061  }
  2062  
  2063  type Model_BaseModelSource_ModelGardenSource struct {
  2064  	// Source information of Model Garden models.
  2065  	ModelGardenSource *ModelGardenSource `protobuf:"bytes,1,opt,name=model_garden_source,json=modelGardenSource,proto3,oneof"`
  2066  }
  2067  
  2068  type Model_BaseModelSource_GenieSource struct {
  2069  	// Information about the base model of Genie models.
  2070  	GenieSource *GenieSource `protobuf:"bytes,2,opt,name=genie_source,json=genieSource,proto3,oneof"`
  2071  }
  2072  
  2073  func (*Model_BaseModelSource_ModelGardenSource) isModel_BaseModelSource_Source() {}
  2074  
  2075  func (*Model_BaseModelSource_GenieSource) isModel_BaseModelSource_Source() {}
  2076  
  2077  // ExecAction specifies a command to execute.
  2078  type Probe_ExecAction struct {
  2079  	state         protoimpl.MessageState
  2080  	sizeCache     protoimpl.SizeCache
  2081  	unknownFields protoimpl.UnknownFields
  2082  
  2083  	// Command is the command line to execute inside the container, the working
  2084  	// directory for the command is root ('/') in the container's filesystem.
  2085  	// The command is simply exec'd, it is not run inside a shell, so
  2086  	// traditional shell instructions ('|', etc) won't work. To use a shell, you
  2087  	// need to explicitly call out to that shell. Exit status of 0 is treated as
  2088  	// live/healthy and non-zero is unhealthy.
  2089  	Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"`
  2090  }
  2091  
  2092  func (x *Probe_ExecAction) Reset() {
  2093  	*x = Probe_ExecAction{}
  2094  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[15]
  2095  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2096  	ms.StoreMessageInfo(mi)
  2097  }
  2098  
  2099  func (x *Probe_ExecAction) String() string {
  2100  	return protoimpl.X.MessageStringOf(x)
  2101  }
  2102  
  2103  func (*Probe_ExecAction) ProtoMessage() {}
  2104  
  2105  func (x *Probe_ExecAction) ProtoReflect() protoreflect.Message {
  2106  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[15]
  2107  	if x != nil {
  2108  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2109  		if ms.LoadMessageInfo() == nil {
  2110  			ms.StoreMessageInfo(mi)
  2111  		}
  2112  		return ms
  2113  	}
  2114  	return mi.MessageOf(x)
  2115  }
  2116  
  2117  // Deprecated: Use Probe_ExecAction.ProtoReflect.Descriptor instead.
  2118  func (*Probe_ExecAction) Descriptor() ([]byte, []int) {
  2119  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 0}
  2120  }
  2121  
  2122  func (x *Probe_ExecAction) GetCommand() []string {
  2123  	if x != nil {
  2124  		return x.Command
  2125  	}
  2126  	return nil
  2127  }
  2128  
  2129  // HttpGetAction describes an action based on HTTP Get requests.
  2130  type Probe_HttpGetAction struct {
  2131  	state         protoimpl.MessageState
  2132  	sizeCache     protoimpl.SizeCache
  2133  	unknownFields protoimpl.UnknownFields
  2134  
  2135  	// Path to access on the HTTP server.
  2136  	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
  2137  	// Number of the port to access on the container.
  2138  	// Number must be in the range 1 to 65535.
  2139  	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
  2140  	// Host name to connect to, defaults to the model serving container's IP.
  2141  	// You probably want to set "Host" in httpHeaders instead.
  2142  	Host string `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
  2143  	// Scheme to use for connecting to the host.
  2144  	// Defaults to HTTP. Acceptable values are "HTTP" or "HTTPS".
  2145  	Scheme string `protobuf:"bytes,4,opt,name=scheme,proto3" json:"scheme,omitempty"`
  2146  	// Custom headers to set in the request. HTTP allows repeated headers.
  2147  	HttpHeaders []*Probe_HttpHeader `protobuf:"bytes,5,rep,name=http_headers,json=httpHeaders,proto3" json:"http_headers,omitempty"`
  2148  }
  2149  
  2150  func (x *Probe_HttpGetAction) Reset() {
  2151  	*x = Probe_HttpGetAction{}
  2152  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[16]
  2153  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2154  	ms.StoreMessageInfo(mi)
  2155  }
  2156  
  2157  func (x *Probe_HttpGetAction) String() string {
  2158  	return protoimpl.X.MessageStringOf(x)
  2159  }
  2160  
  2161  func (*Probe_HttpGetAction) ProtoMessage() {}
  2162  
  2163  func (x *Probe_HttpGetAction) ProtoReflect() protoreflect.Message {
  2164  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[16]
  2165  	if x != nil {
  2166  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2167  		if ms.LoadMessageInfo() == nil {
  2168  			ms.StoreMessageInfo(mi)
  2169  		}
  2170  		return ms
  2171  	}
  2172  	return mi.MessageOf(x)
  2173  }
  2174  
  2175  // Deprecated: Use Probe_HttpGetAction.ProtoReflect.Descriptor instead.
  2176  func (*Probe_HttpGetAction) Descriptor() ([]byte, []int) {
  2177  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 1}
  2178  }
  2179  
  2180  func (x *Probe_HttpGetAction) GetPath() string {
  2181  	if x != nil {
  2182  		return x.Path
  2183  	}
  2184  	return ""
  2185  }
  2186  
  2187  func (x *Probe_HttpGetAction) GetPort() int32 {
  2188  	if x != nil {
  2189  		return x.Port
  2190  	}
  2191  	return 0
  2192  }
  2193  
  2194  func (x *Probe_HttpGetAction) GetHost() string {
  2195  	if x != nil {
  2196  		return x.Host
  2197  	}
  2198  	return ""
  2199  }
  2200  
  2201  func (x *Probe_HttpGetAction) GetScheme() string {
  2202  	if x != nil {
  2203  		return x.Scheme
  2204  	}
  2205  	return ""
  2206  }
  2207  
  2208  func (x *Probe_HttpGetAction) GetHttpHeaders() []*Probe_HttpHeader {
  2209  	if x != nil {
  2210  		return x.HttpHeaders
  2211  	}
  2212  	return nil
  2213  }
  2214  
  2215  // GrpcAction checks the health of a container using a gRPC service.
  2216  type Probe_GrpcAction struct {
  2217  	state         protoimpl.MessageState
  2218  	sizeCache     protoimpl.SizeCache
  2219  	unknownFields protoimpl.UnknownFields
  2220  
  2221  	// Port number of the gRPC service. Number must be in the range 1 to 65535.
  2222  	Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
  2223  	// Service is the name of the service to place in the gRPC
  2224  	// HealthCheckRequest (see
  2225  	// https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
  2226  	//
  2227  	// If this is not specified, the default behavior is defined by gRPC.
  2228  	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
  2229  }
  2230  
  2231  func (x *Probe_GrpcAction) Reset() {
  2232  	*x = Probe_GrpcAction{}
  2233  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[17]
  2234  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2235  	ms.StoreMessageInfo(mi)
  2236  }
  2237  
  2238  func (x *Probe_GrpcAction) String() string {
  2239  	return protoimpl.X.MessageStringOf(x)
  2240  }
  2241  
  2242  func (*Probe_GrpcAction) ProtoMessage() {}
  2243  
  2244  func (x *Probe_GrpcAction) ProtoReflect() protoreflect.Message {
  2245  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[17]
  2246  	if x != nil {
  2247  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2248  		if ms.LoadMessageInfo() == nil {
  2249  			ms.StoreMessageInfo(mi)
  2250  		}
  2251  		return ms
  2252  	}
  2253  	return mi.MessageOf(x)
  2254  }
  2255  
  2256  // Deprecated: Use Probe_GrpcAction.ProtoReflect.Descriptor instead.
  2257  func (*Probe_GrpcAction) Descriptor() ([]byte, []int) {
  2258  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 2}
  2259  }
  2260  
  2261  func (x *Probe_GrpcAction) GetPort() int32 {
  2262  	if x != nil {
  2263  		return x.Port
  2264  	}
  2265  	return 0
  2266  }
  2267  
  2268  func (x *Probe_GrpcAction) GetService() string {
  2269  	if x != nil {
  2270  		return x.Service
  2271  	}
  2272  	return ""
  2273  }
  2274  
  2275  // TcpSocketAction probes the health of a container by opening a TCP socket
  2276  // connection.
  2277  type Probe_TcpSocketAction struct {
  2278  	state         protoimpl.MessageState
  2279  	sizeCache     protoimpl.SizeCache
  2280  	unknownFields protoimpl.UnknownFields
  2281  
  2282  	// Number of the port to access on the container.
  2283  	// Number must be in the range 1 to 65535.
  2284  	Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
  2285  	// Optional: Host name to connect to, defaults to the model serving
  2286  	// container's IP.
  2287  	Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
  2288  }
  2289  
  2290  func (x *Probe_TcpSocketAction) Reset() {
  2291  	*x = Probe_TcpSocketAction{}
  2292  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[18]
  2293  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2294  	ms.StoreMessageInfo(mi)
  2295  }
  2296  
  2297  func (x *Probe_TcpSocketAction) String() string {
  2298  	return protoimpl.X.MessageStringOf(x)
  2299  }
  2300  
  2301  func (*Probe_TcpSocketAction) ProtoMessage() {}
  2302  
  2303  func (x *Probe_TcpSocketAction) ProtoReflect() protoreflect.Message {
  2304  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[18]
  2305  	if x != nil {
  2306  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2307  		if ms.LoadMessageInfo() == nil {
  2308  			ms.StoreMessageInfo(mi)
  2309  		}
  2310  		return ms
  2311  	}
  2312  	return mi.MessageOf(x)
  2313  }
  2314  
  2315  // Deprecated: Use Probe_TcpSocketAction.ProtoReflect.Descriptor instead.
  2316  func (*Probe_TcpSocketAction) Descriptor() ([]byte, []int) {
  2317  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 3}
  2318  }
  2319  
  2320  func (x *Probe_TcpSocketAction) GetPort() int32 {
  2321  	if x != nil {
  2322  		return x.Port
  2323  	}
  2324  	return 0
  2325  }
  2326  
  2327  func (x *Probe_TcpSocketAction) GetHost() string {
  2328  	if x != nil {
  2329  		return x.Host
  2330  	}
  2331  	return ""
  2332  }
  2333  
  2334  // HttpHeader describes a custom header to be used in HTTP probes
  2335  type Probe_HttpHeader struct {
  2336  	state         protoimpl.MessageState
  2337  	sizeCache     protoimpl.SizeCache
  2338  	unknownFields protoimpl.UnknownFields
  2339  
  2340  	// The header field name.
  2341  	// This will be canonicalized upon output, so case-variant names will be
  2342  	// understood as the same header.
  2343  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  2344  	// The header field value
  2345  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  2346  }
  2347  
  2348  func (x *Probe_HttpHeader) Reset() {
  2349  	*x = Probe_HttpHeader{}
  2350  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[19]
  2351  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2352  	ms.StoreMessageInfo(mi)
  2353  }
  2354  
  2355  func (x *Probe_HttpHeader) String() string {
  2356  	return protoimpl.X.MessageStringOf(x)
  2357  }
  2358  
  2359  func (*Probe_HttpHeader) ProtoMessage() {}
  2360  
  2361  func (x *Probe_HttpHeader) ProtoReflect() protoreflect.Message {
  2362  	mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[19]
  2363  	if x != nil {
  2364  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2365  		if ms.LoadMessageInfo() == nil {
  2366  			ms.StoreMessageInfo(mi)
  2367  		}
  2368  		return ms
  2369  	}
  2370  	return mi.MessageOf(x)
  2371  }
  2372  
  2373  // Deprecated: Use Probe_HttpHeader.ProtoReflect.Descriptor instead.
  2374  func (*Probe_HttpHeader) Descriptor() ([]byte, []int) {
  2375  	return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 4}
  2376  }
  2377  
  2378  func (x *Probe_HttpHeader) GetName() string {
  2379  	if x != nil {
  2380  		return x.Name
  2381  	}
  2382  	return ""
  2383  }
  2384  
  2385  func (x *Probe_HttpHeader) GetValue() string {
  2386  	if x != nil {
  2387  		return x.Value
  2388  	}
  2389  	return ""
  2390  }
  2391  
  2392  var File_google_cloud_aiplatform_v1_model_proto protoreflect.FileDescriptor
  2393  
  2394  var file_google_cloud_aiplatform_v1_model_proto_rawDesc = []byte{
  2395  	0x0a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  2396  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64,
  2397  	0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2398  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2399  	0x6d, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
  2400  	0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e,
  2401  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
  2402  	0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2403  	0x1a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  2404  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x70,
  2405  	0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x2e,
  2406  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c,
  2407  	0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76,
  2408  	0x31, 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65,
  2409  	0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
  2410  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2411  	0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x5f, 0x76, 0x61, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2412  	0x6f, 0x1a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f,
  2413  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x78,
  2414  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2415  	0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  2416  	0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2417  	0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  2418  	0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
  2419  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74,
  2420  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb6,
  2421  	0x1c, 0x0a, 0x05, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  2422  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0a,
  2423  	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09,
  2424  	0x42, 0x06, 0xe0, 0x41, 0x05, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
  2425  	0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x61,
  2426  	0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x76, 0x65,
  2427  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x13,
  2428  	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74,
  2429  	0x69, 0x6d, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2430  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
  2431  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72, 0x73,
  2432  	0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4f, 0x0a,
  2433  	0x13, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
  2434  	0x74, 0x69, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  2435  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  2436  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72,
  2437  	0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26,
  2438  	0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
  2439  	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c,
  2440  	0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
  2441  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
  2442  	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x76, 0x65, 0x72, 0x73,
  2443  	0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
  2444  	0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65,
  2445  	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x66,
  2446  	0x61, 0x75, 0x6c, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f,
  2447  	0x69, 0x64, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c,
  2448  	0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x56, 0x0a,
  2449  	0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74,
  2450  	0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2451  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2452  	0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65,
  2453  	0x6d, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68,
  2454  	0x65, 0x6d, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
  2455  	0x61, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x05, 0x20, 0x01,
  2456  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
  2457  	0x61, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65,
  2458  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67,
  2459  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56,
  2460  	0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64,
  2461  	0x61, 0x74, 0x61, 0x12, 0x6d, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64,
  2462  	0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18,
  2463  	0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2464  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2465  	0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46,
  2466  	0x6f, 0x72, 0x6d, 0x61, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70,
  2467  	0x6f, 0x72, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61,
  2468  	0x74, 0x73, 0x12, 0x5f, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70,
  2469  	0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x32, 0xe0,
  2470  	0x41, 0x03, 0xfa, 0x41, 0x2c, 0x0a, 0x2a, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2471  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
  2472  	0x2f, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e,
  2473  	0x65, 0x52, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c,
  2474  	0x69, 0x6e, 0x65, 0x12, 0x50, 0x0a, 0x0c, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f,
  2475  	0x6a, 0x6f, 0x62, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x01, 0xfa, 0x41,
  2476  	0x27, 0x0a, 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f,
  2477  	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x69, 0x70,
  2478  	0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x6f, 0x62, 0x52, 0x0b, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69,
  2479  	0x6e, 0x65, 0x4a, 0x6f, 0x62, 0x12, 0x5a, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
  2480  	0x65, 0x72, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
  2481  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2482  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
  2483  	0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0,
  2484  	0x41, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65,
  2485  	0x63, 0x12, 0x26, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x72,
  2486  	0x69, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x61, 0x72,
  2487  	0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x55, 0x72, 0x69, 0x12, 0x8f, 0x01, 0x0a, 0x24, 0x73, 0x75,
  2488  	0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
  2489  	0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70,
  2490  	0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2491  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2492  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c,
  2493  	0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54,
  2494  	0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x21, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
  2495  	0x74, 0x65, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
  2496  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x1f, 0x73,
  2497  	0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73,
  2498  	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0b,
  2499  	0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x73, 0x75, 0x70, 0x70, 0x6f,
  2500  	0x72, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
  2501  	0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f,
  2502  	0x72, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72,
  2503  	0x61, 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
  2504  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65,
  2505  	0x64, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x6f,
  2506  	0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f,
  2507  	0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  2508  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  2509  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65,
  2510  	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
  2511  	0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  2512  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  2513  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75,
  2514  	0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x0f, 0x64, 0x65, 0x70,
  2515  	0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03,
  2516  	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2517  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
  2518  	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66,
  2519  	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d,
  2520  	0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, 0x56, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61,
  2521  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2522  	0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2523  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70,
  2524  	0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0f, 0x65, 0x78,
  2525  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a,
  2526  	0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61,
  2527  	0x67, 0x12, 0x45, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28,
  2528  	0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2529  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d,
  2530  	0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
  2531  	0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x4a, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61,
  2532  	0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
  2533  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2534  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e,
  2535  	0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x53,
  2536  	0x74, 0x61, 0x74, 0x73, 0x12, 0x53, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69,
  2537  	0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
  2538  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2539  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79,
  2540  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79,
  2541  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x5c, 0x0a, 0x11, 0x6d, 0x6f, 0x64,
  2542  	0x65, 0x6c, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x26,
  2543  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2544  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2545  	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66,
  2546  	0x6f, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75,
  2547  	0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x68, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69,
  2548  	0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x22,
  2549  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2550  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2551  	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
  2552  	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11,
  2553  	0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66,
  2554  	0x6f, 0x12, 0x30, 0x0a, 0x11, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x61, 0x72,
  2555  	0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
  2556  	0x03, 0x52, 0x10, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, 0x74, 0x69, 0x66,
  2557  	0x61, 0x63, 0x74, 0x12, 0x62, 0x0a, 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65,
  2558  	0x6c, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31,
  2559  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2560  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65,
  2561  	0x6c, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63,
  2562  	0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65,
  2563  	0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73,
  2564  	0x66, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x73, 0x18, 0x33, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03,
  2565  	0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a,
  2566  	0x73, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x5f, 0x70,
  2567  	0x7a, 0x69, 0x18, 0x34, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73,
  2568  	0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x69, 0x12, 0x50, 0x0a, 0x0b, 0x63,
  2569  	0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x39, 0x20, 0x03, 0x28, 0x0b,
  2570  	0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2571  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68,
  2572  	0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x06, 0xe0, 0x41, 0x03, 0xe0, 0x41, 0x01,
  2573  	0x52, 0x0b, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0xed, 0x01,
  2574  	0x0a, 0x0c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x13,
  2575  	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
  2576  	0x02, 0x69, 0x64, 0x12, 0x76, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c,
  2577  	0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e,
  2578  	0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2579  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f,
  2580  	0x64, 0x65, 0x6c, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
  2581  	0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
  2582  	0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61,
  2583  	0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x50, 0x0a, 0x11, 0x45,
  2584  	0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  2585  	0x12, 0x22, 0x0a, 0x1e, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x43,
  2586  	0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
  2587  	0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54,
  2588  	0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x02, 0x1a, 0xee, 0x02,
  2589  	0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x74,
  2590  	0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x74, 0x65,
  2591  	0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16,
  2592  	0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d,
  2593  	0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2594  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f,
  2595  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x18, 0x76, 0x61, 0x6c,
  2596  	0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x73,
  2597  	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61,
  2598  	0x74, 0x61, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
  2599  	0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x65, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74,
  2600  	0x65, 0x6d, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x1a, 0x74, 0x72, 0x61, 0x69,
  2601  	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2602  	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x18, 0x74, 0x72,
  2603  	0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2604  	0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x1c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2605  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2606  	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1a, 0x76, 0x61,
  2607  	0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
  2608  	0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x65, 0x73, 0x74,
  2609  	0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x75,
  2610  	0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x74, 0x65, 0x73, 0x74, 0x41, 0x6e,
  2611  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x52,
  2612  	0x0a, 0x11, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49,
  2613  	0x6e, 0x66, 0x6f, 0x12, 0x3d, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01,
  2614  	0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c,
  2615  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
  2616  	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64,
  2617  	0x65, 0x6c, 0x1a, 0xca, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
  2618  	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
  2619  	0x67, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20,
  2620  	0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2621  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2622  	0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72,
  2623  	0x63, 0x65, 0x48, 0x00, 0x52, 0x11, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65,
  2624  	0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x67, 0x65, 0x6e, 0x69, 0x65,
  2625  	0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e,
  2626  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2627  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x69, 0x65,
  2628  	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x67, 0x65, 0x6e, 0x69, 0x65, 0x53,
  2629  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a,
  2630  	0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
  2631  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
  2632  	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  2633  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8c, 0x01, 0x0a, 0x17, 0x44,
  2634  	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
  2635  	0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x25, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59,
  2636  	0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x5f, 0x54,
  2637  	0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
  2638  	0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x45, 0x44, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x52,
  2639  	0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55,
  2640  	0x54, 0x4f, 0x4d, 0x41, 0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45,
  2641  	0x53, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x48, 0x41, 0x52, 0x45, 0x44, 0x5f, 0x52, 0x45,
  2642  	0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x03, 0x3a, 0x5c, 0xea, 0x41, 0x59, 0x0a, 0x1f,
  2643  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2644  	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
  2645  	0x36, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  2646  	0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c,
  2647  	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f,
  2648  	0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x7d, 0x22, 0x2e, 0x0a, 0x13, 0x4c, 0x61, 0x72, 0x67, 0x65,
  2649  	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x17,
  2650  	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
  2651  	0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x11, 0x4d, 0x6f, 0x64, 0x65,
  2652  	0x6c, 0x47, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2f, 0x0a,
  2653  	0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61,
  2654  	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70,
  2655  	0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22,
  2656  	0x0a, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
  2657  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  2658  	0x49, 0x64, 0x12, 0x32, 0x0a, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x68, 0x66, 0x5f, 0x6d, 0x6f,
  2659  	0x64, 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42,
  2660  	0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x73, 0x6b, 0x69, 0x70, 0x48, 0x66, 0x4d, 0x6f, 0x64, 0x65,
  2661  	0x6c, 0x43, 0x61, 0x63, 0x68, 0x65, 0x22, 0x38, 0x0a, 0x0b, 0x47, 0x65, 0x6e, 0x69, 0x65, 0x53,
  2662  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f,
  2663  	0x64, 0x65, 0x6c, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
  2664  	0x41, 0x02, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x55, 0x72, 0x69,
  2665  	0x22, 0xb8, 0x01, 0x0a, 0x0f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65,
  2666  	0x6d, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
  2667  	0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
  2668  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
  2669  	0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x15, 0x70, 0x61, 0x72,
  2670  	0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75,
  2671  	0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x13, 0x70,
  2672  	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55,
  2673  	0x72, 0x69, 0x12, 0x37, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  2674  	0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28,
  2675  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x13, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69,
  2676  	0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x22, 0xa4, 0x06, 0x0a, 0x12,
  2677  	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70,
  2678  	0x65, 0x63, 0x12, 0x23, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18,
  2679  	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x69,
  2680  	0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x69, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
  2681  	0x6e, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x07, 0x63,
  2682  	0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03,
  2683  	0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12,
  2684  	0x39, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67,
  2685  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2686  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72,
  2687  	0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x3b, 0x0a, 0x05, 0x70, 0x6f,
  2688  	0x72, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2689  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2690  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2691  	0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69,
  2692  	0x63, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
  2693  	0xe0, 0x41, 0x05, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x6f, 0x75, 0x74,
  2694  	0x65, 0x12, 0x26, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x72, 0x6f, 0x75, 0x74,
  2695  	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x68, 0x65,
  2696  	0x61, 0x6c, 0x74, 0x68, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x76,
  2697  	0x6f, 0x6b, 0x65, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
  2698  	0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x69, 0x6e, 0x76,
  2699  	0x6f, 0x6b, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x44,
  2700  	0x0a, 0x0a, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03,
  2701  	0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2702  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
  2703  	0x50, 0x6f, 0x72, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x09, 0x67, 0x72, 0x70, 0x63, 0x50,
  2704  	0x6f, 0x72, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x12, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
  2705  	0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b,
  2706  	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2707  	0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2708  	0x52, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65,
  2709  	0x6f, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x15, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x65,
  2710  	0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6d, 0x62, 0x18, 0x0b, 0x20, 0x01,
  2711  	0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x12, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4d,
  2712  	0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x4d, 0x62, 0x12, 0x4b, 0x0a, 0x0d, 0x73,
  2713  	0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0c, 0x20, 0x01,
  2714  	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2715  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
  2716  	0x50, 0x72, 0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72,
  2717  	0x74, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c,
  2718  	0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21,
  2719  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2720  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62,
  2721  	0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x72,
  2722  	0x6f, 0x62, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x69, 0x76, 0x65, 0x6e, 0x65, 0x73, 0x73, 0x5f,
  2723  	0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f,
  2724  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2725  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x42, 0x03,
  2726  	0xe0, 0x41, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x76, 0x65, 0x6e, 0x65, 0x73, 0x73, 0x50, 0x72, 0x6f,
  2727  	0x62, 0x65, 0x22, 0x2d, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f,
  2728  	0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01,
  2729  	0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72,
  2730  	0x74, 0x22, 0xa5, 0x02, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63,
  2731  	0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
  2732  	0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f,
  2733  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2734  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75,
  2735  	0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75,
  2736  	0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54,
  2737  	0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x70, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
  2738  	0x08, 0x52, 0x04, 0x63, 0x6f, 0x70, 0x79, 0x22, 0x9f, 0x01, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65,
  2739  	0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x4d,
  2740  	0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45,
  2741  	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a,
  2742  	0x0a, 0x06, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55,
  2743  	0x53, 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x51, 0x4d, 0x4c, 0x10, 0x03,
  2744  	0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x47, 0x41, 0x52, 0x44, 0x45, 0x4e,
  2745  	0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x45, 0x4e, 0x49, 0x45, 0x10, 0x05, 0x12, 0x19, 0x0a,
  2746  	0x15, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x45, 0x4d, 0x42,
  2747  	0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x52, 0x4b,
  2748  	0x45, 0x54, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x07, 0x22, 0xab, 0x07, 0x0a, 0x05, 0x50, 0x72,
  2749  	0x6f, 0x62, 0x65, 0x12, 0x42, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28,
  2750  	0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2751  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50,
  2752  	0x72, 0x6f, 0x62, 0x65, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48,
  2753  	0x00, 0x52, 0x04, 0x65, 0x78, 0x65, 0x63, 0x12, 0x4c, 0x0a, 0x08, 0x68, 0x74, 0x74, 0x70, 0x5f,
  2754  	0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2755  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2756  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x2e, 0x48, 0x74, 0x74,
  2757  	0x70, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x68, 0x74,
  2758  	0x74, 0x70, 0x47, 0x65, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x67, 0x72, 0x70, 0x63, 0x18, 0x05, 0x20,
  2759  	0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2760  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2761  	0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f,
  2762  	0x6e, 0x48, 0x00, 0x52, 0x04, 0x67, 0x72, 0x70, 0x63, 0x12, 0x52, 0x0a, 0x0a, 0x74, 0x63, 0x70,
  2763  	0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
  2764  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2765  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65,
  2766  	0x2e, 0x54, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  2767  	0x48, 0x00, 0x52, 0x09, 0x74, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a,
  2768  	0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18,
  2769  	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x63,
  2770  	0x6f, 0x6e, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f,
  2771  	0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74,
  2772  	0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2b, 0x0a,
  2773  	0x11, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f,
  2774  	0x6c, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72,
  2775  	0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75,
  2776  	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18,
  2777  	0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x68,
  2778  	0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x6e, 0x69, 0x74, 0x69,
  2779  	0x61, 0x6c, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
  2780  	0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44,
  2781  	0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x26, 0x0a, 0x0a, 0x45,
  2782  	0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d,
  2783  	0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d,
  2784  	0x61, 0x6e, 0x64, 0x1a, 0xb4, 0x01, 0x0a, 0x0d, 0x48, 0x74, 0x74, 0x70, 0x47, 0x65, 0x74, 0x41,
  2785  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
  2786  	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72,
  2787  	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a,
  2788  	0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73,
  2789  	0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
  2790  	0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x68, 0x74, 0x74,
  2791  	0x70, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2792  	0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2793  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f,
  2794  	0x62, 0x65, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x0b, 0x68,
  2795  	0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x1a, 0x3a, 0x0a, 0x0a, 0x47, 0x72,
  2796  	0x70, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74,
  2797  	0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07,
  2798  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73,
  2799  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x39, 0x0a, 0x0f, 0x54, 0x63, 0x70, 0x53, 0x6f, 0x63,
  2800  	0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72,
  2801  	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a,
  2802  	0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73,
  2803  	0x74, 0x1a, 0x36, 0x0a, 0x0a, 0x48, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12,
  2804  	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  2805  	0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
  2806  	0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
  2807  	0x62, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5b, 0x0a, 0x0a, 0x43, 0x68, 0x65, 0x63, 0x6b,
  2808  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f,
  2809  	0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68,
  2810  	0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70,
  2811  	0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68,
  2812  	0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
  2813  	0x73, 0x74, 0x65, 0x70, 0x42, 0xc8, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
  2814  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2815  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72,
  2816  	0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
  2817  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2818  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x61, 0x69, 0x70, 0x6c,
  2819  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2820  	0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43,
  2821  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2822  	0x56, 0x31, 0xca, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75,
  2823  	0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 0xea,
  2824  	0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a,
  2825  	0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62,
  2826  	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  2827  }
  2828  
  2829  var (
  2830  	file_google_cloud_aiplatform_v1_model_proto_rawDescOnce sync.Once
  2831  	file_google_cloud_aiplatform_v1_model_proto_rawDescData = file_google_cloud_aiplatform_v1_model_proto_rawDesc
  2832  )
  2833  
  2834  func file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP() []byte {
  2835  	file_google_cloud_aiplatform_v1_model_proto_rawDescOnce.Do(func() {
  2836  		file_google_cloud_aiplatform_v1_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1_model_proto_rawDescData)
  2837  	})
  2838  	return file_google_cloud_aiplatform_v1_model_proto_rawDescData
  2839  }
  2840  
  2841  var file_google_cloud_aiplatform_v1_model_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
  2842  var file_google_cloud_aiplatform_v1_model_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
  2843  var file_google_cloud_aiplatform_v1_model_proto_goTypes = []any{
  2844  	(Model_DeploymentResourcesType)(0),        // 0: google.cloud.aiplatform.v1.Model.DeploymentResourcesType
  2845  	(Model_ExportFormat_ExportableContent)(0), // 1: google.cloud.aiplatform.v1.Model.ExportFormat.ExportableContent
  2846  	(ModelSourceInfo_ModelSourceType)(0),      // 2: google.cloud.aiplatform.v1.ModelSourceInfo.ModelSourceType
  2847  	(*Model)(nil),                             // 3: google.cloud.aiplatform.v1.Model
  2848  	(*LargeModelReference)(nil),               // 4: google.cloud.aiplatform.v1.LargeModelReference
  2849  	(*ModelGardenSource)(nil),                 // 5: google.cloud.aiplatform.v1.ModelGardenSource
  2850  	(*GenieSource)(nil),                       // 6: google.cloud.aiplatform.v1.GenieSource
  2851  	(*PredictSchemata)(nil),                   // 7: google.cloud.aiplatform.v1.PredictSchemata
  2852  	(*ModelContainerSpec)(nil),                // 8: google.cloud.aiplatform.v1.ModelContainerSpec
  2853  	(*Port)(nil),                              // 9: google.cloud.aiplatform.v1.Port
  2854  	(*ModelSourceInfo)(nil),                   // 10: google.cloud.aiplatform.v1.ModelSourceInfo
  2855  	(*Probe)(nil),                             // 11: google.cloud.aiplatform.v1.Probe
  2856  	(*Checkpoint)(nil),                        // 12: google.cloud.aiplatform.v1.Checkpoint
  2857  	(*Model_ExportFormat)(nil),                // 13: google.cloud.aiplatform.v1.Model.ExportFormat
  2858  	(*Model_DataStats)(nil),                   // 14: google.cloud.aiplatform.v1.Model.DataStats
  2859  	(*Model_OriginalModelInfo)(nil),           // 15: google.cloud.aiplatform.v1.Model.OriginalModelInfo
  2860  	(*Model_BaseModelSource)(nil),             // 16: google.cloud.aiplatform.v1.Model.BaseModelSource
  2861  	nil,                                       // 17: google.cloud.aiplatform.v1.Model.LabelsEntry
  2862  	(*Probe_ExecAction)(nil),                  // 18: google.cloud.aiplatform.v1.Probe.ExecAction
  2863  	(*Probe_HttpGetAction)(nil),               // 19: google.cloud.aiplatform.v1.Probe.HttpGetAction
  2864  	(*Probe_GrpcAction)(nil),                  // 20: google.cloud.aiplatform.v1.Probe.GrpcAction
  2865  	(*Probe_TcpSocketAction)(nil),             // 21: google.cloud.aiplatform.v1.Probe.TcpSocketAction
  2866  	(*Probe_HttpHeader)(nil),                  // 22: google.cloud.aiplatform.v1.Probe.HttpHeader
  2867  	(*timestamppb.Timestamp)(nil),             // 23: google.protobuf.Timestamp
  2868  	(*structpb.Value)(nil),                    // 24: google.protobuf.Value
  2869  	(*DeployedModelRef)(nil),                  // 25: google.cloud.aiplatform.v1.DeployedModelRef
  2870  	(*ExplanationSpec)(nil),                   // 26: google.cloud.aiplatform.v1.ExplanationSpec
  2871  	(*EncryptionSpec)(nil),                    // 27: google.cloud.aiplatform.v1.EncryptionSpec
  2872  	(*EnvVar)(nil),                            // 28: google.cloud.aiplatform.v1.EnvVar
  2873  	(*durationpb.Duration)(nil),               // 29: google.protobuf.Duration
  2874  }
  2875  var file_google_cloud_aiplatform_v1_model_proto_depIdxs = []int32{
  2876  	23, // 0: google.cloud.aiplatform.v1.Model.version_create_time:type_name -> google.protobuf.Timestamp
  2877  	23, // 1: google.cloud.aiplatform.v1.Model.version_update_time:type_name -> google.protobuf.Timestamp
  2878  	7,  // 2: google.cloud.aiplatform.v1.Model.predict_schemata:type_name -> google.cloud.aiplatform.v1.PredictSchemata
  2879  	24, // 3: google.cloud.aiplatform.v1.Model.metadata:type_name -> google.protobuf.Value
  2880  	13, // 4: google.cloud.aiplatform.v1.Model.supported_export_formats:type_name -> google.cloud.aiplatform.v1.Model.ExportFormat
  2881  	8,  // 5: google.cloud.aiplatform.v1.Model.container_spec:type_name -> google.cloud.aiplatform.v1.ModelContainerSpec
  2882  	0,  // 6: google.cloud.aiplatform.v1.Model.supported_deployment_resources_types:type_name -> google.cloud.aiplatform.v1.Model.DeploymentResourcesType
  2883  	23, // 7: google.cloud.aiplatform.v1.Model.create_time:type_name -> google.protobuf.Timestamp
  2884  	23, // 8: google.cloud.aiplatform.v1.Model.update_time:type_name -> google.protobuf.Timestamp
  2885  	25, // 9: google.cloud.aiplatform.v1.Model.deployed_models:type_name -> google.cloud.aiplatform.v1.DeployedModelRef
  2886  	26, // 10: google.cloud.aiplatform.v1.Model.explanation_spec:type_name -> google.cloud.aiplatform.v1.ExplanationSpec
  2887  	17, // 11: google.cloud.aiplatform.v1.Model.labels:type_name -> google.cloud.aiplatform.v1.Model.LabelsEntry
  2888  	14, // 12: google.cloud.aiplatform.v1.Model.data_stats:type_name -> google.cloud.aiplatform.v1.Model.DataStats
  2889  	27, // 13: google.cloud.aiplatform.v1.Model.encryption_spec:type_name -> google.cloud.aiplatform.v1.EncryptionSpec
  2890  	10, // 14: google.cloud.aiplatform.v1.Model.model_source_info:type_name -> google.cloud.aiplatform.v1.ModelSourceInfo
  2891  	15, // 15: google.cloud.aiplatform.v1.Model.original_model_info:type_name -> google.cloud.aiplatform.v1.Model.OriginalModelInfo
  2892  	16, // 16: google.cloud.aiplatform.v1.Model.base_model_source:type_name -> google.cloud.aiplatform.v1.Model.BaseModelSource
  2893  	12, // 17: google.cloud.aiplatform.v1.Model.checkpoints:type_name -> google.cloud.aiplatform.v1.Checkpoint
  2894  	28, // 18: google.cloud.aiplatform.v1.ModelContainerSpec.env:type_name -> google.cloud.aiplatform.v1.EnvVar
  2895  	9,  // 19: google.cloud.aiplatform.v1.ModelContainerSpec.ports:type_name -> google.cloud.aiplatform.v1.Port
  2896  	9,  // 20: google.cloud.aiplatform.v1.ModelContainerSpec.grpc_ports:type_name -> google.cloud.aiplatform.v1.Port
  2897  	29, // 21: google.cloud.aiplatform.v1.ModelContainerSpec.deployment_timeout:type_name -> google.protobuf.Duration
  2898  	11, // 22: google.cloud.aiplatform.v1.ModelContainerSpec.startup_probe:type_name -> google.cloud.aiplatform.v1.Probe
  2899  	11, // 23: google.cloud.aiplatform.v1.ModelContainerSpec.health_probe:type_name -> google.cloud.aiplatform.v1.Probe
  2900  	11, // 24: google.cloud.aiplatform.v1.ModelContainerSpec.liveness_probe:type_name -> google.cloud.aiplatform.v1.Probe
  2901  	2,  // 25: google.cloud.aiplatform.v1.ModelSourceInfo.source_type:type_name -> google.cloud.aiplatform.v1.ModelSourceInfo.ModelSourceType
  2902  	18, // 26: google.cloud.aiplatform.v1.Probe.exec:type_name -> google.cloud.aiplatform.v1.Probe.ExecAction
  2903  	19, // 27: google.cloud.aiplatform.v1.Probe.http_get:type_name -> google.cloud.aiplatform.v1.Probe.HttpGetAction
  2904  	20, // 28: google.cloud.aiplatform.v1.Probe.grpc:type_name -> google.cloud.aiplatform.v1.Probe.GrpcAction
  2905  	21, // 29: google.cloud.aiplatform.v1.Probe.tcp_socket:type_name -> google.cloud.aiplatform.v1.Probe.TcpSocketAction
  2906  	1,  // 30: google.cloud.aiplatform.v1.Model.ExportFormat.exportable_contents:type_name -> google.cloud.aiplatform.v1.Model.ExportFormat.ExportableContent
  2907  	5,  // 31: google.cloud.aiplatform.v1.Model.BaseModelSource.model_garden_source:type_name -> google.cloud.aiplatform.v1.ModelGardenSource
  2908  	6,  // 32: google.cloud.aiplatform.v1.Model.BaseModelSource.genie_source:type_name -> google.cloud.aiplatform.v1.GenieSource
  2909  	22, // 33: google.cloud.aiplatform.v1.Probe.HttpGetAction.http_headers:type_name -> google.cloud.aiplatform.v1.Probe.HttpHeader
  2910  	34, // [34:34] is the sub-list for method output_type
  2911  	34, // [34:34] is the sub-list for method input_type
  2912  	34, // [34:34] is the sub-list for extension type_name
  2913  	34, // [34:34] is the sub-list for extension extendee
  2914  	0,  // [0:34] is the sub-list for field type_name
  2915  }
  2916  
  2917  func init() { file_google_cloud_aiplatform_v1_model_proto_init() }
  2918  func file_google_cloud_aiplatform_v1_model_proto_init() {
  2919  	if File_google_cloud_aiplatform_v1_model_proto != nil {
  2920  		return
  2921  	}
  2922  	file_google_cloud_aiplatform_v1_deployed_model_ref_proto_init()
  2923  	file_google_cloud_aiplatform_v1_encryption_spec_proto_init()
  2924  	file_google_cloud_aiplatform_v1_env_var_proto_init()
  2925  	file_google_cloud_aiplatform_v1_explanation_proto_init()
  2926  	file_google_cloud_aiplatform_v1_model_proto_msgTypes[8].OneofWrappers = []any{
  2927  		(*Probe_Exec)(nil),
  2928  		(*Probe_HttpGet)(nil),
  2929  		(*Probe_Grpc)(nil),
  2930  		(*Probe_TcpSocket)(nil),
  2931  	}
  2932  	file_google_cloud_aiplatform_v1_model_proto_msgTypes[13].OneofWrappers = []any{
  2933  		(*Model_BaseModelSource_ModelGardenSource)(nil),
  2934  		(*Model_BaseModelSource_GenieSource)(nil),
  2935  	}
  2936  	type x struct{}
  2937  	out := protoimpl.TypeBuilder{
  2938  		File: protoimpl.DescBuilder{
  2939  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  2940  			RawDescriptor: file_google_cloud_aiplatform_v1_model_proto_rawDesc,
  2941  			NumEnums:      3,
  2942  			NumMessages:   20,
  2943  			NumExtensions: 0,
  2944  			NumServices:   0,
  2945  		},
  2946  		GoTypes:           file_google_cloud_aiplatform_v1_model_proto_goTypes,
  2947  		DependencyIndexes: file_google_cloud_aiplatform_v1_model_proto_depIdxs,
  2948  		EnumInfos:         file_google_cloud_aiplatform_v1_model_proto_enumTypes,
  2949  		MessageInfos:      file_google_cloud_aiplatform_v1_model_proto_msgTypes,
  2950  	}.Build()
  2951  	File_google_cloud_aiplatform_v1_model_proto = out.File
  2952  	file_google_cloud_aiplatform_v1_model_proto_rawDesc = nil
  2953  	file_google_cloud_aiplatform_v1_model_proto_goTypes = nil
  2954  	file_google_cloud_aiplatform_v1_model_proto_depIdxs = nil
  2955  }