1// Copyright 2021 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.26.0
18// 	protoc        v3.12.2
19// source: google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto
20
21package aiplatform
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	_ "google.golang.org/genproto/googleapis/api/annotations"
28	status "google.golang.org/genproto/googleapis/rpc/status"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31	durationpb "google.golang.org/protobuf/types/known/durationpb"
32	structpb "google.golang.org/protobuf/types/known/structpb"
33	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
34)
35
36const (
37	// Verify that this generated code is sufficiently up-to-date.
38	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
39	// Verify that runtime/protoimpl is sufficiently up-to-date.
40	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
41)
42
43// The Model Monitoring Objective types.
44type ModelDeploymentMonitoringObjectiveType int32
45
46const (
47	// Default value, should not be set.
48	ModelDeploymentMonitoringObjectiveType_MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED ModelDeploymentMonitoringObjectiveType = 0
49	// Raw feature values' stats to detect skew between Training-Prediction
50	// datasets.
51	ModelDeploymentMonitoringObjectiveType_RAW_FEATURE_SKEW ModelDeploymentMonitoringObjectiveType = 1
52	// Raw feature values' stats to detect drift between Serving-Prediction
53	// datasets.
54	ModelDeploymentMonitoringObjectiveType_RAW_FEATURE_DRIFT ModelDeploymentMonitoringObjectiveType = 2
55	// Feature attribution scores to detect skew between Training-Prediction
56	// datasets.
57	ModelDeploymentMonitoringObjectiveType_FEATURE_ATTRIBUTION_SKEW ModelDeploymentMonitoringObjectiveType = 3
58	// Feature attribution scores to detect skew between Prediction datasets
59	// collected within different time windows.
60	ModelDeploymentMonitoringObjectiveType_FEATURE_ATTRIBUTION_DRIFT ModelDeploymentMonitoringObjectiveType = 4
61)
62
63// Enum value maps for ModelDeploymentMonitoringObjectiveType.
64var (
65	ModelDeploymentMonitoringObjectiveType_name = map[int32]string{
66		0: "MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED",
67		1: "RAW_FEATURE_SKEW",
68		2: "RAW_FEATURE_DRIFT",
69		3: "FEATURE_ATTRIBUTION_SKEW",
70		4: "FEATURE_ATTRIBUTION_DRIFT",
71	}
72	ModelDeploymentMonitoringObjectiveType_value = map[string]int32{
73		"MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED": 0,
74		"RAW_FEATURE_SKEW":          1,
75		"RAW_FEATURE_DRIFT":         2,
76		"FEATURE_ATTRIBUTION_SKEW":  3,
77		"FEATURE_ATTRIBUTION_DRIFT": 4,
78	}
79)
80
81func (x ModelDeploymentMonitoringObjectiveType) Enum() *ModelDeploymentMonitoringObjectiveType {
82	p := new(ModelDeploymentMonitoringObjectiveType)
83	*p = x
84	return p
85}
86
87func (x ModelDeploymentMonitoringObjectiveType) String() string {
88	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
89}
90
91func (ModelDeploymentMonitoringObjectiveType) Descriptor() protoreflect.EnumDescriptor {
92	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[0].Descriptor()
93}
94
95func (ModelDeploymentMonitoringObjectiveType) Type() protoreflect.EnumType {
96	return &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[0]
97}
98
99func (x ModelDeploymentMonitoringObjectiveType) Number() protoreflect.EnumNumber {
100	return protoreflect.EnumNumber(x)
101}
102
103// Deprecated: Use ModelDeploymentMonitoringObjectiveType.Descriptor instead.
104func (ModelDeploymentMonitoringObjectiveType) EnumDescriptor() ([]byte, []int) {
105	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0}
106}
107
108// The state to Specify the monitoring pipeline.
109type ModelDeploymentMonitoringJob_MonitoringScheduleState int32
110
111const (
112	// Unspecified state.
113	ModelDeploymentMonitoringJob_MONITORING_SCHEDULE_STATE_UNSPECIFIED ModelDeploymentMonitoringJob_MonitoringScheduleState = 0
114	// The pipeline is picked up and wait to run.
115	ModelDeploymentMonitoringJob_PENDING ModelDeploymentMonitoringJob_MonitoringScheduleState = 1
116	// The pipeline is offline and will be scheduled for next run.
117	ModelDeploymentMonitoringJob_OFFLINE ModelDeploymentMonitoringJob_MonitoringScheduleState = 2
118	// The pipeline is running.
119	ModelDeploymentMonitoringJob_RUNNING ModelDeploymentMonitoringJob_MonitoringScheduleState = 3
120)
121
122// Enum value maps for ModelDeploymentMonitoringJob_MonitoringScheduleState.
123var (
124	ModelDeploymentMonitoringJob_MonitoringScheduleState_name = map[int32]string{
125		0: "MONITORING_SCHEDULE_STATE_UNSPECIFIED",
126		1: "PENDING",
127		2: "OFFLINE",
128		3: "RUNNING",
129	}
130	ModelDeploymentMonitoringJob_MonitoringScheduleState_value = map[string]int32{
131		"MONITORING_SCHEDULE_STATE_UNSPECIFIED": 0,
132		"PENDING":                               1,
133		"OFFLINE":                               2,
134		"RUNNING":                               3,
135	}
136)
137
138func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) Enum() *ModelDeploymentMonitoringJob_MonitoringScheduleState {
139	p := new(ModelDeploymentMonitoringJob_MonitoringScheduleState)
140	*p = x
141	return p
142}
143
144func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) String() string {
145	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
146}
147
148func (ModelDeploymentMonitoringJob_MonitoringScheduleState) Descriptor() protoreflect.EnumDescriptor {
149	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[1].Descriptor()
150}
151
152func (ModelDeploymentMonitoringJob_MonitoringScheduleState) Type() protoreflect.EnumType {
153	return &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[1]
154}
155
156func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) Number() protoreflect.EnumNumber {
157	return protoreflect.EnumNumber(x)
158}
159
160// Deprecated: Use ModelDeploymentMonitoringJob_MonitoringScheduleState.Descriptor instead.
161func (ModelDeploymentMonitoringJob_MonitoringScheduleState) EnumDescriptor() ([]byte, []int) {
162	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0, 0}
163}
164
165// Indicates where does the log come from.
166type ModelDeploymentMonitoringBigQueryTable_LogSource int32
167
168const (
169	// Unspecified source.
170	ModelDeploymentMonitoringBigQueryTable_LOG_SOURCE_UNSPECIFIED ModelDeploymentMonitoringBigQueryTable_LogSource = 0
171	// Logs coming from Training dataset.
172	ModelDeploymentMonitoringBigQueryTable_TRAINING ModelDeploymentMonitoringBigQueryTable_LogSource = 1
173	// Logs coming from Serving traffic.
174	ModelDeploymentMonitoringBigQueryTable_SERVING ModelDeploymentMonitoringBigQueryTable_LogSource = 2
175)
176
177// Enum value maps for ModelDeploymentMonitoringBigQueryTable_LogSource.
178var (
179	ModelDeploymentMonitoringBigQueryTable_LogSource_name = map[int32]string{
180		0: "LOG_SOURCE_UNSPECIFIED",
181		1: "TRAINING",
182		2: "SERVING",
183	}
184	ModelDeploymentMonitoringBigQueryTable_LogSource_value = map[string]int32{
185		"LOG_SOURCE_UNSPECIFIED": 0,
186		"TRAINING":               1,
187		"SERVING":                2,
188	}
189)
190
191func (x ModelDeploymentMonitoringBigQueryTable_LogSource) Enum() *ModelDeploymentMonitoringBigQueryTable_LogSource {
192	p := new(ModelDeploymentMonitoringBigQueryTable_LogSource)
193	*p = x
194	return p
195}
196
197func (x ModelDeploymentMonitoringBigQueryTable_LogSource) String() string {
198	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
199}
200
201func (ModelDeploymentMonitoringBigQueryTable_LogSource) Descriptor() protoreflect.EnumDescriptor {
202	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[2].Descriptor()
203}
204
205func (ModelDeploymentMonitoringBigQueryTable_LogSource) Type() protoreflect.EnumType {
206	return &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[2]
207}
208
209func (x ModelDeploymentMonitoringBigQueryTable_LogSource) Number() protoreflect.EnumNumber {
210	return protoreflect.EnumNumber(x)
211}
212
213// Deprecated: Use ModelDeploymentMonitoringBigQueryTable_LogSource.Descriptor instead.
214func (ModelDeploymentMonitoringBigQueryTable_LogSource) EnumDescriptor() ([]byte, []int) {
215	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1, 0}
216}
217
218// Indicates what type of traffic does the log belong to.
219type ModelDeploymentMonitoringBigQueryTable_LogType int32
220
221const (
222	// Unspecified type.
223	ModelDeploymentMonitoringBigQueryTable_LOG_TYPE_UNSPECIFIED ModelDeploymentMonitoringBigQueryTable_LogType = 0
224	// Predict logs.
225	ModelDeploymentMonitoringBigQueryTable_PREDICT ModelDeploymentMonitoringBigQueryTable_LogType = 1
226	// Explain logs.
227	ModelDeploymentMonitoringBigQueryTable_EXPLAIN ModelDeploymentMonitoringBigQueryTable_LogType = 2
228)
229
230// Enum value maps for ModelDeploymentMonitoringBigQueryTable_LogType.
231var (
232	ModelDeploymentMonitoringBigQueryTable_LogType_name = map[int32]string{
233		0: "LOG_TYPE_UNSPECIFIED",
234		1: "PREDICT",
235		2: "EXPLAIN",
236	}
237	ModelDeploymentMonitoringBigQueryTable_LogType_value = map[string]int32{
238		"LOG_TYPE_UNSPECIFIED": 0,
239		"PREDICT":              1,
240		"EXPLAIN":              2,
241	}
242)
243
244func (x ModelDeploymentMonitoringBigQueryTable_LogType) Enum() *ModelDeploymentMonitoringBigQueryTable_LogType {
245	p := new(ModelDeploymentMonitoringBigQueryTable_LogType)
246	*p = x
247	return p
248}
249
250func (x ModelDeploymentMonitoringBigQueryTable_LogType) String() string {
251	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
252}
253
254func (ModelDeploymentMonitoringBigQueryTable_LogType) Descriptor() protoreflect.EnumDescriptor {
255	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[3].Descriptor()
256}
257
258func (ModelDeploymentMonitoringBigQueryTable_LogType) Type() protoreflect.EnumType {
259	return &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes[3]
260}
261
262func (x ModelDeploymentMonitoringBigQueryTable_LogType) Number() protoreflect.EnumNumber {
263	return protoreflect.EnumNumber(x)
264}
265
266// Deprecated: Use ModelDeploymentMonitoringBigQueryTable_LogType.Descriptor instead.
267func (ModelDeploymentMonitoringBigQueryTable_LogType) EnumDescriptor() ([]byte, []int) {
268	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1, 1}
269}
270
271// Represents a job that runs periodically to monitor the deployed models in an
272// endpoint. It will analyze the logged training & prediction data to detect any
273// abnormal behaviors.
274type ModelDeploymentMonitoringJob struct {
275	state         protoimpl.MessageState
276	sizeCache     protoimpl.SizeCache
277	unknownFields protoimpl.UnknownFields
278
279	// Output only. Resource name of a ModelDeploymentMonitoringJob.
280	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
281	// Required. The user-defined name of the ModelDeploymentMonitoringJob.
282	// The name can be up to 128 characters long and can be consist of any UTF-8
283	// characters.
284	// Display name of a ModelDeploymentMonitoringJob.
285	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
286	// Required. Endpoint resource name.
287	// Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
288	Endpoint string `protobuf:"bytes,3,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
289	// Output only. The detailed state of the monitoring job.
290	// When the job is still creating, the state will be 'PENDING'.
291	// Once the job is successfully created, the state will be 'RUNNING'.
292	// Pause the job, the state will be 'PAUSED'.
293	// Resume the job, the state will return to 'RUNNING'.
294	State JobState `protobuf:"varint,4,opt,name=state,proto3,enum=google.cloud.aiplatform.v1.JobState" json:"state,omitempty"`
295	// Output only. Schedule state when the monitoring job is in Running state.
296	ScheduleState ModelDeploymentMonitoringJob_MonitoringScheduleState `protobuf:"varint,5,opt,name=schedule_state,json=scheduleState,proto3,enum=google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob_MonitoringScheduleState" json:"schedule_state,omitempty"`
297	// Required. The config for monitoring objectives. This is a per DeployedModel config.
298	// Each DeployedModel needs to be configured separately.
299	ModelDeploymentMonitoringObjectiveConfigs []*ModelDeploymentMonitoringObjectiveConfig `protobuf:"bytes,6,rep,name=model_deployment_monitoring_objective_configs,json=modelDeploymentMonitoringObjectiveConfigs,proto3" json:"model_deployment_monitoring_objective_configs,omitempty"`
300	// Required. Schedule config for running the monitoring job.
301	ModelDeploymentMonitoringScheduleConfig *ModelDeploymentMonitoringScheduleConfig `protobuf:"bytes,7,opt,name=model_deployment_monitoring_schedule_config,json=modelDeploymentMonitoringScheduleConfig,proto3" json:"model_deployment_monitoring_schedule_config,omitempty"`
302	// Required. Sample Strategy for logging.
303	LoggingSamplingStrategy *SamplingStrategy `protobuf:"bytes,8,opt,name=logging_sampling_strategy,json=loggingSamplingStrategy,proto3" json:"logging_sampling_strategy,omitempty"`
304	// Alert config for model monitoring.
305	ModelMonitoringAlertConfig *ModelMonitoringAlertConfig `protobuf:"bytes,15,opt,name=model_monitoring_alert_config,json=modelMonitoringAlertConfig,proto3" json:"model_monitoring_alert_config,omitempty"`
306	// YAML schema file uri describing the format of a single instance,
307	// which are given to format this Endpoint's prediction (and explanation).
308	// If not set, we will generate predict schema from collected predict
309	// requests.
310	PredictInstanceSchemaUri string `protobuf:"bytes,9,opt,name=predict_instance_schema_uri,json=predictInstanceSchemaUri,proto3" json:"predict_instance_schema_uri,omitempty"`
311	// Sample Predict instance, same format as [PredictRequest.instances][google.cloud.aiplatform.v1.PredictRequest.instances],
312	// this can be set as a replacement of
313	// [ModelDeploymentMonitoringJob.predict_instance_schema_uri][google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.predict_instance_schema_uri]. If not set,
314	// we will generate predict schema from collected predict requests.
315	SamplePredictInstance *structpb.Value `protobuf:"bytes,19,opt,name=sample_predict_instance,json=samplePredictInstance,proto3" json:"sample_predict_instance,omitempty"`
316	// YAML schema file uri describing the format of a single instance that you
317	// want Tensorflow Data Validation (TFDV) to analyze.
318	//
319	// If this field is empty, all the feature data types are inferred from
320	// [predict_instance_schema_uri][google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.predict_instance_schema_uri],
321	// meaning that TFDV will use the data in the exact format(data type) as
322	// prediction request/response.
323	// If there are any data type differences between predict instance and TFDV
324	// instance, this field can be used to override the schema.
325	// For models trained with Vertex AI, this field must be set as all the
326	// fields in predict instance formatted as string.
327	AnalysisInstanceSchemaUri string `protobuf:"bytes,16,opt,name=analysis_instance_schema_uri,json=analysisInstanceSchemaUri,proto3" json:"analysis_instance_schema_uri,omitempty"`
328	// Output only. The created bigquery tables for the job under customer project. Customer
329	// could do their own query & analysis. There could be 4 log tables in
330	// maximum:
331	// 1. Training data logging predict request/response
332	// 2. Serving data logging predict request/response
333	BigqueryTables []*ModelDeploymentMonitoringBigQueryTable `protobuf:"bytes,10,rep,name=bigquery_tables,json=bigqueryTables,proto3" json:"bigquery_tables,omitempty"`
334	// The TTL of BigQuery tables in user projects which stores logs.
335	// A day is the basic unit of the TTL and we take the ceil of TTL/86400(a
336	// day). e.g. { second: 3600} indicates ttl = 1 day.
337	LogTtl *durationpb.Duration `protobuf:"bytes,17,opt,name=log_ttl,json=logTtl,proto3" json:"log_ttl,omitempty"`
338	// The labels with user-defined metadata to organize your
339	// ModelDeploymentMonitoringJob.
340	//
341	// Label keys and values can be no longer than 64 characters
342	// (Unicode codepoints), can only contain lowercase letters, numeric
343	// characters, underscores and dashes. International characters are allowed.
344	//
345	// See https://goo.gl/xmQnxf for more information and examples of labels.
346	Labels map[string]string `protobuf:"bytes,11,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
347	// Output only. Timestamp when this ModelDeploymentMonitoringJob was created.
348	CreateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
349	// Output only. Timestamp when this ModelDeploymentMonitoringJob was updated most recently.
350	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
351	// Output only. Timestamp when this monitoring pipeline will be scheduled to run for the
352	// next round.
353	NextScheduleTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=next_schedule_time,json=nextScheduleTime,proto3" json:"next_schedule_time,omitempty"`
354	// Stats anomalies base folder path.
355	StatsAnomaliesBaseDirectory *GcsDestination `protobuf:"bytes,20,opt,name=stats_anomalies_base_directory,json=statsAnomaliesBaseDirectory,proto3" json:"stats_anomalies_base_directory,omitempty"`
356	// Customer-managed encryption key spec for a ModelDeploymentMonitoringJob. If
357	// set, this ModelDeploymentMonitoringJob and all sub-resources of this
358	// ModelDeploymentMonitoringJob will be secured by this key.
359	EncryptionSpec *EncryptionSpec `protobuf:"bytes,21,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"`
360	// If true, the scheduled monitoring pipeline status logs are sent to
361	// Google Cloud Logging. Please note the logs incur cost, which are subject to
362	// [Cloud Logging pricing](https://cloud.google.com/logging#pricing).
363	EnableMonitoringPipelineLogs bool `protobuf:"varint,22,opt,name=enable_monitoring_pipeline_logs,json=enableMonitoringPipelineLogs,proto3" json:"enable_monitoring_pipeline_logs,omitempty"`
364	// Output only. Only populated when the job's state is `JOB_STATE_FAILED` or
365	// `JOB_STATE_CANCELLED`.
366	Error *status.Status `protobuf:"bytes,23,opt,name=error,proto3" json:"error,omitempty"`
367}
368
369func (x *ModelDeploymentMonitoringJob) Reset() {
370	*x = ModelDeploymentMonitoringJob{}
371	if protoimpl.UnsafeEnabled {
372		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[0]
373		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
374		ms.StoreMessageInfo(mi)
375	}
376}
377
378func (x *ModelDeploymentMonitoringJob) String() string {
379	return protoimpl.X.MessageStringOf(x)
380}
381
382func (*ModelDeploymentMonitoringJob) ProtoMessage() {}
383
384func (x *ModelDeploymentMonitoringJob) ProtoReflect() protoreflect.Message {
385	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[0]
386	if protoimpl.UnsafeEnabled && x != nil {
387		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
388		if ms.LoadMessageInfo() == nil {
389			ms.StoreMessageInfo(mi)
390		}
391		return ms
392	}
393	return mi.MessageOf(x)
394}
395
396// Deprecated: Use ModelDeploymentMonitoringJob.ProtoReflect.Descriptor instead.
397func (*ModelDeploymentMonitoringJob) Descriptor() ([]byte, []int) {
398	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0}
399}
400
401func (x *ModelDeploymentMonitoringJob) GetName() string {
402	if x != nil {
403		return x.Name
404	}
405	return ""
406}
407
408func (x *ModelDeploymentMonitoringJob) GetDisplayName() string {
409	if x != nil {
410		return x.DisplayName
411	}
412	return ""
413}
414
415func (x *ModelDeploymentMonitoringJob) GetEndpoint() string {
416	if x != nil {
417		return x.Endpoint
418	}
419	return ""
420}
421
422func (x *ModelDeploymentMonitoringJob) GetState() JobState {
423	if x != nil {
424		return x.State
425	}
426	return JobState_JOB_STATE_UNSPECIFIED
427}
428
429func (x *ModelDeploymentMonitoringJob) GetScheduleState() ModelDeploymentMonitoringJob_MonitoringScheduleState {
430	if x != nil {
431		return x.ScheduleState
432	}
433	return ModelDeploymentMonitoringJob_MONITORING_SCHEDULE_STATE_UNSPECIFIED
434}
435
436func (x *ModelDeploymentMonitoringJob) GetModelDeploymentMonitoringObjectiveConfigs() []*ModelDeploymentMonitoringObjectiveConfig {
437	if x != nil {
438		return x.ModelDeploymentMonitoringObjectiveConfigs
439	}
440	return nil
441}
442
443func (x *ModelDeploymentMonitoringJob) GetModelDeploymentMonitoringScheduleConfig() *ModelDeploymentMonitoringScheduleConfig {
444	if x != nil {
445		return x.ModelDeploymentMonitoringScheduleConfig
446	}
447	return nil
448}
449
450func (x *ModelDeploymentMonitoringJob) GetLoggingSamplingStrategy() *SamplingStrategy {
451	if x != nil {
452		return x.LoggingSamplingStrategy
453	}
454	return nil
455}
456
457func (x *ModelDeploymentMonitoringJob) GetModelMonitoringAlertConfig() *ModelMonitoringAlertConfig {
458	if x != nil {
459		return x.ModelMonitoringAlertConfig
460	}
461	return nil
462}
463
464func (x *ModelDeploymentMonitoringJob) GetPredictInstanceSchemaUri() string {
465	if x != nil {
466		return x.PredictInstanceSchemaUri
467	}
468	return ""
469}
470
471func (x *ModelDeploymentMonitoringJob) GetSamplePredictInstance() *structpb.Value {
472	if x != nil {
473		return x.SamplePredictInstance
474	}
475	return nil
476}
477
478func (x *ModelDeploymentMonitoringJob) GetAnalysisInstanceSchemaUri() string {
479	if x != nil {
480		return x.AnalysisInstanceSchemaUri
481	}
482	return ""
483}
484
485func (x *ModelDeploymentMonitoringJob) GetBigqueryTables() []*ModelDeploymentMonitoringBigQueryTable {
486	if x != nil {
487		return x.BigqueryTables
488	}
489	return nil
490}
491
492func (x *ModelDeploymentMonitoringJob) GetLogTtl() *durationpb.Duration {
493	if x != nil {
494		return x.LogTtl
495	}
496	return nil
497}
498
499func (x *ModelDeploymentMonitoringJob) GetLabels() map[string]string {
500	if x != nil {
501		return x.Labels
502	}
503	return nil
504}
505
506func (x *ModelDeploymentMonitoringJob) GetCreateTime() *timestamppb.Timestamp {
507	if x != nil {
508		return x.CreateTime
509	}
510	return nil
511}
512
513func (x *ModelDeploymentMonitoringJob) GetUpdateTime() *timestamppb.Timestamp {
514	if x != nil {
515		return x.UpdateTime
516	}
517	return nil
518}
519
520func (x *ModelDeploymentMonitoringJob) GetNextScheduleTime() *timestamppb.Timestamp {
521	if x != nil {
522		return x.NextScheduleTime
523	}
524	return nil
525}
526
527func (x *ModelDeploymentMonitoringJob) GetStatsAnomaliesBaseDirectory() *GcsDestination {
528	if x != nil {
529		return x.StatsAnomaliesBaseDirectory
530	}
531	return nil
532}
533
534func (x *ModelDeploymentMonitoringJob) GetEncryptionSpec() *EncryptionSpec {
535	if x != nil {
536		return x.EncryptionSpec
537	}
538	return nil
539}
540
541func (x *ModelDeploymentMonitoringJob) GetEnableMonitoringPipelineLogs() bool {
542	if x != nil {
543		return x.EnableMonitoringPipelineLogs
544	}
545	return false
546}
547
548func (x *ModelDeploymentMonitoringJob) GetError() *status.Status {
549	if x != nil {
550		return x.Error
551	}
552	return nil
553}
554
555// ModelDeploymentMonitoringBigQueryTable specifies the BigQuery table name
556// as well as some information of the logs stored in this table.
557type ModelDeploymentMonitoringBigQueryTable struct {
558	state         protoimpl.MessageState
559	sizeCache     protoimpl.SizeCache
560	unknownFields protoimpl.UnknownFields
561
562	// The source of log.
563	LogSource ModelDeploymentMonitoringBigQueryTable_LogSource `protobuf:"varint,1,opt,name=log_source,json=logSource,proto3,enum=google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable_LogSource" json:"log_source,omitempty"`
564	// The type of log.
565	LogType ModelDeploymentMonitoringBigQueryTable_LogType `protobuf:"varint,2,opt,name=log_type,json=logType,proto3,enum=google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable_LogType" json:"log_type,omitempty"`
566	// The created BigQuery table to store logs. Customer could do their own query
567	// & analysis. Format:
568	// `bq://<project_id>.model_deployment_monitoring_<endpoint_id>.<tolower(log_source)>_<tolower(log_type)>`
569	BigqueryTablePath string `protobuf:"bytes,3,opt,name=bigquery_table_path,json=bigqueryTablePath,proto3" json:"bigquery_table_path,omitempty"`
570}
571
572func (x *ModelDeploymentMonitoringBigQueryTable) Reset() {
573	*x = ModelDeploymentMonitoringBigQueryTable{}
574	if protoimpl.UnsafeEnabled {
575		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[1]
576		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
577		ms.StoreMessageInfo(mi)
578	}
579}
580
581func (x *ModelDeploymentMonitoringBigQueryTable) String() string {
582	return protoimpl.X.MessageStringOf(x)
583}
584
585func (*ModelDeploymentMonitoringBigQueryTable) ProtoMessage() {}
586
587func (x *ModelDeploymentMonitoringBigQueryTable) ProtoReflect() protoreflect.Message {
588	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[1]
589	if protoimpl.UnsafeEnabled && x != nil {
590		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
591		if ms.LoadMessageInfo() == nil {
592			ms.StoreMessageInfo(mi)
593		}
594		return ms
595	}
596	return mi.MessageOf(x)
597}
598
599// Deprecated: Use ModelDeploymentMonitoringBigQueryTable.ProtoReflect.Descriptor instead.
600func (*ModelDeploymentMonitoringBigQueryTable) Descriptor() ([]byte, []int) {
601	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1}
602}
603
604func (x *ModelDeploymentMonitoringBigQueryTable) GetLogSource() ModelDeploymentMonitoringBigQueryTable_LogSource {
605	if x != nil {
606		return x.LogSource
607	}
608	return ModelDeploymentMonitoringBigQueryTable_LOG_SOURCE_UNSPECIFIED
609}
610
611func (x *ModelDeploymentMonitoringBigQueryTable) GetLogType() ModelDeploymentMonitoringBigQueryTable_LogType {
612	if x != nil {
613		return x.LogType
614	}
615	return ModelDeploymentMonitoringBigQueryTable_LOG_TYPE_UNSPECIFIED
616}
617
618func (x *ModelDeploymentMonitoringBigQueryTable) GetBigqueryTablePath() string {
619	if x != nil {
620		return x.BigqueryTablePath
621	}
622	return ""
623}
624
625// ModelDeploymentMonitoringObjectiveConfig contains the pair of
626// deployed_model_id to ModelMonitoringObjectiveConfig.
627type ModelDeploymentMonitoringObjectiveConfig struct {
628	state         protoimpl.MessageState
629	sizeCache     protoimpl.SizeCache
630	unknownFields protoimpl.UnknownFields
631
632	// The DeployedModel ID of the objective config.
633	DeployedModelId string `protobuf:"bytes,1,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
634	// The objective config of for the modelmonitoring job of this deployed model.
635	ObjectiveConfig *ModelMonitoringObjectiveConfig `protobuf:"bytes,2,opt,name=objective_config,json=objectiveConfig,proto3" json:"objective_config,omitempty"`
636}
637
638func (x *ModelDeploymentMonitoringObjectiveConfig) Reset() {
639	*x = ModelDeploymentMonitoringObjectiveConfig{}
640	if protoimpl.UnsafeEnabled {
641		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[2]
642		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
643		ms.StoreMessageInfo(mi)
644	}
645}
646
647func (x *ModelDeploymentMonitoringObjectiveConfig) String() string {
648	return protoimpl.X.MessageStringOf(x)
649}
650
651func (*ModelDeploymentMonitoringObjectiveConfig) ProtoMessage() {}
652
653func (x *ModelDeploymentMonitoringObjectiveConfig) ProtoReflect() protoreflect.Message {
654	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[2]
655	if protoimpl.UnsafeEnabled && x != nil {
656		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
657		if ms.LoadMessageInfo() == nil {
658			ms.StoreMessageInfo(mi)
659		}
660		return ms
661	}
662	return mi.MessageOf(x)
663}
664
665// Deprecated: Use ModelDeploymentMonitoringObjectiveConfig.ProtoReflect.Descriptor instead.
666func (*ModelDeploymentMonitoringObjectiveConfig) Descriptor() ([]byte, []int) {
667	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{2}
668}
669
670func (x *ModelDeploymentMonitoringObjectiveConfig) GetDeployedModelId() string {
671	if x != nil {
672		return x.DeployedModelId
673	}
674	return ""
675}
676
677func (x *ModelDeploymentMonitoringObjectiveConfig) GetObjectiveConfig() *ModelMonitoringObjectiveConfig {
678	if x != nil {
679		return x.ObjectiveConfig
680	}
681	return nil
682}
683
684// The config for scheduling monitoring job.
685type ModelDeploymentMonitoringScheduleConfig struct {
686	state         protoimpl.MessageState
687	sizeCache     protoimpl.SizeCache
688	unknownFields protoimpl.UnknownFields
689
690	// Required. The model monitoring job running interval. It will be rounded up to next
691	// full hour.
692	MonitorInterval *durationpb.Duration `protobuf:"bytes,1,opt,name=monitor_interval,json=monitorInterval,proto3" json:"monitor_interval,omitempty"`
693}
694
695func (x *ModelDeploymentMonitoringScheduleConfig) Reset() {
696	*x = ModelDeploymentMonitoringScheduleConfig{}
697	if protoimpl.UnsafeEnabled {
698		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[3]
699		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
700		ms.StoreMessageInfo(mi)
701	}
702}
703
704func (x *ModelDeploymentMonitoringScheduleConfig) String() string {
705	return protoimpl.X.MessageStringOf(x)
706}
707
708func (*ModelDeploymentMonitoringScheduleConfig) ProtoMessage() {}
709
710func (x *ModelDeploymentMonitoringScheduleConfig) ProtoReflect() protoreflect.Message {
711	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[3]
712	if protoimpl.UnsafeEnabled && x != nil {
713		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
714		if ms.LoadMessageInfo() == nil {
715			ms.StoreMessageInfo(mi)
716		}
717		return ms
718	}
719	return mi.MessageOf(x)
720}
721
722// Deprecated: Use ModelDeploymentMonitoringScheduleConfig.ProtoReflect.Descriptor instead.
723func (*ModelDeploymentMonitoringScheduleConfig) Descriptor() ([]byte, []int) {
724	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{3}
725}
726
727func (x *ModelDeploymentMonitoringScheduleConfig) GetMonitorInterval() *durationpb.Duration {
728	if x != nil {
729		return x.MonitorInterval
730	}
731	return nil
732}
733
734// Statistics and anomalies generated by Model Monitoring.
735type ModelMonitoringStatsAnomalies struct {
736	state         protoimpl.MessageState
737	sizeCache     protoimpl.SizeCache
738	unknownFields protoimpl.UnknownFields
739
740	// Model Monitoring Objective those stats and anomalies belonging to.
741	Objective ModelDeploymentMonitoringObjectiveType `protobuf:"varint,1,opt,name=objective,proto3,enum=google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveType" json:"objective,omitempty"`
742	// Deployed Model ID.
743	DeployedModelId string `protobuf:"bytes,2,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
744	// Number of anomalies within all stats.
745	AnomalyCount int32 `protobuf:"varint,3,opt,name=anomaly_count,json=anomalyCount,proto3" json:"anomaly_count,omitempty"`
746	// A list of historical Stats and Anomalies generated for all Features.
747	FeatureStats []*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies `protobuf:"bytes,4,rep,name=feature_stats,json=featureStats,proto3" json:"feature_stats,omitempty"`
748}
749
750func (x *ModelMonitoringStatsAnomalies) Reset() {
751	*x = ModelMonitoringStatsAnomalies{}
752	if protoimpl.UnsafeEnabled {
753		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[4]
754		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
755		ms.StoreMessageInfo(mi)
756	}
757}
758
759func (x *ModelMonitoringStatsAnomalies) String() string {
760	return protoimpl.X.MessageStringOf(x)
761}
762
763func (*ModelMonitoringStatsAnomalies) ProtoMessage() {}
764
765func (x *ModelMonitoringStatsAnomalies) ProtoReflect() protoreflect.Message {
766	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[4]
767	if protoimpl.UnsafeEnabled && x != nil {
768		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
769		if ms.LoadMessageInfo() == nil {
770			ms.StoreMessageInfo(mi)
771		}
772		return ms
773	}
774	return mi.MessageOf(x)
775}
776
777// Deprecated: Use ModelMonitoringStatsAnomalies.ProtoReflect.Descriptor instead.
778func (*ModelMonitoringStatsAnomalies) Descriptor() ([]byte, []int) {
779	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{4}
780}
781
782func (x *ModelMonitoringStatsAnomalies) GetObjective() ModelDeploymentMonitoringObjectiveType {
783	if x != nil {
784		return x.Objective
785	}
786	return ModelDeploymentMonitoringObjectiveType_MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED
787}
788
789func (x *ModelMonitoringStatsAnomalies) GetDeployedModelId() string {
790	if x != nil {
791		return x.DeployedModelId
792	}
793	return ""
794}
795
796func (x *ModelMonitoringStatsAnomalies) GetAnomalyCount() int32 {
797	if x != nil {
798		return x.AnomalyCount
799	}
800	return 0
801}
802
803func (x *ModelMonitoringStatsAnomalies) GetFeatureStats() []*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies {
804	if x != nil {
805		return x.FeatureStats
806	}
807	return nil
808}
809
810// Historical Stats (and Anomalies) for a specific Feature.
811type ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies struct {
812	state         protoimpl.MessageState
813	sizeCache     protoimpl.SizeCache
814	unknownFields protoimpl.UnknownFields
815
816	// Display Name of the Feature.
817	FeatureDisplayName string `protobuf:"bytes,1,opt,name=feature_display_name,json=featureDisplayName,proto3" json:"feature_display_name,omitempty"`
818	// Threshold for anomaly detection.
819	Threshold *ThresholdConfig `protobuf:"bytes,3,opt,name=threshold,proto3" json:"threshold,omitempty"`
820	// Stats calculated for the Training Dataset.
821	TrainingStats *FeatureStatsAnomaly `protobuf:"bytes,4,opt,name=training_stats,json=trainingStats,proto3" json:"training_stats,omitempty"`
822	// A list of historical stats generated by different time window's
823	// Prediction Dataset.
824	PredictionStats []*FeatureStatsAnomaly `protobuf:"bytes,5,rep,name=prediction_stats,json=predictionStats,proto3" json:"prediction_stats,omitempty"`
825}
826
827func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) Reset() {
828	*x = ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies{}
829	if protoimpl.UnsafeEnabled {
830		mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[6]
831		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
832		ms.StoreMessageInfo(mi)
833	}
834}
835
836func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) String() string {
837	return protoimpl.X.MessageStringOf(x)
838}
839
840func (*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) ProtoMessage() {}
841
842func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) ProtoReflect() protoreflect.Message {
843	mi := &file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[6]
844	if protoimpl.UnsafeEnabled && x != nil {
845		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
846		if ms.LoadMessageInfo() == nil {
847			ms.StoreMessageInfo(mi)
848		}
849		return ms
850	}
851	return mi.MessageOf(x)
852}
853
854// Deprecated: Use ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies.ProtoReflect.Descriptor instead.
855func (*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) Descriptor() ([]byte, []int) {
856	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{4, 0}
857}
858
859func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetFeatureDisplayName() string {
860	if x != nil {
861		return x.FeatureDisplayName
862	}
863	return ""
864}
865
866func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetThreshold() *ThresholdConfig {
867	if x != nil {
868		return x.Threshold
869	}
870	return nil
871}
872
873func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetTrainingStats() *FeatureStatsAnomaly {
874	if x != nil {
875		return x.TrainingStats
876	}
877	return nil
878}
879
880func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetPredictionStats() []*FeatureStatsAnomaly {
881	if x != nil {
882		return x.PredictionStats
883	}
884	return nil
885}
886
887var File_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto protoreflect.FileDescriptor
888
889var file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDesc = []byte{
890	0x0a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
891	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64,
892	0x65, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x6f,
893	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x2e, 0x70, 0x72, 0x6f,
894	0x74, 0x6f, 0x12, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
895	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x1a, 0x1f,
896	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
897	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
898	0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
899	0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x30, 0x67, 0x6f, 0x6f, 0x67,
900	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
901	0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,
902	0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x39, 0x67, 0x6f,
903	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61,
904	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
905	0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74,
906	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
907	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
908	0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x67, 0x6f,
909	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61,
910	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6a, 0x6f, 0x62, 0x5f, 0x73, 0x74, 0x61,
911	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
912	0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
913	0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
914	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f,
915	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72,
916	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f,
917	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72,
918	0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
919	0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73,
920	0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67,
921	0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72,
922	0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
923	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
924	0x6f, 0x22, 0xda, 0x11, 0x0a, 0x1c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f,
925	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4a,
926	0x6f, 0x62, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
927	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x64,
928	0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
929	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e,
930	0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
931	0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61,
932	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
933	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
934	0x74, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x05, 0x73,
935	0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f,
936	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
937	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x74, 0x65,
938	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x7c, 0x0a, 0x0e,
939	0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05,
940	0x20, 0x01, 0x28, 0x0e, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
941	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
942	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
943	0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x2e, 0x4d,
944	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c,
945	0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x73, 0x63, 0x68,
946	0x65, 0x64, 0x75, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0xab, 0x01, 0x0a, 0x2d, 0x6d,
947	0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
948	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63,
949	0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03,
950	0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
951	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
952	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d,
953	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69,
954	0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x29, 0x6d,
955	0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f,
956	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76,
957	0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0xa6, 0x01, 0x0a, 0x2b, 0x6d, 0x6f, 0x64,
958	0x65, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x6f,
959	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c,
960	0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43,
961	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
962	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65,
963	0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74,
964	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
965	0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x27, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x44,
966	0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
967	0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
968	0x67, 0x12, 0x6d, 0x0a, 0x19, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x61, 0x6d,
969	0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x08,
970	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
971	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
972	0x31, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65,
973	0x67, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x17, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67,
974	0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
975	0x12, 0x79, 0x0a, 0x1d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
976	0x72, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
977	0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
978	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
979	0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
980	0x72, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
981	0x1a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
982	0x41, 0x6c, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x1b, 0x70,
983	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
984	0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
985	0x52, 0x18, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
986	0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x4e, 0x0a, 0x17, 0x73, 0x61,
987	0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x73,
988	0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f,
989	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61,
990	0x6c, 0x75, 0x65, 0x52, 0x15, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69,
991	0x63, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x6e,
992	0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
993	0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09,
994	0x52, 0x19, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
995	0x63, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x70, 0x0a, 0x0f, 0x62,
996	0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x0a,
997	0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
998	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
999	0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
1000	0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x69, 0x67, 0x51, 0x75,
1001	0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x62,
1002	0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a,
1003	0x07, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x74, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
1004	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
1005	0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x54, 0x74,
1006	0x6c, 0x12, 0x5c, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28,
1007	0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
1008	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d,
1009	0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f,
1010	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x2e, 0x4c, 0x61, 0x62, 0x65,
1011	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12,
1012	0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c,
1013	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
1014	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
1015	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
1016	0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
1017	0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1018	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
1019	0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54,
1020	0x69, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x12, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65,
1021	0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32,
1022	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
1023	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
1024	0x52, 0x10, 0x6e, 0x65, 0x78, 0x74, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x69,
1025	0x6d, 0x65, 0x12, 0x6f, 0x0a, 0x1e, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x61, 0x6e, 0x6f, 0x6d,
1026	0x61, 0x6c, 0x69, 0x65, 0x73, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63,
1027	0x74, 0x6f, 0x72, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f,
1028	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
1029	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73, 0x74, 0x69,
1030	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x1b, 0x73, 0x74, 0x61, 0x74, 0x73, 0x41, 0x6e, 0x6f,
1031	0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x42, 0x61, 0x73, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
1032	0x6f, 0x72, 0x79, 0x12, 0x53, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,
1033	0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67,
1034	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
1035	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,
1036	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70,
1037	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x45, 0x0a, 0x1f, 0x65, 0x6e, 0x61, 0x62,
1038	0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x69,
1039	0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28,
1040	0x08, 0x52, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
1041	0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12,
1042	0x2d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
1043	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74,
1044	0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x39,
1045	0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
1046	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
1047	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
1048	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6b, 0x0a, 0x17, 0x4d, 0x6f, 0x6e,
1049	0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x53,
1050	0x74, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x25, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x49,
1051	0x4e, 0x47, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54,
1052	0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
1053	0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07,
1054	0x4f, 0x46, 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e,
1055	0x4e, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x3a, 0xa5, 0x01, 0xea, 0x41, 0xa1, 0x01, 0x0a, 0x36, 0x61,
1056	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1057	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65,
1058	0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
1059	0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x12, 0x67, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
1060	0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
1061	0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d,
1062	0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f,
1063	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x73, 0x2f, 0x7b, 0x6d, 0x6f,
1064	0x64, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
1065	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x7d, 0x22, 0xaf,
1066	0x03, 0x0a, 0x26, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
1067	0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x69, 0x67, 0x51,
1068	0x75, 0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x6b, 0x0a, 0x0a, 0x6c, 0x6f, 0x67,
1069	0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4c, 0x2e,
1070	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
1071	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
1072	0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
1073	0x72, 0x69, 0x6e, 0x67, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c,
1074	0x65, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x6c, 0x6f, 0x67,
1075	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x65, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x79,
1076	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1077	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
1078	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f,
1079	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x42,
1080	0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x4c, 0x6f, 0x67,
1081	0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a,
1082	0x13, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f,
1083	0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x62, 0x69, 0x67, 0x71,
1084	0x75, 0x65, 0x72, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x42, 0x0a,
1085	0x09, 0x4c, 0x6f, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x4f,
1086	0x47, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1087	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x49,
1088	0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x52, 0x56, 0x49, 0x4e, 0x47, 0x10,
1089	0x02, 0x22, 0x3d, 0x0a, 0x07, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14,
1090	0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1091	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43,
1092	0x54, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x4c, 0x41, 0x49, 0x4e, 0x10, 0x02,
1093	0x22, 0xbd, 0x01, 0x0a, 0x28, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
1094	0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62,
1095	0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2a, 0x0a,
1096	0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
1097	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
1098	0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x65, 0x0a, 0x10, 0x6f, 0x62, 0x6a,
1099	0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20,
1100	0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
1101	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
1102	0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
1103	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
1104	0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
1105	0x22, 0x74, 0x0a, 0x27, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
1106	0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68,
1107	0x65, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x10, 0x6d,
1108	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18,
1109	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
1110	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1111	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x49, 0x6e,
1112	0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x22, 0xa3, 0x05, 0x0a, 0x1d, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
1113	0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x41,
1114	0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x60, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65,
1115	0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x67, 0x6f,
1116	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
1117	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65,
1118	0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
1119	0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52,
1120	0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65,
1121	0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
1122	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d,
1123	0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x6f, 0x6d, 0x61, 0x6c,
1124	0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x61,
1125	0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x0d, 0x66,
1126	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03,
1127	0x28, 0x0b, 0x32, 0x57, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
1128	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
1129	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53,
1130	0x74, 0x61, 0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x65,
1131	0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61,
1132	0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x66, 0x65, 0x61,
1133	0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xd0, 0x02, 0x0a, 0x1d, 0x46, 0x65,
1134	0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61,
1135	0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x66,
1136	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e,
1137	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x66, 0x65, 0x61, 0x74, 0x75,
1138	0x72, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a,
1139	0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
1140	0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
1141	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x68,
1142	0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x74,
1143	0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x56, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x69,
1144	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
1145	0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
1146	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65,
1147	0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c,
1148	0x79, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73,
1149	0x12, 0x5a, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
1150	0x74, 0x61, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f,
1151	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
1152	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53,
1153	0x74, 0x61, 0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x79, 0x52, 0x0f, 0x70, 0x72, 0x65,
1154	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2a, 0xce, 0x01, 0x0a,
1155	0x26, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
1156	0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
1157	0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x36, 0x4d, 0x4f, 0x44, 0x45, 0x4c,
1158	0x5f, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x4f, 0x4e, 0x49,
1159	0x54, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x49, 0x56, 0x45,
1160	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
1161	0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x41, 0x57, 0x5f, 0x46, 0x45, 0x41, 0x54, 0x55,
1162	0x52, 0x45, 0x5f, 0x53, 0x4b, 0x45, 0x57, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x41, 0x57,
1163	0x5f, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x44, 0x52, 0x49, 0x46, 0x54, 0x10, 0x02,
1164	0x12, 0x1c, 0x0a, 0x18, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x52,
1165	0x49, 0x42, 0x55, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4b, 0x45, 0x57, 0x10, 0x03, 0x12, 0x1d,
1166	0x0a, 0x19, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42,
1167	0x55, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x52, 0x49, 0x46, 0x54, 0x10, 0x04, 0x42, 0xe5, 0x01,
1168	0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
1169	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
1170	0x42, 0x21, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
1171	0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x50, 0x72,
1172	0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x44, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f,
1173	0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74,
1174	0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f,
1175	0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31,
1176	0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0xaa, 0x02, 0x1a, 0x47, 0x6f,
1177	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61,
1178	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
1179	0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f,
1180	0x72, 0x6d, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a,
1181	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
1182	0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1183}
1184
1185var (
1186	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescOnce sync.Once
1187	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescData = file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDesc
1188)
1189
1190func file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescGZIP() []byte {
1191	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescOnce.Do(func() {
1192		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescData)
1193	})
1194	return file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDescData
1195}
1196
1197var file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
1198var file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
1199var file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_goTypes = []interface{}{
1200	(ModelDeploymentMonitoringObjectiveType)(0),                         // 0: google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveType
1201	(ModelDeploymentMonitoringJob_MonitoringScheduleState)(0),           // 1: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.MonitoringScheduleState
1202	(ModelDeploymentMonitoringBigQueryTable_LogSource)(0),               // 2: google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.LogSource
1203	(ModelDeploymentMonitoringBigQueryTable_LogType)(0),                 // 3: google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.LogType
1204	(*ModelDeploymentMonitoringJob)(nil),                                // 4: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob
1205	(*ModelDeploymentMonitoringBigQueryTable)(nil),                      // 5: google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable
1206	(*ModelDeploymentMonitoringObjectiveConfig)(nil),                    // 6: google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveConfig
1207	(*ModelDeploymentMonitoringScheduleConfig)(nil),                     // 7: google.cloud.aiplatform.v1.ModelDeploymentMonitoringScheduleConfig
1208	(*ModelMonitoringStatsAnomalies)(nil),                               // 8: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies
1209	nil,                                                                 // 9: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.LabelsEntry
1210	(*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies)(nil), // 10: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies
1211	(JobState)(0),                          // 11: google.cloud.aiplatform.v1.JobState
1212	(*SamplingStrategy)(nil),               // 12: google.cloud.aiplatform.v1.SamplingStrategy
1213	(*ModelMonitoringAlertConfig)(nil),     // 13: google.cloud.aiplatform.v1.ModelMonitoringAlertConfig
1214	(*structpb.Value)(nil),                 // 14: google.protobuf.Value
1215	(*durationpb.Duration)(nil),            // 15: google.protobuf.Duration
1216	(*timestamppb.Timestamp)(nil),          // 16: google.protobuf.Timestamp
1217	(*GcsDestination)(nil),                 // 17: google.cloud.aiplatform.v1.GcsDestination
1218	(*EncryptionSpec)(nil),                 // 18: google.cloud.aiplatform.v1.EncryptionSpec
1219	(*status.Status)(nil),                  // 19: google.rpc.Status
1220	(*ModelMonitoringObjectiveConfig)(nil), // 20: google.cloud.aiplatform.v1.ModelMonitoringObjectiveConfig
1221	(*ThresholdConfig)(nil),                // 21: google.cloud.aiplatform.v1.ThresholdConfig
1222	(*FeatureStatsAnomaly)(nil),            // 22: google.cloud.aiplatform.v1.FeatureStatsAnomaly
1223}
1224var file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_depIdxs = []int32{
1225	11, // 0: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.state:type_name -> google.cloud.aiplatform.v1.JobState
1226	1,  // 1: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.schedule_state:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.MonitoringScheduleState
1227	6,  // 2: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.model_deployment_monitoring_objective_configs:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveConfig
1228	7,  // 3: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.model_deployment_monitoring_schedule_config:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringScheduleConfig
1229	12, // 4: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.logging_sampling_strategy:type_name -> google.cloud.aiplatform.v1.SamplingStrategy
1230	13, // 5: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.model_monitoring_alert_config:type_name -> google.cloud.aiplatform.v1.ModelMonitoringAlertConfig
1231	14, // 6: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.sample_predict_instance:type_name -> google.protobuf.Value
1232	5,  // 7: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.bigquery_tables:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable
1233	15, // 8: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.log_ttl:type_name -> google.protobuf.Duration
1234	9,  // 9: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.labels:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.LabelsEntry
1235	16, // 10: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.create_time:type_name -> google.protobuf.Timestamp
1236	16, // 11: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.update_time:type_name -> google.protobuf.Timestamp
1237	16, // 12: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.next_schedule_time:type_name -> google.protobuf.Timestamp
1238	17, // 13: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.stats_anomalies_base_directory:type_name -> google.cloud.aiplatform.v1.GcsDestination
1239	18, // 14: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.encryption_spec:type_name -> google.cloud.aiplatform.v1.EncryptionSpec
1240	19, // 15: google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.error:type_name -> google.rpc.Status
1241	2,  // 16: google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.log_source:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.LogSource
1242	3,  // 17: google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.log_type:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringBigQueryTable.LogType
1243	20, // 18: google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveConfig.objective_config:type_name -> google.cloud.aiplatform.v1.ModelMonitoringObjectiveConfig
1244	15, // 19: google.cloud.aiplatform.v1.ModelDeploymentMonitoringScheduleConfig.monitor_interval:type_name -> google.protobuf.Duration
1245	0,  // 20: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.objective:type_name -> google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveType
1246	10, // 21: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.feature_stats:type_name -> google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies
1247	21, // 22: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.threshold:type_name -> google.cloud.aiplatform.v1.ThresholdConfig
1248	22, // 23: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.training_stats:type_name -> google.cloud.aiplatform.v1.FeatureStatsAnomaly
1249	22, // 24: google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.prediction_stats:type_name -> google.cloud.aiplatform.v1.FeatureStatsAnomaly
1250	25, // [25:25] is the sub-list for method output_type
1251	25, // [25:25] is the sub-list for method input_type
1252	25, // [25:25] is the sub-list for extension type_name
1253	25, // [25:25] is the sub-list for extension extendee
1254	0,  // [0:25] is the sub-list for field type_name
1255}
1256
1257func init() { file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_init() }
1258func file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_init() {
1259	if File_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto != nil {
1260		return
1261	}
1262	file_google_cloud_aiplatform_v1_encryption_spec_proto_init()
1263	file_google_cloud_aiplatform_v1_feature_monitoring_stats_proto_init()
1264	file_google_cloud_aiplatform_v1_io_proto_init()
1265	file_google_cloud_aiplatform_v1_job_state_proto_init()
1266	file_google_cloud_aiplatform_v1_model_monitoring_proto_init()
1267	if !protoimpl.UnsafeEnabled {
1268		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1269			switch v := v.(*ModelDeploymentMonitoringJob); i {
1270			case 0:
1271				return &v.state
1272			case 1:
1273				return &v.sizeCache
1274			case 2:
1275				return &v.unknownFields
1276			default:
1277				return nil
1278			}
1279		}
1280		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1281			switch v := v.(*ModelDeploymentMonitoringBigQueryTable); i {
1282			case 0:
1283				return &v.state
1284			case 1:
1285				return &v.sizeCache
1286			case 2:
1287				return &v.unknownFields
1288			default:
1289				return nil
1290			}
1291		}
1292		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1293			switch v := v.(*ModelDeploymentMonitoringObjectiveConfig); i {
1294			case 0:
1295				return &v.state
1296			case 1:
1297				return &v.sizeCache
1298			case 2:
1299				return &v.unknownFields
1300			default:
1301				return nil
1302			}
1303		}
1304		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1305			switch v := v.(*ModelDeploymentMonitoringScheduleConfig); i {
1306			case 0:
1307				return &v.state
1308			case 1:
1309				return &v.sizeCache
1310			case 2:
1311				return &v.unknownFields
1312			default:
1313				return nil
1314			}
1315		}
1316		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1317			switch v := v.(*ModelMonitoringStatsAnomalies); i {
1318			case 0:
1319				return &v.state
1320			case 1:
1321				return &v.sizeCache
1322			case 2:
1323				return &v.unknownFields
1324			default:
1325				return nil
1326			}
1327		}
1328		file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1329			switch v := v.(*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies); i {
1330			case 0:
1331				return &v.state
1332			case 1:
1333				return &v.sizeCache
1334			case 2:
1335				return &v.unknownFields
1336			default:
1337				return nil
1338			}
1339		}
1340	}
1341	type x struct{}
1342	out := protoimpl.TypeBuilder{
1343		File: protoimpl.DescBuilder{
1344			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1345			RawDescriptor: file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDesc,
1346			NumEnums:      4,
1347			NumMessages:   7,
1348			NumExtensions: 0,
1349			NumServices:   0,
1350		},
1351		GoTypes:           file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_goTypes,
1352		DependencyIndexes: file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_depIdxs,
1353		EnumInfos:         file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_enumTypes,
1354		MessageInfos:      file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_msgTypes,
1355	}.Build()
1356	File_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto = out.File
1357	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_rawDesc = nil
1358	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_goTypes = nil
1359	file_google_cloud_aiplatform_v1_model_deployment_monitoring_job_proto_depIdxs = nil
1360}
1361