google-cloud-ai_platform-v1 0.24.0 → 0.25.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/ai_platform/v1/dataset_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/dataset_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/endpoint_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/endpoint_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/featurestore_online_serving_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/featurestore_service/client.rb +5 -3
- data/lib/google/cloud/ai_platform/v1/featurestore_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/index_endpoint_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/index_endpoint_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/index_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/index_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/job_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/job_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/match_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/metadata_service/client.rb +16 -5
- data/lib/google/cloud/ai_platform/v1/metadata_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/migration_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/migration_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/model_garden_service/client.rb +424 -0
- data/lib/google/cloud/ai_platform/v1/model_garden_service/credentials.rb +47 -0
- data/lib/google/cloud/ai_platform/v1/model_garden_service/paths.rb +50 -0
- data/lib/google/cloud/ai_platform/v1/model_garden_service.rb +49 -0
- data/lib/google/cloud/ai_platform/v1/model_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/model_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/model_service/paths.rb +19 -0
- data/lib/google/cloud/ai_platform/v1/pipeline_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/pipeline_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/prediction_service/client.rb +5 -4
- data/lib/google/cloud/ai_platform/v1/specialist_pool_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/specialist_pool_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/tensorboard_service/client.rb +4 -2
- data/lib/google/cloud/ai_platform/v1/tensorboard_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1/version.rb +1 -1
- data/lib/google/cloud/ai_platform/v1/vizier_service/client.rb +6 -3
- data/lib/google/cloud/ai_platform/v1/vizier_service/operations.rb +3 -1
- data/lib/google/cloud/ai_platform/v1.rb +1 -0
- data/lib/google/cloud/aiplatform/v1/accelerator_type_pb.rb +24 -14
- data/lib/google/cloud/aiplatform/v1/annotation_pb.rb +27 -11
- data/lib/google/cloud/aiplatform/v1/annotation_spec_pb.rb +25 -8
- data/lib/google/cloud/aiplatform/v1/artifact_pb.rb +26 -20
- data/lib/google/cloud/aiplatform/v1/batch_prediction_job_pb.rb +34 -57
- data/lib/google/cloud/aiplatform/v1/completion_stats_pb.rb +24 -7
- data/lib/google/cloud/aiplatform/v1/context_pb.rb +26 -14
- data/lib/google/cloud/aiplatform/v1/custom_job_pb.rb +31 -55
- data/lib/google/cloud/aiplatform/v1/data_item_pb.rb +26 -9
- data/lib/google/cloud/aiplatform/v1/data_labeling_job_pb.rb +29 -45
- data/lib/google/cloud/aiplatform/v1/dataset_pb.rb +29 -37
- data/lib/google/cloud/aiplatform/v1/dataset_service_pb.rb +30 -121
- data/lib/google/cloud/aiplatform/v1/deployed_index_ref_pb.rb +24 -5
- data/lib/google/cloud/aiplatform/v1/deployed_model_ref_pb.rb +24 -5
- data/lib/google/cloud/aiplatform/v1/encryption_spec_pb.rb +24 -4
- data/lib/google/cloud/aiplatform/v1/endpoint_pb.rb +29 -44
- data/lib/google/cloud/aiplatform/v1/endpoint_service_pb.rb +27 -63
- data/lib/google/cloud/aiplatform/v1/entity_type_pb.rb +26 -11
- data/lib/google/cloud/aiplatform/v1/env_var_pb.rb +24 -5
- data/lib/google/cloud/aiplatform/v1/evaluated_annotation_pb.rb +26 -36
- data/lib/google/cloud/aiplatform/v1/event_pb.rb +25 -13
- data/lib/google/cloud/aiplatform/v1/execution_pb.rb +26 -23
- data/lib/google/cloud/aiplatform/v1/explanation_metadata_pb.rb +25 -78
- data/lib/google/cloud/aiplatform/v1/explanation_pb.rb +27 -125
- data/lib/google/cloud/aiplatform/v1/feature_monitoring_stats_pb.rb +25 -10
- data/lib/google/cloud/aiplatform/v1/feature_pb.rb +26 -33
- data/lib/google/cloud/aiplatform/v1/feature_selector_pb.rb +24 -7
- data/lib/google/cloud/aiplatform/v1/featurestore_monitoring_pb.rb +24 -33
- data/lib/google/cloud/aiplatform/v1/featurestore_online_service_pb.rb +27 -62
- data/lib/google/cloud/aiplatform/v1/featurestore_pb.rb +26 -26
- data/lib/google/cloud/aiplatform/v1/featurestore_service_pb.rb +33 -249
- data/lib/google/cloud/aiplatform/v1/hyperparameter_tuning_job_pb.rb +29 -19
- data/lib/google/cloud/aiplatform/v1/index_endpoint_pb.rb +27 -41
- data/lib/google/cloud/aiplatform/v1/index_endpoint_service_pb.rb +27 -60
- data/lib/google/cloud/aiplatform/v1/index_pb.rb +27 -38
- data/lib/google/cloud/aiplatform/v1/index_service_pb.rb +27 -73
- data/lib/google/cloud/aiplatform/v1/io_pb.rb +24 -28
- data/lib/google/cloud/aiplatform/v1/job_service_pb.rb +33 -186
- data/lib/google/cloud/aiplatform/v1/job_state_pb.rb +24 -14
- data/lib/google/cloud/aiplatform/v1/lineage_subgraph_pb.rb +27 -6
- data/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb +24 -37
- data/lib/google/cloud/aiplatform/v1/manual_batch_tuning_parameters_pb.rb +24 -4
- data/lib/google/cloud/aiplatform/v1/match_service_pb.rb +25 -33
- data/lib/google/cloud/aiplatform/v1/metadata_schema_pb.rb +25 -15
- data/lib/google/cloud/aiplatform/v1/metadata_service_pb.rb +32 -203
- data/lib/google/cloud/aiplatform/v1/metadata_store_pb.rb +26 -12
- data/lib/google/cloud/aiplatform/v1/migratable_resource_pb.rb +25 -32
- data/lib/google/cloud/aiplatform/v1/migration_service_pb.rb +27 -66
- data/lib/google/cloud/aiplatform/v1/model_deployment_monitoring_job_pb.rb +32 -78
- data/lib/google/cloud/aiplatform/v1/model_evaluation_pb.rb +27 -18
- data/lib/google/cloud/aiplatform/v1/model_evaluation_slice_pb.rb +28 -34
- data/lib/google/cloud/aiplatform/v1/model_garden_service_pb.rb +49 -0
- data/lib/google/cloud/aiplatform/v1/model_garden_service_services_pb.rb +45 -0
- data/lib/google/cloud/aiplatform/v1/model_monitoring_pb.rb +25 -63
- data/lib/google/cloud/aiplatform/v1/model_pb.rb +31 -78
- data/lib/google/cloud/aiplatform/v1/model_service_pb.rb +32 -137
- data/lib/google/cloud/aiplatform/v1/nas_job_pb.rb +29 -84
- data/lib/google/cloud/aiplatform/v1/operation_pb.rb +26 -9
- data/lib/google/cloud/aiplatform/v1/pipeline_failure_policy_pb.rb +24 -6
- data/lib/google/cloud/aiplatform/v1/pipeline_job_pb.rb +32 -91
- data/lib/google/cloud/aiplatform/v1/pipeline_service_pb.rb +27 -51
- data/lib/google/cloud/aiplatform/v1/pipeline_state_pb.rb +24 -12
- data/lib/google/cloud/aiplatform/v1/prediction_service_pb.rb +27 -29
- data/lib/google/cloud/aiplatform/v1/prediction_service_services_pb.rb +1 -2
- data/lib/google/cloud/aiplatform/v1/publisher_model_pb.rb +57 -0
- data/lib/google/cloud/aiplatform/v1/saved_query_pb.rb +26 -13
- data/lib/google/cloud/aiplatform/v1/service_networking_pb.rb +24 -5
- data/lib/google/cloud/aiplatform/v1/specialist_pool_pb.rb +24 -9
- data/lib/google/cloud/aiplatform/v1/specialist_pool_service_pb.rb +27 -33
- data/lib/google/cloud/aiplatform/v1/study_pb.rb +27 -157
- data/lib/google/cloud/aiplatform/v1/tensorboard_data_pb.rb +25 -29
- data/lib/google/cloud/aiplatform/v1/tensorboard_experiment_pb.rb +25 -11
- data/lib/google/cloud/aiplatform/v1/tensorboard_pb.rb +26 -14
- data/lib/google/cloud/aiplatform/v1/tensorboard_run_pb.rb +25 -10
- data/lib/google/cloud/aiplatform/v1/tensorboard_service_pb.rb +31 -186
- data/lib/google/cloud/aiplatform/v1/tensorboard_time_series_pb.rb +25 -24
- data/lib/google/cloud/aiplatform/v1/training_pipeline_pb.rb +30 -63
- data/lib/google/cloud/aiplatform/v1/types_pb.rb +24 -13
- data/lib/google/cloud/aiplatform/v1/unmanaged_container_model_pb.rb +25 -6
- data/lib/google/cloud/aiplatform/v1/user_action_reference_pb.rb +24 -8
- data/lib/google/cloud/aiplatform/v1/value_pb.rb +24 -8
- data/lib/google/cloud/aiplatform/v1/vizier_service_pb.rb +27 -88
- data/lib/google/cloud/aiplatform/v1/vizier_service_services_pb.rb +2 -1
- data/proto_docs/google/cloud/aiplatform/v1/accelerator_type.rb +3 -0
- data/proto_docs/google/cloud/aiplatform/v1/featurestore_service.rb +6 -2
- data/proto_docs/google/cloud/aiplatform/v1/index_endpoint.rb +7 -8
- data/proto_docs/google/cloud/aiplatform/v1/metadata_service.rb +12 -3
- data/proto_docs/google/cloud/aiplatform/v1/model.rb +14 -0
- data/proto_docs/google/cloud/aiplatform/v1/model_evaluation.rb +3 -2
- data/proto_docs/google/cloud/aiplatform/v1/model_garden_service.rb +61 -0
- data/proto_docs/google/cloud/aiplatform/v1/publisher_model.rb +235 -0
- data/proto_docs/google/cloud/aiplatform/v1/tensorboard_experiment.rb +2 -1
- data/proto_docs/google/protobuf/any.rb +7 -4
- data/proto_docs/google/protobuf/struct.rb +1 -1
- data/proto_docs/google/protobuf/timestamp.rb +1 -3
- metadata +13 -4
@@ -1,18 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/cloud/aiplatform/v1/value.proto
|
3
4
|
|
4
5
|
require 'google/protobuf'
|
5
6
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
7
|
+
|
8
|
+
descriptor_data = "\n&google/cloud/aiplatform/v1/value.proto\x12\x1agoogle.cloud.aiplatform.v1\"U\n\x05Value\x12\x13\n\tint_value\x18\x01 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x02 \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x03 \x01(\tH\x00\x42\x07\n\x05valueB\xc8\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\nValueProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3"
|
9
|
+
|
10
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
|
12
|
+
begin
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
14
|
+
rescue TypeError => e
|
15
|
+
# Compatibility code: will be removed in the next major version.
|
16
|
+
require 'google/protobuf/descriptor_pb'
|
17
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
18
|
+
parsed.clear_dependency
|
19
|
+
serialized = parsed.class.encode(parsed)
|
20
|
+
file = pool.add_serialized_file(serialized)
|
21
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
22
|
+
imports = [
|
23
|
+
]
|
24
|
+
imports.each do |type_name, expected_filename|
|
25
|
+
import_file = pool.lookup(type_name).file_descriptor
|
26
|
+
if import_file.name != expected_filename
|
27
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
14
28
|
end
|
15
29
|
end
|
30
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
31
|
+
warn "This will become an error in the next major version."
|
16
32
|
end
|
17
33
|
|
18
34
|
module Google
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/cloud/aiplatform/v1/vizier_service.proto
|
3
4
|
|
@@ -13,96 +14,34 @@ require 'google/longrunning/operations_pb'
|
|
13
14
|
require 'google/protobuf/empty_pb'
|
14
15
|
require 'google/protobuf/timestamp_pb'
|
15
16
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
end
|
41
|
-
add_message "google.cloud.aiplatform.v1.SuggestTrialsRequest" do
|
42
|
-
optional :parent, :string, 1
|
43
|
-
optional :suggestion_count, :int32, 2
|
44
|
-
optional :client_id, :string, 3
|
45
|
-
end
|
46
|
-
add_message "google.cloud.aiplatform.v1.SuggestTrialsResponse" do
|
47
|
-
repeated :trials, :message, 1, "google.cloud.aiplatform.v1.Trial"
|
48
|
-
optional :study_state, :enum, 2, "google.cloud.aiplatform.v1.Study.State"
|
49
|
-
optional :start_time, :message, 3, "google.protobuf.Timestamp"
|
50
|
-
optional :end_time, :message, 4, "google.protobuf.Timestamp"
|
51
|
-
end
|
52
|
-
add_message "google.cloud.aiplatform.v1.SuggestTrialsMetadata" do
|
53
|
-
optional :generic_metadata, :message, 1, "google.cloud.aiplatform.v1.GenericOperationMetadata"
|
54
|
-
optional :client_id, :string, 2
|
55
|
-
end
|
56
|
-
add_message "google.cloud.aiplatform.v1.CreateTrialRequest" do
|
57
|
-
optional :parent, :string, 1
|
58
|
-
optional :trial, :message, 2, "google.cloud.aiplatform.v1.Trial"
|
59
|
-
end
|
60
|
-
add_message "google.cloud.aiplatform.v1.GetTrialRequest" do
|
61
|
-
optional :name, :string, 1
|
62
|
-
end
|
63
|
-
add_message "google.cloud.aiplatform.v1.ListTrialsRequest" do
|
64
|
-
optional :parent, :string, 1
|
65
|
-
optional :page_token, :string, 2
|
66
|
-
optional :page_size, :int32, 3
|
67
|
-
end
|
68
|
-
add_message "google.cloud.aiplatform.v1.ListTrialsResponse" do
|
69
|
-
repeated :trials, :message, 1, "google.cloud.aiplatform.v1.Trial"
|
70
|
-
optional :next_page_token, :string, 2
|
71
|
-
end
|
72
|
-
add_message "google.cloud.aiplatform.v1.AddTrialMeasurementRequest" do
|
73
|
-
optional :trial_name, :string, 1
|
74
|
-
optional :measurement, :message, 3, "google.cloud.aiplatform.v1.Measurement"
|
75
|
-
end
|
76
|
-
add_message "google.cloud.aiplatform.v1.CompleteTrialRequest" do
|
77
|
-
optional :name, :string, 1
|
78
|
-
optional :final_measurement, :message, 2, "google.cloud.aiplatform.v1.Measurement"
|
79
|
-
optional :trial_infeasible, :bool, 3
|
80
|
-
optional :infeasible_reason, :string, 4
|
81
|
-
end
|
82
|
-
add_message "google.cloud.aiplatform.v1.DeleteTrialRequest" do
|
83
|
-
optional :name, :string, 1
|
84
|
-
end
|
85
|
-
add_message "google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateRequest" do
|
86
|
-
optional :trial_name, :string, 1
|
87
|
-
end
|
88
|
-
add_message "google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateResponse" do
|
89
|
-
optional :should_stop, :bool, 1
|
90
|
-
end
|
91
|
-
add_message "google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateMetatdata" do
|
92
|
-
optional :generic_metadata, :message, 1, "google.cloud.aiplatform.v1.GenericOperationMetadata"
|
93
|
-
optional :study, :string, 2
|
94
|
-
optional :trial, :string, 3
|
95
|
-
end
|
96
|
-
add_message "google.cloud.aiplatform.v1.StopTrialRequest" do
|
97
|
-
optional :name, :string, 1
|
98
|
-
end
|
99
|
-
add_message "google.cloud.aiplatform.v1.ListOptimalTrialsRequest" do
|
100
|
-
optional :parent, :string, 1
|
101
|
-
end
|
102
|
-
add_message "google.cloud.aiplatform.v1.ListOptimalTrialsResponse" do
|
103
|
-
repeated :optimal_trials, :message, 1, "google.cloud.aiplatform.v1.Trial"
|
17
|
+
|
18
|
+
descriptor_data = "\n/google/cloud/aiplatform/v1/vizier_service.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a*google/cloud/aiplatform/v1/operation.proto\x1a&google/cloud/aiplatform/v1/study.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"H\n\x0fGetStudyRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\"\x86\x01\n\x12\x43reateStudyRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x35\n\x05study\x18\x02 \x01(\x0b\x32!.google.cloud.aiplatform.v1.StudyB\x03\xe0\x41\x02\"\x80\x01\n\x12ListStudiesRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x17\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\"b\n\x13ListStudiesResponse\x12\x32\n\x07studies\x18\x01 \x03(\x0b\x32!.google.cloud.aiplatform.v1.Study\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"K\n\x12\x44\x65leteStudyRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\"j\n\x12LookupStudyRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\"\x86\x01\n\x14SuggestTrialsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\x12\x1d\n\x10suggestion_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02\x12\x16\n\tclient_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\xe6\x01\n\x15SuggestTrialsResponse\x12\x31\n\x06trials\x18\x01 \x03(\x0b\x32!.google.cloud.aiplatform.v1.Trial\x12<\n\x0bstudy_state\x18\x02 \x01(\x0e\x32\'.google.cloud.aiplatform.v1.Study.State\x12.\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"z\n\x15SuggestTrialsMetadata\x12N\n\x10generic_metadata\x18\x01 \x01(\x0b\x32\x34.google.cloud.aiplatform.v1.GenericOperationMetadata\x12\x11\n\tclient_id\x18\x02 \x01(\t\"\x84\x01\n\x12\x43reateTrialRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\x12\x35\n\x05trial\x18\x02 \x01(\x0b\x32!.google.cloud.aiplatform.v1.TrialB\x03\xe0\x41\x02\"H\n\x0fGetTrialRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\"}\n\x11ListTrialsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\x12\x17\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\"`\n\x12ListTrialsResponse\x12\x31\n\x06trials\x18\x01 \x03(\x0b\x32!.google.cloud.aiplatform.v1.Trial\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x9c\x01\n\x1a\x41\x64\x64TrialMeasurementRequest\x12;\n\ntrial_name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\x12\x41\n\x0bmeasurement\x18\x03 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MeasurementB\x03\xe0\x41\x02\"\xd5\x01\n\x14\x43ompleteTrialRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\x12G\n\x11\x66inal_measurement\x18\x02 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MeasurementB\x03\xe0\x41\x01\x12\x1d\n\x10trial_infeasible\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1e\n\x11infeasible_reason\x18\x04 \x01(\tB\x03\xe0\x41\x01\"K\n\x12\x44\x65leteTrialRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\"b\n#CheckTrialEarlyStoppingStateRequest\x12;\n\ntrial_name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\";\n$CheckTrialEarlyStoppingStateResponse\x12\x13\n\x0bshould_stop\x18\x01 \x01(\x08\"\x95\x01\n%CheckTrialEarlyStoppingStateMetatdata\x12N\n\x10generic_metadata\x18\x01 \x01(\x0b\x32\x34.google.cloud.aiplatform.v1.GenericOperationMetadata\x12\r\n\x05study\x18\x02 \x01(\t\x12\r\n\x05trial\x18\x03 \x01(\t\"I\n\x10StopTrialRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Trial\"S\n\x18ListOptimalTrialsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Study\"V\n\x19ListOptimalTrialsResponse\x12\x39\n\x0eoptimal_trials\x18\x01 \x03(\x0b\x32!.google.cloud.aiplatform.v1.Trial2\xd4\x16\n\rVizierService\x12\xab\x01\n\x0b\x43reateStudy\x12..google.cloud.aiplatform.v1.CreateStudyRequest\x1a!.google.cloud.aiplatform.v1.Study\"I\x82\xd3\xe4\x93\x02\x34\"+/v1/{parent=projects/*/locations/*}/studies:\x05study\xda\x41\x0cparent,study\x12\x96\x01\n\x08GetStudy\x12+.google.cloud.aiplatform.v1.GetStudyRequest\x1a!.google.cloud.aiplatform.v1.Study\":\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/studies/*}\xda\x41\x04name\x12\xac\x01\n\x0bListStudies\x12..google.cloud.aiplatform.v1.ListStudiesRequest\x1a/.google.cloud.aiplatform.v1.ListStudiesResponse\"<\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/studies\xda\x41\x06parent\x12\x91\x01\n\x0b\x44\x65leteStudy\x12..google.cloud.aiplatform.v1.DeleteStudyRequest\x1a\x16.google.protobuf.Empty\":\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/studies/*}\xda\x41\x04name\x12\xa8\x01\n\x0bLookupStudy\x12..google.cloud.aiplatform.v1.LookupStudyRequest\x1a!.google.cloud.aiplatform.v1.Study\"F\x82\xd3\xe4\x93\x02\x37\"2/v1/{parent=projects/*/locations/*}/studies:lookup:\x01*\xda\x41\x06parent\x12\xda\x01\n\rSuggestTrials\x12\x30.google.cloud.aiplatform.v1.SuggestTrialsRequest\x1a\x1d.google.longrunning.Operation\"x\x82\xd3\xe4\x93\x02\x41\"</v1/{parent=projects/*/locations/*/studies/*}/trials:suggest:\x01*\xca\x41.\n\x15SuggestTrialsResponse\x12\x15SuggestTrialsMetadata\x12\xb4\x01\n\x0b\x43reateTrial\x12..google.cloud.aiplatform.v1.CreateTrialRequest\x1a!.google.cloud.aiplatform.v1.Trial\"R\x82\xd3\xe4\x93\x02=\"4/v1/{parent=projects/*/locations/*/studies/*}/trials:\x05trial\xda\x41\x0cparent,trial\x12\x9f\x01\n\x08GetTrial\x12+.google.cloud.aiplatform.v1.GetTrialRequest\x1a!.google.cloud.aiplatform.v1.Trial\"C\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/studies/*/trials/*}\xda\x41\x04name\x12\xb2\x01\n\nListTrials\x12-.google.cloud.aiplatform.v1.ListTrialsRequest\x1a..google.cloud.aiplatform.v1.ListTrialsResponse\"E\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/studies/*}/trials\xda\x41\x06parent\x12\xcb\x01\n\x13\x41\x64\x64TrialMeasurement\x12\x36.google.cloud.aiplatform.v1.AddTrialMeasurementRequest\x1a!.google.cloud.aiplatform.v1.Trial\"Y\x82\xd3\xe4\x93\x02S\"N/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:addTrialMeasurement:\x01*\x12\xae\x01\n\rCompleteTrial\x12\x30.google.cloud.aiplatform.v1.CompleteTrialRequest\x1a!.google.cloud.aiplatform.v1.Trial\"H\x82\xd3\xe4\x93\x02\x42\"=/v1/{name=projects/*/locations/*/studies/*/trials/*}:complete:\x01*\x12\x9a\x01\n\x0b\x44\x65leteTrial\x12..google.cloud.aiplatform.v1.DeleteTrialRequest\x1a\x16.google.protobuf.Empty\"C\x82\xd3\xe4\x93\x02\x36*4/v1/{name=projects/*/locations/*/studies/*/trials/*}\xda\x41\x04name\x12\xb3\x02\n\x1c\x43heckTrialEarlyStoppingState\x12?.google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateRequest\x1a\x1d.google.longrunning.Operation\"\xb2\x01\x82\xd3\xe4\x93\x02\\\"W/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:checkTrialEarlyStoppingState:\x01*\xca\x41M\n$CheckTrialEarlyStoppingStateResponse\x12%CheckTrialEarlyStoppingStateMetatdata\x12\xa2\x01\n\tStopTrial\x12,.google.cloud.aiplatform.v1.StopTrialRequest\x1a!.google.cloud.aiplatform.v1.Trial\"D\x82\xd3\xe4\x93\x02>\"9/v1/{name=projects/*/locations/*/studies/*/trials/*}:stop:\x01*\x12\xdc\x01\n\x11ListOptimalTrials\x12\x34.google.cloud.aiplatform.v1.ListOptimalTrialsRequest\x1a\x35.google.cloud.aiplatform.v1.ListOptimalTrialsResponse\"Z\x82\xd3\xe4\x93\x02K\"F/v1/{parent=projects/*/locations/*/studies/*}/trials:listOptimalTrials:\x01*\xda\x41\x06parent\x1aM\xca\x41\x19\x61iplatform.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xd0\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\x12VizierServiceProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3"
|
19
|
+
|
20
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
21
|
+
|
22
|
+
begin
|
23
|
+
pool.add_serialized_file(descriptor_data)
|
24
|
+
rescue TypeError => e
|
25
|
+
# Compatibility code: will be removed in the next major version.
|
26
|
+
require 'google/protobuf/descriptor_pb'
|
27
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
28
|
+
parsed.clear_dependency
|
29
|
+
serialized = parsed.class.encode(parsed)
|
30
|
+
file = pool.add_serialized_file(serialized)
|
31
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
32
|
+
imports = [
|
33
|
+
["google.cloud.aiplatform.v1.Study", "google/cloud/aiplatform/v1/study.proto"],
|
34
|
+
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
35
|
+
["google.cloud.aiplatform.v1.GenericOperationMetadata", "google/cloud/aiplatform/v1/operation.proto"],
|
36
|
+
]
|
37
|
+
imports.each do |type_name, expected_filename|
|
38
|
+
import_file = pool.lookup(type_name).file_descriptor
|
39
|
+
if import_file.name != expected_filename
|
40
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
104
41
|
end
|
105
42
|
end
|
43
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
44
|
+
warn "This will become an error in the next major version."
|
106
45
|
end
|
107
46
|
|
108
47
|
module Google
|
@@ -53,7 +53,8 @@ module Google
|
|
53
53
|
# suggested by Vertex AI Vizier. Returns a long-running
|
54
54
|
# operation associated with the generation of Trial suggestions.
|
55
55
|
# When this long-running operation succeeds, it will contain
|
56
|
-
# a
|
56
|
+
# a
|
57
|
+
# [SuggestTrialsResponse][google.cloud.aiplatform.v1.SuggestTrialsResponse].
|
57
58
|
rpc :SuggestTrials, ::Google::Cloud::AIPlatform::V1::SuggestTrialsRequest, ::Google::Longrunning::Operation
|
58
59
|
# Adds a user provided Trial to a Study.
|
59
60
|
rpc :CreateTrial, ::Google::Cloud::AIPlatform::V1::CreateTrialRequest, ::Google::Cloud::AIPlatform::V1::Trial
|
@@ -200,7 +200,7 @@ module Google
|
|
200
200
|
# @!attribute [rw] entity_id_field
|
201
201
|
# @return [::String]
|
202
202
|
# Source column that holds entity IDs. If not provided, entity IDs are
|
203
|
-
# extracted from the column named
|
203
|
+
# extracted from the column named entity_id.
|
204
204
|
# @!attribute [rw] feature_specs
|
205
205
|
# @return [::Array<::Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest::FeatureSpec>]
|
206
206
|
# Required. Specifications defining which Feature values to import from the
|
@@ -983,6 +983,10 @@ module Google
|
|
983
983
|
# @return [::Integer]
|
984
984
|
# The number rows that weren't ingested due to having timestamps outside the
|
985
985
|
# retention boundary.
|
986
|
+
# @!attribute [rw] blocking_operation_ids
|
987
|
+
# @return [::Array<::Integer>]
|
988
|
+
# List of ImportFeatureValues operations running under a single EntityType
|
989
|
+
# that are blocking this operation.
|
986
990
|
class ImportFeatureValuesOperationMetadata
|
987
991
|
include ::Google::Protobuf::MessageExts
|
988
992
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1155,7 +1159,7 @@ module Google
|
|
1155
1159
|
# @!attribute [rw] entity_id_field
|
1156
1160
|
# @return [::String]
|
1157
1161
|
# Source column that holds entity IDs. If not provided, entity IDs are
|
1158
|
-
# extracted from the column named
|
1162
|
+
# extracted from the column named entity_id.
|
1159
1163
|
class EntityIdSelector
|
1160
1164
|
include ::Google::Protobuf::MessageExts
|
1161
1165
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -145,17 +145,16 @@ module Google
|
|
145
145
|
# Output only. The DeployedIndex may depend on various data on its original
|
146
146
|
# Index. Additionally when certain changes to the original Index are being
|
147
147
|
# done (e.g. when what the Index contains is being changed) the DeployedIndex
|
148
|
-
# may be asynchronously updated in the background to reflect
|
149
|
-
# this timestamp's value is at least the
|
148
|
+
# may be asynchronously updated in the background to reflect these changes.
|
149
|
+
# If this timestamp's value is at least the
|
150
150
|
# {::Google::Cloud::AIPlatform::V1::Index#update_time Index.update_time} of the
|
151
151
|
# original Index, it means that this DeployedIndex and the original Index are
|
152
152
|
# in sync. If this timestamp is older, then to see which updates this
|
153
|
-
# DeployedIndex already contains (and which not), one must
|
154
|
-
#
|
155
|
-
#
|
156
|
-
#
|
157
|
-
#
|
158
|
-
# [google.cloud.aiplatform.v1.GenericOperationMetadata.update_time]
|
153
|
+
# DeployedIndex already contains (and which it does not), one must
|
154
|
+
# list the operations that
|
155
|
+
# are running on the original Index. Only the successfully completed
|
156
|
+
# Operations with
|
157
|
+
# {::Google::Cloud::AIPlatform::V1::GenericOperationMetadata#update_time update_time}
|
159
158
|
# equal or before this sync time are contained in this DeployedIndex.
|
160
159
|
# @!attribute [rw] automatic_resources
|
161
160
|
# @return [::Google::Cloud::AIPlatform::V1::AutomaticResources]
|
@@ -210,6 +210,9 @@ module Google
|
|
210
210
|
# To filter on metadata fields use traversal operation as follows:
|
211
211
|
# `metadata.<field_name>.<type_value>`.
|
212
212
|
# For example: `metadata.field_1.number_value = 10.0`
|
213
|
+
# In case the field name contains special characters (such as colon), one
|
214
|
+
# can embed it inside double quote.
|
215
|
+
# For example: `metadata."field:1".number_value = 10.0`
|
213
216
|
# * **Context based filtering**:
|
214
217
|
# To filter Artifacts based on the contexts to which they belong, use the
|
215
218
|
# function operator with the full resource name
|
@@ -262,7 +265,6 @@ module Google
|
|
262
265
|
# @!attribute [rw] update_mask
|
263
266
|
# @return [::Google::Protobuf::FieldMask]
|
264
267
|
# Optional. A FieldMask indicating which fields should be updated.
|
265
|
-
# Functionality of this field is not yet supported.
|
266
268
|
# @!attribute [rw] allow_missing
|
267
269
|
# @return [::Boolean]
|
268
270
|
# If set to true, and the {::Google::Cloud::AIPlatform::V1::Artifact Artifact} is
|
@@ -411,6 +413,9 @@ module Google
|
|
411
413
|
# To filter on metadata fields use traversal operation as follows:
|
412
414
|
# `metadata.<field_name>.<type_value>`.
|
413
415
|
# For example: `metadata.field_1.number_value = 10.0`.
|
416
|
+
# In case the field name contains special characters (such as colon), one
|
417
|
+
# can embed it inside double quote.
|
418
|
+
# For example: `metadata."field:1".number_value = 10.0`
|
414
419
|
# * **Parent Child filtering**:
|
415
420
|
# To filter Contexts based on parent-child relationship use the HAS
|
416
421
|
# operator as follows:
|
@@ -467,7 +472,6 @@ module Google
|
|
467
472
|
# @!attribute [rw] update_mask
|
468
473
|
# @return [::Google::Protobuf::FieldMask]
|
469
474
|
# Optional. A FieldMask indicating which fields should be updated.
|
470
|
-
# Functionality of this field is not yet supported.
|
471
475
|
# @!attribute [rw] allow_missing
|
472
476
|
# @return [::Boolean]
|
473
477
|
# If set to true, and the {::Google::Cloud::AIPlatform::V1::Context Context} is
|
@@ -716,6 +720,9 @@ module Google
|
|
716
720
|
# To filter on metadata fields use traversal operation as follows:
|
717
721
|
# `metadata.<field_name>.<type_value>`
|
718
722
|
# For example: `metadata.field_1.number_value = 10.0`
|
723
|
+
# In case the field name contains special characters (such as colon), one
|
724
|
+
# can embed it inside double quote.
|
725
|
+
# For example: `metadata."field:1".number_value = 10.0`
|
719
726
|
# * **Context based filtering**:
|
720
727
|
# To filter Executions based on the contexts to which they belong use
|
721
728
|
# the function operator with the full resource name:
|
@@ -768,7 +775,6 @@ module Google
|
|
768
775
|
# @!attribute [rw] update_mask
|
769
776
|
# @return [::Google::Protobuf::FieldMask]
|
770
777
|
# Optional. A FieldMask indicating which fields should be updated.
|
771
|
-
# Functionality of this field is not yet supported.
|
772
778
|
# @!attribute [rw] allow_missing
|
773
779
|
# @return [::Boolean]
|
774
780
|
# If set to true, and the {::Google::Cloud::AIPlatform::V1::Execution Execution}
|
@@ -997,6 +1003,9 @@ module Google
|
|
997
1003
|
# To filter on metadata fields use traversal operation as follows:
|
998
1004
|
# `metadata.<field_name>.<type_value>`.
|
999
1005
|
# For example: `metadata.field_1.number_value = 10.0`
|
1006
|
+
# In case the field name contains special characters (such as colon), one
|
1007
|
+
# can embed it inside double quote.
|
1008
|
+
# For example: `metadata."field:1".number_value = 10.0`
|
1000
1009
|
#
|
1001
1010
|
# Each of the above supported filter types can be combined together using
|
1002
1011
|
# logical operators (`AND` & `OR`). Maximum nested expression depth allowed
|
@@ -92,6 +92,9 @@ module Google
|
|
92
92
|
# @return [::String]
|
93
93
|
# Output only. The resource name of the TrainingPipeline that uploaded this
|
94
94
|
# Model, if any.
|
95
|
+
# @!attribute [rw] pipeline_job
|
96
|
+
# @return [::String]
|
97
|
+
# This field is populated if the model is produced by a pipeline job.
|
95
98
|
# @!attribute [rw] container_spec
|
96
99
|
# @return [::Google::Cloud::AIPlatform::V1::ModelContainerSpec]
|
97
100
|
# Input only. The specification of the container that is to be used when
|
@@ -381,6 +384,17 @@ module Google
|
|
381
384
|
end
|
382
385
|
end
|
383
386
|
|
387
|
+
# Contains information about the Large Model.
|
388
|
+
# @!attribute [rw] name
|
389
|
+
# @return [::String]
|
390
|
+
# Required. The unique name of the large Foundation or pre-built model. Like
|
391
|
+
# "chat-bison", "text-bison". Or model name with version ID, like
|
392
|
+
# "chat-bison@001", "text-bison@005", etc.
|
393
|
+
class LargeModelReference
|
394
|
+
include ::Google::Protobuf::MessageExts
|
395
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
396
|
+
end
|
397
|
+
|
384
398
|
# Contains the schemata used in Model's predictions and explanations via
|
385
399
|
# {::Google::Cloud::AIPlatform::V1::PredictionService::Client#predict PredictionService.Predict},
|
386
400
|
# {::Google::Cloud::AIPlatform::V1::PredictionService::Client#explain PredictionService.Explain}
|
@@ -44,8 +44,9 @@ module Google
|
|
44
44
|
# Output only. Timestamp when this ModelEvaluation was created.
|
45
45
|
# @!attribute [rw] slice_dimensions
|
46
46
|
# @return [::Array<::String>]
|
47
|
-
# All possible
|
48
|
-
#
|
47
|
+
# All possible
|
48
|
+
# {::Google::Cloud::AIPlatform::V1::ModelEvaluationSlice::Slice#dimension dimensions}
|
49
|
+
# of ModelEvaluationSlices. The dimensions can be used as the filter of the
|
49
50
|
# {::Google::Cloud::AIPlatform::V1::ModelService::Client#list_model_evaluation_slices ModelService.ListModelEvaluationSlices}
|
50
51
|
# request, in the form of `slice.dimension = <dimension>`.
|
51
52
|
# @!attribute [rw] data_item_schema_uri
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module AIPlatform
|
23
|
+
module V1
|
24
|
+
# Request message for
|
25
|
+
# {::Google::Cloud::AIPlatform::V1::ModelGardenService::Client#get_publisher_model ModelGardenService.GetPublisherModel}
|
26
|
+
# @!attribute [rw] name
|
27
|
+
# @return [::String]
|
28
|
+
# Required. The name of the PublisherModel resource.
|
29
|
+
# Format:
|
30
|
+
# `publishers/{publisher}/models/{publisher_model}`
|
31
|
+
# @!attribute [rw] language_code
|
32
|
+
# @return [::String]
|
33
|
+
# Optional. The IETF BCP-47 language code representing the language in which
|
34
|
+
# the publisher model's text information should be written in (see go/bcp47).
|
35
|
+
# @!attribute [rw] view
|
36
|
+
# @return [::Google::Cloud::AIPlatform::V1::PublisherModelView]
|
37
|
+
# Optional. PublisherModel view specifying which fields to read.
|
38
|
+
class GetPublisherModelRequest
|
39
|
+
include ::Google::Protobuf::MessageExts
|
40
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
41
|
+
end
|
42
|
+
|
43
|
+
# View enumeration of PublisherModel.
|
44
|
+
module PublisherModelView
|
45
|
+
# The default / unset value. The API will default to the BASIC view.
|
46
|
+
PUBLISHER_MODEL_VIEW_UNSPECIFIED = 0
|
47
|
+
|
48
|
+
# Include basic metadata about the publisher model, but not the full
|
49
|
+
# contents.
|
50
|
+
PUBLISHER_MODEL_VIEW_BASIC = 1
|
51
|
+
|
52
|
+
# Include everything.
|
53
|
+
PUBLISHER_MODEL_VIEW_FULL = 2
|
54
|
+
|
55
|
+
# Include: VersionId, ModelVersionExternalName, and SupportedActions.
|
56
|
+
PUBLISHER_MODEL_VERSION_VIEW_BASIC = 3
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|