cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/prediction_service.pb.go (about)

     1  // Copyright 2025 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.35.2
    18  // 	protoc        v4.25.7
    19  // source: google/cloud/aiplatform/v1beta1/prediction_service.proto
    20  
    21  package aiplatformpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	httpbody "google.golang.org/genproto/googleapis/api/httpbody"
    26  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    27  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    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  // Blocked reason enumeration.
    42  type GenerateContentResponse_PromptFeedback_BlockedReason int32
    43  
    44  const (
    45  	// Unspecified blocked reason.
    46  	GenerateContentResponse_PromptFeedback_BLOCKED_REASON_UNSPECIFIED GenerateContentResponse_PromptFeedback_BlockedReason = 0
    47  	// Candidates blocked due to safety.
    48  	GenerateContentResponse_PromptFeedback_SAFETY GenerateContentResponse_PromptFeedback_BlockedReason = 1
    49  	// Candidates blocked due to other reason.
    50  	GenerateContentResponse_PromptFeedback_OTHER GenerateContentResponse_PromptFeedback_BlockedReason = 2
    51  	// Candidates blocked due to the terms which are included from the
    52  	// terminology blocklist.
    53  	GenerateContentResponse_PromptFeedback_BLOCKLIST GenerateContentResponse_PromptFeedback_BlockedReason = 3
    54  	// Candidates blocked due to prohibited content.
    55  	GenerateContentResponse_PromptFeedback_PROHIBITED_CONTENT GenerateContentResponse_PromptFeedback_BlockedReason = 4
    56  	// The user prompt was blocked by Model Armor.
    57  	GenerateContentResponse_PromptFeedback_MODEL_ARMOR GenerateContentResponse_PromptFeedback_BlockedReason = 5
    58  )
    59  
    60  // Enum value maps for GenerateContentResponse_PromptFeedback_BlockedReason.
    61  var (
    62  	GenerateContentResponse_PromptFeedback_BlockedReason_name = map[int32]string{
    63  		0: "BLOCKED_REASON_UNSPECIFIED",
    64  		1: "SAFETY",
    65  		2: "OTHER",
    66  		3: "BLOCKLIST",
    67  		4: "PROHIBITED_CONTENT",
    68  		5: "MODEL_ARMOR",
    69  	}
    70  	GenerateContentResponse_PromptFeedback_BlockedReason_value = map[string]int32{
    71  		"BLOCKED_REASON_UNSPECIFIED": 0,
    72  		"SAFETY":                     1,
    73  		"OTHER":                      2,
    74  		"BLOCKLIST":                  3,
    75  		"PROHIBITED_CONTENT":         4,
    76  		"MODEL_ARMOR":                5,
    77  	}
    78  )
    79  
    80  func (x GenerateContentResponse_PromptFeedback_BlockedReason) Enum() *GenerateContentResponse_PromptFeedback_BlockedReason {
    81  	p := new(GenerateContentResponse_PromptFeedback_BlockedReason)
    82  	*p = x
    83  	return p
    84  }
    85  
    86  func (x GenerateContentResponse_PromptFeedback_BlockedReason) String() string {
    87  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    88  }
    89  
    90  func (GenerateContentResponse_PromptFeedback_BlockedReason) Descriptor() protoreflect.EnumDescriptor {
    91  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_enumTypes[0].Descriptor()
    92  }
    93  
    94  func (GenerateContentResponse_PromptFeedback_BlockedReason) Type() protoreflect.EnumType {
    95  	return &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_enumTypes[0]
    96  }
    97  
    98  func (x GenerateContentResponse_PromptFeedback_BlockedReason) Number() protoreflect.EnumNumber {
    99  	return protoreflect.EnumNumber(x)
   100  }
   101  
   102  // Deprecated: Use GenerateContentResponse_PromptFeedback_BlockedReason.Descriptor instead.
   103  func (GenerateContentResponse_PromptFeedback_BlockedReason) EnumDescriptor() ([]byte, []int) {
   104  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{21, 0, 0}
   105  }
   106  
   107  // Request message for
   108  // [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict].
   109  type PredictRequest struct {
   110  	state         protoimpl.MessageState
   111  	sizeCache     protoimpl.SizeCache
   112  	unknownFields protoimpl.UnknownFields
   113  
   114  	// Required. The name of the Endpoint requested to serve the prediction.
   115  	// Format:
   116  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   117  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   118  	// Required. The instances that are the input to the prediction call.
   119  	// A DeployedModel may have an upper limit on the number of instances it
   120  	// supports per request, and when it is exceeded the prediction call errors
   121  	// in case of AutoML Models, or, in case of customer created Models, the
   122  	// behaviour is as documented by that Model.
   123  	// The schema of any single instance may be specified via Endpoint's
   124  	// DeployedModels'
   125  	// [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model]
   126  	// [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata]
   127  	// [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
   128  	Instances []*structpb.Value `protobuf:"bytes,2,rep,name=instances,proto3" json:"instances,omitempty"`
   129  	// The parameters that govern the prediction. The schema of the parameters may
   130  	// be specified via Endpoint's DeployedModels' [Model's
   131  	// ][google.cloud.aiplatform.v1beta1.DeployedModel.model]
   132  	// [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata]
   133  	// [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
   134  	Parameters *structpb.Value `protobuf:"bytes,3,opt,name=parameters,proto3" json:"parameters,omitempty"`
   135  	// Optional. The user labels for Imagen billing usage only. Only Imagen
   136  	// supports labels. For other use cases, it will be ignored.
   137  	Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   138  }
   139  
   140  func (x *PredictRequest) Reset() {
   141  	*x = PredictRequest{}
   142  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[0]
   143  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   144  	ms.StoreMessageInfo(mi)
   145  }
   146  
   147  func (x *PredictRequest) String() string {
   148  	return protoimpl.X.MessageStringOf(x)
   149  }
   150  
   151  func (*PredictRequest) ProtoMessage() {}
   152  
   153  func (x *PredictRequest) ProtoReflect() protoreflect.Message {
   154  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[0]
   155  	if x != nil {
   156  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   157  		if ms.LoadMessageInfo() == nil {
   158  			ms.StoreMessageInfo(mi)
   159  		}
   160  		return ms
   161  	}
   162  	return mi.MessageOf(x)
   163  }
   164  
   165  // Deprecated: Use PredictRequest.ProtoReflect.Descriptor instead.
   166  func (*PredictRequest) Descriptor() ([]byte, []int) {
   167  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{0}
   168  }
   169  
   170  func (x *PredictRequest) GetEndpoint() string {
   171  	if x != nil {
   172  		return x.Endpoint
   173  	}
   174  	return ""
   175  }
   176  
   177  func (x *PredictRequest) GetInstances() []*structpb.Value {
   178  	if x != nil {
   179  		return x.Instances
   180  	}
   181  	return nil
   182  }
   183  
   184  func (x *PredictRequest) GetParameters() *structpb.Value {
   185  	if x != nil {
   186  		return x.Parameters
   187  	}
   188  	return nil
   189  }
   190  
   191  func (x *PredictRequest) GetLabels() map[string]string {
   192  	if x != nil {
   193  		return x.Labels
   194  	}
   195  	return nil
   196  }
   197  
   198  // Response message for
   199  // [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict].
   200  type PredictResponse struct {
   201  	state         protoimpl.MessageState
   202  	sizeCache     protoimpl.SizeCache
   203  	unknownFields protoimpl.UnknownFields
   204  
   205  	// The predictions that are the output of the predictions call.
   206  	// The schema of any single prediction may be specified via Endpoint's
   207  	// DeployedModels' [Model's
   208  	// ][google.cloud.aiplatform.v1beta1.DeployedModel.model]
   209  	// [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata]
   210  	// [prediction_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.prediction_schema_uri].
   211  	Predictions []*structpb.Value `protobuf:"bytes,1,rep,name=predictions,proto3" json:"predictions,omitempty"`
   212  	// ID of the Endpoint's DeployedModel that served this prediction.
   213  	DeployedModelId string `protobuf:"bytes,2,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
   214  	// Output only. The resource name of the Model which is deployed as the
   215  	// DeployedModel that this prediction hits.
   216  	Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"`
   217  	// Output only. The version ID of the Model which is deployed as the
   218  	// DeployedModel that this prediction hits.
   219  	ModelVersionId string `protobuf:"bytes,5,opt,name=model_version_id,json=modelVersionId,proto3" json:"model_version_id,omitempty"`
   220  	// Output only. The [display
   221  	// name][google.cloud.aiplatform.v1beta1.Model.display_name] of the Model
   222  	// which is deployed as the DeployedModel that this prediction hits.
   223  	ModelDisplayName string `protobuf:"bytes,4,opt,name=model_display_name,json=modelDisplayName,proto3" json:"model_display_name,omitempty"`
   224  	// Output only. Request-level metadata returned by the model. The metadata
   225  	// type will be dependent upon the model implementation.
   226  	Metadata *structpb.Value `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
   227  }
   228  
   229  func (x *PredictResponse) Reset() {
   230  	*x = PredictResponse{}
   231  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[1]
   232  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   233  	ms.StoreMessageInfo(mi)
   234  }
   235  
   236  func (x *PredictResponse) String() string {
   237  	return protoimpl.X.MessageStringOf(x)
   238  }
   239  
   240  func (*PredictResponse) ProtoMessage() {}
   241  
   242  func (x *PredictResponse) ProtoReflect() protoreflect.Message {
   243  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[1]
   244  	if x != nil {
   245  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   246  		if ms.LoadMessageInfo() == nil {
   247  			ms.StoreMessageInfo(mi)
   248  		}
   249  		return ms
   250  	}
   251  	return mi.MessageOf(x)
   252  }
   253  
   254  // Deprecated: Use PredictResponse.ProtoReflect.Descriptor instead.
   255  func (*PredictResponse) Descriptor() ([]byte, []int) {
   256  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{1}
   257  }
   258  
   259  func (x *PredictResponse) GetPredictions() []*structpb.Value {
   260  	if x != nil {
   261  		return x.Predictions
   262  	}
   263  	return nil
   264  }
   265  
   266  func (x *PredictResponse) GetDeployedModelId() string {
   267  	if x != nil {
   268  		return x.DeployedModelId
   269  	}
   270  	return ""
   271  }
   272  
   273  func (x *PredictResponse) GetModel() string {
   274  	if x != nil {
   275  		return x.Model
   276  	}
   277  	return ""
   278  }
   279  
   280  func (x *PredictResponse) GetModelVersionId() string {
   281  	if x != nil {
   282  		return x.ModelVersionId
   283  	}
   284  	return ""
   285  }
   286  
   287  func (x *PredictResponse) GetModelDisplayName() string {
   288  	if x != nil {
   289  		return x.ModelDisplayName
   290  	}
   291  	return ""
   292  }
   293  
   294  func (x *PredictResponse) GetMetadata() *structpb.Value {
   295  	if x != nil {
   296  		return x.Metadata
   297  	}
   298  	return nil
   299  }
   300  
   301  // Request message for
   302  // [PredictionService.RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict].
   303  type RawPredictRequest struct {
   304  	state         protoimpl.MessageState
   305  	sizeCache     protoimpl.SizeCache
   306  	unknownFields protoimpl.UnknownFields
   307  
   308  	// Required. The name of the Endpoint requested to serve the prediction.
   309  	// Format:
   310  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   311  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   312  	// The prediction input. Supports HTTP headers and arbitrary data payload.
   313  	//
   314  	// A [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] may have
   315  	// an upper limit on the number of instances it supports per request. When
   316  	// this limit it is exceeded for an AutoML model, the
   317  	// [RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict]
   318  	// method returns an error. When this limit is exceeded for a custom-trained
   319  	// model, the behavior varies depending on the model.
   320  	//
   321  	// You can specify the schema for each instance in the
   322  	// [predict_schemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri]
   323  	// field when you create a [Model][google.cloud.aiplatform.v1beta1.Model].
   324  	// This schema applies when you deploy the `Model` as a `DeployedModel` to an
   325  	// [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] and use the
   326  	// `RawPredict` method.
   327  	HttpBody *httpbody.HttpBody `protobuf:"bytes,2,opt,name=http_body,json=httpBody,proto3" json:"http_body,omitempty"`
   328  }
   329  
   330  func (x *RawPredictRequest) Reset() {
   331  	*x = RawPredictRequest{}
   332  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[2]
   333  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   334  	ms.StoreMessageInfo(mi)
   335  }
   336  
   337  func (x *RawPredictRequest) String() string {
   338  	return protoimpl.X.MessageStringOf(x)
   339  }
   340  
   341  func (*RawPredictRequest) ProtoMessage() {}
   342  
   343  func (x *RawPredictRequest) ProtoReflect() protoreflect.Message {
   344  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[2]
   345  	if x != nil {
   346  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   347  		if ms.LoadMessageInfo() == nil {
   348  			ms.StoreMessageInfo(mi)
   349  		}
   350  		return ms
   351  	}
   352  	return mi.MessageOf(x)
   353  }
   354  
   355  // Deprecated: Use RawPredictRequest.ProtoReflect.Descriptor instead.
   356  func (*RawPredictRequest) Descriptor() ([]byte, []int) {
   357  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{2}
   358  }
   359  
   360  func (x *RawPredictRequest) GetEndpoint() string {
   361  	if x != nil {
   362  		return x.Endpoint
   363  	}
   364  	return ""
   365  }
   366  
   367  func (x *RawPredictRequest) GetHttpBody() *httpbody.HttpBody {
   368  	if x != nil {
   369  		return x.HttpBody
   370  	}
   371  	return nil
   372  }
   373  
   374  // Request message for
   375  // [PredictionService.StreamRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamRawPredict].
   376  type StreamRawPredictRequest struct {
   377  	state         protoimpl.MessageState
   378  	sizeCache     protoimpl.SizeCache
   379  	unknownFields protoimpl.UnknownFields
   380  
   381  	// Required. The name of the Endpoint requested to serve the prediction.
   382  	// Format:
   383  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   384  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   385  	// The prediction input. Supports HTTP headers and arbitrary data payload.
   386  	HttpBody *httpbody.HttpBody `protobuf:"bytes,2,opt,name=http_body,json=httpBody,proto3" json:"http_body,omitempty"`
   387  }
   388  
   389  func (x *StreamRawPredictRequest) Reset() {
   390  	*x = StreamRawPredictRequest{}
   391  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[3]
   392  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   393  	ms.StoreMessageInfo(mi)
   394  }
   395  
   396  func (x *StreamRawPredictRequest) String() string {
   397  	return protoimpl.X.MessageStringOf(x)
   398  }
   399  
   400  func (*StreamRawPredictRequest) ProtoMessage() {}
   401  
   402  func (x *StreamRawPredictRequest) ProtoReflect() protoreflect.Message {
   403  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[3]
   404  	if x != nil {
   405  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   406  		if ms.LoadMessageInfo() == nil {
   407  			ms.StoreMessageInfo(mi)
   408  		}
   409  		return ms
   410  	}
   411  	return mi.MessageOf(x)
   412  }
   413  
   414  // Deprecated: Use StreamRawPredictRequest.ProtoReflect.Descriptor instead.
   415  func (*StreamRawPredictRequest) Descriptor() ([]byte, []int) {
   416  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{3}
   417  }
   418  
   419  func (x *StreamRawPredictRequest) GetEndpoint() string {
   420  	if x != nil {
   421  		return x.Endpoint
   422  	}
   423  	return ""
   424  }
   425  
   426  func (x *StreamRawPredictRequest) GetHttpBody() *httpbody.HttpBody {
   427  	if x != nil {
   428  		return x.HttpBody
   429  	}
   430  	return nil
   431  }
   432  
   433  // Request message for
   434  // [PredictionService.DirectPredict][google.cloud.aiplatform.v1beta1.PredictionService.DirectPredict].
   435  type DirectPredictRequest struct {
   436  	state         protoimpl.MessageState
   437  	sizeCache     protoimpl.SizeCache
   438  	unknownFields protoimpl.UnknownFields
   439  
   440  	// Required. The name of the Endpoint requested to serve the prediction.
   441  	// Format:
   442  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   443  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   444  	// The prediction input.
   445  	Inputs []*Tensor `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"`
   446  	// The parameters that govern the prediction.
   447  	Parameters *Tensor `protobuf:"bytes,3,opt,name=parameters,proto3" json:"parameters,omitempty"`
   448  }
   449  
   450  func (x *DirectPredictRequest) Reset() {
   451  	*x = DirectPredictRequest{}
   452  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[4]
   453  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   454  	ms.StoreMessageInfo(mi)
   455  }
   456  
   457  func (x *DirectPredictRequest) String() string {
   458  	return protoimpl.X.MessageStringOf(x)
   459  }
   460  
   461  func (*DirectPredictRequest) ProtoMessage() {}
   462  
   463  func (x *DirectPredictRequest) ProtoReflect() protoreflect.Message {
   464  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[4]
   465  	if x != nil {
   466  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   467  		if ms.LoadMessageInfo() == nil {
   468  			ms.StoreMessageInfo(mi)
   469  		}
   470  		return ms
   471  	}
   472  	return mi.MessageOf(x)
   473  }
   474  
   475  // Deprecated: Use DirectPredictRequest.ProtoReflect.Descriptor instead.
   476  func (*DirectPredictRequest) Descriptor() ([]byte, []int) {
   477  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{4}
   478  }
   479  
   480  func (x *DirectPredictRequest) GetEndpoint() string {
   481  	if x != nil {
   482  		return x.Endpoint
   483  	}
   484  	return ""
   485  }
   486  
   487  func (x *DirectPredictRequest) GetInputs() []*Tensor {
   488  	if x != nil {
   489  		return x.Inputs
   490  	}
   491  	return nil
   492  }
   493  
   494  func (x *DirectPredictRequest) GetParameters() *Tensor {
   495  	if x != nil {
   496  		return x.Parameters
   497  	}
   498  	return nil
   499  }
   500  
   501  // Response message for
   502  // [PredictionService.DirectPredict][google.cloud.aiplatform.v1beta1.PredictionService.DirectPredict].
   503  type DirectPredictResponse struct {
   504  	state         protoimpl.MessageState
   505  	sizeCache     protoimpl.SizeCache
   506  	unknownFields protoimpl.UnknownFields
   507  
   508  	// The prediction output.
   509  	Outputs []*Tensor `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
   510  	// The parameters that govern the prediction.
   511  	Parameters *Tensor `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"`
   512  }
   513  
   514  func (x *DirectPredictResponse) Reset() {
   515  	*x = DirectPredictResponse{}
   516  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[5]
   517  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   518  	ms.StoreMessageInfo(mi)
   519  }
   520  
   521  func (x *DirectPredictResponse) String() string {
   522  	return protoimpl.X.MessageStringOf(x)
   523  }
   524  
   525  func (*DirectPredictResponse) ProtoMessage() {}
   526  
   527  func (x *DirectPredictResponse) ProtoReflect() protoreflect.Message {
   528  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[5]
   529  	if x != nil {
   530  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   531  		if ms.LoadMessageInfo() == nil {
   532  			ms.StoreMessageInfo(mi)
   533  		}
   534  		return ms
   535  	}
   536  	return mi.MessageOf(x)
   537  }
   538  
   539  // Deprecated: Use DirectPredictResponse.ProtoReflect.Descriptor instead.
   540  func (*DirectPredictResponse) Descriptor() ([]byte, []int) {
   541  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{5}
   542  }
   543  
   544  func (x *DirectPredictResponse) GetOutputs() []*Tensor {
   545  	if x != nil {
   546  		return x.Outputs
   547  	}
   548  	return nil
   549  }
   550  
   551  func (x *DirectPredictResponse) GetParameters() *Tensor {
   552  	if x != nil {
   553  		return x.Parameters
   554  	}
   555  	return nil
   556  }
   557  
   558  // Request message for
   559  // [PredictionService.DirectRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.DirectRawPredict].
   560  type DirectRawPredictRequest struct {
   561  	state         protoimpl.MessageState
   562  	sizeCache     protoimpl.SizeCache
   563  	unknownFields protoimpl.UnknownFields
   564  
   565  	// Required. The name of the Endpoint requested to serve the prediction.
   566  	// Format:
   567  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   568  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   569  	// Fully qualified name of the API method being invoked to perform
   570  	// predictions.
   571  	//
   572  	// Format:
   573  	// `/namespace.Service/Method/`
   574  	// Example:
   575  	// `/tensorflow.serving.PredictionService/Predict`
   576  	MethodName string `protobuf:"bytes,2,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
   577  	// The prediction input.
   578  	Input []byte `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
   579  }
   580  
   581  func (x *DirectRawPredictRequest) Reset() {
   582  	*x = DirectRawPredictRequest{}
   583  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[6]
   584  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   585  	ms.StoreMessageInfo(mi)
   586  }
   587  
   588  func (x *DirectRawPredictRequest) String() string {
   589  	return protoimpl.X.MessageStringOf(x)
   590  }
   591  
   592  func (*DirectRawPredictRequest) ProtoMessage() {}
   593  
   594  func (x *DirectRawPredictRequest) ProtoReflect() protoreflect.Message {
   595  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[6]
   596  	if x != nil {
   597  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   598  		if ms.LoadMessageInfo() == nil {
   599  			ms.StoreMessageInfo(mi)
   600  		}
   601  		return ms
   602  	}
   603  	return mi.MessageOf(x)
   604  }
   605  
   606  // Deprecated: Use DirectRawPredictRequest.ProtoReflect.Descriptor instead.
   607  func (*DirectRawPredictRequest) Descriptor() ([]byte, []int) {
   608  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{6}
   609  }
   610  
   611  func (x *DirectRawPredictRequest) GetEndpoint() string {
   612  	if x != nil {
   613  		return x.Endpoint
   614  	}
   615  	return ""
   616  }
   617  
   618  func (x *DirectRawPredictRequest) GetMethodName() string {
   619  	if x != nil {
   620  		return x.MethodName
   621  	}
   622  	return ""
   623  }
   624  
   625  func (x *DirectRawPredictRequest) GetInput() []byte {
   626  	if x != nil {
   627  		return x.Input
   628  	}
   629  	return nil
   630  }
   631  
   632  // Response message for
   633  // [PredictionService.DirectRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.DirectRawPredict].
   634  type DirectRawPredictResponse struct {
   635  	state         protoimpl.MessageState
   636  	sizeCache     protoimpl.SizeCache
   637  	unknownFields protoimpl.UnknownFields
   638  
   639  	// The prediction output.
   640  	Output []byte `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"`
   641  }
   642  
   643  func (x *DirectRawPredictResponse) Reset() {
   644  	*x = DirectRawPredictResponse{}
   645  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[7]
   646  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   647  	ms.StoreMessageInfo(mi)
   648  }
   649  
   650  func (x *DirectRawPredictResponse) String() string {
   651  	return protoimpl.X.MessageStringOf(x)
   652  }
   653  
   654  func (*DirectRawPredictResponse) ProtoMessage() {}
   655  
   656  func (x *DirectRawPredictResponse) ProtoReflect() protoreflect.Message {
   657  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[7]
   658  	if x != nil {
   659  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   660  		if ms.LoadMessageInfo() == nil {
   661  			ms.StoreMessageInfo(mi)
   662  		}
   663  		return ms
   664  	}
   665  	return mi.MessageOf(x)
   666  }
   667  
   668  // Deprecated: Use DirectRawPredictResponse.ProtoReflect.Descriptor instead.
   669  func (*DirectRawPredictResponse) Descriptor() ([]byte, []int) {
   670  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{7}
   671  }
   672  
   673  func (x *DirectRawPredictResponse) GetOutput() []byte {
   674  	if x != nil {
   675  		return x.Output
   676  	}
   677  	return nil
   678  }
   679  
   680  // Request message for
   681  // [PredictionService.StreamDirectPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectPredict].
   682  //
   683  // The first message must contain
   684  // [endpoint][google.cloud.aiplatform.v1beta1.StreamDirectPredictRequest.endpoint]
   685  // field and optionally [input][]. The subsequent messages must contain
   686  // [input][].
   687  type StreamDirectPredictRequest struct {
   688  	state         protoimpl.MessageState
   689  	sizeCache     protoimpl.SizeCache
   690  	unknownFields protoimpl.UnknownFields
   691  
   692  	// Required. The name of the Endpoint requested to serve the prediction.
   693  	// Format:
   694  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   695  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   696  	// Optional. The prediction input.
   697  	Inputs []*Tensor `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"`
   698  	// Optional. The parameters that govern the prediction.
   699  	Parameters *Tensor `protobuf:"bytes,3,opt,name=parameters,proto3" json:"parameters,omitempty"`
   700  }
   701  
   702  func (x *StreamDirectPredictRequest) Reset() {
   703  	*x = StreamDirectPredictRequest{}
   704  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[8]
   705  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   706  	ms.StoreMessageInfo(mi)
   707  }
   708  
   709  func (x *StreamDirectPredictRequest) String() string {
   710  	return protoimpl.X.MessageStringOf(x)
   711  }
   712  
   713  func (*StreamDirectPredictRequest) ProtoMessage() {}
   714  
   715  func (x *StreamDirectPredictRequest) ProtoReflect() protoreflect.Message {
   716  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[8]
   717  	if x != nil {
   718  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   719  		if ms.LoadMessageInfo() == nil {
   720  			ms.StoreMessageInfo(mi)
   721  		}
   722  		return ms
   723  	}
   724  	return mi.MessageOf(x)
   725  }
   726  
   727  // Deprecated: Use StreamDirectPredictRequest.ProtoReflect.Descriptor instead.
   728  func (*StreamDirectPredictRequest) Descriptor() ([]byte, []int) {
   729  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{8}
   730  }
   731  
   732  func (x *StreamDirectPredictRequest) GetEndpoint() string {
   733  	if x != nil {
   734  		return x.Endpoint
   735  	}
   736  	return ""
   737  }
   738  
   739  func (x *StreamDirectPredictRequest) GetInputs() []*Tensor {
   740  	if x != nil {
   741  		return x.Inputs
   742  	}
   743  	return nil
   744  }
   745  
   746  func (x *StreamDirectPredictRequest) GetParameters() *Tensor {
   747  	if x != nil {
   748  		return x.Parameters
   749  	}
   750  	return nil
   751  }
   752  
   753  // Response message for
   754  // [PredictionService.StreamDirectPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectPredict].
   755  type StreamDirectPredictResponse struct {
   756  	state         protoimpl.MessageState
   757  	sizeCache     protoimpl.SizeCache
   758  	unknownFields protoimpl.UnknownFields
   759  
   760  	// The prediction output.
   761  	Outputs []*Tensor `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
   762  	// The parameters that govern the prediction.
   763  	Parameters *Tensor `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"`
   764  }
   765  
   766  func (x *StreamDirectPredictResponse) Reset() {
   767  	*x = StreamDirectPredictResponse{}
   768  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[9]
   769  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   770  	ms.StoreMessageInfo(mi)
   771  }
   772  
   773  func (x *StreamDirectPredictResponse) String() string {
   774  	return protoimpl.X.MessageStringOf(x)
   775  }
   776  
   777  func (*StreamDirectPredictResponse) ProtoMessage() {}
   778  
   779  func (x *StreamDirectPredictResponse) ProtoReflect() protoreflect.Message {
   780  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[9]
   781  	if x != nil {
   782  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   783  		if ms.LoadMessageInfo() == nil {
   784  			ms.StoreMessageInfo(mi)
   785  		}
   786  		return ms
   787  	}
   788  	return mi.MessageOf(x)
   789  }
   790  
   791  // Deprecated: Use StreamDirectPredictResponse.ProtoReflect.Descriptor instead.
   792  func (*StreamDirectPredictResponse) Descriptor() ([]byte, []int) {
   793  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{9}
   794  }
   795  
   796  func (x *StreamDirectPredictResponse) GetOutputs() []*Tensor {
   797  	if x != nil {
   798  		return x.Outputs
   799  	}
   800  	return nil
   801  }
   802  
   803  func (x *StreamDirectPredictResponse) GetParameters() *Tensor {
   804  	if x != nil {
   805  		return x.Parameters
   806  	}
   807  	return nil
   808  }
   809  
   810  // Request message for
   811  // [PredictionService.StreamDirectRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectRawPredict].
   812  //
   813  // The first message must contain
   814  // [endpoint][google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest.endpoint]
   815  // and
   816  // [method_name][google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest.method_name]
   817  // fields and optionally
   818  // [input][google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest.input].
   819  // The subsequent messages must contain
   820  // [input][google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest.input].
   821  // [method_name][google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest.method_name]
   822  // in the subsequent messages have no effect.
   823  type StreamDirectRawPredictRequest struct {
   824  	state         protoimpl.MessageState
   825  	sizeCache     protoimpl.SizeCache
   826  	unknownFields protoimpl.UnknownFields
   827  
   828  	// Required. The name of the Endpoint requested to serve the prediction.
   829  	// Format:
   830  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   831  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   832  	// Optional. Fully qualified name of the API method being invoked to perform
   833  	// predictions.
   834  	//
   835  	// Format:
   836  	// `/namespace.Service/Method/`
   837  	// Example:
   838  	// `/tensorflow.serving.PredictionService/Predict`
   839  	MethodName string `protobuf:"bytes,2,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
   840  	// Optional. The prediction input.
   841  	Input []byte `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
   842  }
   843  
   844  func (x *StreamDirectRawPredictRequest) Reset() {
   845  	*x = StreamDirectRawPredictRequest{}
   846  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[10]
   847  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   848  	ms.StoreMessageInfo(mi)
   849  }
   850  
   851  func (x *StreamDirectRawPredictRequest) String() string {
   852  	return protoimpl.X.MessageStringOf(x)
   853  }
   854  
   855  func (*StreamDirectRawPredictRequest) ProtoMessage() {}
   856  
   857  func (x *StreamDirectRawPredictRequest) ProtoReflect() protoreflect.Message {
   858  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[10]
   859  	if x != nil {
   860  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   861  		if ms.LoadMessageInfo() == nil {
   862  			ms.StoreMessageInfo(mi)
   863  		}
   864  		return ms
   865  	}
   866  	return mi.MessageOf(x)
   867  }
   868  
   869  // Deprecated: Use StreamDirectRawPredictRequest.ProtoReflect.Descriptor instead.
   870  func (*StreamDirectRawPredictRequest) Descriptor() ([]byte, []int) {
   871  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{10}
   872  }
   873  
   874  func (x *StreamDirectRawPredictRequest) GetEndpoint() string {
   875  	if x != nil {
   876  		return x.Endpoint
   877  	}
   878  	return ""
   879  }
   880  
   881  func (x *StreamDirectRawPredictRequest) GetMethodName() string {
   882  	if x != nil {
   883  		return x.MethodName
   884  	}
   885  	return ""
   886  }
   887  
   888  func (x *StreamDirectRawPredictRequest) GetInput() []byte {
   889  	if x != nil {
   890  		return x.Input
   891  	}
   892  	return nil
   893  }
   894  
   895  // Response message for
   896  // [PredictionService.StreamDirectRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectRawPredict].
   897  type StreamDirectRawPredictResponse struct {
   898  	state         protoimpl.MessageState
   899  	sizeCache     protoimpl.SizeCache
   900  	unknownFields protoimpl.UnknownFields
   901  
   902  	// The prediction output.
   903  	Output []byte `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"`
   904  }
   905  
   906  func (x *StreamDirectRawPredictResponse) Reset() {
   907  	*x = StreamDirectRawPredictResponse{}
   908  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[11]
   909  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   910  	ms.StoreMessageInfo(mi)
   911  }
   912  
   913  func (x *StreamDirectRawPredictResponse) String() string {
   914  	return protoimpl.X.MessageStringOf(x)
   915  }
   916  
   917  func (*StreamDirectRawPredictResponse) ProtoMessage() {}
   918  
   919  func (x *StreamDirectRawPredictResponse) ProtoReflect() protoreflect.Message {
   920  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[11]
   921  	if x != nil {
   922  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   923  		if ms.LoadMessageInfo() == nil {
   924  			ms.StoreMessageInfo(mi)
   925  		}
   926  		return ms
   927  	}
   928  	return mi.MessageOf(x)
   929  }
   930  
   931  // Deprecated: Use StreamDirectRawPredictResponse.ProtoReflect.Descriptor instead.
   932  func (*StreamDirectRawPredictResponse) Descriptor() ([]byte, []int) {
   933  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{11}
   934  }
   935  
   936  func (x *StreamDirectRawPredictResponse) GetOutput() []byte {
   937  	if x != nil {
   938  		return x.Output
   939  	}
   940  	return nil
   941  }
   942  
   943  // Request message for
   944  // [PredictionService.StreamingPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamingPredict].
   945  //
   946  // The first message must contain
   947  // [endpoint][google.cloud.aiplatform.v1beta1.StreamingPredictRequest.endpoint]
   948  // field and optionally [input][]. The subsequent messages must contain
   949  // [input][].
   950  type StreamingPredictRequest struct {
   951  	state         protoimpl.MessageState
   952  	sizeCache     protoimpl.SizeCache
   953  	unknownFields protoimpl.UnknownFields
   954  
   955  	// Required. The name of the Endpoint requested to serve the prediction.
   956  	// Format:
   957  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
   958  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   959  	// The prediction input.
   960  	Inputs []*Tensor `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"`
   961  	// The parameters that govern the prediction.
   962  	Parameters *Tensor `protobuf:"bytes,3,opt,name=parameters,proto3" json:"parameters,omitempty"`
   963  }
   964  
   965  func (x *StreamingPredictRequest) Reset() {
   966  	*x = StreamingPredictRequest{}
   967  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[12]
   968  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   969  	ms.StoreMessageInfo(mi)
   970  }
   971  
   972  func (x *StreamingPredictRequest) String() string {
   973  	return protoimpl.X.MessageStringOf(x)
   974  }
   975  
   976  func (*StreamingPredictRequest) ProtoMessage() {}
   977  
   978  func (x *StreamingPredictRequest) ProtoReflect() protoreflect.Message {
   979  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[12]
   980  	if x != nil {
   981  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   982  		if ms.LoadMessageInfo() == nil {
   983  			ms.StoreMessageInfo(mi)
   984  		}
   985  		return ms
   986  	}
   987  	return mi.MessageOf(x)
   988  }
   989  
   990  // Deprecated: Use StreamingPredictRequest.ProtoReflect.Descriptor instead.
   991  func (*StreamingPredictRequest) Descriptor() ([]byte, []int) {
   992  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{12}
   993  }
   994  
   995  func (x *StreamingPredictRequest) GetEndpoint() string {
   996  	if x != nil {
   997  		return x.Endpoint
   998  	}
   999  	return ""
  1000  }
  1001  
  1002  func (x *StreamingPredictRequest) GetInputs() []*Tensor {
  1003  	if x != nil {
  1004  		return x.Inputs
  1005  	}
  1006  	return nil
  1007  }
  1008  
  1009  func (x *StreamingPredictRequest) GetParameters() *Tensor {
  1010  	if x != nil {
  1011  		return x.Parameters
  1012  	}
  1013  	return nil
  1014  }
  1015  
  1016  // Response message for
  1017  // [PredictionService.StreamingPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamingPredict].
  1018  type StreamingPredictResponse struct {
  1019  	state         protoimpl.MessageState
  1020  	sizeCache     protoimpl.SizeCache
  1021  	unknownFields protoimpl.UnknownFields
  1022  
  1023  	// The prediction output.
  1024  	Outputs []*Tensor `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
  1025  	// The parameters that govern the prediction.
  1026  	Parameters *Tensor `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"`
  1027  }
  1028  
  1029  func (x *StreamingPredictResponse) Reset() {
  1030  	*x = StreamingPredictResponse{}
  1031  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[13]
  1032  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1033  	ms.StoreMessageInfo(mi)
  1034  }
  1035  
  1036  func (x *StreamingPredictResponse) String() string {
  1037  	return protoimpl.X.MessageStringOf(x)
  1038  }
  1039  
  1040  func (*StreamingPredictResponse) ProtoMessage() {}
  1041  
  1042  func (x *StreamingPredictResponse) ProtoReflect() protoreflect.Message {
  1043  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[13]
  1044  	if x != nil {
  1045  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1046  		if ms.LoadMessageInfo() == nil {
  1047  			ms.StoreMessageInfo(mi)
  1048  		}
  1049  		return ms
  1050  	}
  1051  	return mi.MessageOf(x)
  1052  }
  1053  
  1054  // Deprecated: Use StreamingPredictResponse.ProtoReflect.Descriptor instead.
  1055  func (*StreamingPredictResponse) Descriptor() ([]byte, []int) {
  1056  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{13}
  1057  }
  1058  
  1059  func (x *StreamingPredictResponse) GetOutputs() []*Tensor {
  1060  	if x != nil {
  1061  		return x.Outputs
  1062  	}
  1063  	return nil
  1064  }
  1065  
  1066  func (x *StreamingPredictResponse) GetParameters() *Tensor {
  1067  	if x != nil {
  1068  		return x.Parameters
  1069  	}
  1070  	return nil
  1071  }
  1072  
  1073  // Request message for
  1074  // [PredictionService.StreamingRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamingRawPredict].
  1075  //
  1076  // The first message must contain
  1077  // [endpoint][google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest.endpoint]
  1078  // and
  1079  // [method_name][google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest.method_name]
  1080  // fields and optionally
  1081  // [input][google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest.input].
  1082  // The subsequent messages must contain
  1083  // [input][google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest.input].
  1084  // [method_name][google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest.method_name]
  1085  // in the subsequent messages have no effect.
  1086  type StreamingRawPredictRequest struct {
  1087  	state         protoimpl.MessageState
  1088  	sizeCache     protoimpl.SizeCache
  1089  	unknownFields protoimpl.UnknownFields
  1090  
  1091  	// Required. The name of the Endpoint requested to serve the prediction.
  1092  	// Format:
  1093  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
  1094  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
  1095  	// Fully qualified name of the API method being invoked to perform
  1096  	// predictions.
  1097  	//
  1098  	// Format:
  1099  	// `/namespace.Service/Method/`
  1100  	// Example:
  1101  	// `/tensorflow.serving.PredictionService/Predict`
  1102  	MethodName string `protobuf:"bytes,2,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
  1103  	// The prediction input.
  1104  	Input []byte `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
  1105  }
  1106  
  1107  func (x *StreamingRawPredictRequest) Reset() {
  1108  	*x = StreamingRawPredictRequest{}
  1109  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[14]
  1110  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1111  	ms.StoreMessageInfo(mi)
  1112  }
  1113  
  1114  func (x *StreamingRawPredictRequest) String() string {
  1115  	return protoimpl.X.MessageStringOf(x)
  1116  }
  1117  
  1118  func (*StreamingRawPredictRequest) ProtoMessage() {}
  1119  
  1120  func (x *StreamingRawPredictRequest) ProtoReflect() protoreflect.Message {
  1121  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[14]
  1122  	if x != nil {
  1123  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1124  		if ms.LoadMessageInfo() == nil {
  1125  			ms.StoreMessageInfo(mi)
  1126  		}
  1127  		return ms
  1128  	}
  1129  	return mi.MessageOf(x)
  1130  }
  1131  
  1132  // Deprecated: Use StreamingRawPredictRequest.ProtoReflect.Descriptor instead.
  1133  func (*StreamingRawPredictRequest) Descriptor() ([]byte, []int) {
  1134  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{14}
  1135  }
  1136  
  1137  func (x *StreamingRawPredictRequest) GetEndpoint() string {
  1138  	if x != nil {
  1139  		return x.Endpoint
  1140  	}
  1141  	return ""
  1142  }
  1143  
  1144  func (x *StreamingRawPredictRequest) GetMethodName() string {
  1145  	if x != nil {
  1146  		return x.MethodName
  1147  	}
  1148  	return ""
  1149  }
  1150  
  1151  func (x *StreamingRawPredictRequest) GetInput() []byte {
  1152  	if x != nil {
  1153  		return x.Input
  1154  	}
  1155  	return nil
  1156  }
  1157  
  1158  // Response message for
  1159  // [PredictionService.StreamingRawPredict][google.cloud.aiplatform.v1beta1.PredictionService.StreamingRawPredict].
  1160  type StreamingRawPredictResponse struct {
  1161  	state         protoimpl.MessageState
  1162  	sizeCache     protoimpl.SizeCache
  1163  	unknownFields protoimpl.UnknownFields
  1164  
  1165  	// The prediction output.
  1166  	Output []byte `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"`
  1167  }
  1168  
  1169  func (x *StreamingRawPredictResponse) Reset() {
  1170  	*x = StreamingRawPredictResponse{}
  1171  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[15]
  1172  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1173  	ms.StoreMessageInfo(mi)
  1174  }
  1175  
  1176  func (x *StreamingRawPredictResponse) String() string {
  1177  	return protoimpl.X.MessageStringOf(x)
  1178  }
  1179  
  1180  func (*StreamingRawPredictResponse) ProtoMessage() {}
  1181  
  1182  func (x *StreamingRawPredictResponse) ProtoReflect() protoreflect.Message {
  1183  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[15]
  1184  	if x != nil {
  1185  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1186  		if ms.LoadMessageInfo() == nil {
  1187  			ms.StoreMessageInfo(mi)
  1188  		}
  1189  		return ms
  1190  	}
  1191  	return mi.MessageOf(x)
  1192  }
  1193  
  1194  // Deprecated: Use StreamingRawPredictResponse.ProtoReflect.Descriptor instead.
  1195  func (*StreamingRawPredictResponse) Descriptor() ([]byte, []int) {
  1196  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{15}
  1197  }
  1198  
  1199  func (x *StreamingRawPredictResponse) GetOutput() []byte {
  1200  	if x != nil {
  1201  		return x.Output
  1202  	}
  1203  	return nil
  1204  }
  1205  
  1206  // Request message for
  1207  // [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].
  1208  type ExplainRequest struct {
  1209  	state         protoimpl.MessageState
  1210  	sizeCache     protoimpl.SizeCache
  1211  	unknownFields protoimpl.UnknownFields
  1212  
  1213  	// Required. The name of the Endpoint requested to serve the explanation.
  1214  	// Format:
  1215  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
  1216  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
  1217  	// Required. The instances that are the input to the explanation call.
  1218  	// A DeployedModel may have an upper limit on the number of instances it
  1219  	// supports per request, and when it is exceeded the explanation call errors
  1220  	// in case of AutoML Models, or, in case of customer created Models, the
  1221  	// behaviour is as documented by that Model.
  1222  	// The schema of any single instance may be specified via Endpoint's
  1223  	// DeployedModels'
  1224  	// [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model]
  1225  	// [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata]
  1226  	// [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
  1227  	Instances []*structpb.Value `protobuf:"bytes,2,rep,name=instances,proto3" json:"instances,omitempty"`
  1228  	// The parameters that govern the prediction. The schema of the parameters may
  1229  	// be specified via Endpoint's DeployedModels' [Model's
  1230  	// ][google.cloud.aiplatform.v1beta1.DeployedModel.model]
  1231  	// [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata]
  1232  	// [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
  1233  	Parameters *structpb.Value `protobuf:"bytes,4,opt,name=parameters,proto3" json:"parameters,omitempty"`
  1234  	// If specified, overrides the
  1235  	// [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec]
  1236  	// of the DeployedModel. Can be used for explaining prediction results with
  1237  	// different configurations, such as:
  1238  	//   - Explaining top-5 predictions results as opposed to top-1;
  1239  	//   - Increasing path count or step count of the attribution methods to reduce
  1240  	//     approximate errors;
  1241  	//   - Using different baselines for explaining the prediction results.
  1242  	ExplanationSpecOverride *ExplanationSpecOverride `protobuf:"bytes,5,opt,name=explanation_spec_override,json=explanationSpecOverride,proto3" json:"explanation_spec_override,omitempty"`
  1243  	// Optional. This field is the same as the one above, but supports multiple
  1244  	// explanations to occur in parallel. The key can be any string. Each override
  1245  	// will be run against the model, then its explanations will be grouped
  1246  	// together.
  1247  	//
  1248  	// Note - these explanations are run **In Addition** to the default
  1249  	// Explanation in the deployed model.
  1250  	ConcurrentExplanationSpecOverride map[string]*ExplanationSpecOverride `protobuf:"bytes,6,rep,name=concurrent_explanation_spec_override,json=concurrentExplanationSpecOverride,proto3" json:"concurrent_explanation_spec_override,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1251  	// If specified, this ExplainRequest will be served by the chosen
  1252  	// DeployedModel, overriding
  1253  	// [Endpoint.traffic_split][google.cloud.aiplatform.v1beta1.Endpoint.traffic_split].
  1254  	DeployedModelId string `protobuf:"bytes,3,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
  1255  }
  1256  
  1257  func (x *ExplainRequest) Reset() {
  1258  	*x = ExplainRequest{}
  1259  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[16]
  1260  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1261  	ms.StoreMessageInfo(mi)
  1262  }
  1263  
  1264  func (x *ExplainRequest) String() string {
  1265  	return protoimpl.X.MessageStringOf(x)
  1266  }
  1267  
  1268  func (*ExplainRequest) ProtoMessage() {}
  1269  
  1270  func (x *ExplainRequest) ProtoReflect() protoreflect.Message {
  1271  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[16]
  1272  	if x != nil {
  1273  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1274  		if ms.LoadMessageInfo() == nil {
  1275  			ms.StoreMessageInfo(mi)
  1276  		}
  1277  		return ms
  1278  	}
  1279  	return mi.MessageOf(x)
  1280  }
  1281  
  1282  // Deprecated: Use ExplainRequest.ProtoReflect.Descriptor instead.
  1283  func (*ExplainRequest) Descriptor() ([]byte, []int) {
  1284  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{16}
  1285  }
  1286  
  1287  func (x *ExplainRequest) GetEndpoint() string {
  1288  	if x != nil {
  1289  		return x.Endpoint
  1290  	}
  1291  	return ""
  1292  }
  1293  
  1294  func (x *ExplainRequest) GetInstances() []*structpb.Value {
  1295  	if x != nil {
  1296  		return x.Instances
  1297  	}
  1298  	return nil
  1299  }
  1300  
  1301  func (x *ExplainRequest) GetParameters() *structpb.Value {
  1302  	if x != nil {
  1303  		return x.Parameters
  1304  	}
  1305  	return nil
  1306  }
  1307  
  1308  func (x *ExplainRequest) GetExplanationSpecOverride() *ExplanationSpecOverride {
  1309  	if x != nil {
  1310  		return x.ExplanationSpecOverride
  1311  	}
  1312  	return nil
  1313  }
  1314  
  1315  func (x *ExplainRequest) GetConcurrentExplanationSpecOverride() map[string]*ExplanationSpecOverride {
  1316  	if x != nil {
  1317  		return x.ConcurrentExplanationSpecOverride
  1318  	}
  1319  	return nil
  1320  }
  1321  
  1322  func (x *ExplainRequest) GetDeployedModelId() string {
  1323  	if x != nil {
  1324  		return x.DeployedModelId
  1325  	}
  1326  	return ""
  1327  }
  1328  
  1329  // Response message for
  1330  // [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].
  1331  type ExplainResponse struct {
  1332  	state         protoimpl.MessageState
  1333  	sizeCache     protoimpl.SizeCache
  1334  	unknownFields protoimpl.UnknownFields
  1335  
  1336  	// The explanations of the Model's
  1337  	// [PredictResponse.predictions][google.cloud.aiplatform.v1beta1.PredictResponse.predictions].
  1338  	//
  1339  	// It has the same number of elements as
  1340  	// [instances][google.cloud.aiplatform.v1beta1.ExplainRequest.instances] to be
  1341  	// explained.
  1342  	Explanations []*Explanation `protobuf:"bytes,1,rep,name=explanations,proto3" json:"explanations,omitempty"`
  1343  	// This field stores the results of the explanations run in parallel with
  1344  	// The default explanation strategy/method.
  1345  	ConcurrentExplanations map[string]*ExplainResponse_ConcurrentExplanation `protobuf:"bytes,4,rep,name=concurrent_explanations,json=concurrentExplanations,proto3" json:"concurrent_explanations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1346  	// ID of the Endpoint's DeployedModel that served this explanation.
  1347  	DeployedModelId string `protobuf:"bytes,2,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
  1348  	// The predictions that are the output of the predictions call.
  1349  	// Same as
  1350  	// [PredictResponse.predictions][google.cloud.aiplatform.v1beta1.PredictResponse.predictions].
  1351  	Predictions []*structpb.Value `protobuf:"bytes,3,rep,name=predictions,proto3" json:"predictions,omitempty"`
  1352  }
  1353  
  1354  func (x *ExplainResponse) Reset() {
  1355  	*x = ExplainResponse{}
  1356  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[17]
  1357  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1358  	ms.StoreMessageInfo(mi)
  1359  }
  1360  
  1361  func (x *ExplainResponse) String() string {
  1362  	return protoimpl.X.MessageStringOf(x)
  1363  }
  1364  
  1365  func (*ExplainResponse) ProtoMessage() {}
  1366  
  1367  func (x *ExplainResponse) ProtoReflect() protoreflect.Message {
  1368  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[17]
  1369  	if x != nil {
  1370  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1371  		if ms.LoadMessageInfo() == nil {
  1372  			ms.StoreMessageInfo(mi)
  1373  		}
  1374  		return ms
  1375  	}
  1376  	return mi.MessageOf(x)
  1377  }
  1378  
  1379  // Deprecated: Use ExplainResponse.ProtoReflect.Descriptor instead.
  1380  func (*ExplainResponse) Descriptor() ([]byte, []int) {
  1381  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{17}
  1382  }
  1383  
  1384  func (x *ExplainResponse) GetExplanations() []*Explanation {
  1385  	if x != nil {
  1386  		return x.Explanations
  1387  	}
  1388  	return nil
  1389  }
  1390  
  1391  func (x *ExplainResponse) GetConcurrentExplanations() map[string]*ExplainResponse_ConcurrentExplanation {
  1392  	if x != nil {
  1393  		return x.ConcurrentExplanations
  1394  	}
  1395  	return nil
  1396  }
  1397  
  1398  func (x *ExplainResponse) GetDeployedModelId() string {
  1399  	if x != nil {
  1400  		return x.DeployedModelId
  1401  	}
  1402  	return ""
  1403  }
  1404  
  1405  func (x *ExplainResponse) GetPredictions() []*structpb.Value {
  1406  	if x != nil {
  1407  		return x.Predictions
  1408  	}
  1409  	return nil
  1410  }
  1411  
  1412  // Request message for
  1413  // [PredictionService.CountTokens][google.cloud.aiplatform.v1beta1.PredictionService.CountTokens].
  1414  type CountTokensRequest struct {
  1415  	state         protoimpl.MessageState
  1416  	sizeCache     protoimpl.SizeCache
  1417  	unknownFields protoimpl.UnknownFields
  1418  
  1419  	// Required. The name of the Endpoint requested to perform token counting.
  1420  	// Format:
  1421  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
  1422  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
  1423  	// Optional. The name of the publisher model requested to serve the
  1424  	// prediction. Format:
  1425  	// `projects/{project}/locations/{location}/publishers/*/models/*`
  1426  	Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"`
  1427  	// Optional. The instances that are the input to token counting call.
  1428  	// Schema is identical to the prediction schema of the underlying model.
  1429  	Instances []*structpb.Value `protobuf:"bytes,2,rep,name=instances,proto3" json:"instances,omitempty"`
  1430  	// Optional. Input content.
  1431  	Contents []*Content `protobuf:"bytes,4,rep,name=contents,proto3" json:"contents,omitempty"`
  1432  	// Optional. The user provided system instructions for the model.
  1433  	// Note: only text should be used in parts and content in each part will be in
  1434  	// a separate paragraph.
  1435  	SystemInstruction *Content `protobuf:"bytes,5,opt,name=system_instruction,json=systemInstruction,proto3,oneof" json:"system_instruction,omitempty"`
  1436  	// Optional. A list of `Tools` the model may use to generate the next
  1437  	// response.
  1438  	//
  1439  	// A `Tool` is a piece of code that enables the system to interact with
  1440  	// external systems to perform an action, or set of actions, outside of
  1441  	// knowledge and scope of the model.
  1442  	Tools []*Tool `protobuf:"bytes,6,rep,name=tools,proto3" json:"tools,omitempty"`
  1443  	// Optional. Generation config that the model will use to generate the
  1444  	// response.
  1445  	GenerationConfig *GenerationConfig `protobuf:"bytes,7,opt,name=generation_config,json=generationConfig,proto3,oneof" json:"generation_config,omitempty"`
  1446  }
  1447  
  1448  func (x *CountTokensRequest) Reset() {
  1449  	*x = CountTokensRequest{}
  1450  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[18]
  1451  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1452  	ms.StoreMessageInfo(mi)
  1453  }
  1454  
  1455  func (x *CountTokensRequest) String() string {
  1456  	return protoimpl.X.MessageStringOf(x)
  1457  }
  1458  
  1459  func (*CountTokensRequest) ProtoMessage() {}
  1460  
  1461  func (x *CountTokensRequest) ProtoReflect() protoreflect.Message {
  1462  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[18]
  1463  	if x != nil {
  1464  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1465  		if ms.LoadMessageInfo() == nil {
  1466  			ms.StoreMessageInfo(mi)
  1467  		}
  1468  		return ms
  1469  	}
  1470  	return mi.MessageOf(x)
  1471  }
  1472  
  1473  // Deprecated: Use CountTokensRequest.ProtoReflect.Descriptor instead.
  1474  func (*CountTokensRequest) Descriptor() ([]byte, []int) {
  1475  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{18}
  1476  }
  1477  
  1478  func (x *CountTokensRequest) GetEndpoint() string {
  1479  	if x != nil {
  1480  		return x.Endpoint
  1481  	}
  1482  	return ""
  1483  }
  1484  
  1485  func (x *CountTokensRequest) GetModel() string {
  1486  	if x != nil {
  1487  		return x.Model
  1488  	}
  1489  	return ""
  1490  }
  1491  
  1492  func (x *CountTokensRequest) GetInstances() []*structpb.Value {
  1493  	if x != nil {
  1494  		return x.Instances
  1495  	}
  1496  	return nil
  1497  }
  1498  
  1499  func (x *CountTokensRequest) GetContents() []*Content {
  1500  	if x != nil {
  1501  		return x.Contents
  1502  	}
  1503  	return nil
  1504  }
  1505  
  1506  func (x *CountTokensRequest) GetSystemInstruction() *Content {
  1507  	if x != nil {
  1508  		return x.SystemInstruction
  1509  	}
  1510  	return nil
  1511  }
  1512  
  1513  func (x *CountTokensRequest) GetTools() []*Tool {
  1514  	if x != nil {
  1515  		return x.Tools
  1516  	}
  1517  	return nil
  1518  }
  1519  
  1520  func (x *CountTokensRequest) GetGenerationConfig() *GenerationConfig {
  1521  	if x != nil {
  1522  		return x.GenerationConfig
  1523  	}
  1524  	return nil
  1525  }
  1526  
  1527  // Response message for
  1528  // [PredictionService.CountTokens][google.cloud.aiplatform.v1beta1.PredictionService.CountTokens].
  1529  type CountTokensResponse struct {
  1530  	state         protoimpl.MessageState
  1531  	sizeCache     protoimpl.SizeCache
  1532  	unknownFields protoimpl.UnknownFields
  1533  
  1534  	// The total number of tokens counted across all instances from the request.
  1535  	TotalTokens int32 `protobuf:"varint,1,opt,name=total_tokens,json=totalTokens,proto3" json:"total_tokens,omitempty"`
  1536  	// The total number of billable characters counted across all instances from
  1537  	// the request.
  1538  	TotalBillableCharacters int32 `protobuf:"varint,2,opt,name=total_billable_characters,json=totalBillableCharacters,proto3" json:"total_billable_characters,omitempty"`
  1539  	// Output only. List of modalities that were processed in the request input.
  1540  	PromptTokensDetails []*ModalityTokenCount `protobuf:"bytes,3,rep,name=prompt_tokens_details,json=promptTokensDetails,proto3" json:"prompt_tokens_details,omitempty"`
  1541  }
  1542  
  1543  func (x *CountTokensResponse) Reset() {
  1544  	*x = CountTokensResponse{}
  1545  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[19]
  1546  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1547  	ms.StoreMessageInfo(mi)
  1548  }
  1549  
  1550  func (x *CountTokensResponse) String() string {
  1551  	return protoimpl.X.MessageStringOf(x)
  1552  }
  1553  
  1554  func (*CountTokensResponse) ProtoMessage() {}
  1555  
  1556  func (x *CountTokensResponse) ProtoReflect() protoreflect.Message {
  1557  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[19]
  1558  	if x != nil {
  1559  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1560  		if ms.LoadMessageInfo() == nil {
  1561  			ms.StoreMessageInfo(mi)
  1562  		}
  1563  		return ms
  1564  	}
  1565  	return mi.MessageOf(x)
  1566  }
  1567  
  1568  // Deprecated: Use CountTokensResponse.ProtoReflect.Descriptor instead.
  1569  func (*CountTokensResponse) Descriptor() ([]byte, []int) {
  1570  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{19}
  1571  }
  1572  
  1573  func (x *CountTokensResponse) GetTotalTokens() int32 {
  1574  	if x != nil {
  1575  		return x.TotalTokens
  1576  	}
  1577  	return 0
  1578  }
  1579  
  1580  func (x *CountTokensResponse) GetTotalBillableCharacters() int32 {
  1581  	if x != nil {
  1582  		return x.TotalBillableCharacters
  1583  	}
  1584  	return 0
  1585  }
  1586  
  1587  func (x *CountTokensResponse) GetPromptTokensDetails() []*ModalityTokenCount {
  1588  	if x != nil {
  1589  		return x.PromptTokensDetails
  1590  	}
  1591  	return nil
  1592  }
  1593  
  1594  // Request message for [PredictionService.GenerateContent].
  1595  type GenerateContentRequest struct {
  1596  	state         protoimpl.MessageState
  1597  	sizeCache     protoimpl.SizeCache
  1598  	unknownFields protoimpl.UnknownFields
  1599  
  1600  	// Required. The fully qualified name of the publisher model or tuned model
  1601  	// endpoint to use.
  1602  	//
  1603  	// Publisher model format:
  1604  	// `projects/{project}/locations/{location}/publishers/*/models/*`
  1605  	//
  1606  	// Tuned model endpoint format:
  1607  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
  1608  	Model string `protobuf:"bytes,5,opt,name=model,proto3" json:"model,omitempty"`
  1609  	// Required. The content of the current conversation with the model.
  1610  	//
  1611  	// For single-turn queries, this is a single instance. For multi-turn queries,
  1612  	// this is a repeated field that contains conversation history + latest
  1613  	// request.
  1614  	Contents []*Content `protobuf:"bytes,2,rep,name=contents,proto3" json:"contents,omitempty"`
  1615  	// Optional. The user provided system instructions for the model.
  1616  	// Note: only text should be used in parts and content in each part will be in
  1617  	// a separate paragraph.
  1618  	SystemInstruction *Content `protobuf:"bytes,8,opt,name=system_instruction,json=systemInstruction,proto3,oneof" json:"system_instruction,omitempty"`
  1619  	// Optional. The name of the cached content used as context to serve the
  1620  	// prediction. Note: only used in explicit caching, where users can have
  1621  	// control over caching (e.g. what content to cache) and enjoy guaranteed cost
  1622  	// savings. Format:
  1623  	// `projects/{project}/locations/{location}/cachedContents/{cachedContent}`
  1624  	CachedContent string `protobuf:"bytes,9,opt,name=cached_content,json=cachedContent,proto3" json:"cached_content,omitempty"`
  1625  	// Optional. A list of `Tools` the model may use to generate the next
  1626  	// response.
  1627  	//
  1628  	// A `Tool` is a piece of code that enables the system to interact with
  1629  	// external systems to perform an action, or set of actions, outside of
  1630  	// knowledge and scope of the model.
  1631  	Tools []*Tool `protobuf:"bytes,6,rep,name=tools,proto3" json:"tools,omitempty"`
  1632  	// Optional. Tool config. This config is shared for all tools provided in the
  1633  	// request.
  1634  	ToolConfig *ToolConfig `protobuf:"bytes,7,opt,name=tool_config,json=toolConfig,proto3" json:"tool_config,omitempty"`
  1635  	// Optional. The labels with user-defined metadata for the request. It is used
  1636  	// for billing and reporting only.
  1637  	//
  1638  	// Label keys and values can be no longer than 63 characters
  1639  	// (Unicode codepoints) and can only contain lowercase letters, numeric
  1640  	// characters, underscores, and dashes. International characters are allowed.
  1641  	// Label values are optional. Label keys must start with a letter.
  1642  	Labels map[string]string `protobuf:"bytes,10,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1643  	// Optional. Per request settings for blocking unsafe content.
  1644  	// Enforced on GenerateContentResponse.candidates.
  1645  	SafetySettings []*SafetySetting `protobuf:"bytes,3,rep,name=safety_settings,json=safetySettings,proto3" json:"safety_settings,omitempty"`
  1646  	// Optional. Settings for prompt and response sanitization using the Model
  1647  	// Armor service. If supplied, safety_settings must not be supplied.
  1648  	ModelArmorConfig *ModelArmorConfig `protobuf:"bytes,11,opt,name=model_armor_config,json=modelArmorConfig,proto3" json:"model_armor_config,omitempty"`
  1649  	// Optional. Generation config.
  1650  	GenerationConfig *GenerationConfig `protobuf:"bytes,4,opt,name=generation_config,json=generationConfig,proto3" json:"generation_config,omitempty"`
  1651  }
  1652  
  1653  func (x *GenerateContentRequest) Reset() {
  1654  	*x = GenerateContentRequest{}
  1655  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[20]
  1656  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1657  	ms.StoreMessageInfo(mi)
  1658  }
  1659  
  1660  func (x *GenerateContentRequest) String() string {
  1661  	return protoimpl.X.MessageStringOf(x)
  1662  }
  1663  
  1664  func (*GenerateContentRequest) ProtoMessage() {}
  1665  
  1666  func (x *GenerateContentRequest) ProtoReflect() protoreflect.Message {
  1667  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[20]
  1668  	if x != nil {
  1669  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1670  		if ms.LoadMessageInfo() == nil {
  1671  			ms.StoreMessageInfo(mi)
  1672  		}
  1673  		return ms
  1674  	}
  1675  	return mi.MessageOf(x)
  1676  }
  1677  
  1678  // Deprecated: Use GenerateContentRequest.ProtoReflect.Descriptor instead.
  1679  func (*GenerateContentRequest) Descriptor() ([]byte, []int) {
  1680  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{20}
  1681  }
  1682  
  1683  func (x *GenerateContentRequest) GetModel() string {
  1684  	if x != nil {
  1685  		return x.Model
  1686  	}
  1687  	return ""
  1688  }
  1689  
  1690  func (x *GenerateContentRequest) GetContents() []*Content {
  1691  	if x != nil {
  1692  		return x.Contents
  1693  	}
  1694  	return nil
  1695  }
  1696  
  1697  func (x *GenerateContentRequest) GetSystemInstruction() *Content {
  1698  	if x != nil {
  1699  		return x.SystemInstruction
  1700  	}
  1701  	return nil
  1702  }
  1703  
  1704  func (x *GenerateContentRequest) GetCachedContent() string {
  1705  	if x != nil {
  1706  		return x.CachedContent
  1707  	}
  1708  	return ""
  1709  }
  1710  
  1711  func (x *GenerateContentRequest) GetTools() []*Tool {
  1712  	if x != nil {
  1713  		return x.Tools
  1714  	}
  1715  	return nil
  1716  }
  1717  
  1718  func (x *GenerateContentRequest) GetToolConfig() *ToolConfig {
  1719  	if x != nil {
  1720  		return x.ToolConfig
  1721  	}
  1722  	return nil
  1723  }
  1724  
  1725  func (x *GenerateContentRequest) GetLabels() map[string]string {
  1726  	if x != nil {
  1727  		return x.Labels
  1728  	}
  1729  	return nil
  1730  }
  1731  
  1732  func (x *GenerateContentRequest) GetSafetySettings() []*SafetySetting {
  1733  	if x != nil {
  1734  		return x.SafetySettings
  1735  	}
  1736  	return nil
  1737  }
  1738  
  1739  func (x *GenerateContentRequest) GetModelArmorConfig() *ModelArmorConfig {
  1740  	if x != nil {
  1741  		return x.ModelArmorConfig
  1742  	}
  1743  	return nil
  1744  }
  1745  
  1746  func (x *GenerateContentRequest) GetGenerationConfig() *GenerationConfig {
  1747  	if x != nil {
  1748  		return x.GenerationConfig
  1749  	}
  1750  	return nil
  1751  }
  1752  
  1753  // Response message for [PredictionService.GenerateContent].
  1754  type GenerateContentResponse struct {
  1755  	state         protoimpl.MessageState
  1756  	sizeCache     protoimpl.SizeCache
  1757  	unknownFields protoimpl.UnknownFields
  1758  
  1759  	// Output only. Generated candidates.
  1760  	Candidates []*Candidate `protobuf:"bytes,2,rep,name=candidates,proto3" json:"candidates,omitempty"`
  1761  	// Output only. The model version used to generate the response.
  1762  	ModelVersion string `protobuf:"bytes,11,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"`
  1763  	// Output only. Timestamp when the request is made to the server.
  1764  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
  1765  	// Output only. response_id is used to identify each response. It is the
  1766  	// encoding of the event_id.
  1767  	ResponseId string `protobuf:"bytes,13,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"`
  1768  	// Output only. Content filter results for a prompt sent in the request.
  1769  	// Note: Sent only in the first stream chunk.
  1770  	// Only happens when no candidates were generated due to content violations.
  1771  	PromptFeedback *GenerateContentResponse_PromptFeedback `protobuf:"bytes,3,opt,name=prompt_feedback,json=promptFeedback,proto3" json:"prompt_feedback,omitempty"`
  1772  	// Usage metadata about the response(s).
  1773  	UsageMetadata *GenerateContentResponse_UsageMetadata `protobuf:"bytes,4,opt,name=usage_metadata,json=usageMetadata,proto3" json:"usage_metadata,omitempty"`
  1774  }
  1775  
  1776  func (x *GenerateContentResponse) Reset() {
  1777  	*x = GenerateContentResponse{}
  1778  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[21]
  1779  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1780  	ms.StoreMessageInfo(mi)
  1781  }
  1782  
  1783  func (x *GenerateContentResponse) String() string {
  1784  	return protoimpl.X.MessageStringOf(x)
  1785  }
  1786  
  1787  func (*GenerateContentResponse) ProtoMessage() {}
  1788  
  1789  func (x *GenerateContentResponse) ProtoReflect() protoreflect.Message {
  1790  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[21]
  1791  	if x != nil {
  1792  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1793  		if ms.LoadMessageInfo() == nil {
  1794  			ms.StoreMessageInfo(mi)
  1795  		}
  1796  		return ms
  1797  	}
  1798  	return mi.MessageOf(x)
  1799  }
  1800  
  1801  // Deprecated: Use GenerateContentResponse.ProtoReflect.Descriptor instead.
  1802  func (*GenerateContentResponse) Descriptor() ([]byte, []int) {
  1803  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{21}
  1804  }
  1805  
  1806  func (x *GenerateContentResponse) GetCandidates() []*Candidate {
  1807  	if x != nil {
  1808  		return x.Candidates
  1809  	}
  1810  	return nil
  1811  }
  1812  
  1813  func (x *GenerateContentResponse) GetModelVersion() string {
  1814  	if x != nil {
  1815  		return x.ModelVersion
  1816  	}
  1817  	return ""
  1818  }
  1819  
  1820  func (x *GenerateContentResponse) GetCreateTime() *timestamppb.Timestamp {
  1821  	if x != nil {
  1822  		return x.CreateTime
  1823  	}
  1824  	return nil
  1825  }
  1826  
  1827  func (x *GenerateContentResponse) GetResponseId() string {
  1828  	if x != nil {
  1829  		return x.ResponseId
  1830  	}
  1831  	return ""
  1832  }
  1833  
  1834  func (x *GenerateContentResponse) GetPromptFeedback() *GenerateContentResponse_PromptFeedback {
  1835  	if x != nil {
  1836  		return x.PromptFeedback
  1837  	}
  1838  	return nil
  1839  }
  1840  
  1841  func (x *GenerateContentResponse) GetUsageMetadata() *GenerateContentResponse_UsageMetadata {
  1842  	if x != nil {
  1843  		return x.UsageMetadata
  1844  	}
  1845  	return nil
  1846  }
  1847  
  1848  // Request message for [PredictionService.ChatCompletions]
  1849  type ChatCompletionsRequest struct {
  1850  	state         protoimpl.MessageState
  1851  	sizeCache     protoimpl.SizeCache
  1852  	unknownFields protoimpl.UnknownFields
  1853  
  1854  	// Required. The name of the endpoint requested to serve the prediction.
  1855  	// Format:
  1856  	// `projects/{project}/locations/{location}/endpoints/{endpoint}`
  1857  	Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
  1858  	// Optional. The prediction input. Supports HTTP headers and arbitrary data
  1859  	// payload.
  1860  	HttpBody *httpbody.HttpBody `protobuf:"bytes,2,opt,name=http_body,json=httpBody,proto3" json:"http_body,omitempty"`
  1861  }
  1862  
  1863  func (x *ChatCompletionsRequest) Reset() {
  1864  	*x = ChatCompletionsRequest{}
  1865  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[22]
  1866  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1867  	ms.StoreMessageInfo(mi)
  1868  }
  1869  
  1870  func (x *ChatCompletionsRequest) String() string {
  1871  	return protoimpl.X.MessageStringOf(x)
  1872  }
  1873  
  1874  func (*ChatCompletionsRequest) ProtoMessage() {}
  1875  
  1876  func (x *ChatCompletionsRequest) ProtoReflect() protoreflect.Message {
  1877  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[22]
  1878  	if x != nil {
  1879  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1880  		if ms.LoadMessageInfo() == nil {
  1881  			ms.StoreMessageInfo(mi)
  1882  		}
  1883  		return ms
  1884  	}
  1885  	return mi.MessageOf(x)
  1886  }
  1887  
  1888  // Deprecated: Use ChatCompletionsRequest.ProtoReflect.Descriptor instead.
  1889  func (*ChatCompletionsRequest) Descriptor() ([]byte, []int) {
  1890  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{22}
  1891  }
  1892  
  1893  func (x *ChatCompletionsRequest) GetEndpoint() string {
  1894  	if x != nil {
  1895  		return x.Endpoint
  1896  	}
  1897  	return ""
  1898  }
  1899  
  1900  func (x *ChatCompletionsRequest) GetHttpBody() *httpbody.HttpBody {
  1901  	if x != nil {
  1902  		return x.HttpBody
  1903  	}
  1904  	return nil
  1905  }
  1906  
  1907  // Response message for [PredictionService.PredictLongRunning]
  1908  type PredictLongRunningResponse struct {
  1909  	state         protoimpl.MessageState
  1910  	sizeCache     protoimpl.SizeCache
  1911  	unknownFields protoimpl.UnknownFields
  1912  
  1913  	// The response of the long running operation.
  1914  	//
  1915  	// Types that are assignable to Response:
  1916  	//
  1917  	//	*PredictLongRunningResponse_GenerateVideoResponse
  1918  	Response isPredictLongRunningResponse_Response `protobuf_oneof:"response"`
  1919  }
  1920  
  1921  func (x *PredictLongRunningResponse) Reset() {
  1922  	*x = PredictLongRunningResponse{}
  1923  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[23]
  1924  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1925  	ms.StoreMessageInfo(mi)
  1926  }
  1927  
  1928  func (x *PredictLongRunningResponse) String() string {
  1929  	return protoimpl.X.MessageStringOf(x)
  1930  }
  1931  
  1932  func (*PredictLongRunningResponse) ProtoMessage() {}
  1933  
  1934  func (x *PredictLongRunningResponse) ProtoReflect() protoreflect.Message {
  1935  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[23]
  1936  	if x != nil {
  1937  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1938  		if ms.LoadMessageInfo() == nil {
  1939  			ms.StoreMessageInfo(mi)
  1940  		}
  1941  		return ms
  1942  	}
  1943  	return mi.MessageOf(x)
  1944  }
  1945  
  1946  // Deprecated: Use PredictLongRunningResponse.ProtoReflect.Descriptor instead.
  1947  func (*PredictLongRunningResponse) Descriptor() ([]byte, []int) {
  1948  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{23}
  1949  }
  1950  
  1951  func (m *PredictLongRunningResponse) GetResponse() isPredictLongRunningResponse_Response {
  1952  	if m != nil {
  1953  		return m.Response
  1954  	}
  1955  	return nil
  1956  }
  1957  
  1958  func (x *PredictLongRunningResponse) GetGenerateVideoResponse() *GenerateVideoResponse {
  1959  	if x, ok := x.GetResponse().(*PredictLongRunningResponse_GenerateVideoResponse); ok {
  1960  		return x.GenerateVideoResponse
  1961  	}
  1962  	return nil
  1963  }
  1964  
  1965  type isPredictLongRunningResponse_Response interface {
  1966  	isPredictLongRunningResponse_Response()
  1967  }
  1968  
  1969  type PredictLongRunningResponse_GenerateVideoResponse struct {
  1970  	// The response of the video generation prediction.
  1971  	GenerateVideoResponse *GenerateVideoResponse `protobuf:"bytes,1,opt,name=generate_video_response,json=generateVideoResponse,proto3,oneof"`
  1972  }
  1973  
  1974  func (*PredictLongRunningResponse_GenerateVideoResponse) isPredictLongRunningResponse_Response() {}
  1975  
  1976  // Metadata for PredictLongRunning long running operations.
  1977  type PredictLongRunningMetadata struct {
  1978  	state         protoimpl.MessageState
  1979  	sizeCache     protoimpl.SizeCache
  1980  	unknownFields protoimpl.UnknownFields
  1981  }
  1982  
  1983  func (x *PredictLongRunningMetadata) Reset() {
  1984  	*x = PredictLongRunningMetadata{}
  1985  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[24]
  1986  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1987  	ms.StoreMessageInfo(mi)
  1988  }
  1989  
  1990  func (x *PredictLongRunningMetadata) String() string {
  1991  	return protoimpl.X.MessageStringOf(x)
  1992  }
  1993  
  1994  func (*PredictLongRunningMetadata) ProtoMessage() {}
  1995  
  1996  func (x *PredictLongRunningMetadata) ProtoReflect() protoreflect.Message {
  1997  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[24]
  1998  	if x != nil {
  1999  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2000  		if ms.LoadMessageInfo() == nil {
  2001  			ms.StoreMessageInfo(mi)
  2002  		}
  2003  		return ms
  2004  	}
  2005  	return mi.MessageOf(x)
  2006  }
  2007  
  2008  // Deprecated: Use PredictLongRunningMetadata.ProtoReflect.Descriptor instead.
  2009  func (*PredictLongRunningMetadata) Descriptor() ([]byte, []int) {
  2010  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{24}
  2011  }
  2012  
  2013  // Generate video response.
  2014  type GenerateVideoResponse struct {
  2015  	state         protoimpl.MessageState
  2016  	sizeCache     protoimpl.SizeCache
  2017  	unknownFields protoimpl.UnknownFields
  2018  
  2019  	// The cloud storage uris of the generated videos.
  2020  	GeneratedSamples []string `protobuf:"bytes,1,rep,name=generated_samples,json=generatedSamples,proto3" json:"generated_samples,omitempty"`
  2021  	// Returns if any videos were filtered due to RAI policies.
  2022  	RaiMediaFilteredCount *int32 `protobuf:"varint,2,opt,name=rai_media_filtered_count,json=raiMediaFilteredCount,proto3,oneof" json:"rai_media_filtered_count,omitempty"`
  2023  	// Returns rai failure reasons if any.
  2024  	RaiMediaFilteredReasons []string `protobuf:"bytes,3,rep,name=rai_media_filtered_reasons,json=raiMediaFilteredReasons,proto3" json:"rai_media_filtered_reasons,omitempty"`
  2025  }
  2026  
  2027  func (x *GenerateVideoResponse) Reset() {
  2028  	*x = GenerateVideoResponse{}
  2029  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[25]
  2030  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2031  	ms.StoreMessageInfo(mi)
  2032  }
  2033  
  2034  func (x *GenerateVideoResponse) String() string {
  2035  	return protoimpl.X.MessageStringOf(x)
  2036  }
  2037  
  2038  func (*GenerateVideoResponse) ProtoMessage() {}
  2039  
  2040  func (x *GenerateVideoResponse) ProtoReflect() protoreflect.Message {
  2041  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[25]
  2042  	if x != nil {
  2043  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2044  		if ms.LoadMessageInfo() == nil {
  2045  			ms.StoreMessageInfo(mi)
  2046  		}
  2047  		return ms
  2048  	}
  2049  	return mi.MessageOf(x)
  2050  }
  2051  
  2052  // Deprecated: Use GenerateVideoResponse.ProtoReflect.Descriptor instead.
  2053  func (*GenerateVideoResponse) Descriptor() ([]byte, []int) {
  2054  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{25}
  2055  }
  2056  
  2057  func (x *GenerateVideoResponse) GetGeneratedSamples() []string {
  2058  	if x != nil {
  2059  		return x.GeneratedSamples
  2060  	}
  2061  	return nil
  2062  }
  2063  
  2064  func (x *GenerateVideoResponse) GetRaiMediaFilteredCount() int32 {
  2065  	if x != nil && x.RaiMediaFilteredCount != nil {
  2066  		return *x.RaiMediaFilteredCount
  2067  	}
  2068  	return 0
  2069  }
  2070  
  2071  func (x *GenerateVideoResponse) GetRaiMediaFilteredReasons() []string {
  2072  	if x != nil {
  2073  		return x.RaiMediaFilteredReasons
  2074  	}
  2075  	return nil
  2076  }
  2077  
  2078  // This message is a wrapper grouping Concurrent Explanations.
  2079  type ExplainResponse_ConcurrentExplanation struct {
  2080  	state         protoimpl.MessageState
  2081  	sizeCache     protoimpl.SizeCache
  2082  	unknownFields protoimpl.UnknownFields
  2083  
  2084  	// The explanations of the Model's
  2085  	// [PredictResponse.predictions][google.cloud.aiplatform.v1beta1.PredictResponse.predictions].
  2086  	//
  2087  	// It has the same number of elements as
  2088  	// [instances][google.cloud.aiplatform.v1beta1.ExplainRequest.instances] to
  2089  	// be explained.
  2090  	Explanations []*Explanation `protobuf:"bytes,1,rep,name=explanations,proto3" json:"explanations,omitempty"`
  2091  }
  2092  
  2093  func (x *ExplainResponse_ConcurrentExplanation) Reset() {
  2094  	*x = ExplainResponse_ConcurrentExplanation{}
  2095  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[28]
  2096  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2097  	ms.StoreMessageInfo(mi)
  2098  }
  2099  
  2100  func (x *ExplainResponse_ConcurrentExplanation) String() string {
  2101  	return protoimpl.X.MessageStringOf(x)
  2102  }
  2103  
  2104  func (*ExplainResponse_ConcurrentExplanation) ProtoMessage() {}
  2105  
  2106  func (x *ExplainResponse_ConcurrentExplanation) ProtoReflect() protoreflect.Message {
  2107  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[28]
  2108  	if x != nil {
  2109  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2110  		if ms.LoadMessageInfo() == nil {
  2111  			ms.StoreMessageInfo(mi)
  2112  		}
  2113  		return ms
  2114  	}
  2115  	return mi.MessageOf(x)
  2116  }
  2117  
  2118  // Deprecated: Use ExplainResponse_ConcurrentExplanation.ProtoReflect.Descriptor instead.
  2119  func (*ExplainResponse_ConcurrentExplanation) Descriptor() ([]byte, []int) {
  2120  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{17, 0}
  2121  }
  2122  
  2123  func (x *ExplainResponse_ConcurrentExplanation) GetExplanations() []*Explanation {
  2124  	if x != nil {
  2125  		return x.Explanations
  2126  	}
  2127  	return nil
  2128  }
  2129  
  2130  // Content filter results for a prompt sent in the request.
  2131  type GenerateContentResponse_PromptFeedback struct {
  2132  	state         protoimpl.MessageState
  2133  	sizeCache     protoimpl.SizeCache
  2134  	unknownFields protoimpl.UnknownFields
  2135  
  2136  	// Output only. Blocked reason.
  2137  	BlockReason GenerateContentResponse_PromptFeedback_BlockedReason `protobuf:"varint,1,opt,name=block_reason,json=blockReason,proto3,enum=google.cloud.aiplatform.v1beta1.GenerateContentResponse_PromptFeedback_BlockedReason" json:"block_reason,omitempty"`
  2138  	// Output only. Safety ratings.
  2139  	SafetyRatings []*SafetyRating `protobuf:"bytes,2,rep,name=safety_ratings,json=safetyRatings,proto3" json:"safety_ratings,omitempty"`
  2140  	// Output only. A readable block reason message.
  2141  	BlockReasonMessage string `protobuf:"bytes,3,opt,name=block_reason_message,json=blockReasonMessage,proto3" json:"block_reason_message,omitempty"`
  2142  }
  2143  
  2144  func (x *GenerateContentResponse_PromptFeedback) Reset() {
  2145  	*x = GenerateContentResponse_PromptFeedback{}
  2146  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[31]
  2147  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2148  	ms.StoreMessageInfo(mi)
  2149  }
  2150  
  2151  func (x *GenerateContentResponse_PromptFeedback) String() string {
  2152  	return protoimpl.X.MessageStringOf(x)
  2153  }
  2154  
  2155  func (*GenerateContentResponse_PromptFeedback) ProtoMessage() {}
  2156  
  2157  func (x *GenerateContentResponse_PromptFeedback) ProtoReflect() protoreflect.Message {
  2158  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[31]
  2159  	if x != nil {
  2160  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2161  		if ms.LoadMessageInfo() == nil {
  2162  			ms.StoreMessageInfo(mi)
  2163  		}
  2164  		return ms
  2165  	}
  2166  	return mi.MessageOf(x)
  2167  }
  2168  
  2169  // Deprecated: Use GenerateContentResponse_PromptFeedback.ProtoReflect.Descriptor instead.
  2170  func (*GenerateContentResponse_PromptFeedback) Descriptor() ([]byte, []int) {
  2171  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{21, 0}
  2172  }
  2173  
  2174  func (x *GenerateContentResponse_PromptFeedback) GetBlockReason() GenerateContentResponse_PromptFeedback_BlockedReason {
  2175  	if x != nil {
  2176  		return x.BlockReason
  2177  	}
  2178  	return GenerateContentResponse_PromptFeedback_BLOCKED_REASON_UNSPECIFIED
  2179  }
  2180  
  2181  func (x *GenerateContentResponse_PromptFeedback) GetSafetyRatings() []*SafetyRating {
  2182  	if x != nil {
  2183  		return x.SafetyRatings
  2184  	}
  2185  	return nil
  2186  }
  2187  
  2188  func (x *GenerateContentResponse_PromptFeedback) GetBlockReasonMessage() string {
  2189  	if x != nil {
  2190  		return x.BlockReasonMessage
  2191  	}
  2192  	return ""
  2193  }
  2194  
  2195  // Usage metadata about response(s).
  2196  type GenerateContentResponse_UsageMetadata struct {
  2197  	state         protoimpl.MessageState
  2198  	sizeCache     protoimpl.SizeCache
  2199  	unknownFields protoimpl.UnknownFields
  2200  
  2201  	// Number of tokens in the request. When `cached_content` is set, this is
  2202  	// still the total effective prompt size meaning this includes the number of
  2203  	// tokens in the cached content.
  2204  	PromptTokenCount int32 `protobuf:"varint,1,opt,name=prompt_token_count,json=promptTokenCount,proto3" json:"prompt_token_count,omitempty"`
  2205  	// Number of tokens in the response(s).
  2206  	CandidatesTokenCount int32 `protobuf:"varint,2,opt,name=candidates_token_count,json=candidatesTokenCount,proto3" json:"candidates_token_count,omitempty"`
  2207  	// Output only. Number of tokens present in thoughts output.
  2208  	ThoughtsTokenCount int32 `protobuf:"varint,14,opt,name=thoughts_token_count,json=thoughtsTokenCount,proto3" json:"thoughts_token_count,omitempty"`
  2209  	// Total token count for prompt and response candidates.
  2210  	TotalTokenCount int32 `protobuf:"varint,3,opt,name=total_token_count,json=totalTokenCount,proto3" json:"total_token_count,omitempty"`
  2211  	// Output only. Number of tokens in the cached part in the input (the cached
  2212  	// content).
  2213  	CachedContentTokenCount int32 `protobuf:"varint,5,opt,name=cached_content_token_count,json=cachedContentTokenCount,proto3" json:"cached_content_token_count,omitempty"`
  2214  	// Output only. List of modalities that were processed in the request input.
  2215  	PromptTokensDetails []*ModalityTokenCount `protobuf:"bytes,9,rep,name=prompt_tokens_details,json=promptTokensDetails,proto3" json:"prompt_tokens_details,omitempty"`
  2216  	// Output only. List of modalities of the cached content in the request
  2217  	// input.
  2218  	CacheTokensDetails []*ModalityTokenCount `protobuf:"bytes,10,rep,name=cache_tokens_details,json=cacheTokensDetails,proto3" json:"cache_tokens_details,omitempty"`
  2219  	// Output only. List of modalities that were returned in the response.
  2220  	CandidatesTokensDetails []*ModalityTokenCount `protobuf:"bytes,11,rep,name=candidates_tokens_details,json=candidatesTokensDetails,proto3" json:"candidates_tokens_details,omitempty"`
  2221  }
  2222  
  2223  func (x *GenerateContentResponse_UsageMetadata) Reset() {
  2224  	*x = GenerateContentResponse_UsageMetadata{}
  2225  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[32]
  2226  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2227  	ms.StoreMessageInfo(mi)
  2228  }
  2229  
  2230  func (x *GenerateContentResponse_UsageMetadata) String() string {
  2231  	return protoimpl.X.MessageStringOf(x)
  2232  }
  2233  
  2234  func (*GenerateContentResponse_UsageMetadata) ProtoMessage() {}
  2235  
  2236  func (x *GenerateContentResponse_UsageMetadata) ProtoReflect() protoreflect.Message {
  2237  	mi := &file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[32]
  2238  	if x != nil {
  2239  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2240  		if ms.LoadMessageInfo() == nil {
  2241  			ms.StoreMessageInfo(mi)
  2242  		}
  2243  		return ms
  2244  	}
  2245  	return mi.MessageOf(x)
  2246  }
  2247  
  2248  // Deprecated: Use GenerateContentResponse_UsageMetadata.ProtoReflect.Descriptor instead.
  2249  func (*GenerateContentResponse_UsageMetadata) Descriptor() ([]byte, []int) {
  2250  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP(), []int{21, 1}
  2251  }
  2252  
  2253  func (x *GenerateContentResponse_UsageMetadata) GetPromptTokenCount() int32 {
  2254  	if x != nil {
  2255  		return x.PromptTokenCount
  2256  	}
  2257  	return 0
  2258  }
  2259  
  2260  func (x *GenerateContentResponse_UsageMetadata) GetCandidatesTokenCount() int32 {
  2261  	if x != nil {
  2262  		return x.CandidatesTokenCount
  2263  	}
  2264  	return 0
  2265  }
  2266  
  2267  func (x *GenerateContentResponse_UsageMetadata) GetThoughtsTokenCount() int32 {
  2268  	if x != nil {
  2269  		return x.ThoughtsTokenCount
  2270  	}
  2271  	return 0
  2272  }
  2273  
  2274  func (x *GenerateContentResponse_UsageMetadata) GetTotalTokenCount() int32 {
  2275  	if x != nil {
  2276  		return x.TotalTokenCount
  2277  	}
  2278  	return 0
  2279  }
  2280  
  2281  func (x *GenerateContentResponse_UsageMetadata) GetCachedContentTokenCount() int32 {
  2282  	if x != nil {
  2283  		return x.CachedContentTokenCount
  2284  	}
  2285  	return 0
  2286  }
  2287  
  2288  func (x *GenerateContentResponse_UsageMetadata) GetPromptTokensDetails() []*ModalityTokenCount {
  2289  	if x != nil {
  2290  		return x.PromptTokensDetails
  2291  	}
  2292  	return nil
  2293  }
  2294  
  2295  func (x *GenerateContentResponse_UsageMetadata) GetCacheTokensDetails() []*ModalityTokenCount {
  2296  	if x != nil {
  2297  		return x.CacheTokensDetails
  2298  	}
  2299  	return nil
  2300  }
  2301  
  2302  func (x *GenerateContentResponse_UsageMetadata) GetCandidatesTokensDetails() []*ModalityTokenCount {
  2303  	if x != nil {
  2304  		return x.CandidatesTokensDetails
  2305  	}
  2306  	return nil
  2307  }
  2308  
  2309  var File_google_cloud_aiplatform_v1beta1_prediction_service_proto protoreflect.FileDescriptor
  2310  
  2311  var file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDesc = []byte{
  2312  	0x0a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  2313  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2314  	0x31, 0x2f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x72,
  2315  	0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
  2316  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2317  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f,
  2318  	0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
  2319  	0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2320  	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
  2321  	0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66,
  2322  	0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72,
  2323  	0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
  2324  	0x68, 0x74, 0x74, 0x70, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19,
  2325  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75,
  2326  	0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2327  	0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2328  	0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
  2329  	0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2330  	0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2331  	0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e,
  2332  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x67, 0x6f, 0x6f,
  2333  	0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2334  	0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x6f, 0x6f,
  2335  	0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
  2336  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2337  	0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70,
  2338  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
  2339  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f,
  2340  	0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2341  	0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
  2342  	0x6f, 0x74, 0x6f, 0x22, 0xe0, 0x02, 0x0a, 0x0e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52,
  2343  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69,
  2344  	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24,
  2345  	0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
  2346  	0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70,
  2347  	0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39,
  2348  	0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
  2349  	0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2350  	0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09,
  2351  	0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0a, 0x70, 0x61, 0x72,
  2352  	0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
  2353  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  2354  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
  2355  	0x73, 0x12, 0x58, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
  2356  	0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2357  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2358  	0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
  2359  	0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03,
  2360  	0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c,
  2361  	0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
  2362  	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
  2363  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
  2364  	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd1, 0x02, 0x0a, 0x0f, 0x50, 0x72, 0x65, 0x64, 0x69,
  2365  	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x70, 0x72,
  2366  	0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2367  	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2368  	0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2369  	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64,
  2370  	0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  2371  	0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64,
  2372  	0x12, 0x3d, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42,
  2373  	0x27, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2374  	0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
  2375  	0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
  2376  	0x2d, 0x0a, 0x10, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  2377  	0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e,
  2378  	0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x31,
  2379  	0x0a, 0x12, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f,
  2380  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
  2381  	0x10, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d,
  2382  	0x65, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20,
  2383  	0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  2384  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03,
  2385  	0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8e, 0x01, 0x0a, 0x11, 0x52,
  2386  	0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  2387  	0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
  2388  	0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c,
  2389  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
  2390  	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08,
  2391  	0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70,
  2392  	0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f,
  2393  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64,
  2394  	0x79, 0x52, 0x08, 0x68, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22, 0x94, 0x01, 0x0a, 0x17,
  2395  	0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2396  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f,
  2397  	0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41,
  2398  	0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f,
  2399  	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64,
  2400  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12,
  2401  	0x31, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01,
  2402  	0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e,
  2403  	0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x08, 0x68, 0x74, 0x74, 0x70, 0x42, 0x6f,
  2404  	0x64, 0x79, 0x22, 0xe8, 0x01, 0x0a, 0x14, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65,
  2405  	0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65,
  2406  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0,
  2407  	0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2408  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
  2409  	0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f,
  2410  	0x69, 0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20,
  2411  	0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2412  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2413  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x06, 0x69, 0x6e,
  2414  	0x70, 0x75, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
  2415  	0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2416  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2417  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f,
  2418  	0x72, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0xa3, 0x01,
  2419  	0x0a, 0x15, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52,
  2420  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75,
  2421  	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2422  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2423  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f,
  2424  	0x72, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61,
  2425  	0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27,
  2426  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2427  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2428  	0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
  2429  	0x65, 0x72, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x17, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61,
  2430  	0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
  2431  	0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
  2432  	0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2433  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
  2434  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65,
  2435  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x68, 0x6f,
  2436  	0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65,
  2437  	0x74, 0x68, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75,
  2438  	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x32,
  2439  	0x0a, 0x18, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69,
  2440  	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75,
  2441  	0x74, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70,
  2442  	0x75, 0x74, 0x22, 0xf8, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72,
  2443  	0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  2444  	0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20,
  2445  	0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70,
  2446  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
  2447  	0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52,
  2448  	0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x69, 0x6e, 0x70,
  2449  	0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2450  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2451  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73,
  2452  	0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12,
  2453  	0x4c, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20,
  2454  	0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2455  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2456  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41,
  2457  	0x01, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0xa9, 0x01,
  2458  	0x0a, 0x1b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72,
  2459  	0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a,
  2460  	0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27,
  2461  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2462  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2463  	0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73,
  2464  	0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02,
  2465  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2466  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2467  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x0a, 0x70,
  2468  	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0xa8, 0x01, 0x0a, 0x1d, 0x53, 0x74,
  2469  	0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65,
  2470  	0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65,
  2471  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0,
  2472  	0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2473  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
  2474  	0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f,
  2475  	0x69, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f, 0x6e, 0x61,
  2476  	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x6d,
  2477  	0x65, 0x74, 0x68, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6e, 0x70,
  2478  	0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x69,
  2479  	0x6e, 0x70, 0x75, 0x74, 0x22, 0x38, 0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69,
  2480  	0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65,
  2481  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74,
  2482  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0xeb,
  2483  	0x01, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64,
  2484  	0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e,
  2485  	0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41,
  2486  	0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2487  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
  2488  	0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69,
  2489  	0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03,
  2490  	0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2491  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2492  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x06, 0x69, 0x6e, 0x70,
  2493  	0x75, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
  2494  	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2495  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2496  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72,
  2497  	0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0xa6, 0x01, 0x0a,
  2498  	0x18, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
  2499  	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x6f, 0x75, 0x74,
  2500  	0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f,
  2501  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2502  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e,
  2503  	0x73, 0x6f, 0x72, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x0a,
  2504  	0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
  2505  	0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2506  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2507  	0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d,
  2508  	0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0x9b, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
  2509  	0x69, 0x6e, 0x67, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71,
  2510  	0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2511  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22,
  2512  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2513  	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69,
  2514  	0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b,
  2515  	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  2516  	0x09, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a,
  2517  	0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x69, 0x6e,
  2518  	0x70, 0x75, 0x74, 0x22, 0x35, 0x0a, 0x1b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
  2519  	0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
  2520  	0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01,
  2521  	0x28, 0x0c, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0xad, 0x05, 0x0a, 0x0e, 0x45,
  2522  	0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a,
  2523  	0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
  2524  	0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2525  	0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
  2526  	0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64,
  2527  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
  2528  	0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2529  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65,
  2530  	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
  2531  	0x12, 0x36, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04,
  2532  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  2533  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x70, 0x61,
  2534  	0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x74, 0x0a, 0x19, 0x65, 0x78, 0x70, 0x6c,
  2535  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x6f, 0x76, 0x65,
  2536  	0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f,
  2537  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2538  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78,
  2539  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65,
  2540  	0x72, 0x72, 0x69, 0x64, 0x65, 0x52, 0x17, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69,
  2541  	0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0xac,
  2542  	0x01, 0x0a, 0x24, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x78,
  2543  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x6f,
  2544  	0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e,
  2545  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2546  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2547  	0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43,
  2548  	0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61,
  2549  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
  2550  	0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x21, 0x63, 0x6f, 0x6e, 0x63,
  2551  	0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2552  	0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2a, 0x0a,
  2553  	0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
  2554  	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
  2555  	0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x1a, 0x8e, 0x01, 0x0a, 0x26, 0x43, 0x6f,
  2556  	0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74,
  2557  	0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x45,
  2558  	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
  2559  	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x4e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
  2560  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2561  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2562  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74,
  2563  	0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x52,
  2564  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd0, 0x04, 0x0a, 0x0f, 0x45,
  2565  	0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50,
  2566  	0x0a, 0x0c, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01,
  2567  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2568  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2569  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69,
  2570  	0x6f, 0x6e, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2571  	0x12, 0x85, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
  2572  	0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03,
  2573  	0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2574  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2575  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70,
  2576  	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45,
  2577  	0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
  2578  	0x52, 0x16, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c,
  2579  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c,
  2580  	0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
  2581  	0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64,
  2582  	0x65, 0x6c, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69,
  2583  	0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2584  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75,
  2585  	0x65, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x69,
  2586  	0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c,
  2587  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x6c, 0x61,
  2588  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
  2589  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2590  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2591  	0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x65, 0x78, 0x70,
  2592  	0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x91, 0x01, 0x0a, 0x1b, 0x43, 0x6f,
  2593  	0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74,
  2594  	0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
  2595  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x5c, 0x0a, 0x05, 0x76,
  2596  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f,
  2597  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2598  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70,
  2599  	0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e,
  2600  	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69,
  2601  	0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb9, 0x04,
  2602  	0x0a, 0x12, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71,
  2603  	0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2604  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22,
  2605  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2606  	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69,
  2607  	0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x05,
  2608  	0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
  2609  	0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61,
  2610  	0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
  2611  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c,
  2612  	0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
  2613  	0x65, 0x73, 0x12, 0x49, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04,
  2614  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2615  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2616  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03,
  2617  	0xe0, 0x41, 0x01, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x61, 0x0a,
  2618  	0x12, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
  2619  	0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2620  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2621  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74,
  2622  	0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x11, 0x73, 0x79, 0x73, 0x74,
  2623  	0x65, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01,
  2624  	0x12, 0x40, 0x0a, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2625  	0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2626  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2627  	0x31, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f,
  2628  	0x6c, 0x73, 0x12, 0x68, 0x0a, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2629  	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
  2630  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2631  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2632  	0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
  2633  	0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x01, 0x52, 0x10, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
  2634  	0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88, 0x01, 0x01, 0x42, 0x15, 0x0a, 0x13,
  2635  	0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
  2636  	0x69, 0x6f, 0x6e, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
  2637  	0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xe2, 0x01, 0x0a, 0x13, 0x43, 0x6f,
  2638  	0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  2639  	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
  2640  	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x6f,
  2641  	0x6b, 0x65, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x69,
  2642  	0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72,
  2643  	0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x69,
  2644  	0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73,
  2645  	0x12, 0x6c, 0x0a, 0x15, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
  2646  	0x73, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2647  	0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2648  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2649  	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43,
  2650  	0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x70, 0x72, 0x6f, 0x6d, 0x70,
  2651  	0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xab,
  2652  	0x07, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
  2653  	0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6d, 0x6f, 0x64,
  2654  	0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6d,
  2655  	0x6f, 0x64, 0x65, 0x6c, 0x12, 0x49, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
  2656  	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2657  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2658  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  2659  	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12,
  2660  	0x61, 0x0a, 0x12, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75,
  2661  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f,
  2662  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2663  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f,
  2664  	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x11, 0x73, 0x79,
  2665  	0x73, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88,
  2666  	0x01, 0x01, 0x12, 0x56, 0x0a, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e,
  2667  	0x74, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x01, 0xfa,
  2668  	0x41, 0x29, 0x0a, 0x27, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67,
  2669  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x61,
  2670  	0x63, 0x68, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x63, 0x61, 0x63,
  2671  	0x68, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x05, 0x74, 0x6f,
  2672  	0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2673  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2674  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6f, 0x6c,
  2675  	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x51, 0x0a, 0x0b,
  2676  	0x74, 0x6f, 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28,
  2677  	0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2678  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2679  	0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03,
  2680  	0xe0, 0x41, 0x01, 0x52, 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
  2681  	0x60, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2682  	0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2683  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2684  	0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
  2685  	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
  2686  	0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
  2687  	0x73, 0x12, 0x5c, 0x0a, 0x0f, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x74,
  2688  	0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f,
  2689  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2690  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x61, 0x66,
  2691  	0x65, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
  2692  	0x0e, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12,
  2693  	0x64, 0x0a, 0x12, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x5f, 0x63,
  2694  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f,
  2695  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2696  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f,
  2697  	0x64, 0x65, 0x6c, 0x41, 0x72, 0x6d, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03,
  2698  	0xe0, 0x41, 0x01, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x41, 0x72, 0x6d, 0x6f, 0x72, 0x43,
  2699  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x63, 0x0a, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
  2700  	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
  2701  	0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2702  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2703  	0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
  2704  	0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
  2705  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61,
  2706  	0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
  2707  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
  2708  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
  2709  	0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
  2710  	0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf1, 0x0b, 0x0a,
  2711  	0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  2712  	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x64,
  2713  	0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67,
  2714  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2715  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
  2716  	0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63,
  2717  	0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x6d, 0x6f, 0x64,
  2718  	0x65, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
  2719  	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73,
  2720  	0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
  2721  	0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2722  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
  2723  	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
  2724  	0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  2725  	0x65, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
  2726  	0x0a, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x49, 0x64, 0x12, 0x75, 0x0a, 0x0f, 0x70,
  2727  	0x72, 0x6f, 0x6d, 0x70, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x03,
  2728  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2729  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2730  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43,
  2731  	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50,
  2732  	0x72, 0x6f, 0x6d, 0x70, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x42, 0x03, 0xe0,
  2733  	0x41, 0x03, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61,
  2734  	0x63, 0x6b, 0x12, 0x6d, 0x0a, 0x0e, 0x75, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61,
  2735  	0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f,
  2736  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2737  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e,
  2738  	0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
  2739  	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
  2740  	0x74, 0x61, 0x52, 0x0d, 0x75, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
  2741  	0x61, 0x1a, 0xa1, 0x03, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x46, 0x65, 0x65, 0x64,
  2742  	0x62, 0x61, 0x63, 0x6b, 0x12, 0x7d, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x65,
  2743  	0x61, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x55, 0x2e, 0x67, 0x6f, 0x6f,
  2744  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2745  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e,
  2746  	0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
  2747  	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62,
  2748  	0x61, 0x63, 0x6b, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f,
  2749  	0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x61,
  2750  	0x73, 0x6f, 0x6e, 0x12, 0x59, 0x0a, 0x0e, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79, 0x5f, 0x72, 0x61,
  2751  	0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f,
  2752  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2753  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x61,
  2754  	0x66, 0x65, 0x74, 0x79, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
  2755  	0x0d, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x35,
  2756  	0x0a, 0x14, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x6d,
  2757  	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
  2758  	0x03, 0x52, 0x12, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x4d, 0x65,
  2759  	0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x7e, 0x0a, 0x0d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64,
  2760  	0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45,
  2761  	0x44, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
  2762  	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x41, 0x46, 0x45, 0x54, 0x59,
  2763  	0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0d, 0x0a,
  2764  	0x09, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12,
  2765  	0x50, 0x52, 0x4f, 0x48, 0x49, 0x42, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45,
  2766  	0x4e, 0x54, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x41, 0x52,
  2767  	0x4d, 0x4f, 0x52, 0x10, 0x05, 0x1a, 0xe8, 0x04, 0x0a, 0x0d, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4d,
  2768  	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x72, 0x6f, 0x6d, 0x70,
  2769  	0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
  2770  	0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  2771  	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61,
  2772  	0x74, 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
  2773  	0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65,
  2774  	0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x14, 0x74,
  2775  	0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f,
  2776  	0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12,
  2777  	0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75,
  2778  	0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
  2779  	0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x74,
  2780  	0x6f, 0x74, 0x61, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x40,
  2781  	0x0a, 0x1a, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  2782  	0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01,
  2783  	0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x17, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x43,
  2784  	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74,
  2785  	0x12, 0x6c, 0x0a, 0x15, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
  2786  	0x73, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2787  	0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2788  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2789  	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43,
  2790  	0x6f, 0x75, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x70, 0x72, 0x6f, 0x6d, 0x70,
  2791  	0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x6a,
  2792  	0x0a, 0x14, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5f, 0x64,
  2793  	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67,
  2794  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2795  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  2796  	0x6f, 0x64, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e,
  2797  	0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x63, 0x61, 0x63, 0x68, 0x65, 0x54, 0x6f, 0x6b,
  2798  	0x65, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x74, 0x0a, 0x19, 0x63, 0x61,
  2799  	0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5f,
  2800  	0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e,
  2801  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2802  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2803  	0x4d, 0x6f, 0x64, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75,
  2804  	0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x17, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61,
  2805  	0x74, 0x65, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
  2806  	0x22, 0x98, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
  2807  	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x65,
  2808  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0,
  2809  	0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2810  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
  2811  	0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f,
  2812  	0x69, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x62, 0x6f, 0x64, 0x79,
  2813  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2814  	0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x42, 0x03, 0xe0, 0x41,
  2815  	0x01, 0x52, 0x08, 0x68, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22, 0x9a, 0x01, 0x0a, 0x1a,
  2816  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69,
  2817  	0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x17, 0x67, 0x65,
  2818  	0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x72, 0x65, 0x73,
  2819  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f,
  2820  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2821  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
  2822  	0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f,
  2823  	0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x15, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x56,
  2824  	0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0a, 0x0a, 0x08,
  2825  	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64,
  2826  	0x69, 0x63, 0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x65,
  2827  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xdc, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x6e, 0x65, 0x72,
  2828  	0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  2829  	0x12, 0x2b, 0x0a, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x61,
  2830  	0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x67, 0x65, 0x6e,
  2831  	0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x3c, 0x0a,
  2832  	0x18, 0x72, 0x61, 0x69, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65,
  2833  	0x72, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48,
  2834  	0x00, 0x52, 0x15, 0x72, 0x61, 0x69, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65,
  2835  	0x72, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x1a, 0x72,
  2836  	0x61, 0x69, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65,
  2837  	0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52,
  2838  	0x17, 0x72, 0x61, 0x69, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65,
  2839  	0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x72, 0x61, 0x69,
  2840  	0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x5f,
  2841  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0xc1, 0x20, 0x0a, 0x11, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
  2842  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xa8, 0x02, 0x0a, 0x07,
  2843  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2844  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2845  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
  2846  	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2847  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2848  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69,
  2849  	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb9, 0x01, 0xda, 0x41, 0x1d,
  2850  	0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
  2851  	0x65, 0x73, 0x2c, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x82, 0xd3, 0xe4,
  2852  	0x93, 0x02, 0x92, 0x01, 0x3a, 0x01, 0x2a, 0x5a, 0x4d, 0x3a, 0x01, 0x2a, 0x22, 0x48, 0x2f, 0x76,
  2853  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2854  	0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
  2855  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65,
  2856  	0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x70,
  2857  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x22, 0x3e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2858  	0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  2859  	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
  2860  	0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x70,
  2861  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x8d, 0x02, 0x0a, 0x0a, 0x52, 0x61, 0x77, 0x50, 0x72,
  2862  	0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2863  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2864  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69,
  2865  	0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2866  	0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22,
  2867  	0xb4, 0x01, 0xda, 0x41, 0x12, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x68, 0x74,
  2868  	0x74, 0x70, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x98, 0x01, 0x3a, 0x01,
  2869  	0x2a, 0x5a, 0x50, 0x3a, 0x01, 0x2a, 0x22, 0x4b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2870  	0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  2871  	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
  2872  	0x2a, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d,
  2873  	0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64,
  2874  	0x69, 0x63, 0x74, 0x22, 0x41, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65,
  2875  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
  2876  	0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65,
  2877  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x61, 0x77, 0x50,
  2878  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0xa7, 0x02, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, 0x61,
  2879  	0x6d, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x38, 0x2e, 0x67, 0x6f,
  2880  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2881  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74,
  2882  	0x72, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65,
  2883  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
  2884  	0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22, 0xc0, 0x01, 0xda, 0x41,
  2885  	0x12, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x62,
  2886  	0x6f, 0x64, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa4, 0x01, 0x3a, 0x01, 0x2a, 0x5a, 0x56, 0x3a,
  2887  	0x01, 0x2a, 0x22, 0x51, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e,
  2888  	0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
  2889  	0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x75,
  2890  	0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  2891  	0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x77, 0x50, 0x72,
  2892  	0x65, 0x64, 0x69, 0x63, 0x74, 0x22, 0x47, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
  2893  	0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  2894  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
  2895  	0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74,
  2896  	0x72, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x30, 0x01,
  2897  	0x12, 0xcf, 0x01, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69,
  2898  	0x63, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2899  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2900  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69,
  2901  	0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2902  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2903  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65,
  2904  	0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  2905  	0x65, 0x22, 0x4f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x49, 0x3a, 0x01, 0x2a, 0x22, 0x44, 0x2f, 0x76,
  2906  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2907  	0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
  2908  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2909  	0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69,
  2910  	0x63, 0x74, 0x12, 0xdb, 0x01, 0x0a, 0x10, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77,
  2911  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2912  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2913  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
  2914  	0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  2915  	0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2916  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2917  	0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65,
  2918  	0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x82, 0xd3,
  2919  	0xe4, 0x93, 0x02, 0x4c, 0x3a, 0x01, 0x2a, 0x22, 0x47, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2920  	0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
  2921  	0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2922  	0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
  2923  	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2924  	0x12, 0x96, 0x01, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x63,
  2925  	0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2926  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2927  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61,
  2928  	0x6d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65,
  2929  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2930  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2931  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69,
  2932  	0x72, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
  2933  	0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x9f, 0x01, 0x0a, 0x16, 0x53, 0x74,
  2934  	0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65,
  2935  	0x64, 0x69, 0x63, 0x74, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2936  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2937  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72,
  2938  	0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71,
  2939  	0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2940  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2941  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72,
  2942  	0x65, 0x63, 0x74, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73,
  2943  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x8d, 0x01, 0x0a, 0x10,
  2944  	0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2945  	0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2946  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2947  	0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64,
  2948  	0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f,
  2949  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2950  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72,
  2951  	0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73,
  2952  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0xc9, 0x02, 0x0a, 0x16,
  2953  	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50,
  2954  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2955  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2956  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
  2957  	0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  2958  	0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2959  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2960  	0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64,
  2961  	0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb7, 0x01, 0x82, 0xd3,
  2962  	0xe4, 0x93, 0x02, 0xb0, 0x01, 0x3a, 0x01, 0x2a, 0x5a, 0x5c, 0x3a, 0x01, 0x2a, 0x22, 0x57, 0x2f,
  2963  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
  2964  	0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
  2965  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
  2966  	0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
  2967  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50,
  2968  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x22, 0x4d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2969  	0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  2970  	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
  2971  	0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73,
  2972  	0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x50, 0x72,
  2973  	0x65, 0x64, 0x69, 0x63, 0x74, 0x30, 0x01, 0x12, 0x96, 0x01, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65,
  2974  	0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x12,
  2975  	0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  2976  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2977  	0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x77, 0x50, 0x72,
  2978  	0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67,
  2979  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2980  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
  2981  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x77, 0x50, 0x72, 0x65, 0x64, 0x69,
  2982  	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01,
  2983  	0x12, 0xe9, 0x01, 0x0a, 0x07, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x12, 0x2f, 0x2e, 0x67,
  2984  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2985  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45,
  2986  	0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e,
  2987  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  2988  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2989  	0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
  2990  	0x7b, 0xda, 0x41, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x73,
  2991  	0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2c, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
  2992  	0x73, 0x2c, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  2993  	0x5f, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, 0x3a, 0x01, 0x2a, 0x22, 0x3e, 0x2f, 0x76,
  2994  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2995  	0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
  2996  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2997  	0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x12, 0x9f, 0x03, 0x0a,
  2998  	0x0b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x33, 0x2e, 0x67,
  2999  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  3000  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
  3001  	0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  3002  	0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3003  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
  3004  	0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52,
  3005  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa4, 0x02, 0xda, 0x41, 0x12, 0x65, 0x6e, 0x64,
  3006  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x82,
  3007  	0xd3, 0xe4, 0x93, 0x02, 0x88, 0x02, 0x3a, 0x01, 0x2a, 0x5a, 0x51, 0x3a, 0x01, 0x2a, 0x22, 0x4c,
  3008  	0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69,
  3009  	0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
  3010  	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
  3011  	0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d,
  3012  	0x3a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5a, 0x30, 0x3a, 0x01,
  3013  	0x2a, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64,
  3014  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f,
  3015  	0x2a, 0x7d, 0x3a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5a, 0x3a,
  3016  	0x3a, 0x01, 0x2a, 0x22, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65,
  3017  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65,
  3018  	0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63,
  3019  	0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x22, 0x42, 0x2f, 0x76, 0x31, 0x62,
  3020  	0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70,
  3021  	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
  3022  	0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f,
  3023  	0x2a, 0x7d, 0x3a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0xab,
  3024  	0x03, 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
  3025  	0x6e, 0x74, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  3026  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  3027  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
  3028  	0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f,
  3029  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  3030  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
  3031  	0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
  3032  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa4, 0x02, 0xda, 0x41, 0x0e, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  3033  	0x2c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8c, 0x02,
  3034  	0x3a, 0x01, 0x2a, 0x5a, 0x52, 0x3a, 0x01, 0x2a, 0x22, 0x4d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74,
  3035  	0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  3036  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
  3037  	0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f,
  3038  	0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
  3039  	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5a, 0x31, 0x3a, 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76,
  3040  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x65, 0x6e,
  3041  	0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x6e, 0x65, 0x72,
  3042  	0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5a, 0x3b, 0x3a, 0x01, 0x2a, 0x22,
  3043  	0x36, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  3044  	0x3d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f,
  3045  	0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
  3046  	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x43, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3047  	0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
  3048  	0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
  3049  	0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x6e,
  3050  	0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0xcb, 0x03, 0x0a,
  3051  	0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43,
  3052  	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3053  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  3054  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
  3055  	0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  3056  	0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  3057  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3058  	0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
  3059  	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, 0x02, 0xda, 0x41, 0x0e, 0x6d,
  3060  	0x6f, 0x64, 0x65, 0x6c, 0x2c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x82, 0xd3, 0xe4,
  3061  	0x93, 0x02, 0xa4, 0x02, 0x3a, 0x01, 0x2a, 0x5a, 0x58, 0x3a, 0x01, 0x2a, 0x22, 0x53, 0x2f, 0x76,
  3062  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x70, 0x72,
  3063  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  3064  	0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f,
  3065  	0x2a, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65,
  3066  	0x61, 0x6d, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
  3067  	0x74, 0x5a, 0x37, 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3068  	0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  3069  	0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x47, 0x65, 0x6e, 0x65, 0x72,
  3070  	0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5a, 0x41, 0x3a, 0x01, 0x2a, 0x22,
  3071  	0x3c, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  3072  	0x3d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x6f,
  3073  	0x64, 0x65, 0x6c, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x47, 0x65,
  3074  	0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x49, 0x2f,
  3075  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3d, 0x70,
  3076  	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
  3077  	0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f,
  3078  	0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
  3079  	0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x30, 0x01, 0x12, 0xd3, 0x01, 0x0a, 0x0f, 0x43,
  3080  	0x68, 0x61, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37,
  3081  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  3082  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3083  	0x2e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  3084  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3085  	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22, 0x6f, 0xda,
  3086  	0x41, 0x12, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x5f,
  3087  	0x62, 0x6f, 0x64, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x54, 0x3a, 0x09, 0x68, 0x74, 0x74, 0x70,
  3088  	0x5f, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x47, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
  3089  	0x7b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  3090  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
  3091  	0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x68,
  3092  	0x61, 0x74, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x30, 0x01,
  3093  	0x1a, 0x86, 0x01, 0xca, 0x41, 0x19, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  3094  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2,
  3095  	0x41, 0x67, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f,
  3096  	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74,
  3097  	0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  3098  	0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
  3099  	0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68,
  3100  	0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  3101  	0x72, 0x65, 0x61, 0x64, 0x2d, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0xed, 0x01, 0x0a, 0x23, 0x63, 0x6f,
  3102  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  3103  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3104  	0x31, 0x42, 0x16, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72,
  3105  	0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f,
  3106  	0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f,
  3107  	0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76,
  3108  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  3109  	0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62,
  3110  	0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3111  	0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74,
  3112  	0x61, 0x31, 0xca, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75,
  3113  	0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 0x62,
  3114  	0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 0x22, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43,
  3115  	0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  3116  	0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3117  	0x33,
  3118  }
  3119  
  3120  var (
  3121  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescOnce sync.Once
  3122  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDesc
  3123  )
  3124  
  3125  func file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescGZIP() []byte {
  3126  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescOnce.Do(func() {
  3127  		file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescData)
  3128  	})
  3129  	return file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDescData
  3130  }
  3131  
  3132  var file_google_cloud_aiplatform_v1beta1_prediction_service_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  3133  var file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes = make([]protoimpl.MessageInfo, 33)
  3134  var file_google_cloud_aiplatform_v1beta1_prediction_service_proto_goTypes = []any{
  3135  	(GenerateContentResponse_PromptFeedback_BlockedReason)(0), // 0: google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback.BlockedReason
  3136  	(*PredictRequest)(nil),                        // 1: google.cloud.aiplatform.v1beta1.PredictRequest
  3137  	(*PredictResponse)(nil),                       // 2: google.cloud.aiplatform.v1beta1.PredictResponse
  3138  	(*RawPredictRequest)(nil),                     // 3: google.cloud.aiplatform.v1beta1.RawPredictRequest
  3139  	(*StreamRawPredictRequest)(nil),               // 4: google.cloud.aiplatform.v1beta1.StreamRawPredictRequest
  3140  	(*DirectPredictRequest)(nil),                  // 5: google.cloud.aiplatform.v1beta1.DirectPredictRequest
  3141  	(*DirectPredictResponse)(nil),                 // 6: google.cloud.aiplatform.v1beta1.DirectPredictResponse
  3142  	(*DirectRawPredictRequest)(nil),               // 7: google.cloud.aiplatform.v1beta1.DirectRawPredictRequest
  3143  	(*DirectRawPredictResponse)(nil),              // 8: google.cloud.aiplatform.v1beta1.DirectRawPredictResponse
  3144  	(*StreamDirectPredictRequest)(nil),            // 9: google.cloud.aiplatform.v1beta1.StreamDirectPredictRequest
  3145  	(*StreamDirectPredictResponse)(nil),           // 10: google.cloud.aiplatform.v1beta1.StreamDirectPredictResponse
  3146  	(*StreamDirectRawPredictRequest)(nil),         // 11: google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest
  3147  	(*StreamDirectRawPredictResponse)(nil),        // 12: google.cloud.aiplatform.v1beta1.StreamDirectRawPredictResponse
  3148  	(*StreamingPredictRequest)(nil),               // 13: google.cloud.aiplatform.v1beta1.StreamingPredictRequest
  3149  	(*StreamingPredictResponse)(nil),              // 14: google.cloud.aiplatform.v1beta1.StreamingPredictResponse
  3150  	(*StreamingRawPredictRequest)(nil),            // 15: google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest
  3151  	(*StreamingRawPredictResponse)(nil),           // 16: google.cloud.aiplatform.v1beta1.StreamingRawPredictResponse
  3152  	(*ExplainRequest)(nil),                        // 17: google.cloud.aiplatform.v1beta1.ExplainRequest
  3153  	(*ExplainResponse)(nil),                       // 18: google.cloud.aiplatform.v1beta1.ExplainResponse
  3154  	(*CountTokensRequest)(nil),                    // 19: google.cloud.aiplatform.v1beta1.CountTokensRequest
  3155  	(*CountTokensResponse)(nil),                   // 20: google.cloud.aiplatform.v1beta1.CountTokensResponse
  3156  	(*GenerateContentRequest)(nil),                // 21: google.cloud.aiplatform.v1beta1.GenerateContentRequest
  3157  	(*GenerateContentResponse)(nil),               // 22: google.cloud.aiplatform.v1beta1.GenerateContentResponse
  3158  	(*ChatCompletionsRequest)(nil),                // 23: google.cloud.aiplatform.v1beta1.ChatCompletionsRequest
  3159  	(*PredictLongRunningResponse)(nil),            // 24: google.cloud.aiplatform.v1beta1.PredictLongRunningResponse
  3160  	(*PredictLongRunningMetadata)(nil),            // 25: google.cloud.aiplatform.v1beta1.PredictLongRunningMetadata
  3161  	(*GenerateVideoResponse)(nil),                 // 26: google.cloud.aiplatform.v1beta1.GenerateVideoResponse
  3162  	nil,                                           // 27: google.cloud.aiplatform.v1beta1.PredictRequest.LabelsEntry
  3163  	nil,                                           // 28: google.cloud.aiplatform.v1beta1.ExplainRequest.ConcurrentExplanationSpecOverrideEntry
  3164  	(*ExplainResponse_ConcurrentExplanation)(nil), // 29: google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanation
  3165  	nil, // 30: google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanationsEntry
  3166  	nil, // 31: google.cloud.aiplatform.v1beta1.GenerateContentRequest.LabelsEntry
  3167  	(*GenerateContentResponse_PromptFeedback)(nil), // 32: google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback
  3168  	(*GenerateContentResponse_UsageMetadata)(nil),  // 33: google.cloud.aiplatform.v1beta1.GenerateContentResponse.UsageMetadata
  3169  	(*structpb.Value)(nil),                         // 34: google.protobuf.Value
  3170  	(*httpbody.HttpBody)(nil),                      // 35: google.api.HttpBody
  3171  	(*Tensor)(nil),                                 // 36: google.cloud.aiplatform.v1beta1.Tensor
  3172  	(*ExplanationSpecOverride)(nil),                // 37: google.cloud.aiplatform.v1beta1.ExplanationSpecOverride
  3173  	(*Explanation)(nil),                            // 38: google.cloud.aiplatform.v1beta1.Explanation
  3174  	(*Content)(nil),                                // 39: google.cloud.aiplatform.v1beta1.Content
  3175  	(*Tool)(nil),                                   // 40: google.cloud.aiplatform.v1beta1.Tool
  3176  	(*GenerationConfig)(nil),                       // 41: google.cloud.aiplatform.v1beta1.GenerationConfig
  3177  	(*ModalityTokenCount)(nil),                     // 42: google.cloud.aiplatform.v1beta1.ModalityTokenCount
  3178  	(*ToolConfig)(nil),                             // 43: google.cloud.aiplatform.v1beta1.ToolConfig
  3179  	(*SafetySetting)(nil),                          // 44: google.cloud.aiplatform.v1beta1.SafetySetting
  3180  	(*ModelArmorConfig)(nil),                       // 45: google.cloud.aiplatform.v1beta1.ModelArmorConfig
  3181  	(*Candidate)(nil),                              // 46: google.cloud.aiplatform.v1beta1.Candidate
  3182  	(*timestamppb.Timestamp)(nil),                  // 47: google.protobuf.Timestamp
  3183  	(*SafetyRating)(nil),                           // 48: google.cloud.aiplatform.v1beta1.SafetyRating
  3184  }
  3185  var file_google_cloud_aiplatform_v1beta1_prediction_service_proto_depIdxs = []int32{
  3186  	34, // 0: google.cloud.aiplatform.v1beta1.PredictRequest.instances:type_name -> google.protobuf.Value
  3187  	34, // 1: google.cloud.aiplatform.v1beta1.PredictRequest.parameters:type_name -> google.protobuf.Value
  3188  	27, // 2: google.cloud.aiplatform.v1beta1.PredictRequest.labels:type_name -> google.cloud.aiplatform.v1beta1.PredictRequest.LabelsEntry
  3189  	34, // 3: google.cloud.aiplatform.v1beta1.PredictResponse.predictions:type_name -> google.protobuf.Value
  3190  	34, // 4: google.cloud.aiplatform.v1beta1.PredictResponse.metadata:type_name -> google.protobuf.Value
  3191  	35, // 5: google.cloud.aiplatform.v1beta1.RawPredictRequest.http_body:type_name -> google.api.HttpBody
  3192  	35, // 6: google.cloud.aiplatform.v1beta1.StreamRawPredictRequest.http_body:type_name -> google.api.HttpBody
  3193  	36, // 7: google.cloud.aiplatform.v1beta1.DirectPredictRequest.inputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3194  	36, // 8: google.cloud.aiplatform.v1beta1.DirectPredictRequest.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3195  	36, // 9: google.cloud.aiplatform.v1beta1.DirectPredictResponse.outputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3196  	36, // 10: google.cloud.aiplatform.v1beta1.DirectPredictResponse.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3197  	36, // 11: google.cloud.aiplatform.v1beta1.StreamDirectPredictRequest.inputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3198  	36, // 12: google.cloud.aiplatform.v1beta1.StreamDirectPredictRequest.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3199  	36, // 13: google.cloud.aiplatform.v1beta1.StreamDirectPredictResponse.outputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3200  	36, // 14: google.cloud.aiplatform.v1beta1.StreamDirectPredictResponse.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3201  	36, // 15: google.cloud.aiplatform.v1beta1.StreamingPredictRequest.inputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3202  	36, // 16: google.cloud.aiplatform.v1beta1.StreamingPredictRequest.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3203  	36, // 17: google.cloud.aiplatform.v1beta1.StreamingPredictResponse.outputs:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3204  	36, // 18: google.cloud.aiplatform.v1beta1.StreamingPredictResponse.parameters:type_name -> google.cloud.aiplatform.v1beta1.Tensor
  3205  	34, // 19: google.cloud.aiplatform.v1beta1.ExplainRequest.instances:type_name -> google.protobuf.Value
  3206  	34, // 20: google.cloud.aiplatform.v1beta1.ExplainRequest.parameters:type_name -> google.protobuf.Value
  3207  	37, // 21: google.cloud.aiplatform.v1beta1.ExplainRequest.explanation_spec_override:type_name -> google.cloud.aiplatform.v1beta1.ExplanationSpecOverride
  3208  	28, // 22: google.cloud.aiplatform.v1beta1.ExplainRequest.concurrent_explanation_spec_override:type_name -> google.cloud.aiplatform.v1beta1.ExplainRequest.ConcurrentExplanationSpecOverrideEntry
  3209  	38, // 23: google.cloud.aiplatform.v1beta1.ExplainResponse.explanations:type_name -> google.cloud.aiplatform.v1beta1.Explanation
  3210  	30, // 24: google.cloud.aiplatform.v1beta1.ExplainResponse.concurrent_explanations:type_name -> google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanationsEntry
  3211  	34, // 25: google.cloud.aiplatform.v1beta1.ExplainResponse.predictions:type_name -> google.protobuf.Value
  3212  	34, // 26: google.cloud.aiplatform.v1beta1.CountTokensRequest.instances:type_name -> google.protobuf.Value
  3213  	39, // 27: google.cloud.aiplatform.v1beta1.CountTokensRequest.contents:type_name -> google.cloud.aiplatform.v1beta1.Content
  3214  	39, // 28: google.cloud.aiplatform.v1beta1.CountTokensRequest.system_instruction:type_name -> google.cloud.aiplatform.v1beta1.Content
  3215  	40, // 29: google.cloud.aiplatform.v1beta1.CountTokensRequest.tools:type_name -> google.cloud.aiplatform.v1beta1.Tool
  3216  	41, // 30: google.cloud.aiplatform.v1beta1.CountTokensRequest.generation_config:type_name -> google.cloud.aiplatform.v1beta1.GenerationConfig
  3217  	42, // 31: google.cloud.aiplatform.v1beta1.CountTokensResponse.prompt_tokens_details:type_name -> google.cloud.aiplatform.v1beta1.ModalityTokenCount
  3218  	39, // 32: google.cloud.aiplatform.v1beta1.GenerateContentRequest.contents:type_name -> google.cloud.aiplatform.v1beta1.Content
  3219  	39, // 33: google.cloud.aiplatform.v1beta1.GenerateContentRequest.system_instruction:type_name -> google.cloud.aiplatform.v1beta1.Content
  3220  	40, // 34: google.cloud.aiplatform.v1beta1.GenerateContentRequest.tools:type_name -> google.cloud.aiplatform.v1beta1.Tool
  3221  	43, // 35: google.cloud.aiplatform.v1beta1.GenerateContentRequest.tool_config:type_name -> google.cloud.aiplatform.v1beta1.ToolConfig
  3222  	31, // 36: google.cloud.aiplatform.v1beta1.GenerateContentRequest.labels:type_name -> google.cloud.aiplatform.v1beta1.GenerateContentRequest.LabelsEntry
  3223  	44, // 37: google.cloud.aiplatform.v1beta1.GenerateContentRequest.safety_settings:type_name -> google.cloud.aiplatform.v1beta1.SafetySetting
  3224  	45, // 38: google.cloud.aiplatform.v1beta1.GenerateContentRequest.model_armor_config:type_name -> google.cloud.aiplatform.v1beta1.ModelArmorConfig
  3225  	41, // 39: google.cloud.aiplatform.v1beta1.GenerateContentRequest.generation_config:type_name -> google.cloud.aiplatform.v1beta1.GenerationConfig
  3226  	46, // 40: google.cloud.aiplatform.v1beta1.GenerateContentResponse.candidates:type_name -> google.cloud.aiplatform.v1beta1.Candidate
  3227  	47, // 41: google.cloud.aiplatform.v1beta1.GenerateContentResponse.create_time:type_name -> google.protobuf.Timestamp
  3228  	32, // 42: google.cloud.aiplatform.v1beta1.GenerateContentResponse.prompt_feedback:type_name -> google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback
  3229  	33, // 43: google.cloud.aiplatform.v1beta1.GenerateContentResponse.usage_metadata:type_name -> google.cloud.aiplatform.v1beta1.GenerateContentResponse.UsageMetadata
  3230  	35, // 44: google.cloud.aiplatform.v1beta1.ChatCompletionsRequest.http_body:type_name -> google.api.HttpBody
  3231  	26, // 45: google.cloud.aiplatform.v1beta1.PredictLongRunningResponse.generate_video_response:type_name -> google.cloud.aiplatform.v1beta1.GenerateVideoResponse
  3232  	37, // 46: google.cloud.aiplatform.v1beta1.ExplainRequest.ConcurrentExplanationSpecOverrideEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ExplanationSpecOverride
  3233  	38, // 47: google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanation.explanations:type_name -> google.cloud.aiplatform.v1beta1.Explanation
  3234  	29, // 48: google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanationsEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ExplainResponse.ConcurrentExplanation
  3235  	0,  // 49: google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback.block_reason:type_name -> google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback.BlockedReason
  3236  	48, // 50: google.cloud.aiplatform.v1beta1.GenerateContentResponse.PromptFeedback.safety_ratings:type_name -> google.cloud.aiplatform.v1beta1.SafetyRating
  3237  	42, // 51: google.cloud.aiplatform.v1beta1.GenerateContentResponse.UsageMetadata.prompt_tokens_details:type_name -> google.cloud.aiplatform.v1beta1.ModalityTokenCount
  3238  	42, // 52: google.cloud.aiplatform.v1beta1.GenerateContentResponse.UsageMetadata.cache_tokens_details:type_name -> google.cloud.aiplatform.v1beta1.ModalityTokenCount
  3239  	42, // 53: google.cloud.aiplatform.v1beta1.GenerateContentResponse.UsageMetadata.candidates_tokens_details:type_name -> google.cloud.aiplatform.v1beta1.ModalityTokenCount
  3240  	1,  // 54: google.cloud.aiplatform.v1beta1.PredictionService.Predict:input_type -> google.cloud.aiplatform.v1beta1.PredictRequest
  3241  	3,  // 55: google.cloud.aiplatform.v1beta1.PredictionService.RawPredict:input_type -> google.cloud.aiplatform.v1beta1.RawPredictRequest
  3242  	4,  // 56: google.cloud.aiplatform.v1beta1.PredictionService.StreamRawPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamRawPredictRequest
  3243  	5,  // 57: google.cloud.aiplatform.v1beta1.PredictionService.DirectPredict:input_type -> google.cloud.aiplatform.v1beta1.DirectPredictRequest
  3244  	7,  // 58: google.cloud.aiplatform.v1beta1.PredictionService.DirectRawPredict:input_type -> google.cloud.aiplatform.v1beta1.DirectRawPredictRequest
  3245  	9,  // 59: google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamDirectPredictRequest
  3246  	11, // 60: google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectRawPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamDirectRawPredictRequest
  3247  	13, // 61: google.cloud.aiplatform.v1beta1.PredictionService.StreamingPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamingPredictRequest
  3248  	13, // 62: google.cloud.aiplatform.v1beta1.PredictionService.ServerStreamingPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamingPredictRequest
  3249  	15, // 63: google.cloud.aiplatform.v1beta1.PredictionService.StreamingRawPredict:input_type -> google.cloud.aiplatform.v1beta1.StreamingRawPredictRequest
  3250  	17, // 64: google.cloud.aiplatform.v1beta1.PredictionService.Explain:input_type -> google.cloud.aiplatform.v1beta1.ExplainRequest
  3251  	19, // 65: google.cloud.aiplatform.v1beta1.PredictionService.CountTokens:input_type -> google.cloud.aiplatform.v1beta1.CountTokensRequest
  3252  	21, // 66: google.cloud.aiplatform.v1beta1.PredictionService.GenerateContent:input_type -> google.cloud.aiplatform.v1beta1.GenerateContentRequest
  3253  	21, // 67: google.cloud.aiplatform.v1beta1.PredictionService.StreamGenerateContent:input_type -> google.cloud.aiplatform.v1beta1.GenerateContentRequest
  3254  	23, // 68: google.cloud.aiplatform.v1beta1.PredictionService.ChatCompletions:input_type -> google.cloud.aiplatform.v1beta1.ChatCompletionsRequest
  3255  	2,  // 69: google.cloud.aiplatform.v1beta1.PredictionService.Predict:output_type -> google.cloud.aiplatform.v1beta1.PredictResponse
  3256  	35, // 70: google.cloud.aiplatform.v1beta1.PredictionService.RawPredict:output_type -> google.api.HttpBody
  3257  	35, // 71: google.cloud.aiplatform.v1beta1.PredictionService.StreamRawPredict:output_type -> google.api.HttpBody
  3258  	6,  // 72: google.cloud.aiplatform.v1beta1.PredictionService.DirectPredict:output_type -> google.cloud.aiplatform.v1beta1.DirectPredictResponse
  3259  	8,  // 73: google.cloud.aiplatform.v1beta1.PredictionService.DirectRawPredict:output_type -> google.cloud.aiplatform.v1beta1.DirectRawPredictResponse
  3260  	10, // 74: google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectPredict:output_type -> google.cloud.aiplatform.v1beta1.StreamDirectPredictResponse
  3261  	12, // 75: google.cloud.aiplatform.v1beta1.PredictionService.StreamDirectRawPredict:output_type -> google.cloud.aiplatform.v1beta1.StreamDirectRawPredictResponse
  3262  	14, // 76: google.cloud.aiplatform.v1beta1.PredictionService.StreamingPredict:output_type -> google.cloud.aiplatform.v1beta1.StreamingPredictResponse
  3263  	14, // 77: google.cloud.aiplatform.v1beta1.PredictionService.ServerStreamingPredict:output_type -> google.cloud.aiplatform.v1beta1.StreamingPredictResponse
  3264  	16, // 78: google.cloud.aiplatform.v1beta1.PredictionService.StreamingRawPredict:output_type -> google.cloud.aiplatform.v1beta1.StreamingRawPredictResponse
  3265  	18, // 79: google.cloud.aiplatform.v1beta1.PredictionService.Explain:output_type -> google.cloud.aiplatform.v1beta1.ExplainResponse
  3266  	20, // 80: google.cloud.aiplatform.v1beta1.PredictionService.CountTokens:output_type -> google.cloud.aiplatform.v1beta1.CountTokensResponse
  3267  	22, // 81: google.cloud.aiplatform.v1beta1.PredictionService.GenerateContent:output_type -> google.cloud.aiplatform.v1beta1.GenerateContentResponse
  3268  	22, // 82: google.cloud.aiplatform.v1beta1.PredictionService.StreamGenerateContent:output_type -> google.cloud.aiplatform.v1beta1.GenerateContentResponse
  3269  	35, // 83: google.cloud.aiplatform.v1beta1.PredictionService.ChatCompletions:output_type -> google.api.HttpBody
  3270  	69, // [69:84] is the sub-list for method output_type
  3271  	54, // [54:69] is the sub-list for method input_type
  3272  	54, // [54:54] is the sub-list for extension type_name
  3273  	54, // [54:54] is the sub-list for extension extendee
  3274  	0,  // [0:54] is the sub-list for field type_name
  3275  }
  3276  
  3277  func init() { file_google_cloud_aiplatform_v1beta1_prediction_service_proto_init() }
  3278  func file_google_cloud_aiplatform_v1beta1_prediction_service_proto_init() {
  3279  	if File_google_cloud_aiplatform_v1beta1_prediction_service_proto != nil {
  3280  		return
  3281  	}
  3282  	file_google_cloud_aiplatform_v1beta1_content_proto_init()
  3283  	file_google_cloud_aiplatform_v1beta1_explanation_proto_init()
  3284  	file_google_cloud_aiplatform_v1beta1_tool_proto_init()
  3285  	file_google_cloud_aiplatform_v1beta1_types_proto_init()
  3286  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[18].OneofWrappers = []any{}
  3287  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[20].OneofWrappers = []any{}
  3288  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[23].OneofWrappers = []any{
  3289  		(*PredictLongRunningResponse_GenerateVideoResponse)(nil),
  3290  	}
  3291  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes[25].OneofWrappers = []any{}
  3292  	type x struct{}
  3293  	out := protoimpl.TypeBuilder{
  3294  		File: protoimpl.DescBuilder{
  3295  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3296  			RawDescriptor: file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDesc,
  3297  			NumEnums:      1,
  3298  			NumMessages:   33,
  3299  			NumExtensions: 0,
  3300  			NumServices:   1,
  3301  		},
  3302  		GoTypes:           file_google_cloud_aiplatform_v1beta1_prediction_service_proto_goTypes,
  3303  		DependencyIndexes: file_google_cloud_aiplatform_v1beta1_prediction_service_proto_depIdxs,
  3304  		EnumInfos:         file_google_cloud_aiplatform_v1beta1_prediction_service_proto_enumTypes,
  3305  		MessageInfos:      file_google_cloud_aiplatform_v1beta1_prediction_service_proto_msgTypes,
  3306  	}.Build()
  3307  	File_google_cloud_aiplatform_v1beta1_prediction_service_proto = out.File
  3308  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_rawDesc = nil
  3309  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_goTypes = nil
  3310  	file_google_cloud_aiplatform_v1beta1_prediction_service_proto_depIdxs = nil
  3311  }