1// Copyright 2020 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.25.0
18// 	protoc        v3.13.0
19// source: google/cloud/aiplatform/v1beta1/study.proto
20
21package aiplatform
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	_ "google.golang.org/genproto/googleapis/api/annotations"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31	_ "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// This is a compile-time assertion that a sufficiently up-to-date version
44// of the legacy proto package is being used.
45const _ = proto.ProtoPackageIsVersion4
46
47// Describes a Trial state.
48type Trial_State int32
49
50const (
51	// The Trial state is unspecified.
52	Trial_STATE_UNSPECIFIED Trial_State = 0
53	// Indicates that a specific Trial has been requested, but it has not yet
54	// been suggested by the service.
55	Trial_REQUESTED Trial_State = 1
56	// Indicates that the Trial has been suggested.
57	Trial_ACTIVE Trial_State = 2
58	// Indicates that the Trial should stop according to the service.
59	Trial_STOPPING Trial_State = 3
60	// Indicates that the Trial is completed successfully.
61	Trial_SUCCEEDED Trial_State = 4
62	// Indicates that the Trial should not be attempted again.
63	// The service will set a Trial to INFEASIBLE when it's done but missing
64	// the final_measurement.
65	Trial_INFEASIBLE Trial_State = 5
66)
67
68// Enum value maps for Trial_State.
69var (
70	Trial_State_name = map[int32]string{
71		0: "STATE_UNSPECIFIED",
72		1: "REQUESTED",
73		2: "ACTIVE",
74		3: "STOPPING",
75		4: "SUCCEEDED",
76		5: "INFEASIBLE",
77	}
78	Trial_State_value = map[string]int32{
79		"STATE_UNSPECIFIED": 0,
80		"REQUESTED":         1,
81		"ACTIVE":            2,
82		"STOPPING":          3,
83		"SUCCEEDED":         4,
84		"INFEASIBLE":        5,
85	}
86)
87
88func (x Trial_State) Enum() *Trial_State {
89	p := new(Trial_State)
90	*p = x
91	return p
92}
93
94func (x Trial_State) String() string {
95	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
96}
97
98func (Trial_State) Descriptor() protoreflect.EnumDescriptor {
99	return file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[0].Descriptor()
100}
101
102func (Trial_State) Type() protoreflect.EnumType {
103	return &file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[0]
104}
105
106func (x Trial_State) Number() protoreflect.EnumNumber {
107	return protoreflect.EnumNumber(x)
108}
109
110// Deprecated: Use Trial_State.Descriptor instead.
111func (Trial_State) EnumDescriptor() ([]byte, []int) {
112	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{0, 0}
113}
114
115// The available search algorithms for the Study.
116type StudySpec_Algorithm int32
117
118const (
119	// The default algorithm used by AI Platform Optimization service.
120	StudySpec_ALGORITHM_UNSPECIFIED StudySpec_Algorithm = 0
121	// Simple grid search within the feasible space. To use grid search,
122	// all parameters must be `INTEGER`, `CATEGORICAL`, or `DISCRETE`.
123	StudySpec_GRID_SEARCH StudySpec_Algorithm = 2
124	// Simple random search within the feasible space.
125	StudySpec_RANDOM_SEARCH StudySpec_Algorithm = 3
126)
127
128// Enum value maps for StudySpec_Algorithm.
129var (
130	StudySpec_Algorithm_name = map[int32]string{
131		0: "ALGORITHM_UNSPECIFIED",
132		2: "GRID_SEARCH",
133		3: "RANDOM_SEARCH",
134	}
135	StudySpec_Algorithm_value = map[string]int32{
136		"ALGORITHM_UNSPECIFIED": 0,
137		"GRID_SEARCH":           2,
138		"RANDOM_SEARCH":         3,
139	}
140)
141
142func (x StudySpec_Algorithm) Enum() *StudySpec_Algorithm {
143	p := new(StudySpec_Algorithm)
144	*p = x
145	return p
146}
147
148func (x StudySpec_Algorithm) String() string {
149	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
150}
151
152func (StudySpec_Algorithm) Descriptor() protoreflect.EnumDescriptor {
153	return file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[1].Descriptor()
154}
155
156func (StudySpec_Algorithm) Type() protoreflect.EnumType {
157	return &file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[1]
158}
159
160func (x StudySpec_Algorithm) Number() protoreflect.EnumNumber {
161	return protoreflect.EnumNumber(x)
162}
163
164// Deprecated: Use StudySpec_Algorithm.Descriptor instead.
165func (StudySpec_Algorithm) EnumDescriptor() ([]byte, []int) {
166	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 0}
167}
168
169// The available types of optimization goals.
170type StudySpec_MetricSpec_GoalType int32
171
172const (
173	// Goal Type will default to maximize.
174	StudySpec_MetricSpec_GOAL_TYPE_UNSPECIFIED StudySpec_MetricSpec_GoalType = 0
175	// Maximize the goal metric.
176	StudySpec_MetricSpec_MAXIMIZE StudySpec_MetricSpec_GoalType = 1
177	// Minimize the goal metric.
178	StudySpec_MetricSpec_MINIMIZE StudySpec_MetricSpec_GoalType = 2
179)
180
181// Enum value maps for StudySpec_MetricSpec_GoalType.
182var (
183	StudySpec_MetricSpec_GoalType_name = map[int32]string{
184		0: "GOAL_TYPE_UNSPECIFIED",
185		1: "MAXIMIZE",
186		2: "MINIMIZE",
187	}
188	StudySpec_MetricSpec_GoalType_value = map[string]int32{
189		"GOAL_TYPE_UNSPECIFIED": 0,
190		"MAXIMIZE":              1,
191		"MINIMIZE":              2,
192	}
193)
194
195func (x StudySpec_MetricSpec_GoalType) Enum() *StudySpec_MetricSpec_GoalType {
196	p := new(StudySpec_MetricSpec_GoalType)
197	*p = x
198	return p
199}
200
201func (x StudySpec_MetricSpec_GoalType) String() string {
202	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
203}
204
205func (StudySpec_MetricSpec_GoalType) Descriptor() protoreflect.EnumDescriptor {
206	return file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[2].Descriptor()
207}
208
209func (StudySpec_MetricSpec_GoalType) Type() protoreflect.EnumType {
210	return &file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[2]
211}
212
213func (x StudySpec_MetricSpec_GoalType) Number() protoreflect.EnumNumber {
214	return protoreflect.EnumNumber(x)
215}
216
217// Deprecated: Use StudySpec_MetricSpec_GoalType.Descriptor instead.
218func (StudySpec_MetricSpec_GoalType) EnumDescriptor() ([]byte, []int) {
219	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 0, 0}
220}
221
222// The type of scaling that should be applied to this parameter.
223type StudySpec_ParameterSpec_ScaleType int32
224
225const (
226	// By default, no scaling is applied.
227	StudySpec_ParameterSpec_SCALE_TYPE_UNSPECIFIED StudySpec_ParameterSpec_ScaleType = 0
228	// Scales the feasible space to (0, 1) linearly.
229	StudySpec_ParameterSpec_UNIT_LINEAR_SCALE StudySpec_ParameterSpec_ScaleType = 1
230	// Scales the feasible space logarithmically to (0, 1). The entire
231	// feasible space must be strictly positive.
232	StudySpec_ParameterSpec_UNIT_LOG_SCALE StudySpec_ParameterSpec_ScaleType = 2
233	// Scales the feasible space "reverse" logarithmically to (0, 1). The
234	// result is that values close to the top of the feasible space are spread
235	// out more than points near the bottom. The entire feasible space must be
236	// strictly positive.
237	StudySpec_ParameterSpec_UNIT_REVERSE_LOG_SCALE StudySpec_ParameterSpec_ScaleType = 3
238)
239
240// Enum value maps for StudySpec_ParameterSpec_ScaleType.
241var (
242	StudySpec_ParameterSpec_ScaleType_name = map[int32]string{
243		0: "SCALE_TYPE_UNSPECIFIED",
244		1: "UNIT_LINEAR_SCALE",
245		2: "UNIT_LOG_SCALE",
246		3: "UNIT_REVERSE_LOG_SCALE",
247	}
248	StudySpec_ParameterSpec_ScaleType_value = map[string]int32{
249		"SCALE_TYPE_UNSPECIFIED": 0,
250		"UNIT_LINEAR_SCALE":      1,
251		"UNIT_LOG_SCALE":         2,
252		"UNIT_REVERSE_LOG_SCALE": 3,
253	}
254)
255
256func (x StudySpec_ParameterSpec_ScaleType) Enum() *StudySpec_ParameterSpec_ScaleType {
257	p := new(StudySpec_ParameterSpec_ScaleType)
258	*p = x
259	return p
260}
261
262func (x StudySpec_ParameterSpec_ScaleType) String() string {
263	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
264}
265
266func (StudySpec_ParameterSpec_ScaleType) Descriptor() protoreflect.EnumDescriptor {
267	return file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[3].Descriptor()
268}
269
270func (StudySpec_ParameterSpec_ScaleType) Type() protoreflect.EnumType {
271	return &file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes[3]
272}
273
274func (x StudySpec_ParameterSpec_ScaleType) Number() protoreflect.EnumNumber {
275	return protoreflect.EnumNumber(x)
276}
277
278// Deprecated: Use StudySpec_ParameterSpec_ScaleType.Descriptor instead.
279func (StudySpec_ParameterSpec_ScaleType) EnumDescriptor() ([]byte, []int) {
280	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 0}
281}
282
283// A message representing a Trial. A Trial contains a unique set of Parameters
284// that has been or will be evaluated, along with the objective metrics got by
285// running the Trial.
286type Trial struct {
287	state         protoimpl.MessageState
288	sizeCache     protoimpl.SizeCache
289	unknownFields protoimpl.UnknownFields
290
291	// Output only. The identifier of the Trial assigned by the service.
292	Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
293	// Output only. The detailed state of the Trial.
294	State Trial_State `protobuf:"varint,3,opt,name=state,proto3,enum=google.cloud.aiplatform.v1beta1.Trial_State" json:"state,omitempty"`
295	// Output only. The parameters of the Trial.
296	Parameters []*Trial_Parameter `protobuf:"bytes,4,rep,name=parameters,proto3" json:"parameters,omitempty"`
297	// Output only. The final measurement containing the objective value.
298	FinalMeasurement *Measurement `protobuf:"bytes,5,opt,name=final_measurement,json=finalMeasurement,proto3" json:"final_measurement,omitempty"`
299	// Output only. Time when the Trial was started.
300	StartTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
301	// Output only. Time when the Trial's status changed to `SUCCEEDED` or `INFEASIBLE`.
302	EndTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
303	// Output only. The CustomJob name linked to the Trial.
304	// It's set for a HyperparameterTuningJob's Trial.
305	CustomJob string `protobuf:"bytes,11,opt,name=custom_job,json=customJob,proto3" json:"custom_job,omitempty"`
306}
307
308func (x *Trial) Reset() {
309	*x = Trial{}
310	if protoimpl.UnsafeEnabled {
311		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[0]
312		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
313		ms.StoreMessageInfo(mi)
314	}
315}
316
317func (x *Trial) String() string {
318	return protoimpl.X.MessageStringOf(x)
319}
320
321func (*Trial) ProtoMessage() {}
322
323func (x *Trial) ProtoReflect() protoreflect.Message {
324	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[0]
325	if protoimpl.UnsafeEnabled && x != nil {
326		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
327		if ms.LoadMessageInfo() == nil {
328			ms.StoreMessageInfo(mi)
329		}
330		return ms
331	}
332	return mi.MessageOf(x)
333}
334
335// Deprecated: Use Trial.ProtoReflect.Descriptor instead.
336func (*Trial) Descriptor() ([]byte, []int) {
337	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{0}
338}
339
340func (x *Trial) GetId() string {
341	if x != nil {
342		return x.Id
343	}
344	return ""
345}
346
347func (x *Trial) GetState() Trial_State {
348	if x != nil {
349		return x.State
350	}
351	return Trial_STATE_UNSPECIFIED
352}
353
354func (x *Trial) GetParameters() []*Trial_Parameter {
355	if x != nil {
356		return x.Parameters
357	}
358	return nil
359}
360
361func (x *Trial) GetFinalMeasurement() *Measurement {
362	if x != nil {
363		return x.FinalMeasurement
364	}
365	return nil
366}
367
368func (x *Trial) GetStartTime() *timestamppb.Timestamp {
369	if x != nil {
370		return x.StartTime
371	}
372	return nil
373}
374
375func (x *Trial) GetEndTime() *timestamppb.Timestamp {
376	if x != nil {
377		return x.EndTime
378	}
379	return nil
380}
381
382func (x *Trial) GetCustomJob() string {
383	if x != nil {
384		return x.CustomJob
385	}
386	return ""
387}
388
389// Represents specification of a Study.
390type StudySpec struct {
391	state         protoimpl.MessageState
392	sizeCache     protoimpl.SizeCache
393	unknownFields protoimpl.UnknownFields
394
395	// Required. Metric specs for the Study.
396	Metrics []*StudySpec_MetricSpec `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"`
397	// Required. The set of parameters to tune.
398	Parameters []*StudySpec_ParameterSpec `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty"`
399	// The search algorithm specified for the Study.
400	Algorithm StudySpec_Algorithm `protobuf:"varint,3,opt,name=algorithm,proto3,enum=google.cloud.aiplatform.v1beta1.StudySpec_Algorithm" json:"algorithm,omitempty"`
401}
402
403func (x *StudySpec) Reset() {
404	*x = StudySpec{}
405	if protoimpl.UnsafeEnabled {
406		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[1]
407		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
408		ms.StoreMessageInfo(mi)
409	}
410}
411
412func (x *StudySpec) String() string {
413	return protoimpl.X.MessageStringOf(x)
414}
415
416func (*StudySpec) ProtoMessage() {}
417
418func (x *StudySpec) ProtoReflect() protoreflect.Message {
419	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[1]
420	if protoimpl.UnsafeEnabled && x != nil {
421		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
422		if ms.LoadMessageInfo() == nil {
423			ms.StoreMessageInfo(mi)
424		}
425		return ms
426	}
427	return mi.MessageOf(x)
428}
429
430// Deprecated: Use StudySpec.ProtoReflect.Descriptor instead.
431func (*StudySpec) Descriptor() ([]byte, []int) {
432	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1}
433}
434
435func (x *StudySpec) GetMetrics() []*StudySpec_MetricSpec {
436	if x != nil {
437		return x.Metrics
438	}
439	return nil
440}
441
442func (x *StudySpec) GetParameters() []*StudySpec_ParameterSpec {
443	if x != nil {
444		return x.Parameters
445	}
446	return nil
447}
448
449func (x *StudySpec) GetAlgorithm() StudySpec_Algorithm {
450	if x != nil {
451		return x.Algorithm
452	}
453	return StudySpec_ALGORITHM_UNSPECIFIED
454}
455
456// A message representing a Measurement of a Trial. A Measurement contains
457// the Metrics got by executing a Trial using suggested hyperparameter
458// values.
459type Measurement struct {
460	state         protoimpl.MessageState
461	sizeCache     protoimpl.SizeCache
462	unknownFields protoimpl.UnknownFields
463
464	// Output only. The number of steps the machine learning model has been trained for.
465	// Must be non-negative.
466	StepCount int64 `protobuf:"varint,2,opt,name=step_count,json=stepCount,proto3" json:"step_count,omitempty"`
467	// Output only. A list of metrics got by evaluating the objective functions using suggested
468	// Parameter values.
469	Metrics []*Measurement_Metric `protobuf:"bytes,3,rep,name=metrics,proto3" json:"metrics,omitempty"`
470}
471
472func (x *Measurement) Reset() {
473	*x = Measurement{}
474	if protoimpl.UnsafeEnabled {
475		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[2]
476		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
477		ms.StoreMessageInfo(mi)
478	}
479}
480
481func (x *Measurement) String() string {
482	return protoimpl.X.MessageStringOf(x)
483}
484
485func (*Measurement) ProtoMessage() {}
486
487func (x *Measurement) ProtoReflect() protoreflect.Message {
488	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[2]
489	if protoimpl.UnsafeEnabled && x != nil {
490		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
491		if ms.LoadMessageInfo() == nil {
492			ms.StoreMessageInfo(mi)
493		}
494		return ms
495	}
496	return mi.MessageOf(x)
497}
498
499// Deprecated: Use Measurement.ProtoReflect.Descriptor instead.
500func (*Measurement) Descriptor() ([]byte, []int) {
501	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{2}
502}
503
504func (x *Measurement) GetStepCount() int64 {
505	if x != nil {
506		return x.StepCount
507	}
508	return 0
509}
510
511func (x *Measurement) GetMetrics() []*Measurement_Metric {
512	if x != nil {
513		return x.Metrics
514	}
515	return nil
516}
517
518// A message representing a parameter to be tuned.
519type Trial_Parameter struct {
520	state         protoimpl.MessageState
521	sizeCache     protoimpl.SizeCache
522	unknownFields protoimpl.UnknownFields
523
524	// Output only. The ID of the parameter. The parameter should be defined in
525	// [StudySpec's Parameters][google.cloud.aiplatform.v1beta1.StudySpec.parameters].
526	ParameterId string `protobuf:"bytes,1,opt,name=parameter_id,json=parameterId,proto3" json:"parameter_id,omitempty"`
527	// Output only. The value of the parameter.
528	// `number_value` will be set if a parameter defined in StudySpec is
529	// in type 'INTEGER', 'DOUBLE' or 'DISCRETE'.
530	// `string_value` will be set if a parameter defined in StudySpec is
531	// in type 'CATEGORICAL'.
532	Value *structpb.Value `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
533}
534
535func (x *Trial_Parameter) Reset() {
536	*x = Trial_Parameter{}
537	if protoimpl.UnsafeEnabled {
538		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[3]
539		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
540		ms.StoreMessageInfo(mi)
541	}
542}
543
544func (x *Trial_Parameter) String() string {
545	return protoimpl.X.MessageStringOf(x)
546}
547
548func (*Trial_Parameter) ProtoMessage() {}
549
550func (x *Trial_Parameter) ProtoReflect() protoreflect.Message {
551	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[3]
552	if protoimpl.UnsafeEnabled && x != nil {
553		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
554		if ms.LoadMessageInfo() == nil {
555			ms.StoreMessageInfo(mi)
556		}
557		return ms
558	}
559	return mi.MessageOf(x)
560}
561
562// Deprecated: Use Trial_Parameter.ProtoReflect.Descriptor instead.
563func (*Trial_Parameter) Descriptor() ([]byte, []int) {
564	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{0, 0}
565}
566
567func (x *Trial_Parameter) GetParameterId() string {
568	if x != nil {
569		return x.ParameterId
570	}
571	return ""
572}
573
574func (x *Trial_Parameter) GetValue() *structpb.Value {
575	if x != nil {
576		return x.Value
577	}
578	return nil
579}
580
581// Represents a metric to optimize.
582type StudySpec_MetricSpec struct {
583	state         protoimpl.MessageState
584	sizeCache     protoimpl.SizeCache
585	unknownFields protoimpl.UnknownFields
586
587	// Required. The ID of the metric. Must not contain whitespaces and must be unique
588	// amongst all MetricSpecs.
589	MetricId string `protobuf:"bytes,1,opt,name=metric_id,json=metricId,proto3" json:"metric_id,omitempty"`
590	// Required. The optimization goal of the metric.
591	Goal StudySpec_MetricSpec_GoalType `protobuf:"varint,2,opt,name=goal,proto3,enum=google.cloud.aiplatform.v1beta1.StudySpec_MetricSpec_GoalType" json:"goal,omitempty"`
592}
593
594func (x *StudySpec_MetricSpec) Reset() {
595	*x = StudySpec_MetricSpec{}
596	if protoimpl.UnsafeEnabled {
597		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[4]
598		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
599		ms.StoreMessageInfo(mi)
600	}
601}
602
603func (x *StudySpec_MetricSpec) String() string {
604	return protoimpl.X.MessageStringOf(x)
605}
606
607func (*StudySpec_MetricSpec) ProtoMessage() {}
608
609func (x *StudySpec_MetricSpec) ProtoReflect() protoreflect.Message {
610	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[4]
611	if protoimpl.UnsafeEnabled && x != nil {
612		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
613		if ms.LoadMessageInfo() == nil {
614			ms.StoreMessageInfo(mi)
615		}
616		return ms
617	}
618	return mi.MessageOf(x)
619}
620
621// Deprecated: Use StudySpec_MetricSpec.ProtoReflect.Descriptor instead.
622func (*StudySpec_MetricSpec) Descriptor() ([]byte, []int) {
623	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 0}
624}
625
626func (x *StudySpec_MetricSpec) GetMetricId() string {
627	if x != nil {
628		return x.MetricId
629	}
630	return ""
631}
632
633func (x *StudySpec_MetricSpec) GetGoal() StudySpec_MetricSpec_GoalType {
634	if x != nil {
635		return x.Goal
636	}
637	return StudySpec_MetricSpec_GOAL_TYPE_UNSPECIFIED
638}
639
640// Represents a single parameter to optimize.
641type StudySpec_ParameterSpec struct {
642	state         protoimpl.MessageState
643	sizeCache     protoimpl.SizeCache
644	unknownFields protoimpl.UnknownFields
645
646	// Types that are assignable to ParameterValueSpec:
647	//	*StudySpec_ParameterSpec_DoubleValueSpec_
648	//	*StudySpec_ParameterSpec_IntegerValueSpec_
649	//	*StudySpec_ParameterSpec_CategoricalValueSpec_
650	//	*StudySpec_ParameterSpec_DiscreteValueSpec_
651	ParameterValueSpec isStudySpec_ParameterSpec_ParameterValueSpec `protobuf_oneof:"parameter_value_spec"`
652	// Required. The ID of the parameter. Must not contain whitespaces and must be unique
653	// amongst all ParameterSpecs.
654	ParameterId string `protobuf:"bytes,1,opt,name=parameter_id,json=parameterId,proto3" json:"parameter_id,omitempty"`
655	// How the parameter should be scaled.
656	// Leave unset for `CATEGORICAL` parameters.
657	ScaleType StudySpec_ParameterSpec_ScaleType `protobuf:"varint,6,opt,name=scale_type,json=scaleType,proto3,enum=google.cloud.aiplatform.v1beta1.StudySpec_ParameterSpec_ScaleType" json:"scale_type,omitempty"`
658	// A conditional parameter node is active if the parameter's value matches
659	// the conditional node's parent_value_condition.
660	//
661	// If two items in conditional_parameter_specs have the same name, they
662	// must have disjoint parent_value_condition.
663	ConditionalParameterSpecs []*StudySpec_ParameterSpec_ConditionalParameterSpec `protobuf:"bytes,10,rep,name=conditional_parameter_specs,json=conditionalParameterSpecs,proto3" json:"conditional_parameter_specs,omitempty"`
664}
665
666func (x *StudySpec_ParameterSpec) Reset() {
667	*x = StudySpec_ParameterSpec{}
668	if protoimpl.UnsafeEnabled {
669		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[5]
670		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
671		ms.StoreMessageInfo(mi)
672	}
673}
674
675func (x *StudySpec_ParameterSpec) String() string {
676	return protoimpl.X.MessageStringOf(x)
677}
678
679func (*StudySpec_ParameterSpec) ProtoMessage() {}
680
681func (x *StudySpec_ParameterSpec) ProtoReflect() protoreflect.Message {
682	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[5]
683	if protoimpl.UnsafeEnabled && x != nil {
684		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
685		if ms.LoadMessageInfo() == nil {
686			ms.StoreMessageInfo(mi)
687		}
688		return ms
689	}
690	return mi.MessageOf(x)
691}
692
693// Deprecated: Use StudySpec_ParameterSpec.ProtoReflect.Descriptor instead.
694func (*StudySpec_ParameterSpec) Descriptor() ([]byte, []int) {
695	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1}
696}
697
698func (m *StudySpec_ParameterSpec) GetParameterValueSpec() isStudySpec_ParameterSpec_ParameterValueSpec {
699	if m != nil {
700		return m.ParameterValueSpec
701	}
702	return nil
703}
704
705func (x *StudySpec_ParameterSpec) GetDoubleValueSpec() *StudySpec_ParameterSpec_DoubleValueSpec {
706	if x, ok := x.GetParameterValueSpec().(*StudySpec_ParameterSpec_DoubleValueSpec_); ok {
707		return x.DoubleValueSpec
708	}
709	return nil
710}
711
712func (x *StudySpec_ParameterSpec) GetIntegerValueSpec() *StudySpec_ParameterSpec_IntegerValueSpec {
713	if x, ok := x.GetParameterValueSpec().(*StudySpec_ParameterSpec_IntegerValueSpec_); ok {
714		return x.IntegerValueSpec
715	}
716	return nil
717}
718
719func (x *StudySpec_ParameterSpec) GetCategoricalValueSpec() *StudySpec_ParameterSpec_CategoricalValueSpec {
720	if x, ok := x.GetParameterValueSpec().(*StudySpec_ParameterSpec_CategoricalValueSpec_); ok {
721		return x.CategoricalValueSpec
722	}
723	return nil
724}
725
726func (x *StudySpec_ParameterSpec) GetDiscreteValueSpec() *StudySpec_ParameterSpec_DiscreteValueSpec {
727	if x, ok := x.GetParameterValueSpec().(*StudySpec_ParameterSpec_DiscreteValueSpec_); ok {
728		return x.DiscreteValueSpec
729	}
730	return nil
731}
732
733func (x *StudySpec_ParameterSpec) GetParameterId() string {
734	if x != nil {
735		return x.ParameterId
736	}
737	return ""
738}
739
740func (x *StudySpec_ParameterSpec) GetScaleType() StudySpec_ParameterSpec_ScaleType {
741	if x != nil {
742		return x.ScaleType
743	}
744	return StudySpec_ParameterSpec_SCALE_TYPE_UNSPECIFIED
745}
746
747func (x *StudySpec_ParameterSpec) GetConditionalParameterSpecs() []*StudySpec_ParameterSpec_ConditionalParameterSpec {
748	if x != nil {
749		return x.ConditionalParameterSpecs
750	}
751	return nil
752}
753
754type isStudySpec_ParameterSpec_ParameterValueSpec interface {
755	isStudySpec_ParameterSpec_ParameterValueSpec()
756}
757
758type StudySpec_ParameterSpec_DoubleValueSpec_ struct {
759	// The value spec for a 'DOUBLE' parameter.
760	DoubleValueSpec *StudySpec_ParameterSpec_DoubleValueSpec `protobuf:"bytes,2,opt,name=double_value_spec,json=doubleValueSpec,proto3,oneof"`
761}
762
763type StudySpec_ParameterSpec_IntegerValueSpec_ struct {
764	// The value spec for an 'INTEGER' parameter.
765	IntegerValueSpec *StudySpec_ParameterSpec_IntegerValueSpec `protobuf:"bytes,3,opt,name=integer_value_spec,json=integerValueSpec,proto3,oneof"`
766}
767
768type StudySpec_ParameterSpec_CategoricalValueSpec_ struct {
769	// The value spec for a 'CATEGORICAL' parameter.
770	CategoricalValueSpec *StudySpec_ParameterSpec_CategoricalValueSpec `protobuf:"bytes,4,opt,name=categorical_value_spec,json=categoricalValueSpec,proto3,oneof"`
771}
772
773type StudySpec_ParameterSpec_DiscreteValueSpec_ struct {
774	// The value spec for a 'DISCRETE' parameter.
775	DiscreteValueSpec *StudySpec_ParameterSpec_DiscreteValueSpec `protobuf:"bytes,5,opt,name=discrete_value_spec,json=discreteValueSpec,proto3,oneof"`
776}
777
778func (*StudySpec_ParameterSpec_DoubleValueSpec_) isStudySpec_ParameterSpec_ParameterValueSpec() {}
779
780func (*StudySpec_ParameterSpec_IntegerValueSpec_) isStudySpec_ParameterSpec_ParameterValueSpec() {}
781
782func (*StudySpec_ParameterSpec_CategoricalValueSpec_) isStudySpec_ParameterSpec_ParameterValueSpec() {
783}
784
785func (*StudySpec_ParameterSpec_DiscreteValueSpec_) isStudySpec_ParameterSpec_ParameterValueSpec() {}
786
787// Value specification for a parameter in `DOUBLE` type.
788type StudySpec_ParameterSpec_DoubleValueSpec struct {
789	state         protoimpl.MessageState
790	sizeCache     protoimpl.SizeCache
791	unknownFields protoimpl.UnknownFields
792
793	// Required. Inclusive minimum value of the parameter.
794	MinValue float64 `protobuf:"fixed64,1,opt,name=min_value,json=minValue,proto3" json:"min_value,omitempty"`
795	// Required. Inclusive maximum value of the parameter.
796	MaxValue float64 `protobuf:"fixed64,2,opt,name=max_value,json=maxValue,proto3" json:"max_value,omitempty"`
797}
798
799func (x *StudySpec_ParameterSpec_DoubleValueSpec) Reset() {
800	*x = StudySpec_ParameterSpec_DoubleValueSpec{}
801	if protoimpl.UnsafeEnabled {
802		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[6]
803		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
804		ms.StoreMessageInfo(mi)
805	}
806}
807
808func (x *StudySpec_ParameterSpec_DoubleValueSpec) String() string {
809	return protoimpl.X.MessageStringOf(x)
810}
811
812func (*StudySpec_ParameterSpec_DoubleValueSpec) ProtoMessage() {}
813
814func (x *StudySpec_ParameterSpec_DoubleValueSpec) ProtoReflect() protoreflect.Message {
815	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[6]
816	if protoimpl.UnsafeEnabled && x != nil {
817		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
818		if ms.LoadMessageInfo() == nil {
819			ms.StoreMessageInfo(mi)
820		}
821		return ms
822	}
823	return mi.MessageOf(x)
824}
825
826// Deprecated: Use StudySpec_ParameterSpec_DoubleValueSpec.ProtoReflect.Descriptor instead.
827func (*StudySpec_ParameterSpec_DoubleValueSpec) Descriptor() ([]byte, []int) {
828	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 0}
829}
830
831func (x *StudySpec_ParameterSpec_DoubleValueSpec) GetMinValue() float64 {
832	if x != nil {
833		return x.MinValue
834	}
835	return 0
836}
837
838func (x *StudySpec_ParameterSpec_DoubleValueSpec) GetMaxValue() float64 {
839	if x != nil {
840		return x.MaxValue
841	}
842	return 0
843}
844
845// Value specification for a parameter in `INTEGER` type.
846type StudySpec_ParameterSpec_IntegerValueSpec struct {
847	state         protoimpl.MessageState
848	sizeCache     protoimpl.SizeCache
849	unknownFields protoimpl.UnknownFields
850
851	// Required. Inclusive minimum value of the parameter.
852	MinValue int64 `protobuf:"varint,1,opt,name=min_value,json=minValue,proto3" json:"min_value,omitempty"`
853	// Required. Inclusive maximum value of the parameter.
854	MaxValue int64 `protobuf:"varint,2,opt,name=max_value,json=maxValue,proto3" json:"max_value,omitempty"`
855}
856
857func (x *StudySpec_ParameterSpec_IntegerValueSpec) Reset() {
858	*x = StudySpec_ParameterSpec_IntegerValueSpec{}
859	if protoimpl.UnsafeEnabled {
860		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[7]
861		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
862		ms.StoreMessageInfo(mi)
863	}
864}
865
866func (x *StudySpec_ParameterSpec_IntegerValueSpec) String() string {
867	return protoimpl.X.MessageStringOf(x)
868}
869
870func (*StudySpec_ParameterSpec_IntegerValueSpec) ProtoMessage() {}
871
872func (x *StudySpec_ParameterSpec_IntegerValueSpec) ProtoReflect() protoreflect.Message {
873	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[7]
874	if protoimpl.UnsafeEnabled && x != nil {
875		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
876		if ms.LoadMessageInfo() == nil {
877			ms.StoreMessageInfo(mi)
878		}
879		return ms
880	}
881	return mi.MessageOf(x)
882}
883
884// Deprecated: Use StudySpec_ParameterSpec_IntegerValueSpec.ProtoReflect.Descriptor instead.
885func (*StudySpec_ParameterSpec_IntegerValueSpec) Descriptor() ([]byte, []int) {
886	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 1}
887}
888
889func (x *StudySpec_ParameterSpec_IntegerValueSpec) GetMinValue() int64 {
890	if x != nil {
891		return x.MinValue
892	}
893	return 0
894}
895
896func (x *StudySpec_ParameterSpec_IntegerValueSpec) GetMaxValue() int64 {
897	if x != nil {
898		return x.MaxValue
899	}
900	return 0
901}
902
903// Value specification for a parameter in `CATEGORICAL` type.
904type StudySpec_ParameterSpec_CategoricalValueSpec struct {
905	state         protoimpl.MessageState
906	sizeCache     protoimpl.SizeCache
907	unknownFields protoimpl.UnknownFields
908
909	// Required. The list of possible categories.
910	Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
911}
912
913func (x *StudySpec_ParameterSpec_CategoricalValueSpec) Reset() {
914	*x = StudySpec_ParameterSpec_CategoricalValueSpec{}
915	if protoimpl.UnsafeEnabled {
916		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[8]
917		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
918		ms.StoreMessageInfo(mi)
919	}
920}
921
922func (x *StudySpec_ParameterSpec_CategoricalValueSpec) String() string {
923	return protoimpl.X.MessageStringOf(x)
924}
925
926func (*StudySpec_ParameterSpec_CategoricalValueSpec) ProtoMessage() {}
927
928func (x *StudySpec_ParameterSpec_CategoricalValueSpec) ProtoReflect() protoreflect.Message {
929	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[8]
930	if protoimpl.UnsafeEnabled && x != nil {
931		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
932		if ms.LoadMessageInfo() == nil {
933			ms.StoreMessageInfo(mi)
934		}
935		return ms
936	}
937	return mi.MessageOf(x)
938}
939
940// Deprecated: Use StudySpec_ParameterSpec_CategoricalValueSpec.ProtoReflect.Descriptor instead.
941func (*StudySpec_ParameterSpec_CategoricalValueSpec) Descriptor() ([]byte, []int) {
942	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 2}
943}
944
945func (x *StudySpec_ParameterSpec_CategoricalValueSpec) GetValues() []string {
946	if x != nil {
947		return x.Values
948	}
949	return nil
950}
951
952// Value specification for a parameter in `DISCRETE` type.
953type StudySpec_ParameterSpec_DiscreteValueSpec struct {
954	state         protoimpl.MessageState
955	sizeCache     protoimpl.SizeCache
956	unknownFields protoimpl.UnknownFields
957
958	// Required. A list of possible values.
959	// The list should be in increasing order and at least 1e-10 apart.
960	// For instance, this parameter might have possible settings of 1.5, 2.5,
961	// and 4.0. This list should not contain more than 1,000 values.
962	Values []float64 `protobuf:"fixed64,1,rep,packed,name=values,proto3" json:"values,omitempty"`
963}
964
965func (x *StudySpec_ParameterSpec_DiscreteValueSpec) Reset() {
966	*x = StudySpec_ParameterSpec_DiscreteValueSpec{}
967	if protoimpl.UnsafeEnabled {
968		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[9]
969		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
970		ms.StoreMessageInfo(mi)
971	}
972}
973
974func (x *StudySpec_ParameterSpec_DiscreteValueSpec) String() string {
975	return protoimpl.X.MessageStringOf(x)
976}
977
978func (*StudySpec_ParameterSpec_DiscreteValueSpec) ProtoMessage() {}
979
980func (x *StudySpec_ParameterSpec_DiscreteValueSpec) ProtoReflect() protoreflect.Message {
981	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[9]
982	if protoimpl.UnsafeEnabled && x != nil {
983		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
984		if ms.LoadMessageInfo() == nil {
985			ms.StoreMessageInfo(mi)
986		}
987		return ms
988	}
989	return mi.MessageOf(x)
990}
991
992// Deprecated: Use StudySpec_ParameterSpec_DiscreteValueSpec.ProtoReflect.Descriptor instead.
993func (*StudySpec_ParameterSpec_DiscreteValueSpec) Descriptor() ([]byte, []int) {
994	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 3}
995}
996
997func (x *StudySpec_ParameterSpec_DiscreteValueSpec) GetValues() []float64 {
998	if x != nil {
999		return x.Values
1000	}
1001	return nil
1002}
1003
1004// Represents a parameter spec with condition from its parent parameter.
1005type StudySpec_ParameterSpec_ConditionalParameterSpec struct {
1006	state         protoimpl.MessageState
1007	sizeCache     protoimpl.SizeCache
1008	unknownFields protoimpl.UnknownFields
1009
1010	// A set of parameter values from the parent ParameterSpec's feasible
1011	// space.
1012	//
1013	// Types that are assignable to ParentValueCondition:
1014	//	*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentDiscreteValues
1015	//	*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentIntValues
1016	//	*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentCategoricalValues
1017	ParentValueCondition isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition `protobuf_oneof:"parent_value_condition"`
1018	// Required. The spec for a conditional parameter.
1019	ParameterSpec *StudySpec_ParameterSpec `protobuf:"bytes,1,opt,name=parameter_spec,json=parameterSpec,proto3" json:"parameter_spec,omitempty"`
1020}
1021
1022func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) Reset() {
1023	*x = StudySpec_ParameterSpec_ConditionalParameterSpec{}
1024	if protoimpl.UnsafeEnabled {
1025		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[10]
1026		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1027		ms.StoreMessageInfo(mi)
1028	}
1029}
1030
1031func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) String() string {
1032	return protoimpl.X.MessageStringOf(x)
1033}
1034
1035func (*StudySpec_ParameterSpec_ConditionalParameterSpec) ProtoMessage() {}
1036
1037func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) ProtoReflect() protoreflect.Message {
1038	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[10]
1039	if protoimpl.UnsafeEnabled && x != nil {
1040		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1041		if ms.LoadMessageInfo() == nil {
1042			ms.StoreMessageInfo(mi)
1043		}
1044		return ms
1045	}
1046	return mi.MessageOf(x)
1047}
1048
1049// Deprecated: Use StudySpec_ParameterSpec_ConditionalParameterSpec.ProtoReflect.Descriptor instead.
1050func (*StudySpec_ParameterSpec_ConditionalParameterSpec) Descriptor() ([]byte, []int) {
1051	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 4}
1052}
1053
1054func (m *StudySpec_ParameterSpec_ConditionalParameterSpec) GetParentValueCondition() isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition {
1055	if m != nil {
1056		return m.ParentValueCondition
1057	}
1058	return nil
1059}
1060
1061func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) GetParentDiscreteValues() *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition {
1062	if x, ok := x.GetParentValueCondition().(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentDiscreteValues); ok {
1063		return x.ParentDiscreteValues
1064	}
1065	return nil
1066}
1067
1068func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) GetParentIntValues() *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition {
1069	if x, ok := x.GetParentValueCondition().(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentIntValues); ok {
1070		return x.ParentIntValues
1071	}
1072	return nil
1073}
1074
1075func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) GetParentCategoricalValues() *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition {
1076	if x, ok := x.GetParentValueCondition().(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentCategoricalValues); ok {
1077		return x.ParentCategoricalValues
1078	}
1079	return nil
1080}
1081
1082func (x *StudySpec_ParameterSpec_ConditionalParameterSpec) GetParameterSpec() *StudySpec_ParameterSpec {
1083	if x != nil {
1084		return x.ParameterSpec
1085	}
1086	return nil
1087}
1088
1089type isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition interface {
1090	isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition()
1091}
1092
1093type StudySpec_ParameterSpec_ConditionalParameterSpec_ParentDiscreteValues struct {
1094	// The spec for matching values from a parent parameter of
1095	// `DISCRETE` type.
1096	ParentDiscreteValues *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition `protobuf:"bytes,2,opt,name=parent_discrete_values,json=parentDiscreteValues,proto3,oneof"`
1097}
1098
1099type StudySpec_ParameterSpec_ConditionalParameterSpec_ParentIntValues struct {
1100	// The spec for matching values from a parent parameter of `INTEGER`
1101	// type.
1102	ParentIntValues *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition `protobuf:"bytes,3,opt,name=parent_int_values,json=parentIntValues,proto3,oneof"`
1103}
1104
1105type StudySpec_ParameterSpec_ConditionalParameterSpec_ParentCategoricalValues struct {
1106	// The spec for matching values from a parent parameter of
1107	// `CATEGORICAL` type.
1108	ParentCategoricalValues *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition `protobuf:"bytes,4,opt,name=parent_categorical_values,json=parentCategoricalValues,proto3,oneof"`
1109}
1110
1111func (*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentDiscreteValues) isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition() {
1112}
1113
1114func (*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentIntValues) isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition() {
1115}
1116
1117func (*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentCategoricalValues) isStudySpec_ParameterSpec_ConditionalParameterSpec_ParentValueCondition() {
1118}
1119
1120// Represents the spec to match discrete values from parent parameter.
1121type StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition struct {
1122	state         protoimpl.MessageState
1123	sizeCache     protoimpl.SizeCache
1124	unknownFields protoimpl.UnknownFields
1125
1126	// Required. Matches values of the parent parameter of 'DISCRETE' type.
1127	// All values must exist in `discrete_value_spec` of parent parameter.
1128	//
1129	// The Epsilon of the value matching is 1e-10.
1130	Values []float64 `protobuf:"fixed64,1,rep,packed,name=values,proto3" json:"values,omitempty"`
1131}
1132
1133func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) Reset() {
1134	*x = StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition{}
1135	if protoimpl.UnsafeEnabled {
1136		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[11]
1137		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1138		ms.StoreMessageInfo(mi)
1139	}
1140}
1141
1142func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) String() string {
1143	return protoimpl.X.MessageStringOf(x)
1144}
1145
1146func (*StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) ProtoMessage() {}
1147
1148func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) ProtoReflect() protoreflect.Message {
1149	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[11]
1150	if protoimpl.UnsafeEnabled && x != nil {
1151		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1152		if ms.LoadMessageInfo() == nil {
1153			ms.StoreMessageInfo(mi)
1154		}
1155		return ms
1156	}
1157	return mi.MessageOf(x)
1158}
1159
1160// Deprecated: Use StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition.ProtoReflect.Descriptor instead.
1161func (*StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) Descriptor() ([]byte, []int) {
1162	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 4, 0}
1163}
1164
1165func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition) GetValues() []float64 {
1166	if x != nil {
1167		return x.Values
1168	}
1169	return nil
1170}
1171
1172// Represents the spec to match integer values from parent parameter.
1173type StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition struct {
1174	state         protoimpl.MessageState
1175	sizeCache     protoimpl.SizeCache
1176	unknownFields protoimpl.UnknownFields
1177
1178	// Required. Matches values of the parent parameter of 'INTEGER' type.
1179	// All values must lie in `integer_value_spec` of parent parameter.
1180	Values []int64 `protobuf:"varint,1,rep,packed,name=values,proto3" json:"values,omitempty"`
1181}
1182
1183func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) Reset() {
1184	*x = StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition{}
1185	if protoimpl.UnsafeEnabled {
1186		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[12]
1187		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1188		ms.StoreMessageInfo(mi)
1189	}
1190}
1191
1192func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) String() string {
1193	return protoimpl.X.MessageStringOf(x)
1194}
1195
1196func (*StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) ProtoMessage() {}
1197
1198func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) ProtoReflect() protoreflect.Message {
1199	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[12]
1200	if protoimpl.UnsafeEnabled && x != nil {
1201		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1202		if ms.LoadMessageInfo() == nil {
1203			ms.StoreMessageInfo(mi)
1204		}
1205		return ms
1206	}
1207	return mi.MessageOf(x)
1208}
1209
1210// Deprecated: Use StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition.ProtoReflect.Descriptor instead.
1211func (*StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) Descriptor() ([]byte, []int) {
1212	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 4, 1}
1213}
1214
1215func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition) GetValues() []int64 {
1216	if x != nil {
1217		return x.Values
1218	}
1219	return nil
1220}
1221
1222// Represents the spec to match categorical values from parent parameter.
1223type StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition struct {
1224	state         protoimpl.MessageState
1225	sizeCache     protoimpl.SizeCache
1226	unknownFields protoimpl.UnknownFields
1227
1228	// Required. Matches values of the parent parameter of 'CATEGORICAL' type.
1229	// All values must exist in `categorical_value_spec` of parent
1230	// parameter.
1231	Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
1232}
1233
1234func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) Reset() {
1235	*x = StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition{}
1236	if protoimpl.UnsafeEnabled {
1237		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[13]
1238		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1239		ms.StoreMessageInfo(mi)
1240	}
1241}
1242
1243func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) String() string {
1244	return protoimpl.X.MessageStringOf(x)
1245}
1246
1247func (*StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) ProtoMessage() {}
1248
1249func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) ProtoReflect() protoreflect.Message {
1250	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[13]
1251	if protoimpl.UnsafeEnabled && x != nil {
1252		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1253		if ms.LoadMessageInfo() == nil {
1254			ms.StoreMessageInfo(mi)
1255		}
1256		return ms
1257	}
1258	return mi.MessageOf(x)
1259}
1260
1261// Deprecated: Use StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition.ProtoReflect.Descriptor instead.
1262func (*StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) Descriptor() ([]byte, []int) {
1263	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{1, 1, 4, 2}
1264}
1265
1266func (x *StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition) GetValues() []string {
1267	if x != nil {
1268		return x.Values
1269	}
1270	return nil
1271}
1272
1273// A message representing a metric in the measurement.
1274type Measurement_Metric struct {
1275	state         protoimpl.MessageState
1276	sizeCache     protoimpl.SizeCache
1277	unknownFields protoimpl.UnknownFields
1278
1279	// Output only. The ID of the Metric. The Metric should be defined in
1280	// [StudySpec's Metrics][google.cloud.aiplatform.v1beta1.StudySpec.metrics].
1281	MetricId string `protobuf:"bytes,1,opt,name=metric_id,json=metricId,proto3" json:"metric_id,omitempty"`
1282	// Output only. The value for this metric.
1283	Value float64 `protobuf:"fixed64,2,opt,name=value,proto3" json:"value,omitempty"`
1284}
1285
1286func (x *Measurement_Metric) Reset() {
1287	*x = Measurement_Metric{}
1288	if protoimpl.UnsafeEnabled {
1289		mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[14]
1290		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1291		ms.StoreMessageInfo(mi)
1292	}
1293}
1294
1295func (x *Measurement_Metric) String() string {
1296	return protoimpl.X.MessageStringOf(x)
1297}
1298
1299func (*Measurement_Metric) ProtoMessage() {}
1300
1301func (x *Measurement_Metric) ProtoReflect() protoreflect.Message {
1302	mi := &file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[14]
1303	if protoimpl.UnsafeEnabled && x != nil {
1304		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1305		if ms.LoadMessageInfo() == nil {
1306			ms.StoreMessageInfo(mi)
1307		}
1308		return ms
1309	}
1310	return mi.MessageOf(x)
1311}
1312
1313// Deprecated: Use Measurement_Metric.ProtoReflect.Descriptor instead.
1314func (*Measurement_Metric) Descriptor() ([]byte, []int) {
1315	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP(), []int{2, 0}
1316}
1317
1318func (x *Measurement_Metric) GetMetricId() string {
1319	if x != nil {
1320		return x.MetricId
1321	}
1322	return ""
1323}
1324
1325func (x *Measurement_Metric) GetValue() float64 {
1326	if x != nil {
1327		return x.Value
1328	}
1329	return 0
1330}
1331
1332var File_google_cloud_aiplatform_v1beta1_study_proto protoreflect.FileDescriptor
1333
1334var file_google_cloud_aiplatform_v1beta1_study_proto_rawDesc = []byte{
1335	0x0a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
1336	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
1337	0x31, 0x2f, 0x73, 0x74, 0x75, 0x64, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67,
1338	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
1339	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1f,
1340	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
1341	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
1342	0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
1343	0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
1344	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61,
1345	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67,
1346	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75,
1347	0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1348	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
1349	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1350	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1351	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb4, 0x05, 0x0a, 0x05, 0x54, 0x72, 0x69, 0x61,
1352	0x6c, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
1353	0x41, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x47, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
1354	0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
1355	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
1356	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x53, 0x74,
1357	0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
1358	0x55, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20,
1359	0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
1360	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
1361	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x50, 0x61, 0x72, 0x61,
1362	0x6d, 0x65, 0x74, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61,
1363	0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x5e, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f,
1364	0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
1365	0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
1366	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
1367	0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42,
1368	0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x61, 0x73, 0x75,
1369	0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f,
1370	0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
1371	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
1372	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61,
1373	0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69,
1374	0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1375	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
1376	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69,
1377	0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6a, 0x6f, 0x62,
1378	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x25, 0x0a, 0x23,
1379	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1380	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
1381	0x4a, 0x6f, 0x62, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4a, 0x6f, 0x62, 0x1a, 0x66,
1382	0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0c, 0x70,
1383	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
1384	0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
1385	0x72, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
1386	0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
1387	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
1388	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x66, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12,
1389	0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1390	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53,
1391	0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10,
1392	0x02, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12,
1393	0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0e,
1394	0x0a, 0x0a, 0x49, 0x4e, 0x46, 0x45, 0x41, 0x53, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x05, 0x22, 0x98,
1395	0x14, 0x0a, 0x09, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x12, 0x54, 0x0a, 0x07,
1396	0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e,
1397	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
1398	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
1399	0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
1400	0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69,
1401	0x63, 0x73, 0x12, 0x5d, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
1402	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1403	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
1404	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70,
1405	0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63,
1406	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
1407	0x73, 0x12, 0x52, 0x0a, 0x09, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x03,
1408	0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
1409	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
1410	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63,
1411	0x2e, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x52, 0x09, 0x61, 0x6c, 0x67, 0x6f,
1412	0x72, 0x69, 0x74, 0x68, 0x6d, 0x1a, 0xca, 0x01, 0x0a, 0x0a, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
1413	0x53, 0x70, 0x65, 0x63, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x69,
1414	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x65,
1415	0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x12, 0x57, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x02,
1416	0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
1417	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
1418	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63,
1419	0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x47, 0x6f, 0x61, 0x6c,
1420	0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x22,
1421	0x41, 0x0a, 0x08, 0x47, 0x6f, 0x61, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x47,
1422	0x4f, 0x41, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1423	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x49, 0x4d, 0x49,
1424	0x5a, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x49, 0x4e, 0x49, 0x4d, 0x49, 0x5a, 0x45,
1425	0x10, 0x02, 0x1a, 0xe8, 0x0f, 0x0a, 0x0d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
1426	0x53, 0x70, 0x65, 0x63, 0x12, 0x76, 0x0a, 0x11, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76,
1427	0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
1428	0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
1429	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
1430	0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61,
1431	0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65,
1432	0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x6f, 0x75,
1433	0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x79, 0x0a, 0x12,
1434	0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x70,
1435	0x65, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1436	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
1437	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79,
1438	0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70,
1439	0x65, 0x63, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53,
1440	0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x56, 0x61,
1441	0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x85, 0x01, 0x0a, 0x16, 0x63, 0x61, 0x74, 0x65,
1442	0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x70,
1443	0x65, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1444	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
1445	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79,
1446	0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70,
1447	0x65, 0x63, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61,
1448	0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x14, 0x63, 0x61, 0x74, 0x65, 0x67,
1449	0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12,
1450	0x7c, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75,
1451	0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x67,
1452	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
1453	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
1454	0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
1455	0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x56,
1456	0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x11, 0x64, 0x69, 0x73, 0x63,
1457	0x72, 0x65, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a,
1458	0x0c, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
1459	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
1460	0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x61, 0x0a, 0x0a, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x74,
1461	0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1462	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
1463	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64,
1464	0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53,
1465	0x70, 0x65, 0x63, 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x73,
1466	0x63, 0x61, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x91, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6e,
1467	0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
1468	0x65, 0x72, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x51,
1469	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
1470	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
1471	0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d,
1472	0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
1473	0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65,
1474	0x63, 0x52, 0x19, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61,
1475	0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x73, 0x1a, 0x55, 0x0a, 0x0f,
1476	0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12,
1477	0x20, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01,
1478	0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75,
1479	0x65, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
1480	0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61,
1481	0x6c, 0x75, 0x65, 0x1a, 0x56, 0x0a, 0x10, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x56, 0x61,
1482	0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x76,
1483	0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
1484	0x08, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x61, 0x78,
1485	0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
1486	0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x33, 0x0a, 0x14, 0x43,
1487	0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53,
1488	0x70, 0x65, 0x63, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20,
1489	0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
1490	0x1a, 0x30, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75,
1491	0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18,
1492	0x01, 0x20, 0x03, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75,
1493	0x65, 0x73, 0x1a, 0xa0, 0x06, 0x0a, 0x18, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
1494	0x61, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12,
1495	0xa0, 0x01, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x72,
1496	0x65, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
1497	0x32, 0x68, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
1498	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
1499	0x61, 0x31, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72,
1500	0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69,
1501	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53,
1502	0x70, 0x65, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75,
1503	0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x14, 0x70, 0x61,
1504	0x72, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75,
1505	0x65, 0x73, 0x12, 0x91, 0x01, 0x0a, 0x11, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e,
1506	0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x63,
1507	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
1508	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
1509	0x2e, 0x53, 0x74, 0x75, 0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d,
1510	0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
1511	0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65,
1512	0x63, 0x2e, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74,
1513	0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74,
1514	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0xa9, 0x01, 0x0a, 0x19, 0x70, 0x61, 0x72, 0x65, 0x6e,
1515	0x74, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x76, 0x61,
1516	0x6c, 0x75, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x6b, 0x2e, 0x67, 0x6f, 0x6f,
1517	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
1518	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75,
1519	0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
1520	0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
1521	0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x61,
1522	0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f,
1523	0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x17, 0x70, 0x61, 0x72, 0x65, 0x6e,
1524	0x74, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75,
1525	0x65, 0x73, 0x12, 0x64, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f,
1526	0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f,
1527	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
1528	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x75,
1529	0x64, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
1530	0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d,
1531	0x65, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x1a, 0x35, 0x0a, 0x16, 0x44, 0x69, 0x73, 0x63,
1532	0x72, 0x65, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
1533	0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
1534	0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a,
1535	0x30, 0x0a, 0x11, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69,
1536	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01,
1537	0x20, 0x03, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65,
1538	0x73, 0x1a, 0x38, 0x0a, 0x19, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c,
1539	0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b,
1540	0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03,
1541	0xe0, 0x41, 0x02, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x18, 0x0a, 0x16, 0x70,
1542	0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x64,
1543	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6e, 0x0a, 0x09, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x79,
1544	0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x43, 0x41, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45,
1545	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15,
1546	0x0a, 0x11, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x41, 0x52, 0x5f, 0x53, 0x43,
1547	0x41, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x4c, 0x4f,
1548	0x47, 0x5f, 0x53, 0x43, 0x41, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x49,
1549	0x54, 0x5f, 0x52, 0x45, 0x56, 0x45, 0x52, 0x53, 0x45, 0x5f, 0x4c, 0x4f, 0x47, 0x5f, 0x53, 0x43,
1550	0x41, 0x4c, 0x45, 0x10, 0x03, 0x42, 0x16, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
1551	0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x22, 0x4a, 0x0a,
1552	0x09, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x4c,
1553	0x47, 0x4f, 0x52, 0x49, 0x54, 0x48, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
1554	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x52, 0x49, 0x44, 0x5f, 0x53, 0x45,
1555	0x41, 0x52, 0x43, 0x48, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d,
1556	0x5f, 0x53, 0x45, 0x41, 0x52, 0x43, 0x48, 0x10, 0x03, 0x22, 0xcc, 0x01, 0x0a, 0x0b, 0x4d, 0x65,
1557	0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x74, 0x65,
1558	0x70, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
1559	0x41, 0x03, 0x52, 0x09, 0x73, 0x74, 0x65, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x52, 0x0a,
1560	0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33,
1561	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
1562	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
1563	0x2e, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x74,
1564	0x72, 0x69, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
1565	0x73, 0x1a, 0x45, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x20, 0x0a, 0x09, 0x6d,
1566	0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
1567	0xe0, 0x41, 0x03, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x12, 0x19, 0x0a,
1568	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41,
1569	0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x7e, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e,
1570	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
1571	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42,
1572	0x0a, 0x53, 0x74, 0x75, 0x64, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x49, 0x67,
1573	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67,
1574	0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1575	0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61,
1576	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x61, 0x69,
1577	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1578}
1579
1580var (
1581	file_google_cloud_aiplatform_v1beta1_study_proto_rawDescOnce sync.Once
1582	file_google_cloud_aiplatform_v1beta1_study_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_study_proto_rawDesc
1583)
1584
1585func file_google_cloud_aiplatform_v1beta1_study_proto_rawDescGZIP() []byte {
1586	file_google_cloud_aiplatform_v1beta1_study_proto_rawDescOnce.Do(func() {
1587		file_google_cloud_aiplatform_v1beta1_study_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_study_proto_rawDescData)
1588	})
1589	return file_google_cloud_aiplatform_v1beta1_study_proto_rawDescData
1590}
1591
1592var file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
1593var file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
1594var file_google_cloud_aiplatform_v1beta1_study_proto_goTypes = []interface{}{
1595	(Trial_State)(0),                                         // 0: google.cloud.aiplatform.v1beta1.Trial.State
1596	(StudySpec_Algorithm)(0),                                 // 1: google.cloud.aiplatform.v1beta1.StudySpec.Algorithm
1597	(StudySpec_MetricSpec_GoalType)(0),                       // 2: google.cloud.aiplatform.v1beta1.StudySpec.MetricSpec.GoalType
1598	(StudySpec_ParameterSpec_ScaleType)(0),                   // 3: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ScaleType
1599	(*Trial)(nil),                                            // 4: google.cloud.aiplatform.v1beta1.Trial
1600	(*StudySpec)(nil),                                        // 5: google.cloud.aiplatform.v1beta1.StudySpec
1601	(*Measurement)(nil),                                      // 6: google.cloud.aiplatform.v1beta1.Measurement
1602	(*Trial_Parameter)(nil),                                  // 7: google.cloud.aiplatform.v1beta1.Trial.Parameter
1603	(*StudySpec_MetricSpec)(nil),                             // 8: google.cloud.aiplatform.v1beta1.StudySpec.MetricSpec
1604	(*StudySpec_ParameterSpec)(nil),                          // 9: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec
1605	(*StudySpec_ParameterSpec_DoubleValueSpec)(nil),          // 10: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.DoubleValueSpec
1606	(*StudySpec_ParameterSpec_IntegerValueSpec)(nil),         // 11: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.IntegerValueSpec
1607	(*StudySpec_ParameterSpec_CategoricalValueSpec)(nil),     // 12: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.CategoricalValueSpec
1608	(*StudySpec_ParameterSpec_DiscreteValueSpec)(nil),        // 13: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.DiscreteValueSpec
1609	(*StudySpec_ParameterSpec_ConditionalParameterSpec)(nil), // 14: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec
1610	(*StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition)(nil),    // 15: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.DiscreteValueCondition
1611	(*StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition)(nil),         // 16: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.IntValueCondition
1612	(*StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition)(nil), // 17: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.CategoricalValueCondition
1613	(*Measurement_Metric)(nil),    // 18: google.cloud.aiplatform.v1beta1.Measurement.Metric
1614	(*timestamppb.Timestamp)(nil), // 19: google.protobuf.Timestamp
1615	(*structpb.Value)(nil),        // 20: google.protobuf.Value
1616}
1617var file_google_cloud_aiplatform_v1beta1_study_proto_depIdxs = []int32{
1618	0,  // 0: google.cloud.aiplatform.v1beta1.Trial.state:type_name -> google.cloud.aiplatform.v1beta1.Trial.State
1619	7,  // 1: google.cloud.aiplatform.v1beta1.Trial.parameters:type_name -> google.cloud.aiplatform.v1beta1.Trial.Parameter
1620	6,  // 2: google.cloud.aiplatform.v1beta1.Trial.final_measurement:type_name -> google.cloud.aiplatform.v1beta1.Measurement
1621	19, // 3: google.cloud.aiplatform.v1beta1.Trial.start_time:type_name -> google.protobuf.Timestamp
1622	19, // 4: google.cloud.aiplatform.v1beta1.Trial.end_time:type_name -> google.protobuf.Timestamp
1623	8,  // 5: google.cloud.aiplatform.v1beta1.StudySpec.metrics:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.MetricSpec
1624	9,  // 6: google.cloud.aiplatform.v1beta1.StudySpec.parameters:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec
1625	1,  // 7: google.cloud.aiplatform.v1beta1.StudySpec.algorithm:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.Algorithm
1626	18, // 8: google.cloud.aiplatform.v1beta1.Measurement.metrics:type_name -> google.cloud.aiplatform.v1beta1.Measurement.Metric
1627	20, // 9: google.cloud.aiplatform.v1beta1.Trial.Parameter.value:type_name -> google.protobuf.Value
1628	2,  // 10: google.cloud.aiplatform.v1beta1.StudySpec.MetricSpec.goal:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.MetricSpec.GoalType
1629	10, // 11: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.double_value_spec:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.DoubleValueSpec
1630	11, // 12: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.integer_value_spec:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.IntegerValueSpec
1631	12, // 13: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.categorical_value_spec:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.CategoricalValueSpec
1632	13, // 14: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.discrete_value_spec:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.DiscreteValueSpec
1633	3,  // 15: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.scale_type:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ScaleType
1634	14, // 16: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.conditional_parameter_specs:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec
1635	15, // 17: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.parent_discrete_values:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.DiscreteValueCondition
1636	16, // 18: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.parent_int_values:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.IntValueCondition
1637	17, // 19: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.parent_categorical_values:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.CategoricalValueCondition
1638	9,  // 20: google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec.ConditionalParameterSpec.parameter_spec:type_name -> google.cloud.aiplatform.v1beta1.StudySpec.ParameterSpec
1639	21, // [21:21] is the sub-list for method output_type
1640	21, // [21:21] is the sub-list for method input_type
1641	21, // [21:21] is the sub-list for extension type_name
1642	21, // [21:21] is the sub-list for extension extendee
1643	0,  // [0:21] is the sub-list for field type_name
1644}
1645
1646func init() { file_google_cloud_aiplatform_v1beta1_study_proto_init() }
1647func file_google_cloud_aiplatform_v1beta1_study_proto_init() {
1648	if File_google_cloud_aiplatform_v1beta1_study_proto != nil {
1649		return
1650	}
1651	if !protoimpl.UnsafeEnabled {
1652		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1653			switch v := v.(*Trial); i {
1654			case 0:
1655				return &v.state
1656			case 1:
1657				return &v.sizeCache
1658			case 2:
1659				return &v.unknownFields
1660			default:
1661				return nil
1662			}
1663		}
1664		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1665			switch v := v.(*StudySpec); i {
1666			case 0:
1667				return &v.state
1668			case 1:
1669				return &v.sizeCache
1670			case 2:
1671				return &v.unknownFields
1672			default:
1673				return nil
1674			}
1675		}
1676		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1677			switch v := v.(*Measurement); i {
1678			case 0:
1679				return &v.state
1680			case 1:
1681				return &v.sizeCache
1682			case 2:
1683				return &v.unknownFields
1684			default:
1685				return nil
1686			}
1687		}
1688		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1689			switch v := v.(*Trial_Parameter); i {
1690			case 0:
1691				return &v.state
1692			case 1:
1693				return &v.sizeCache
1694			case 2:
1695				return &v.unknownFields
1696			default:
1697				return nil
1698			}
1699		}
1700		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1701			switch v := v.(*StudySpec_MetricSpec); i {
1702			case 0:
1703				return &v.state
1704			case 1:
1705				return &v.sizeCache
1706			case 2:
1707				return &v.unknownFields
1708			default:
1709				return nil
1710			}
1711		}
1712		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1713			switch v := v.(*StudySpec_ParameterSpec); i {
1714			case 0:
1715				return &v.state
1716			case 1:
1717				return &v.sizeCache
1718			case 2:
1719				return &v.unknownFields
1720			default:
1721				return nil
1722			}
1723		}
1724		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1725			switch v := v.(*StudySpec_ParameterSpec_DoubleValueSpec); i {
1726			case 0:
1727				return &v.state
1728			case 1:
1729				return &v.sizeCache
1730			case 2:
1731				return &v.unknownFields
1732			default:
1733				return nil
1734			}
1735		}
1736		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1737			switch v := v.(*StudySpec_ParameterSpec_IntegerValueSpec); i {
1738			case 0:
1739				return &v.state
1740			case 1:
1741				return &v.sizeCache
1742			case 2:
1743				return &v.unknownFields
1744			default:
1745				return nil
1746			}
1747		}
1748		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1749			switch v := v.(*StudySpec_ParameterSpec_CategoricalValueSpec); i {
1750			case 0:
1751				return &v.state
1752			case 1:
1753				return &v.sizeCache
1754			case 2:
1755				return &v.unknownFields
1756			default:
1757				return nil
1758			}
1759		}
1760		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1761			switch v := v.(*StudySpec_ParameterSpec_DiscreteValueSpec); i {
1762			case 0:
1763				return &v.state
1764			case 1:
1765				return &v.sizeCache
1766			case 2:
1767				return &v.unknownFields
1768			default:
1769				return nil
1770			}
1771		}
1772		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
1773			switch v := v.(*StudySpec_ParameterSpec_ConditionalParameterSpec); i {
1774			case 0:
1775				return &v.state
1776			case 1:
1777				return &v.sizeCache
1778			case 2:
1779				return &v.unknownFields
1780			default:
1781				return nil
1782			}
1783		}
1784		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
1785			switch v := v.(*StudySpec_ParameterSpec_ConditionalParameterSpec_DiscreteValueCondition); i {
1786			case 0:
1787				return &v.state
1788			case 1:
1789				return &v.sizeCache
1790			case 2:
1791				return &v.unknownFields
1792			default:
1793				return nil
1794			}
1795		}
1796		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
1797			switch v := v.(*StudySpec_ParameterSpec_ConditionalParameterSpec_IntValueCondition); i {
1798			case 0:
1799				return &v.state
1800			case 1:
1801				return &v.sizeCache
1802			case 2:
1803				return &v.unknownFields
1804			default:
1805				return nil
1806			}
1807		}
1808		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
1809			switch v := v.(*StudySpec_ParameterSpec_ConditionalParameterSpec_CategoricalValueCondition); i {
1810			case 0:
1811				return &v.state
1812			case 1:
1813				return &v.sizeCache
1814			case 2:
1815				return &v.unknownFields
1816			default:
1817				return nil
1818			}
1819		}
1820		file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
1821			switch v := v.(*Measurement_Metric); i {
1822			case 0:
1823				return &v.state
1824			case 1:
1825				return &v.sizeCache
1826			case 2:
1827				return &v.unknownFields
1828			default:
1829				return nil
1830			}
1831		}
1832	}
1833	file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[5].OneofWrappers = []interface{}{
1834		(*StudySpec_ParameterSpec_DoubleValueSpec_)(nil),
1835		(*StudySpec_ParameterSpec_IntegerValueSpec_)(nil),
1836		(*StudySpec_ParameterSpec_CategoricalValueSpec_)(nil),
1837		(*StudySpec_ParameterSpec_DiscreteValueSpec_)(nil),
1838	}
1839	file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes[10].OneofWrappers = []interface{}{
1840		(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentDiscreteValues)(nil),
1841		(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentIntValues)(nil),
1842		(*StudySpec_ParameterSpec_ConditionalParameterSpec_ParentCategoricalValues)(nil),
1843	}
1844	type x struct{}
1845	out := protoimpl.TypeBuilder{
1846		File: protoimpl.DescBuilder{
1847			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1848			RawDescriptor: file_google_cloud_aiplatform_v1beta1_study_proto_rawDesc,
1849			NumEnums:      4,
1850			NumMessages:   15,
1851			NumExtensions: 0,
1852			NumServices:   0,
1853		},
1854		GoTypes:           file_google_cloud_aiplatform_v1beta1_study_proto_goTypes,
1855		DependencyIndexes: file_google_cloud_aiplatform_v1beta1_study_proto_depIdxs,
1856		EnumInfos:         file_google_cloud_aiplatform_v1beta1_study_proto_enumTypes,
1857		MessageInfos:      file_google_cloud_aiplatform_v1beta1_study_proto_msgTypes,
1858	}.Build()
1859	File_google_cloud_aiplatform_v1beta1_study_proto = out.File
1860	file_google_cloud_aiplatform_v1beta1_study_proto_rawDesc = nil
1861	file_google_cloud_aiplatform_v1beta1_study_proto_goTypes = nil
1862	file_google_cloud_aiplatform_v1beta1_study_proto_depIdxs = nil
1863}
1864