blob: 4306d532d28cc5ab8162ff76ad6cf089be1a52cd [file] [log] [blame]
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.33.0
// protoc v4.25.3
// source: google/cloud/visionai/v1/platform.proto
package visionaipb
import (
context "context"
reflect "reflect"
sync "sync"
longrunningpb "cloud.google.com/go/longrunning/autogen/longrunningpb"
_ "google.golang.org/genproto/googleapis/api/annotations"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
durationpb "google.golang.org/protobuf/types/known/durationpb"
_ "google.golang.org/protobuf/types/known/emptypb"
fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
structpb "google.golang.org/protobuf/types/known/structpb"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// All the supported model types in Vision AI App Platform.
type ModelType int32
const (
// Processor Type UNSPECIFIED.
ModelType_MODEL_TYPE_UNSPECIFIED ModelType = 0
// Model Type Image Classification.
ModelType_IMAGE_CLASSIFICATION ModelType = 1
// Model Type Object Detection.
ModelType_OBJECT_DETECTION ModelType = 2
// Model Type Video Classification.
ModelType_VIDEO_CLASSIFICATION ModelType = 3
// Model Type Object Tracking.
ModelType_VIDEO_OBJECT_TRACKING ModelType = 4
// Model Type Action Recognition.
ModelType_VIDEO_ACTION_RECOGNITION ModelType = 5
// Model Type Occupancy Counting.
ModelType_OCCUPANCY_COUNTING ModelType = 6
// Model Type Person Blur.
ModelType_PERSON_BLUR ModelType = 7
// Model Type Vertex Custom.
ModelType_VERTEX_CUSTOM ModelType = 8
// Model Type Product Recognizer.
ModelType_PRODUCT_RECOGNIZER ModelType = 9
// Model Type Tag Recognizer.
ModelType_TAG_RECOGNIZER ModelType = 10
// Model Type SynthID.
ModelType_SYNTH_ID ModelType = 15
)
// Enum value maps for ModelType.
var (
ModelType_name = map[int32]string{
0: "MODEL_TYPE_UNSPECIFIED",
1: "IMAGE_CLASSIFICATION",
2: "OBJECT_DETECTION",
3: "VIDEO_CLASSIFICATION",
4: "VIDEO_OBJECT_TRACKING",
5: "VIDEO_ACTION_RECOGNITION",
6: "OCCUPANCY_COUNTING",
7: "PERSON_BLUR",
8: "VERTEX_CUSTOM",
9: "PRODUCT_RECOGNIZER",
10: "TAG_RECOGNIZER",
15: "SYNTH_ID",
}
ModelType_value = map[string]int32{
"MODEL_TYPE_UNSPECIFIED": 0,
"IMAGE_CLASSIFICATION": 1,
"OBJECT_DETECTION": 2,
"VIDEO_CLASSIFICATION": 3,
"VIDEO_OBJECT_TRACKING": 4,
"VIDEO_ACTION_RECOGNITION": 5,
"OCCUPANCY_COUNTING": 6,
"PERSON_BLUR": 7,
"VERTEX_CUSTOM": 8,
"PRODUCT_RECOGNIZER": 9,
"TAG_RECOGNIZER": 10,
"SYNTH_ID": 15,
}
)
func (x ModelType) Enum() *ModelType {
p := new(ModelType)
*p = x
return p
}
func (x ModelType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ModelType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[0].Descriptor()
}
func (ModelType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[0]
}
func (x ModelType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ModelType.Descriptor instead.
func (ModelType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{0}
}
// Represents a hardware accelerator type.
type AcceleratorType int32
const (
// Unspecified accelerator type, which means no accelerator.
AcceleratorType_ACCELERATOR_TYPE_UNSPECIFIED AcceleratorType = 0
// Nvidia Tesla K80 GPU.
AcceleratorType_NVIDIA_TESLA_K80 AcceleratorType = 1
// Nvidia Tesla P100 GPU.
AcceleratorType_NVIDIA_TESLA_P100 AcceleratorType = 2
// Nvidia Tesla V100 GPU.
AcceleratorType_NVIDIA_TESLA_V100 AcceleratorType = 3
// Nvidia Tesla P4 GPU.
AcceleratorType_NVIDIA_TESLA_P4 AcceleratorType = 4
// Nvidia Tesla T4 GPU.
AcceleratorType_NVIDIA_TESLA_T4 AcceleratorType = 5
// Nvidia Tesla A100 GPU.
AcceleratorType_NVIDIA_TESLA_A100 AcceleratorType = 8
// TPU v2.
AcceleratorType_TPU_V2 AcceleratorType = 6
// TPU v3.
AcceleratorType_TPU_V3 AcceleratorType = 7
)
// Enum value maps for AcceleratorType.
var (
AcceleratorType_name = map[int32]string{
0: "ACCELERATOR_TYPE_UNSPECIFIED",
1: "NVIDIA_TESLA_K80",
2: "NVIDIA_TESLA_P100",
3: "NVIDIA_TESLA_V100",
4: "NVIDIA_TESLA_P4",
5: "NVIDIA_TESLA_T4",
8: "NVIDIA_TESLA_A100",
6: "TPU_V2",
7: "TPU_V3",
}
AcceleratorType_value = map[string]int32{
"ACCELERATOR_TYPE_UNSPECIFIED": 0,
"NVIDIA_TESLA_K80": 1,
"NVIDIA_TESLA_P100": 2,
"NVIDIA_TESLA_V100": 3,
"NVIDIA_TESLA_P4": 4,
"NVIDIA_TESLA_T4": 5,
"NVIDIA_TESLA_A100": 8,
"TPU_V2": 6,
"TPU_V3": 7,
}
)
func (x AcceleratorType) Enum() *AcceleratorType {
p := new(AcceleratorType)
*p = x
return p
}
func (x AcceleratorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (AcceleratorType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[1].Descriptor()
}
func (AcceleratorType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[1]
}
func (x AcceleratorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use AcceleratorType.Descriptor instead.
func (AcceleratorType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{1}
}
// All supported data types.
type DataType int32
const (
// The default value of DataType.
DataType_DATA_TYPE_UNSPECIFIED DataType = 0
// Video data type like H264.
DataType_VIDEO DataType = 1
// Image data type.
DataType_IMAGE DataType = 3
// Protobuf data type, usually used for general data blob.
DataType_PROTO DataType = 2
// A placeholder data type, applicable for the universal input processor which
// supports any data type. This will be instantiated and replaced by a
// concrete underlying `DataType` during instance deployment.
DataType_PLACEHOLDER DataType = 4
)
// Enum value maps for DataType.
var (
DataType_name = map[int32]string{
0: "DATA_TYPE_UNSPECIFIED",
1: "VIDEO",
3: "IMAGE",
2: "PROTO",
4: "PLACEHOLDER",
}
DataType_value = map[string]int32{
"DATA_TYPE_UNSPECIFIED": 0,
"VIDEO": 1,
"IMAGE": 3,
"PROTO": 2,
"PLACEHOLDER": 4,
}
)
func (x DataType) Enum() *DataType {
p := new(DataType)
*p = x
return p
}
func (x DataType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DataType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[2].Descriptor()
}
func (DataType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[2]
}
func (x DataType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DataType.Descriptor instead.
func (DataType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{2}
}
// State of the Application
type Application_State int32
const (
// The default value. This value is used if the state is omitted.
Application_STATE_UNSPECIFIED Application_State = 0
// State CREATED.
Application_CREATED Application_State = 1
// State DEPLOYING.
Application_DEPLOYING Application_State = 2
// State DEPLOYED.
Application_DEPLOYED Application_State = 3
// State UNDEPLOYING.
Application_UNDEPLOYING Application_State = 4
// State DELETED.
Application_DELETED Application_State = 5
// State ERROR.
Application_ERROR Application_State = 6
// State CREATING.
Application_CREATING Application_State = 7
// State Updating.
Application_UPDATING Application_State = 8
// State Deleting.
Application_DELETING Application_State = 9
// State Fixing.
Application_FIXING Application_State = 10
)
// Enum value maps for Application_State.
var (
Application_State_name = map[int32]string{
0: "STATE_UNSPECIFIED",
1: "CREATED",
2: "DEPLOYING",
3: "DEPLOYED",
4: "UNDEPLOYING",
5: "DELETED",
6: "ERROR",
7: "CREATING",
8: "UPDATING",
9: "DELETING",
10: "FIXING",
}
Application_State_value = map[string]int32{
"STATE_UNSPECIFIED": 0,
"CREATED": 1,
"DEPLOYING": 2,
"DEPLOYED": 3,
"UNDEPLOYING": 4,
"DELETED": 5,
"ERROR": 6,
"CREATING": 7,
"UPDATING": 8,
"DELETING": 9,
"FIXING": 10,
}
)
func (x Application_State) Enum() *Application_State {
p := new(Application_State)
*p = x
return p
}
func (x Application_State) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Application_State) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[3].Descriptor()
}
func (Application_State) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[3]
}
func (x Application_State) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Application_State.Descriptor instead.
func (Application_State) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40, 0}
}
// Billing mode of the Application
type Application_BillingMode int32
const (
// The default value.
Application_BILLING_MODE_UNSPECIFIED Application_BillingMode = 0
// Pay as you go billing mode.
Application_PAYG Application_BillingMode = 1
// Monthly billing mode.
Application_MONTHLY Application_BillingMode = 2
)
// Enum value maps for Application_BillingMode.
var (
Application_BillingMode_name = map[int32]string{
0: "BILLING_MODE_UNSPECIFIED",
1: "PAYG",
2: "MONTHLY",
}
Application_BillingMode_value = map[string]int32{
"BILLING_MODE_UNSPECIFIED": 0,
"PAYG": 1,
"MONTHLY": 2,
}
)
func (x Application_BillingMode) Enum() *Application_BillingMode {
p := new(Application_BillingMode)
*p = x
return p
}
func (x Application_BillingMode) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Application_BillingMode) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[4].Descriptor()
}
func (Application_BillingMode) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[4]
}
func (x Application_BillingMode) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Application_BillingMode.Descriptor instead.
func (Application_BillingMode) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40, 1}
}
// All the supported instance types.
type Instance_InstanceType int32
const (
// Unspecified instance type.
// If the instance type is not specified, the default one is
// STREAMING_PREDICTION.
Instance_INSTANCE_TYPE_UNSPECIFIED Instance_InstanceType = 0
// Instance type for streaming prediction.
Instance_STREAMING_PREDICTION Instance_InstanceType = 1
// Instance type for batch prediction.
Instance_BATCH_PREDICTION Instance_InstanceType = 2
// Instance type for online prediction.
Instance_ONLINE_PREDICTION Instance_InstanceType = 3
)
// Enum value maps for Instance_InstanceType.
var (
Instance_InstanceType_name = map[int32]string{
0: "INSTANCE_TYPE_UNSPECIFIED",
1: "STREAMING_PREDICTION",
2: "BATCH_PREDICTION",
3: "ONLINE_PREDICTION",
}
Instance_InstanceType_value = map[string]int32{
"INSTANCE_TYPE_UNSPECIFIED": 0,
"STREAMING_PREDICTION": 1,
"BATCH_PREDICTION": 2,
"ONLINE_PREDICTION": 3,
}
)
func (x Instance_InstanceType) Enum() *Instance_InstanceType {
p := new(Instance_InstanceType)
*p = x
return p
}
func (x Instance_InstanceType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Instance_InstanceType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[5].Descriptor()
}
func (Instance_InstanceType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[5]
}
func (x Instance_InstanceType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Instance_InstanceType.Descriptor instead.
func (Instance_InstanceType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{44, 0}
}
// State of the Instance
type Instance_State int32
const (
// The default value. This value is used if the state is omitted.
Instance_STATE_UNSPECIFIED Instance_State = 0
// State CREATING.
Instance_CREATING Instance_State = 1
// State CREATED.
Instance_CREATED Instance_State = 2
// State DEPLOYING.
Instance_DEPLOYING Instance_State = 3
// State DEPLOYED.
Instance_DEPLOYED Instance_State = 4
// State UNDEPLOYING.
Instance_UNDEPLOYING Instance_State = 5
// State DELETED.
Instance_DELETED Instance_State = 6
// State ERROR.
Instance_ERROR Instance_State = 7
// State Updating
Instance_UPDATING Instance_State = 8
// State Deleting.
Instance_DELETING Instance_State = 9
// State Fixing.
Instance_FIXING Instance_State = 10
// State Finished.
Instance_FINISHED Instance_State = 11
)
// Enum value maps for Instance_State.
var (
Instance_State_name = map[int32]string{
0: "STATE_UNSPECIFIED",
1: "CREATING",
2: "CREATED",
3: "DEPLOYING",
4: "DEPLOYED",
5: "UNDEPLOYING",
6: "DELETED",
7: "ERROR",
8: "UPDATING",
9: "DELETING",
10: "FIXING",
11: "FINISHED",
}
Instance_State_value = map[string]int32{
"STATE_UNSPECIFIED": 0,
"CREATING": 1,
"CREATED": 2,
"DEPLOYING": 3,
"DEPLOYED": 4,
"UNDEPLOYING": 5,
"DELETED": 6,
"ERROR": 7,
"UPDATING": 8,
"DELETING": 9,
"FIXING": 10,
"FINISHED": 11,
}
)
func (x Instance_State) Enum() *Instance_State {
p := new(Instance_State)
*p = x
return p
}
func (x Instance_State) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Instance_State) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[6].Descriptor()
}
func (Instance_State) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[6]
}
func (x Instance_State) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Instance_State.Descriptor instead.
func (Instance_State) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{44, 1}
}
// Type
type Processor_ProcessorType int32
const (
// Processor Type UNSPECIFIED.
Processor_PROCESSOR_TYPE_UNSPECIFIED Processor_ProcessorType = 0
// Processor Type PRETRAINED.
// Pretrained processor is developed by Vision AI App Platform with
// state-of-the-art vision data processing functionality, like occupancy
// counting or person blur. Pretrained processor is usually publicly
// available.
Processor_PRETRAINED Processor_ProcessorType = 1
// Processor Type CUSTOM.
// Custom processors are specialized processors which are either uploaded by
// customers or imported from other GCP platform (for example Vertex AI).
// Custom processor is only visible to the creator.
Processor_CUSTOM Processor_ProcessorType = 2
// Processor Type CONNECTOR.
// Connector processors are special processors which perform I/O for the
// application, they do not processing the data but either deliver the data
// to other processors or receive data from other processors.
Processor_CONNECTOR Processor_ProcessorType = 3
)
// Enum value maps for Processor_ProcessorType.
var (
Processor_ProcessorType_name = map[int32]string{
0: "PROCESSOR_TYPE_UNSPECIFIED",
1: "PRETRAINED",
2: "CUSTOM",
3: "CONNECTOR",
}
Processor_ProcessorType_value = map[string]int32{
"PROCESSOR_TYPE_UNSPECIFIED": 0,
"PRETRAINED": 1,
"CUSTOM": 2,
"CONNECTOR": 3,
}
)
func (x Processor_ProcessorType) Enum() *Processor_ProcessorType {
p := new(Processor_ProcessorType)
*p = x
return p
}
func (x Processor_ProcessorType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Processor_ProcessorType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[7].Descriptor()
}
func (Processor_ProcessorType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[7]
}
func (x Processor_ProcessorType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Processor_ProcessorType.Descriptor instead.
func (Processor_ProcessorType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{46, 0}
}
type Processor_ProcessorState int32
const (
// Unspecified Processor state.
Processor_PROCESSOR_STATE_UNSPECIFIED Processor_ProcessorState = 0
// Processor is being created (not ready for use).
Processor_CREATING Processor_ProcessorState = 1
// Processor is and ready for use.
Processor_ACTIVE Processor_ProcessorState = 2
// Processor is being deleted (not ready for use).
Processor_DELETING Processor_ProcessorState = 3
// Processor deleted or creation failed .
Processor_FAILED Processor_ProcessorState = 4
)
// Enum value maps for Processor_ProcessorState.
var (
Processor_ProcessorState_name = map[int32]string{
0: "PROCESSOR_STATE_UNSPECIFIED",
1: "CREATING",
2: "ACTIVE",
3: "DELETING",
4: "FAILED",
}
Processor_ProcessorState_value = map[string]int32{
"PROCESSOR_STATE_UNSPECIFIED": 0,
"CREATING": 1,
"ACTIVE": 2,
"DELETING": 3,
"FAILED": 4,
}
)
func (x Processor_ProcessorState) Enum() *Processor_ProcessorState {
p := new(Processor_ProcessorState)
*p = x
return p
}
func (x Processor_ProcessorState) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Processor_ProcessorState) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[8].Descriptor()
}
func (Processor_ProcessorState) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[8]
}
func (x Processor_ProcessorState) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Processor_ProcessorState.Descriptor instead.
func (Processor_ProcessorState) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{46, 1}
}
// Source type of the imported custom processor.
type CustomProcessorSourceInfo_SourceType int32
const (
// Source type unspecified.
CustomProcessorSourceInfo_SOURCE_TYPE_UNSPECIFIED CustomProcessorSourceInfo_SourceType = 0
// Custom processors coming from Vertex AutoML product.
CustomProcessorSourceInfo_VERTEX_AUTOML CustomProcessorSourceInfo_SourceType = 1
// Custom processors coming from general custom models from Vertex.
CustomProcessorSourceInfo_VERTEX_CUSTOM CustomProcessorSourceInfo_SourceType = 2
// Source for Product Recognizer.
CustomProcessorSourceInfo_PRODUCT_RECOGNIZER CustomProcessorSourceInfo_SourceType = 3
)
// Enum value maps for CustomProcessorSourceInfo_SourceType.
var (
CustomProcessorSourceInfo_SourceType_name = map[int32]string{
0: "SOURCE_TYPE_UNSPECIFIED",
1: "VERTEX_AUTOML",
2: "VERTEX_CUSTOM",
3: "PRODUCT_RECOGNIZER",
}
CustomProcessorSourceInfo_SourceType_value = map[string]int32{
"SOURCE_TYPE_UNSPECIFIED": 0,
"VERTEX_AUTOML": 1,
"VERTEX_CUSTOM": 2,
"PRODUCT_RECOGNIZER": 3,
}
)
func (x CustomProcessorSourceInfo_SourceType) Enum() *CustomProcessorSourceInfo_SourceType {
p := new(CustomProcessorSourceInfo_SourceType)
*p = x
return p
}
func (x CustomProcessorSourceInfo_SourceType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CustomProcessorSourceInfo_SourceType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[9].Descriptor()
}
func (CustomProcessorSourceInfo_SourceType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[9]
}
func (x CustomProcessorSourceInfo_SourceType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CustomProcessorSourceInfo_SourceType.Descriptor instead.
func (CustomProcessorSourceInfo_SourceType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{48, 0}
}
// Type of Person Blur
type PersonBlurConfig_PersonBlurType int32
const (
// PersonBlur Type UNSPECIFIED.
PersonBlurConfig_PERSON_BLUR_TYPE_UNSPECIFIED PersonBlurConfig_PersonBlurType = 0
// FaceBlur Type full occlusion.
PersonBlurConfig_FULL_OCCULUSION PersonBlurConfig_PersonBlurType = 1
// FaceBlur Type blur filter.
PersonBlurConfig_BLUR_FILTER PersonBlurConfig_PersonBlurType = 2
)
// Enum value maps for PersonBlurConfig_PersonBlurType.
var (
PersonBlurConfig_PersonBlurType_name = map[int32]string{
0: "PERSON_BLUR_TYPE_UNSPECIFIED",
1: "FULL_OCCULUSION",
2: "BLUR_FILTER",
}
PersonBlurConfig_PersonBlurType_value = map[string]int32{
"PERSON_BLUR_TYPE_UNSPECIFIED": 0,
"FULL_OCCULUSION": 1,
"BLUR_FILTER": 2,
}
)
func (x PersonBlurConfig_PersonBlurType) Enum() *PersonBlurConfig_PersonBlurType {
p := new(PersonBlurConfig_PersonBlurType)
*p = x
return p
}
func (x PersonBlurConfig_PersonBlurType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (PersonBlurConfig_PersonBlurType) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[10].Descriptor()
}
func (PersonBlurConfig_PersonBlurType) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[10]
}
func (x PersonBlurConfig_PersonBlurType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use PersonBlurConfig_PersonBlurType.Descriptor instead.
func (PersonBlurConfig_PersonBlurType) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{56, 0}
}
// Type of entity matching strategy.
type TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy int32
const (
// If unspecified, multi-line matching will be used by default.
TagParsingConfig_EntityParsingConfig_ENTITY_MATCHING_STRATEGY_UNSPECIFIED TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy = 0
// Matches multiple lines of text.
TagParsingConfig_EntityParsingConfig_MULTI_LINE_MATCHING TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy = 1
// Matches the line with the maximum overlap area with entity bounding
// box.
TagParsingConfig_EntityParsingConfig_MAX_OVERLAP_AREA TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy = 2
)
// Enum value maps for TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy.
var (
TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy_name = map[int32]string{
0: "ENTITY_MATCHING_STRATEGY_UNSPECIFIED",
1: "MULTI_LINE_MATCHING",
2: "MAX_OVERLAP_AREA",
}
TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy_value = map[string]int32{
"ENTITY_MATCHING_STRATEGY_UNSPECIFIED": 0,
"MULTI_LINE_MATCHING": 1,
"MAX_OVERLAP_AREA": 2,
}
)
func (x TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) Enum() *TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy {
p := new(TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy)
*p = x
return p
}
func (x TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_visionai_v1_platform_proto_enumTypes[11].Descriptor()
}
func (TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) Type() protoreflect.EnumType {
return &file_google_cloud_visionai_v1_platform_proto_enumTypes[11]
}
func (x TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy.Descriptor instead.
func (TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{72, 0, 0}
}
// Message for DeleteApplicationInstance Response.
type DeleteApplicationInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *DeleteApplicationInstancesResponse) Reset() {
*x = DeleteApplicationInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteApplicationInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteApplicationInstancesResponse) ProtoMessage() {}
func (x *DeleteApplicationInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteApplicationInstancesResponse.ProtoReflect.Descriptor instead.
func (*DeleteApplicationInstancesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{0}
}
// Message for CreateApplicationInstance Response.
type CreateApplicationInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CreateApplicationInstancesResponse) Reset() {
*x = CreateApplicationInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateApplicationInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateApplicationInstancesResponse) ProtoMessage() {}
func (x *CreateApplicationInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateApplicationInstancesResponse.ProtoReflect.Descriptor instead.
func (*CreateApplicationInstancesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{1}
}
// Message for UpdateApplicationInstances Response.
type UpdateApplicationInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateApplicationInstancesResponse) Reset() {
*x = UpdateApplicationInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationInstancesResponse) ProtoMessage() {}
func (x *UpdateApplicationInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationInstancesResponse.ProtoReflect.Descriptor instead.
func (*UpdateApplicationInstancesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{2}
}
// Message for adding stream input to an Application.
type CreateApplicationInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Required. The resources being created.
ApplicationInstances []*ApplicationInstance `protobuf:"bytes,2,rep,name=application_instances,json=applicationInstances,proto3" json:"application_instances,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *CreateApplicationInstancesRequest) Reset() {
*x = CreateApplicationInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateApplicationInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateApplicationInstancesRequest) ProtoMessage() {}
func (x *CreateApplicationInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateApplicationInstancesRequest.ProtoReflect.Descriptor instead.
func (*CreateApplicationInstancesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{3}
}
func (x *CreateApplicationInstancesRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *CreateApplicationInstancesRequest) GetApplicationInstances() []*ApplicationInstance {
if x != nil {
return x.ApplicationInstances
}
return nil
}
func (x *CreateApplicationInstancesRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for removing stream input from an Application.
type DeleteApplicationInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Required. Id of the requesting object.
InstanceIds []string `protobuf:"bytes,2,rep,name=instance_ids,json=instanceIds,proto3" json:"instance_ids,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *DeleteApplicationInstancesRequest) Reset() {
*x = DeleteApplicationInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteApplicationInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteApplicationInstancesRequest) ProtoMessage() {}
func (x *DeleteApplicationInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteApplicationInstancesRequest.ProtoReflect.Descriptor instead.
func (*DeleteApplicationInstancesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{4}
}
func (x *DeleteApplicationInstancesRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteApplicationInstancesRequest) GetInstanceIds() []string {
if x != nil {
return x.InstanceIds
}
return nil
}
func (x *DeleteApplicationInstancesRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// RPC Request Messages.
// Message for DeployApplication Response.
type DeployApplicationResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *DeployApplicationResponse) Reset() {
*x = DeployApplicationResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeployApplicationResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeployApplicationResponse) ProtoMessage() {}
func (x *DeployApplicationResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeployApplicationResponse.ProtoReflect.Descriptor instead.
func (*DeployApplicationResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{5}
}
// Message for UndeployApplication Response.
type UndeployApplicationResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UndeployApplicationResponse) Reset() {
*x = UndeployApplicationResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UndeployApplicationResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UndeployApplicationResponse) ProtoMessage() {}
func (x *UndeployApplicationResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UndeployApplicationResponse.ProtoReflect.Descriptor instead.
func (*UndeployApplicationResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{6}
}
// Message for RemoveApplicationStreamInput Response.
type RemoveApplicationStreamInputResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *RemoveApplicationStreamInputResponse) Reset() {
*x = RemoveApplicationStreamInputResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RemoveApplicationStreamInputResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoveApplicationStreamInputResponse) ProtoMessage() {}
func (x *RemoveApplicationStreamInputResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RemoveApplicationStreamInputResponse.ProtoReflect.Descriptor instead.
func (*RemoveApplicationStreamInputResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{7}
}
// Message for AddApplicationStreamInput Response.
type AddApplicationStreamInputResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AddApplicationStreamInputResponse) Reset() {
*x = AddApplicationStreamInputResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddApplicationStreamInputResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddApplicationStreamInputResponse) ProtoMessage() {}
func (x *AddApplicationStreamInputResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AddApplicationStreamInputResponse.ProtoReflect.Descriptor instead.
func (*AddApplicationStreamInputResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{8}
}
// Message for AddApplicationStreamInput Response.
type UpdateApplicationStreamInputResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UpdateApplicationStreamInputResponse) Reset() {
*x = UpdateApplicationStreamInputResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationStreamInputResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationStreamInputResponse) ProtoMessage() {}
func (x *UpdateApplicationStreamInputResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationStreamInputResponse.ProtoReflect.Descriptor instead.
func (*UpdateApplicationStreamInputResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{9}
}
// Message for requesting list of Applications.
type ListApplicationsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Parent value for ListApplicationsRequest.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Requested page size. Server may return fewer items than requested.
// If unspecified, server will pick an appropriate default.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// A token identifying a page of results the server should return.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// Filtering results.
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// Hint for how to order the results.
OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
}
func (x *ListApplicationsRequest) Reset() {
*x = ListApplicationsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListApplicationsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListApplicationsRequest) ProtoMessage() {}
func (x *ListApplicationsRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListApplicationsRequest.ProtoReflect.Descriptor instead.
func (*ListApplicationsRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{10}
}
func (x *ListApplicationsRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListApplicationsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListApplicationsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListApplicationsRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
func (x *ListApplicationsRequest) GetOrderBy() string {
if x != nil {
return x.OrderBy
}
return ""
}
// Message for response to listing Applications.
type ListApplicationsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of Application.
Applications []*Application `protobuf:"bytes,1,rep,name=applications,proto3" json:"applications,omitempty"`
// A token identifying a page of results the server should return.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// Locations that could not be reached.
Unreachable []string `protobuf:"bytes,3,rep,name=unreachable,proto3" json:"unreachable,omitempty"`
}
func (x *ListApplicationsResponse) Reset() {
*x = ListApplicationsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListApplicationsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListApplicationsResponse) ProtoMessage() {}
func (x *ListApplicationsResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListApplicationsResponse.ProtoReflect.Descriptor instead.
func (*ListApplicationsResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{11}
}
func (x *ListApplicationsResponse) GetApplications() []*Application {
if x != nil {
return x.Applications
}
return nil
}
func (x *ListApplicationsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListApplicationsResponse) GetUnreachable() []string {
if x != nil {
return x.Unreachable
}
return nil
}
// Message for getting a Application.
type GetApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *GetApplicationRequest) Reset() {
*x = GetApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetApplicationRequest) ProtoMessage() {}
func (x *GetApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetApplicationRequest.ProtoReflect.Descriptor instead.
func (*GetApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{12}
}
func (x *GetApplicationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// Message for creating a Application.
type CreateApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Value for parent.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. Id of the requesting object.
ApplicationId string `protobuf:"bytes,2,opt,name=application_id,json=applicationId,proto3" json:"application_id,omitempty"`
// Required. The resource being created.
Application *Application `protobuf:"bytes,3,opt,name=application,proto3" json:"application,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *CreateApplicationRequest) Reset() {
*x = CreateApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateApplicationRequest) ProtoMessage() {}
func (x *CreateApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateApplicationRequest.ProtoReflect.Descriptor instead.
func (*CreateApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{13}
}
func (x *CreateApplicationRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *CreateApplicationRequest) GetApplicationId() string {
if x != nil {
return x.ApplicationId
}
return ""
}
func (x *CreateApplicationRequest) GetApplication() *Application {
if x != nil {
return x.Application
}
return nil
}
func (x *CreateApplicationRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for updating an Application.
type UpdateApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Optional. Field mask is used to specify the fields to be overwritten in the
// Application resource by the update.
// The fields specified in the update_mask are relative to the resource, not
// the full request. A field will be overwritten if it is in the mask. If the
// user does not provide a mask then all fields will be overwritten.
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
// Required. The resource being updated.
Application *Application `protobuf:"bytes,2,opt,name=application,proto3" json:"application,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *UpdateApplicationRequest) Reset() {
*x = UpdateApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationRequest) ProtoMessage() {}
func (x *UpdateApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationRequest.ProtoReflect.Descriptor instead.
func (*UpdateApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{14}
}
func (x *UpdateApplicationRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
if x != nil {
return x.UpdateMask
}
return nil
}
func (x *UpdateApplicationRequest) GetApplication() *Application {
if x != nil {
return x.Application
}
return nil
}
func (x *UpdateApplicationRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for deleting an Application.
type DeleteApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes after the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Optional. If set to true, any instances and drafts from this application
// will also be deleted. (Otherwise, the request will only work if the
// application has no instances and drafts.)
Force bool `protobuf:"varint,3,opt,name=force,proto3" json:"force,omitempty"`
}
func (x *DeleteApplicationRequest) Reset() {
*x = DeleteApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteApplicationRequest) ProtoMessage() {}
func (x *DeleteApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteApplicationRequest.ProtoReflect.Descriptor instead.
func (*DeleteApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{15}
}
func (x *DeleteApplicationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteApplicationRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
func (x *DeleteApplicationRequest) GetForce() bool {
if x != nil {
return x.Force
}
return false
}
// Message for deploying an Application.
type DeployApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// If set, validate the request and preview the application graph, but do not
// actually deploy it.
ValidateOnly bool `protobuf:"varint,2,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Optional. Whether or not to enable monitoring for the application on
// deployment.
EnableMonitoring bool `protobuf:"varint,4,opt,name=enable_monitoring,json=enableMonitoring,proto3" json:"enable_monitoring,omitempty"`
}
func (x *DeployApplicationRequest) Reset() {
*x = DeployApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeployApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeployApplicationRequest) ProtoMessage() {}
func (x *DeployApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeployApplicationRequest.ProtoReflect.Descriptor instead.
func (*DeployApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{16}
}
func (x *DeployApplicationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeployApplicationRequest) GetValidateOnly() bool {
if x != nil {
return x.ValidateOnly
}
return false
}
func (x *DeployApplicationRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
func (x *DeployApplicationRequest) GetEnableMonitoring() bool {
if x != nil {
return x.EnableMonitoring
}
return false
}
// Message for undeploying an Application.
type UndeployApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *UndeployApplicationRequest) Reset() {
*x = UndeployApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UndeployApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UndeployApplicationRequest) ProtoMessage() {}
func (x *UndeployApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UndeployApplicationRequest.ProtoReflect.Descriptor instead.
func (*UndeployApplicationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{17}
}
func (x *UndeployApplicationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UndeployApplicationRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message about a single stream input config.
type ApplicationStreamInput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
StreamWithAnnotation *StreamWithAnnotation `protobuf:"bytes,1,opt,name=stream_with_annotation,json=streamWithAnnotation,proto3" json:"stream_with_annotation,omitempty"`
}
func (x *ApplicationStreamInput) Reset() {
*x = ApplicationStreamInput{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApplicationStreamInput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApplicationStreamInput) ProtoMessage() {}
func (x *ApplicationStreamInput) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApplicationStreamInput.ProtoReflect.Descriptor instead.
func (*ApplicationStreamInput) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{18}
}
func (x *ApplicationStreamInput) GetStreamWithAnnotation() *StreamWithAnnotation {
if x != nil {
return x.StreamWithAnnotation
}
return nil
}
// Message for adding stream input to an Application.
type AddApplicationStreamInputRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The stream inputs to add, the stream resource name is the key of each
// StreamInput, and it must be unique within each application.
ApplicationStreamInputs []*ApplicationStreamInput `protobuf:"bytes,2,rep,name=application_stream_inputs,json=applicationStreamInputs,proto3" json:"application_stream_inputs,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *AddApplicationStreamInputRequest) Reset() {
*x = AddApplicationStreamInputRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddApplicationStreamInputRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddApplicationStreamInputRequest) ProtoMessage() {}
func (x *AddApplicationStreamInputRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AddApplicationStreamInputRequest.ProtoReflect.Descriptor instead.
func (*AddApplicationStreamInputRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{19}
}
func (x *AddApplicationStreamInputRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *AddApplicationStreamInputRequest) GetApplicationStreamInputs() []*ApplicationStreamInput {
if x != nil {
return x.ApplicationStreamInputs
}
return nil
}
func (x *AddApplicationStreamInputRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for updating stream input to an Application.
type UpdateApplicationStreamInputRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The stream inputs to update, the stream resource name is the key of each
// StreamInput, and it must be unique within each application.
ApplicationStreamInputs []*ApplicationStreamInput `protobuf:"bytes,2,rep,name=application_stream_inputs,json=applicationStreamInputs,proto3" json:"application_stream_inputs,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// If true, UpdateApplicationStreamInput will insert stream input to
// application even if the target stream is not included in the application.
AllowMissing bool `protobuf:"varint,4,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
}
func (x *UpdateApplicationStreamInputRequest) Reset() {
*x = UpdateApplicationStreamInputRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationStreamInputRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationStreamInputRequest) ProtoMessage() {}
func (x *UpdateApplicationStreamInputRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationStreamInputRequest.ProtoReflect.Descriptor instead.
func (*UpdateApplicationStreamInputRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{20}
}
func (x *UpdateApplicationStreamInputRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UpdateApplicationStreamInputRequest) GetApplicationStreamInputs() []*ApplicationStreamInput {
if x != nil {
return x.ApplicationStreamInputs
}
return nil
}
func (x *UpdateApplicationStreamInputRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
func (x *UpdateApplicationStreamInputRequest) GetAllowMissing() bool {
if x != nil {
return x.AllowMissing
}
return false
}
// Message for removing stream input from an Application.
type RemoveApplicationStreamInputRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The target stream to remove.
TargetStreamInputs []*RemoveApplicationStreamInputRequest_TargetStreamInput `protobuf:"bytes,2,rep,name=target_stream_inputs,json=targetStreamInputs,proto3" json:"target_stream_inputs,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *RemoveApplicationStreamInputRequest) Reset() {
*x = RemoveApplicationStreamInputRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RemoveApplicationStreamInputRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoveApplicationStreamInputRequest) ProtoMessage() {}
func (x *RemoveApplicationStreamInputRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RemoveApplicationStreamInputRequest.ProtoReflect.Descriptor instead.
func (*RemoveApplicationStreamInputRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{21}
}
func (x *RemoveApplicationStreamInputRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *RemoveApplicationStreamInputRequest) GetTargetStreamInputs() []*RemoveApplicationStreamInputRequest_TargetStreamInput {
if x != nil {
return x.TargetStreamInputs
}
return nil
}
func (x *RemoveApplicationStreamInputRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for requesting list of Instances.
type ListInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Parent value for ListInstancesRequest.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Requested page size. Server may return fewer items than requested.
// If unspecified, server will pick an appropriate default.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// A token identifying a page of results the server should return.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// Filtering results.
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// Hint for how to order the results.
OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
}
func (x *ListInstancesRequest) Reset() {
*x = ListInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListInstancesRequest) ProtoMessage() {}
func (x *ListInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListInstancesRequest.ProtoReflect.Descriptor instead.
func (*ListInstancesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{22}
}
func (x *ListInstancesRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListInstancesRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListInstancesRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListInstancesRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
func (x *ListInstancesRequest) GetOrderBy() string {
if x != nil {
return x.OrderBy
}
return ""
}
// Message for response to listing Instances.
type ListInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of Instance.
Instances []*Instance `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
// A token identifying a page of results the server should return.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// Locations that could not be reached.
Unreachable []string `protobuf:"bytes,3,rep,name=unreachable,proto3" json:"unreachable,omitempty"`
}
func (x *ListInstancesResponse) Reset() {
*x = ListInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListInstancesResponse) ProtoMessage() {}
func (x *ListInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListInstancesResponse.ProtoReflect.Descriptor instead.
func (*ListInstancesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{23}
}
func (x *ListInstancesResponse) GetInstances() []*Instance {
if x != nil {
return x.Instances
}
return nil
}
func (x *ListInstancesResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListInstancesResponse) GetUnreachable() []string {
if x != nil {
return x.Unreachable
}
return nil
}
// Message for getting a Instance.
type GetInstanceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *GetInstanceRequest) Reset() {
*x = GetInstanceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetInstanceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetInstanceRequest) ProtoMessage() {}
func (x *GetInstanceRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetInstanceRequest.ProtoReflect.Descriptor instead.
func (*GetInstanceRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{24}
}
func (x *GetInstanceRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// Message for requesting list of Drafts.
type ListDraftsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Parent value for ListDraftsRequest.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Requested page size. Server may return fewer items than requested.
// If unspecified, server will pick an appropriate default.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// A token identifying a page of results the server should return.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// Filtering results.
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// Hint for how to order the results.
OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
}
func (x *ListDraftsRequest) Reset() {
*x = ListDraftsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListDraftsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListDraftsRequest) ProtoMessage() {}
func (x *ListDraftsRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListDraftsRequest.ProtoReflect.Descriptor instead.
func (*ListDraftsRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{25}
}
func (x *ListDraftsRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListDraftsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListDraftsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListDraftsRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
func (x *ListDraftsRequest) GetOrderBy() string {
if x != nil {
return x.OrderBy
}
return ""
}
// Message for response to listing Drafts.
type ListDraftsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of Draft.
Drafts []*Draft `protobuf:"bytes,1,rep,name=drafts,proto3" json:"drafts,omitempty"`
// A token identifying a page of results the server should return.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// Locations that could not be reached.
Unreachable []string `protobuf:"bytes,3,rep,name=unreachable,proto3" json:"unreachable,omitempty"`
}
func (x *ListDraftsResponse) Reset() {
*x = ListDraftsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListDraftsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListDraftsResponse) ProtoMessage() {}
func (x *ListDraftsResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListDraftsResponse.ProtoReflect.Descriptor instead.
func (*ListDraftsResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{26}
}
func (x *ListDraftsResponse) GetDrafts() []*Draft {
if x != nil {
return x.Drafts
}
return nil
}
func (x *ListDraftsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListDraftsResponse) GetUnreachable() []string {
if x != nil {
return x.Unreachable
}
return nil
}
// Message for getting a Draft.
type GetDraftRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *GetDraftRequest) Reset() {
*x = GetDraftRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetDraftRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetDraftRequest) ProtoMessage() {}
func (x *GetDraftRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetDraftRequest.ProtoReflect.Descriptor instead.
func (*GetDraftRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{27}
}
func (x *GetDraftRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// Message for creating a Draft.
type CreateDraftRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Value for parent.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. Id of the requesting object.
DraftId string `protobuf:"bytes,2,opt,name=draft_id,json=draftId,proto3" json:"draft_id,omitempty"`
// Required. The resource being created.
Draft *Draft `protobuf:"bytes,3,opt,name=draft,proto3" json:"draft,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *CreateDraftRequest) Reset() {
*x = CreateDraftRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateDraftRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateDraftRequest) ProtoMessage() {}
func (x *CreateDraftRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateDraftRequest.ProtoReflect.Descriptor instead.
func (*CreateDraftRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{28}
}
func (x *CreateDraftRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *CreateDraftRequest) GetDraftId() string {
if x != nil {
return x.DraftId
}
return ""
}
func (x *CreateDraftRequest) GetDraft() *Draft {
if x != nil {
return x.Draft
}
return nil
}
func (x *CreateDraftRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for updating a Draft.
type UpdateDraftRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Optional. Field mask is used to specify the fields to be overwritten in the
// Draft resource by the update.
// The fields specified in the update_mask are relative to the resource, not
// the full request. A field will be overwritten if it is in the mask. If the
// user does not provide a mask then all fields will be overwritten.
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
// Required. The resource being updated.
Draft *Draft `protobuf:"bytes,2,opt,name=draft,proto3" json:"draft,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// If true, UpdateDraftRequest will create one resource if the target resource
// doesn't exist, this time, the field_mask will be ignored.
AllowMissing bool `protobuf:"varint,4,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
}
func (x *UpdateDraftRequest) Reset() {
*x = UpdateDraftRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateDraftRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateDraftRequest) ProtoMessage() {}
func (x *UpdateDraftRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateDraftRequest.ProtoReflect.Descriptor instead.
func (*UpdateDraftRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{29}
}
func (x *UpdateDraftRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
if x != nil {
return x.UpdateMask
}
return nil
}
func (x *UpdateDraftRequest) GetDraft() *Draft {
if x != nil {
return x.Draft
}
return nil
}
func (x *UpdateDraftRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
func (x *UpdateDraftRequest) GetAllowMissing() bool {
if x != nil {
return x.AllowMissing
}
return false
}
// Message for updating an ApplicationInstance.
type UpdateApplicationInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. the name of the application to retrieve.
// Format:
// "projects/{project}/locations/{location}/applications/{application}"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
ApplicationInstances []*UpdateApplicationInstancesRequest_UpdateApplicationInstance `protobuf:"bytes,2,rep,name=application_instances,json=applicationInstances,proto3" json:"application_instances,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// If true, Update Request will create one resource if the target resource
// doesn't exist, this time, the field_mask will be ignored.
AllowMissing bool `protobuf:"varint,4,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
}
func (x *UpdateApplicationInstancesRequest) Reset() {
*x = UpdateApplicationInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationInstancesRequest) ProtoMessage() {}
func (x *UpdateApplicationInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationInstancesRequest.ProtoReflect.Descriptor instead.
func (*UpdateApplicationInstancesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{30}
}
func (x *UpdateApplicationInstancesRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *UpdateApplicationInstancesRequest) GetApplicationInstances() []*UpdateApplicationInstancesRequest_UpdateApplicationInstance {
if x != nil {
return x.ApplicationInstances
}
return nil
}
func (x *UpdateApplicationInstancesRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
func (x *UpdateApplicationInstancesRequest) GetAllowMissing() bool {
if x != nil {
return x.AllowMissing
}
return false
}
// Message for deleting a Draft.
type DeleteDraftRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes after the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *DeleteDraftRequest) Reset() {
*x = DeleteDraftRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteDraftRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteDraftRequest) ProtoMessage() {}
func (x *DeleteDraftRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteDraftRequest.ProtoReflect.Descriptor instead.
func (*DeleteDraftRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{31}
}
func (x *DeleteDraftRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteDraftRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for requesting list of Processors.
type ListProcessorsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Parent value for ListProcessorsRequest.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Requested page size. Server may return fewer items than requested.
// If unspecified, server will pick an appropriate default.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// A token identifying a page of results the server should return.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// Filtering results.
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// Hint for how to order the results.
OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
}
func (x *ListProcessorsRequest) Reset() {
*x = ListProcessorsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListProcessorsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListProcessorsRequest) ProtoMessage() {}
func (x *ListProcessorsRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListProcessorsRequest.ProtoReflect.Descriptor instead.
func (*ListProcessorsRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{32}
}
func (x *ListProcessorsRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListProcessorsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListProcessorsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListProcessorsRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
func (x *ListProcessorsRequest) GetOrderBy() string {
if x != nil {
return x.OrderBy
}
return ""
}
// Message for response to listing Processors.
type ListProcessorsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of Processor.
Processors []*Processor `protobuf:"bytes,1,rep,name=processors,proto3" json:"processors,omitempty"`
// A token identifying a page of results the server should return.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// Locations that could not be reached.
Unreachable []string `protobuf:"bytes,3,rep,name=unreachable,proto3" json:"unreachable,omitempty"`
}
func (x *ListProcessorsResponse) Reset() {
*x = ListProcessorsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListProcessorsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListProcessorsResponse) ProtoMessage() {}
func (x *ListProcessorsResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListProcessorsResponse.ProtoReflect.Descriptor instead.
func (*ListProcessorsResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{33}
}
func (x *ListProcessorsResponse) GetProcessors() []*Processor {
if x != nil {
return x.Processors
}
return nil
}
func (x *ListProcessorsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListProcessorsResponse) GetUnreachable() []string {
if x != nil {
return x.Unreachable
}
return nil
}
// Request Message for listing Prebuilt Processors.
type ListPrebuiltProcessorsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Parent path.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
}
func (x *ListPrebuiltProcessorsRequest) Reset() {
*x = ListPrebuiltProcessorsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListPrebuiltProcessorsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListPrebuiltProcessorsRequest) ProtoMessage() {}
func (x *ListPrebuiltProcessorsRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListPrebuiltProcessorsRequest.ProtoReflect.Descriptor instead.
func (*ListPrebuiltProcessorsRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{34}
}
func (x *ListPrebuiltProcessorsRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
// Response Message for listing Prebuilt Processors.
type ListPrebuiltProcessorsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of Processor.
Processors []*Processor `protobuf:"bytes,1,rep,name=processors,proto3" json:"processors,omitempty"`
}
func (x *ListPrebuiltProcessorsResponse) Reset() {
*x = ListPrebuiltProcessorsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListPrebuiltProcessorsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListPrebuiltProcessorsResponse) ProtoMessage() {}
func (x *ListPrebuiltProcessorsResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListPrebuiltProcessorsResponse.ProtoReflect.Descriptor instead.
func (*ListPrebuiltProcessorsResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{35}
}
func (x *ListPrebuiltProcessorsResponse) GetProcessors() []*Processor {
if x != nil {
return x.Processors
}
return nil
}
// Message for getting a Processor.
type GetProcessorRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *GetProcessorRequest) Reset() {
*x = GetProcessorRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetProcessorRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetProcessorRequest) ProtoMessage() {}
func (x *GetProcessorRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetProcessorRequest.ProtoReflect.Descriptor instead.
func (*GetProcessorRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{36}
}
func (x *GetProcessorRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// Message for creating a Processor.
type CreateProcessorRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Value for parent.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. Id of the requesting object.
ProcessorId string `protobuf:"bytes,2,opt,name=processor_id,json=processorId,proto3" json:"processor_id,omitempty"`
// Required. The resource being created.
Processor *Processor `protobuf:"bytes,3,opt,name=processor,proto3" json:"processor,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *CreateProcessorRequest) Reset() {
*x = CreateProcessorRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateProcessorRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateProcessorRequest) ProtoMessage() {}
func (x *CreateProcessorRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateProcessorRequest.ProtoReflect.Descriptor instead.
func (*CreateProcessorRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{37}
}
func (x *CreateProcessorRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *CreateProcessorRequest) GetProcessorId() string {
if x != nil {
return x.ProcessorId
}
return ""
}
func (x *CreateProcessorRequest) GetProcessor() *Processor {
if x != nil {
return x.Processor
}
return nil
}
func (x *CreateProcessorRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for updating a Processor.
type UpdateProcessorRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Optional. Field mask is used to specify the fields to be overwritten in the
// Processor resource by the update.
// The fields specified in the update_mask are relative to the resource, not
// the full request. A field will be overwritten if it is in the mask. If the
// user does not provide a mask then all fields will be overwritten.
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
// Required. The resource being updated.
Processor *Processor `protobuf:"bytes,2,opt,name=processor,proto3" json:"processor,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,3,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *UpdateProcessorRequest) Reset() {
*x = UpdateProcessorRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateProcessorRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateProcessorRequest) ProtoMessage() {}
func (x *UpdateProcessorRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateProcessorRequest.ProtoReflect.Descriptor instead.
func (*UpdateProcessorRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{38}
}
func (x *UpdateProcessorRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
if x != nil {
return x.UpdateMask
}
return nil
}
func (x *UpdateProcessorRequest) GetProcessor() *Processor {
if x != nil {
return x.Processor
}
return nil
}
func (x *UpdateProcessorRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message for deleting a Processor.
type DeleteProcessorRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Name of the resource
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes after the first request.
//
// For example, consider a situation where you make an initial request and
// the request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
}
func (x *DeleteProcessorRequest) Reset() {
*x = DeleteProcessorRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteProcessorRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteProcessorRequest) ProtoMessage() {}
func (x *DeleteProcessorRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteProcessorRequest.ProtoReflect.Descriptor instead.
func (*DeleteProcessorRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{39}
}
func (x *DeleteProcessorRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteProcessorRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
// Message describing Application object
type Application struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// name of resource
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. [Output only] Create timestamp
CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
// Output only. [Output only] Update timestamp
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// Labels as key value pairs
Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Required. A user friendly display name for the solution.
DisplayName string `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// A description for this application.
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
// Application graph configuration.
ApplicationConfigs *ApplicationConfigs `protobuf:"bytes,7,opt,name=application_configs,json=applicationConfigs,proto3" json:"application_configs,omitempty"`
// Output only. Application graph runtime info. Only exists when application
// state equals to DEPLOYED.
RuntimeInfo *Application_ApplicationRuntimeInfo `protobuf:"bytes,8,opt,name=runtime_info,json=runtimeInfo,proto3" json:"runtime_info,omitempty"`
// Output only. State of the application.
State Application_State `protobuf:"varint,9,opt,name=state,proto3,enum=google.cloud.visionai.v1.Application_State" json:"state,omitempty"`
// Billing mode of the application.
BillingMode Application_BillingMode `protobuf:"varint,12,opt,name=billing_mode,json=billingMode,proto3,enum=google.cloud.visionai.v1.Application_BillingMode" json:"billing_mode,omitempty"`
}
func (x *Application) Reset() {
*x = Application{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Application) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Application) ProtoMessage() {}
func (x *Application) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Application.ProtoReflect.Descriptor instead.
func (*Application) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40}
}
func (x *Application) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Application) GetCreateTime() *timestamppb.Timestamp {
if x != nil {
return x.CreateTime
}
return nil
}
func (x *Application) GetUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.UpdateTime
}
return nil
}
func (x *Application) GetLabels() map[string]string {
if x != nil {
return x.Labels
}
return nil
}
func (x *Application) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *Application) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *Application) GetApplicationConfigs() *ApplicationConfigs {
if x != nil {
return x.ApplicationConfigs
}
return nil
}
func (x *Application) GetRuntimeInfo() *Application_ApplicationRuntimeInfo {
if x != nil {
return x.RuntimeInfo
}
return nil
}
func (x *Application) GetState() Application_State {
if x != nil {
return x.State
}
return Application_STATE_UNSPECIFIED
}
func (x *Application) GetBillingMode() Application_BillingMode {
if x != nil {
return x.BillingMode
}
return Application_BILLING_MODE_UNSPECIFIED
}
// Message storing the graph of the application.
type ApplicationConfigs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A list of nodes in the application graph.
Nodes []*Node `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
// Event-related configuration for this application.
EventDeliveryConfig *ApplicationConfigs_EventDeliveryConfig `protobuf:"bytes,3,opt,name=event_delivery_config,json=eventDeliveryConfig,proto3" json:"event_delivery_config,omitempty"`
}
func (x *ApplicationConfigs) Reset() {
*x = ApplicationConfigs{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApplicationConfigs) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApplicationConfigs) ProtoMessage() {}
func (x *ApplicationConfigs) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApplicationConfigs.ProtoReflect.Descriptor instead.
func (*ApplicationConfigs) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{41}
}
func (x *ApplicationConfigs) GetNodes() []*Node {
if x != nil {
return x.Nodes
}
return nil
}
func (x *ApplicationConfigs) GetEventDeliveryConfig() *ApplicationConfigs_EventDeliveryConfig {
if x != nil {
return x.EventDeliveryConfig
}
return nil
}
// Message describing node object.
type Node struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to StreamOutputConfig:
//
// *Node_OutputAllOutputChannelsToStream
StreamOutputConfig isNode_StreamOutputConfig `protobuf_oneof:"stream_output_config"`
// Required. A unique name for the node.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// A user friendly display name for the node.
DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// Node config.
NodeConfig *ProcessorConfig `protobuf:"bytes,3,opt,name=node_config,json=nodeConfig,proto3" json:"node_config,omitempty"`
// Processor name refer to the chosen processor resource.
Processor string `protobuf:"bytes,4,opt,name=processor,proto3" json:"processor,omitempty"`
// Parent node. Input node should not have parent node. For V1 Alpha1/Beta
// only media warehouse node can have multiple parents, other types of nodes
// will only have one parent.
Parents []*Node_InputEdge `protobuf:"bytes,5,rep,name=parents,proto3" json:"parents,omitempty"`
}
func (x *Node) Reset() {
*x = Node{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Node) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Node) ProtoMessage() {}
func (x *Node) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Node.ProtoReflect.Descriptor instead.
func (*Node) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{42}
}
func (m *Node) GetStreamOutputConfig() isNode_StreamOutputConfig {
if m != nil {
return m.StreamOutputConfig
}
return nil
}
func (x *Node) GetOutputAllOutputChannelsToStream() bool {
if x, ok := x.GetStreamOutputConfig().(*Node_OutputAllOutputChannelsToStream); ok {
return x.OutputAllOutputChannelsToStream
}
return false
}
func (x *Node) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Node) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *Node) GetNodeConfig() *ProcessorConfig {
if x != nil {
return x.NodeConfig
}
return nil
}
func (x *Node) GetProcessor() string {
if x != nil {
return x.Processor
}
return ""
}
func (x *Node) GetParents() []*Node_InputEdge {
if x != nil {
return x.Parents
}
return nil
}
type isNode_StreamOutputConfig interface {
isNode_StreamOutputConfig()
}
type Node_OutputAllOutputChannelsToStream struct {
// By default, the output of the node will only be available to downstream
// nodes. To consume the direct output from the application node, the output
// must be sent to Vision AI Streams at first.
//
// By setting output_all_output_channels_to_stream to true, App Platform
// will automatically send all the outputs of the current node to Vision AI
// Stream resources (one stream per output channel). The output stream
// resource will be created by App Platform automatically during deployment
// and deleted after application un-deployment.
// Note that this config applies to all the Application Instances.
//
// The output stream can be override at instance level by
// configuring the `output_resources` section of Instance resource.
// `producer_node` should be current node, `output_resource_binding` should
// be the output channel name (or leave it blank if there is only 1 output
// channel of the processor) and `output_resource` should be the target
// output stream.
OutputAllOutputChannelsToStream bool `protobuf:"varint,6,opt,name=output_all_output_channels_to_stream,json=outputAllOutputChannelsToStream,proto3,oneof"`
}
func (*Node_OutputAllOutputChannelsToStream) isNode_StreamOutputConfig() {}
// Message describing Draft object
type Draft struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// name of resource
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. [Output only] Create timestamp
CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
// Output only. [Output only] Create timestamp
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// Labels as key value pairs
Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Required. A user friendly display name for the solution.
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// A description for this application.
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
// The draft application configs which haven't been updated to an application.
DraftApplicationConfigs *ApplicationConfigs `protobuf:"bytes,6,opt,name=draft_application_configs,json=draftApplicationConfigs,proto3" json:"draft_application_configs,omitempty"`
}
func (x *Draft) Reset() {
*x = Draft{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Draft) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Draft) ProtoMessage() {}
func (x *Draft) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[43]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Draft.ProtoReflect.Descriptor instead.
func (*Draft) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{43}
}
func (x *Draft) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Draft) GetCreateTime() *timestamppb.Timestamp {
if x != nil {
return x.CreateTime
}
return nil
}
func (x *Draft) GetUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.UpdateTime
}
return nil
}
func (x *Draft) GetLabels() map[string]string {
if x != nil {
return x.Labels
}
return nil
}
func (x *Draft) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *Draft) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *Draft) GetDraftApplicationConfigs() *ApplicationConfigs {
if x != nil {
return x.DraftApplicationConfigs
}
return nil
}
// Message describing Instance object
// Next ID: 12
type Instance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Output only. name of resource
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. [Output only] Create timestamp
CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
// Output only. [Output only] Update timestamp
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// Labels as key value pairs
Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Required. A user friendly display name for the solution.
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// A description for this instance.
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
// The instance type for the current instance.
InstanceType Instance_InstanceType `protobuf:"varint,10,opt,name=instance_type,json=instanceType,proto3,enum=google.cloud.visionai.v1.Instance_InstanceType" json:"instance_type,omitempty"`
// The input resources for the current application instance.
// For example:
// input_resources:
// visionai.googleapis.com/v1/projects/123/locations/us-central1/clusters/456/streams/stream-a
InputResources []*Instance_InputResource `protobuf:"bytes,6,rep,name=input_resources,json=inputResources,proto3" json:"input_resources,omitempty"`
// All the output resources associated to one application instance.
OutputResources []*Instance_OutputResource `protobuf:"bytes,7,rep,name=output_resources,json=outputResources,proto3" json:"output_resources,omitempty"`
// State of the instance.
State Instance_State `protobuf:"varint,9,opt,name=state,proto3,enum=google.cloud.visionai.v1.Instance_State" json:"state,omitempty"`
}
func (x *Instance) Reset() {
*x = Instance{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Instance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Instance) ProtoMessage() {}
func (x *Instance) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[44]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Instance.ProtoReflect.Descriptor instead.
func (*Instance) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{44}
}
func (x *Instance) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Instance) GetCreateTime() *timestamppb.Timestamp {
if x != nil {
return x.CreateTime
}
return nil
}
func (x *Instance) GetUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.UpdateTime
}
return nil
}
func (x *Instance) GetLabels() map[string]string {
if x != nil {
return x.Labels
}
return nil
}
func (x *Instance) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *Instance) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *Instance) GetInstanceType() Instance_InstanceType {
if x != nil {
return x.InstanceType
}
return Instance_INSTANCE_TYPE_UNSPECIFIED
}
func (x *Instance) GetInputResources() []*Instance_InputResource {
if x != nil {
return x.InputResources
}
return nil
}
func (x *Instance) GetOutputResources() []*Instance_OutputResource {
if x != nil {
return x.OutputResources
}
return nil
}
func (x *Instance) GetState() Instance_State {
if x != nil {
return x.State
}
return Instance_STATE_UNSPECIFIED
}
// Message for creating a Instance.
type ApplicationInstance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Id of the requesting object.
InstanceId string `protobuf:"bytes,1,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
// Required. The resource being created.
Instance *Instance `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
}
func (x *ApplicationInstance) Reset() {
*x = ApplicationInstance{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApplicationInstance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApplicationInstance) ProtoMessage() {}
func (x *ApplicationInstance) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[45]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApplicationInstance.ProtoReflect.Descriptor instead.
func (*ApplicationInstance) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{45}
}
func (x *ApplicationInstance) GetInstanceId() string {
if x != nil {
return x.InstanceId
}
return ""
}
func (x *ApplicationInstance) GetInstance() *Instance {
if x != nil {
return x.Instance
}
return nil
}
// Message describing Processor object.
// Next ID: 19
type Processor struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// name of resource.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. [Output only] Create timestamp.
CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
// Output only. [Output only] Update timestamp.
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// Labels as key value pairs.
Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Required. A user friendly display name for the processor.
DisplayName string `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// Illustrative sentences for describing the functionality of the processor.
Description string `protobuf:"bytes,10,opt,name=description,proto3" json:"description,omitempty"`
// Output only. Processor Type.
ProcessorType Processor_ProcessorType `protobuf:"varint,6,opt,name=processor_type,json=processorType,proto3,enum=google.cloud.visionai.v1.Processor_ProcessorType" json:"processor_type,omitempty"`
// Model Type.
ModelType ModelType `protobuf:"varint,13,opt,name=model_type,json=modelType,proto3,enum=google.cloud.visionai.v1.ModelType" json:"model_type,omitempty"`
// Source info for customer created processor.
CustomProcessorSourceInfo *CustomProcessorSourceInfo `protobuf:"bytes,7,opt,name=custom_processor_source_info,json=customProcessorSourceInfo,proto3" json:"custom_processor_source_info,omitempty"`
// Output only. State of the Processor.
State Processor_ProcessorState `protobuf:"varint,8,opt,name=state,proto3,enum=google.cloud.visionai.v1.Processor_ProcessorState" json:"state,omitempty"`
// Output only. [Output only] The input / output specifications of a
// processor, each type of processor has fixed input / output specs which
// cannot be altered by customer.
ProcessorIoSpec *ProcessorIOSpec `protobuf:"bytes,11,opt,name=processor_io_spec,json=processorIoSpec,proto3" json:"processor_io_spec,omitempty"`
// Output only. The corresponding configuration can be used in the Application
// to customize the behavior of the processor.
ConfigurationTypeurl string `protobuf:"bytes,14,opt,name=configuration_typeurl,json=configurationTypeurl,proto3" json:"configuration_typeurl,omitempty"`
SupportedAnnotationTypes []StreamAnnotationType `protobuf:"varint,15,rep,packed,name=supported_annotation_types,json=supportedAnnotationTypes,proto3,enum=google.cloud.visionai.v1.StreamAnnotationType" json:"supported_annotation_types,omitempty"`
// Indicates if the processor supports post processing.
SupportsPostProcessing bool `protobuf:"varint,17,opt,name=supports_post_processing,json=supportsPostProcessing,proto3" json:"supports_post_processing,omitempty"`
// Which instance types this processor supports; if empty, this default to
// STREAMING_PREDICTION.
SupportedInstanceTypes []Instance_InstanceType `protobuf:"varint,18,rep,packed,name=supported_instance_types,json=supportedInstanceTypes,proto3,enum=google.cloud.visionai.v1.Instance_InstanceType" json:"supported_instance_types,omitempty"`
}
func (x *Processor) Reset() {
*x = Processor{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Processor) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Processor) ProtoMessage() {}
func (x *Processor) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[46]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Processor.ProtoReflect.Descriptor instead.
func (*Processor) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{46}
}
func (x *Processor) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Processor) GetCreateTime() *timestamppb.Timestamp {
if x != nil {
return x.CreateTime
}
return nil
}
func (x *Processor) GetUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.UpdateTime
}
return nil
}
func (x *Processor) GetLabels() map[string]string {
if x != nil {
return x.Labels
}
return nil
}
func (x *Processor) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *Processor) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *Processor) GetProcessorType() Processor_ProcessorType {
if x != nil {
return x.ProcessorType
}
return Processor_PROCESSOR_TYPE_UNSPECIFIED
}
func (x *Processor) GetModelType() ModelType {
if x != nil {
return x.ModelType
}
return ModelType_MODEL_TYPE_UNSPECIFIED
}
func (x *Processor) GetCustomProcessorSourceInfo() *CustomProcessorSourceInfo {
if x != nil {
return x.CustomProcessorSourceInfo
}
return nil
}
func (x *Processor) GetState() Processor_ProcessorState {
if x != nil {
return x.State
}
return Processor_PROCESSOR_STATE_UNSPECIFIED
}
func (x *Processor) GetProcessorIoSpec() *ProcessorIOSpec {
if x != nil {
return x.ProcessorIoSpec
}
return nil
}
func (x *Processor) GetConfigurationTypeurl() string {
if x != nil {
return x.ConfigurationTypeurl
}
return ""
}
func (x *Processor) GetSupportedAnnotationTypes() []StreamAnnotationType {
if x != nil {
return x.SupportedAnnotationTypes
}
return nil
}
func (x *Processor) GetSupportsPostProcessing() bool {
if x != nil {
return x.SupportsPostProcessing
}
return false
}
func (x *Processor) GetSupportedInstanceTypes() []Instance_InstanceType {
if x != nil {
return x.SupportedInstanceTypes
}
return nil
}
// Message describing the input / output specifications of a processor.
type ProcessorIOSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// For processors with input_channel_specs, the processor must be explicitly
// connected to another processor.
GraphInputChannelSpecs []*ProcessorIOSpec_GraphInputChannelSpec `protobuf:"bytes,3,rep,name=graph_input_channel_specs,json=graphInputChannelSpecs,proto3" json:"graph_input_channel_specs,omitempty"`
// The output artifact specifications for the current processor.
GraphOutputChannelSpecs []*ProcessorIOSpec_GraphOutputChannelSpec `protobuf:"bytes,4,rep,name=graph_output_channel_specs,json=graphOutputChannelSpecs,proto3" json:"graph_output_channel_specs,omitempty"`
// The input resource that needs to be fed from the application instance.
InstanceResourceInputBindingSpecs []*ProcessorIOSpec_InstanceResourceInputBindingSpec `protobuf:"bytes,5,rep,name=instance_resource_input_binding_specs,json=instanceResourceInputBindingSpecs,proto3" json:"instance_resource_input_binding_specs,omitempty"`
// The output resource that the processor will generate per instance.
// Other than the explicitly listed output bindings here, all the processors'
// GraphOutputChannels can be binded to stream resource. The bind name then is
// the same as the GraphOutputChannel's name.
InstanceResourceOutputBindingSpecs []*ProcessorIOSpec_InstanceResourceOutputBindingSpec `protobuf:"bytes,6,rep,name=instance_resource_output_binding_specs,json=instanceResourceOutputBindingSpecs,proto3" json:"instance_resource_output_binding_specs,omitempty"`
}
func (x *ProcessorIOSpec) Reset() {
*x = ProcessorIOSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorIOSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorIOSpec) ProtoMessage() {}
func (x *ProcessorIOSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[47]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorIOSpec.ProtoReflect.Descriptor instead.
func (*ProcessorIOSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{47}
}
func (x *ProcessorIOSpec) GetGraphInputChannelSpecs() []*ProcessorIOSpec_GraphInputChannelSpec {
if x != nil {
return x.GraphInputChannelSpecs
}
return nil
}
func (x *ProcessorIOSpec) GetGraphOutputChannelSpecs() []*ProcessorIOSpec_GraphOutputChannelSpec {
if x != nil {
return x.GraphOutputChannelSpecs
}
return nil
}
func (x *ProcessorIOSpec) GetInstanceResourceInputBindingSpecs() []*ProcessorIOSpec_InstanceResourceInputBindingSpec {
if x != nil {
return x.InstanceResourceInputBindingSpecs
}
return nil
}
func (x *ProcessorIOSpec) GetInstanceResourceOutputBindingSpecs() []*ProcessorIOSpec_InstanceResourceOutputBindingSpec {
if x != nil {
return x.InstanceResourceOutputBindingSpecs
}
return nil
}
// Describes the source info for a custom processor.
type CustomProcessorSourceInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The path where App Platform loads the artifacts for the custom processor.
//
// Types that are assignable to ArtifactPath:
//
// *CustomProcessorSourceInfo_VertexModel
// *CustomProcessorSourceInfo_ProductRecognizerArtifact_
ArtifactPath isCustomProcessorSourceInfo_ArtifactPath `protobuf_oneof:"artifact_path"`
// The original product which holds the custom processor's functionality.
SourceType CustomProcessorSourceInfo_SourceType `protobuf:"varint,1,opt,name=source_type,json=sourceType,proto3,enum=google.cloud.visionai.v1.CustomProcessorSourceInfo_SourceType" json:"source_type,omitempty"`
// Output only. Additional info related to the imported custom processor.
// Data is filled in by app platform during the processor creation.
AdditionalInfo map[string]string `protobuf:"bytes,4,rep,name=additional_info,json=additionalInfo,proto3" json:"additional_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Model schema files which specifies the signature of the model.
// For VERTEX_CUSTOM models, instances schema is required.
// If instances schema is not specified during the processor creation,
// VisionAI Platform will try to get it from Vertex, if it doesn't exist, the
// creation will fail.
ModelSchema *CustomProcessorSourceInfo_ModelSchema `protobuf:"bytes,5,opt,name=model_schema,json=modelSchema,proto3" json:"model_schema,omitempty"`
}
func (x *CustomProcessorSourceInfo) Reset() {
*x = CustomProcessorSourceInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CustomProcessorSourceInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CustomProcessorSourceInfo) ProtoMessage() {}
func (x *CustomProcessorSourceInfo) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[48]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CustomProcessorSourceInfo.ProtoReflect.Descriptor instead.
func (*CustomProcessorSourceInfo) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{48}
}
func (m *CustomProcessorSourceInfo) GetArtifactPath() isCustomProcessorSourceInfo_ArtifactPath {
if m != nil {
return m.ArtifactPath
}
return nil
}
func (x *CustomProcessorSourceInfo) GetVertexModel() string {
if x, ok := x.GetArtifactPath().(*CustomProcessorSourceInfo_VertexModel); ok {
return x.VertexModel
}
return ""
}
func (x *CustomProcessorSourceInfo) GetProductRecognizerArtifact() *CustomProcessorSourceInfo_ProductRecognizerArtifact {
if x, ok := x.GetArtifactPath().(*CustomProcessorSourceInfo_ProductRecognizerArtifact_); ok {
return x.ProductRecognizerArtifact
}
return nil
}
func (x *CustomProcessorSourceInfo) GetSourceType() CustomProcessorSourceInfo_SourceType {
if x != nil {
return x.SourceType
}
return CustomProcessorSourceInfo_SOURCE_TYPE_UNSPECIFIED
}
func (x *CustomProcessorSourceInfo) GetAdditionalInfo() map[string]string {
if x != nil {
return x.AdditionalInfo
}
return nil
}
func (x *CustomProcessorSourceInfo) GetModelSchema() *CustomProcessorSourceInfo_ModelSchema {
if x != nil {
return x.ModelSchema
}
return nil
}
type isCustomProcessorSourceInfo_ArtifactPath interface {
isCustomProcessorSourceInfo_ArtifactPath()
}
type CustomProcessorSourceInfo_VertexModel struct {
// The resource name original model hosted in the vertex AI platform.
VertexModel string `protobuf:"bytes,2,opt,name=vertex_model,json=vertexModel,proto3,oneof"`
}
type CustomProcessorSourceInfo_ProductRecognizerArtifact_ struct {
// Artifact for product recognizer.
ProductRecognizerArtifact *CustomProcessorSourceInfo_ProductRecognizerArtifact `protobuf:"bytes,3,opt,name=product_recognizer_artifact,json=productRecognizerArtifact,proto3,oneof"`
}
func (*CustomProcessorSourceInfo_VertexModel) isCustomProcessorSourceInfo_ArtifactPath() {}
func (*CustomProcessorSourceInfo_ProductRecognizerArtifact_) isCustomProcessorSourceInfo_ArtifactPath() {
}
// Next ID: 35
type ProcessorConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to ProcessorConfig:
//
// *ProcessorConfig_VideoStreamInputConfig
// *ProcessorConfig_AiEnabledDevicesInputConfig
// *ProcessorConfig_MediaWarehouseConfig
// *ProcessorConfig_PersonBlurConfig
// *ProcessorConfig_OccupancyCountConfig
// *ProcessorConfig_PersonVehicleDetectionConfig
// *ProcessorConfig_VertexAutomlVisionConfig
// *ProcessorConfig_VertexAutomlVideoConfig
// *ProcessorConfig_VertexCustomConfig
// *ProcessorConfig_GeneralObjectDetectionConfig
// *ProcessorConfig_BigQueryConfig
// *ProcessorConfig_GcsOutputConfig
// *ProcessorConfig_ProductRecognizerConfig
// *ProcessorConfig_PersonalProtectiveEquipmentDetectionConfig
// *ProcessorConfig_TagRecognizerConfig
// *ProcessorConfig_UniversalInputConfig
ProcessorConfig isProcessorConfig_ProcessorConfig `protobuf_oneof:"processor_config"`
// Experimental configurations. Structured object containing not-yet-stable
// processor parameters.
ExperimentalConfig *structpb.Struct `protobuf:"bytes,26,opt,name=experimental_config,json=experimentalConfig,proto3" json:"experimental_config,omitempty"`
}
func (x *ProcessorConfig) Reset() {
*x = ProcessorConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorConfig) ProtoMessage() {}
func (x *ProcessorConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[49]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorConfig.ProtoReflect.Descriptor instead.
func (*ProcessorConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{49}
}
func (m *ProcessorConfig) GetProcessorConfig() isProcessorConfig_ProcessorConfig {
if m != nil {
return m.ProcessorConfig
}
return nil
}
func (x *ProcessorConfig) GetVideoStreamInputConfig() *VideoStreamInputConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_VideoStreamInputConfig); ok {
return x.VideoStreamInputConfig
}
return nil
}
func (x *ProcessorConfig) GetAiEnabledDevicesInputConfig() *AIEnabledDevicesInputConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_AiEnabledDevicesInputConfig); ok {
return x.AiEnabledDevicesInputConfig
}
return nil
}
func (x *ProcessorConfig) GetMediaWarehouseConfig() *MediaWarehouseConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_MediaWarehouseConfig); ok {
return x.MediaWarehouseConfig
}
return nil
}
func (x *ProcessorConfig) GetPersonBlurConfig() *PersonBlurConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_PersonBlurConfig); ok {
return x.PersonBlurConfig
}
return nil
}
func (x *ProcessorConfig) GetOccupancyCountConfig() *OccupancyCountConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_OccupancyCountConfig); ok {
return x.OccupancyCountConfig
}
return nil
}
func (x *ProcessorConfig) GetPersonVehicleDetectionConfig() *PersonVehicleDetectionConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_PersonVehicleDetectionConfig); ok {
return x.PersonVehicleDetectionConfig
}
return nil
}
func (x *ProcessorConfig) GetVertexAutomlVisionConfig() *VertexAutoMLVisionConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_VertexAutomlVisionConfig); ok {
return x.VertexAutomlVisionConfig
}
return nil
}
func (x *ProcessorConfig) GetVertexAutomlVideoConfig() *VertexAutoMLVideoConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_VertexAutomlVideoConfig); ok {
return x.VertexAutomlVideoConfig
}
return nil
}
func (x *ProcessorConfig) GetVertexCustomConfig() *VertexCustomConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_VertexCustomConfig); ok {
return x.VertexCustomConfig
}
return nil
}
func (x *ProcessorConfig) GetGeneralObjectDetectionConfig() *GeneralObjectDetectionConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_GeneralObjectDetectionConfig); ok {
return x.GeneralObjectDetectionConfig
}
return nil
}
func (x *ProcessorConfig) GetBigQueryConfig() *BigQueryConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_BigQueryConfig); ok {
return x.BigQueryConfig
}
return nil
}
func (x *ProcessorConfig) GetGcsOutputConfig() *GcsOutputConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_GcsOutputConfig); ok {
return x.GcsOutputConfig
}
return nil
}
func (x *ProcessorConfig) GetProductRecognizerConfig() *ProductRecognizerConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_ProductRecognizerConfig); ok {
return x.ProductRecognizerConfig
}
return nil
}
func (x *ProcessorConfig) GetPersonalProtectiveEquipmentDetectionConfig() *PersonalProtectiveEquipmentDetectionConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_PersonalProtectiveEquipmentDetectionConfig); ok {
return x.PersonalProtectiveEquipmentDetectionConfig
}
return nil
}
func (x *ProcessorConfig) GetTagRecognizerConfig() *TagRecognizerConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_TagRecognizerConfig); ok {
return x.TagRecognizerConfig
}
return nil
}
func (x *ProcessorConfig) GetUniversalInputConfig() *UniversalInputConfig {
if x, ok := x.GetProcessorConfig().(*ProcessorConfig_UniversalInputConfig); ok {
return x.UniversalInputConfig
}
return nil
}
func (x *ProcessorConfig) GetExperimentalConfig() *structpb.Struct {
if x != nil {
return x.ExperimentalConfig
}
return nil
}
type isProcessorConfig_ProcessorConfig interface {
isProcessorConfig_ProcessorConfig()
}
type ProcessorConfig_VideoStreamInputConfig struct {
// Configs of stream input processor.
VideoStreamInputConfig *VideoStreamInputConfig `protobuf:"bytes,9,opt,name=video_stream_input_config,json=videoStreamInputConfig,proto3,oneof"`
}
type ProcessorConfig_AiEnabledDevicesInputConfig struct {
// Config of AI-enabled input devices.
AiEnabledDevicesInputConfig *AIEnabledDevicesInputConfig `protobuf:"bytes,20,opt,name=ai_enabled_devices_input_config,json=aiEnabledDevicesInputConfig,proto3,oneof"`
}
type ProcessorConfig_MediaWarehouseConfig struct {
// Configs of media warehouse processor.
MediaWarehouseConfig *MediaWarehouseConfig `protobuf:"bytes,10,opt,name=media_warehouse_config,json=mediaWarehouseConfig,proto3,oneof"`
}
type ProcessorConfig_PersonBlurConfig struct {
// Configs of person blur processor.
PersonBlurConfig *PersonBlurConfig `protobuf:"bytes,11,opt,name=person_blur_config,json=personBlurConfig,proto3,oneof"`
}
type ProcessorConfig_OccupancyCountConfig struct {
// Configs of occupancy count processor.
OccupancyCountConfig *OccupancyCountConfig `protobuf:"bytes,12,opt,name=occupancy_count_config,json=occupancyCountConfig,proto3,oneof"`
}
type ProcessorConfig_PersonVehicleDetectionConfig struct {
// Configs of Person Vehicle Detection processor.
PersonVehicleDetectionConfig *PersonVehicleDetectionConfig `protobuf:"bytes,15,opt,name=person_vehicle_detection_config,json=personVehicleDetectionConfig,proto3,oneof"`
}
type ProcessorConfig_VertexAutomlVisionConfig struct {
// Configs of Vertex AutoML vision processor.
VertexAutomlVisionConfig *VertexAutoMLVisionConfig `protobuf:"bytes,13,opt,name=vertex_automl_vision_config,json=vertexAutomlVisionConfig,proto3,oneof"`
}
type ProcessorConfig_VertexAutomlVideoConfig struct {
// Configs of Vertex AutoML video processor.
VertexAutomlVideoConfig *VertexAutoMLVideoConfig `protobuf:"bytes,14,opt,name=vertex_automl_video_config,json=vertexAutomlVideoConfig,proto3,oneof"`
}
type ProcessorConfig_VertexCustomConfig struct {
// Configs of Vertex Custom processor.
VertexCustomConfig *VertexCustomConfig `protobuf:"bytes,17,opt,name=vertex_custom_config,json=vertexCustomConfig,proto3,oneof"`
}
type ProcessorConfig_GeneralObjectDetectionConfig struct {
// Configs of General Object Detection processor.
GeneralObjectDetectionConfig *GeneralObjectDetectionConfig `protobuf:"bytes,18,opt,name=general_object_detection_config,json=generalObjectDetectionConfig,proto3,oneof"`
}
type ProcessorConfig_BigQueryConfig struct {
// Configs of BigQuery processor.
BigQueryConfig *BigQueryConfig `protobuf:"bytes,19,opt,name=big_query_config,json=bigQueryConfig,proto3,oneof"`
}
type ProcessorConfig_GcsOutputConfig struct {
// Configs of Cloud Storage output processor.
GcsOutputConfig *GcsOutputConfig `protobuf:"bytes,27,opt,name=gcs_output_config,json=gcsOutputConfig,proto3,oneof"`
}
type ProcessorConfig_ProductRecognizerConfig struct {
// Runtime configs of Product Recognizer processor.
ProductRecognizerConfig *ProductRecognizerConfig `protobuf:"bytes,21,opt,name=product_recognizer_config,json=productRecognizerConfig,proto3,oneof"`
}
type ProcessorConfig_PersonalProtectiveEquipmentDetectionConfig struct {
// Configs of personal_protective_equipment_detection_config
PersonalProtectiveEquipmentDetectionConfig *PersonalProtectiveEquipmentDetectionConfig `protobuf:"bytes,22,opt,name=personal_protective_equipment_detection_config,json=personalProtectiveEquipmentDetectionConfig,proto3,oneof"`
}
type ProcessorConfig_TagRecognizerConfig struct {
// Runtime configs of Tag Recognizer processor.
TagRecognizerConfig *TagRecognizerConfig `protobuf:"bytes,25,opt,name=tag_recognizer_config,json=tagRecognizerConfig,proto3,oneof"`
}
type ProcessorConfig_UniversalInputConfig struct {
// Runtime configs of UniversalInput processor.
UniversalInputConfig *UniversalInputConfig `protobuf:"bytes,28,opt,name=universal_input_config,json=universalInputConfig,proto3,oneof"`
}
func (*ProcessorConfig_VideoStreamInputConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_AiEnabledDevicesInputConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_MediaWarehouseConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_PersonBlurConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_OccupancyCountConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_PersonVehicleDetectionConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_VertexAutomlVisionConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_VertexAutomlVideoConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_VertexCustomConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_GeneralObjectDetectionConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_BigQueryConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_GcsOutputConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_ProductRecognizerConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_PersonalProtectiveEquipmentDetectionConfig) isProcessorConfig_ProcessorConfig() {
}
func (*ProcessorConfig_TagRecognizerConfig) isProcessorConfig_ProcessorConfig() {}
func (*ProcessorConfig_UniversalInputConfig) isProcessorConfig_ProcessorConfig() {}
// Message describing Vision AI stream with application specific annotations.
// All the StreamAnnotation object inside this message MUST have unique id.
type StreamWithAnnotation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Vision AI Stream resource name.
Stream string `protobuf:"bytes,1,opt,name=stream,proto3" json:"stream,omitempty"`
// Annotations that will be applied to the whole application.
ApplicationAnnotations []*StreamAnnotation `protobuf:"bytes,2,rep,name=application_annotations,json=applicationAnnotations,proto3" json:"application_annotations,omitempty"`
// Annotations that will be applied to the specific node of the application.
// If the same type of the annotations is applied to both application and
// node, the node annotation will be added in addition to the global
// application one.
// For example, if there is one active zone annotation for the whole
// application and one active zone annotation for the Occupancy Analytic
// processor, then the Occupancy Analytic processor will have two active zones
// defined.
NodeAnnotations []*StreamWithAnnotation_NodeAnnotation `protobuf:"bytes,3,rep,name=node_annotations,json=nodeAnnotations,proto3" json:"node_annotations,omitempty"`
}
func (x *StreamWithAnnotation) Reset() {
*x = StreamWithAnnotation{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StreamWithAnnotation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamWithAnnotation) ProtoMessage() {}
func (x *StreamWithAnnotation) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[50]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use StreamWithAnnotation.ProtoReflect.Descriptor instead.
func (*StreamWithAnnotation) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{50}
}
func (x *StreamWithAnnotation) GetStream() string {
if x != nil {
return x.Stream
}
return ""
}
func (x *StreamWithAnnotation) GetApplicationAnnotations() []*StreamAnnotation {
if x != nil {
return x.ApplicationAnnotations
}
return nil
}
func (x *StreamWithAnnotation) GetNodeAnnotations() []*StreamWithAnnotation_NodeAnnotation {
if x != nil {
return x.NodeAnnotations
}
return nil
}
// Message describing annotations specific to application node.
// This message is a duplication of StreamWithAnnotation.NodeAnnotation.
type ApplicationNodeAnnotation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The node name of the application graph.
Node string `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
// The node specific stream annotations.
Annotations []*StreamAnnotation `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
}
func (x *ApplicationNodeAnnotation) Reset() {
*x = ApplicationNodeAnnotation{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApplicationNodeAnnotation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApplicationNodeAnnotation) ProtoMessage() {}
func (x *ApplicationNodeAnnotation) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[51]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApplicationNodeAnnotation.ProtoReflect.Descriptor instead.
func (*ApplicationNodeAnnotation) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{51}
}
func (x *ApplicationNodeAnnotation) GetNode() string {
if x != nil {
return x.Node
}
return ""
}
func (x *ApplicationNodeAnnotation) GetAnnotations() []*StreamAnnotation {
if x != nil {
return x.Annotations
}
return nil
}
// Message describing general annotation for resources.
type ResourceAnnotations struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Annotations that will be applied to the whole application.
ApplicationAnnotations []*StreamAnnotation `protobuf:"bytes,1,rep,name=application_annotations,json=applicationAnnotations,proto3" json:"application_annotations,omitempty"`
// Annotations that will be applied to the specific node of the application.
// If the same type of the annotations is applied to both application and
// node, the node annotation will be added in addition to the global
// application one.
// For example, if there is one active zone annotation for the whole
// application and one active zone annotation for the Occupancy Analytic
// processor, then the Occupancy Analytic processor will have two active zones
// defined.
NodeAnnotations []*ApplicationNodeAnnotation `protobuf:"bytes,2,rep,name=node_annotations,json=nodeAnnotations,proto3" json:"node_annotations,omitempty"`
}
func (x *ResourceAnnotations) Reset() {
*x = ResourceAnnotations{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResourceAnnotations) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResourceAnnotations) ProtoMessage() {}
func (x *ResourceAnnotations) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[52]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ResourceAnnotations.ProtoReflect.Descriptor instead.
func (*ResourceAnnotations) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{52}
}
func (x *ResourceAnnotations) GetApplicationAnnotations() []*StreamAnnotation {
if x != nil {
return x.ApplicationAnnotations
}
return nil
}
func (x *ResourceAnnotations) GetNodeAnnotations() []*ApplicationNodeAnnotation {
if x != nil {
return x.NodeAnnotations
}
return nil
}
// Message describing Video Stream Input Config.
// This message should only be used as a placeholder for builtin:stream-input
// processor, actual stream binding should be specified using corresponding
// API.
type VideoStreamInputConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
Streams []string `protobuf:"bytes,1,rep,name=streams,proto3" json:"streams,omitempty"`
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
StreamsWithAnnotation []*StreamWithAnnotation `protobuf:"bytes,2,rep,name=streams_with_annotation,json=streamsWithAnnotation,proto3" json:"streams_with_annotation,omitempty"`
}
func (x *VideoStreamInputConfig) Reset() {
*x = VideoStreamInputConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VideoStreamInputConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VideoStreamInputConfig) ProtoMessage() {}
func (x *VideoStreamInputConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[53]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VideoStreamInputConfig.ProtoReflect.Descriptor instead.
func (*VideoStreamInputConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{53}
}
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
func (x *VideoStreamInputConfig) GetStreams() []string {
if x != nil {
return x.Streams
}
return nil
}
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
func (x *VideoStreamInputConfig) GetStreamsWithAnnotation() []*StreamWithAnnotation {
if x != nil {
return x.StreamsWithAnnotation
}
return nil
}
// Message describing AI-enabled Devices Input Config.
type AIEnabledDevicesInputConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AIEnabledDevicesInputConfig) Reset() {
*x = AIEnabledDevicesInputConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AIEnabledDevicesInputConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AIEnabledDevicesInputConfig) ProtoMessage() {}
func (x *AIEnabledDevicesInputConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[54]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AIEnabledDevicesInputConfig.ProtoReflect.Descriptor instead.
func (*AIEnabledDevicesInputConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{54}
}
// Message describing MediaWarehouseConfig.
type MediaWarehouseConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Resource name of the Media Warehouse corpus.
// Format:
// projects/${project_id}/locations/${location_id}/corpora/${corpus_id}
Corpus string `protobuf:"bytes,1,opt,name=corpus,proto3" json:"corpus,omitempty"`
// Deprecated.
//
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
Region string `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
// The duration for which all media assets, associated metadata, and search
// documents can exist.
Ttl *durationpb.Duration `protobuf:"bytes,3,opt,name=ttl,proto3" json:"ttl,omitempty"`
}
func (x *MediaWarehouseConfig) Reset() {
*x = MediaWarehouseConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MediaWarehouseConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MediaWarehouseConfig) ProtoMessage() {}
func (x *MediaWarehouseConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[55]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MediaWarehouseConfig.ProtoReflect.Descriptor instead.
func (*MediaWarehouseConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{55}
}
func (x *MediaWarehouseConfig) GetCorpus() string {
if x != nil {
return x.Corpus
}
return ""
}
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
func (x *MediaWarehouseConfig) GetRegion() string {
if x != nil {
return x.Region
}
return ""
}
func (x *MediaWarehouseConfig) GetTtl() *durationpb.Duration {
if x != nil {
return x.Ttl
}
return nil
}
// Message describing FaceBlurConfig.
type PersonBlurConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Person blur type.
PersonBlurType PersonBlurConfig_PersonBlurType `protobuf:"varint,1,opt,name=person_blur_type,json=personBlurType,proto3,enum=google.cloud.visionai.v1.PersonBlurConfig_PersonBlurType" json:"person_blur_type,omitempty"`
// Whether only blur faces other than the whole object in the processor.
FacesOnly bool `protobuf:"varint,2,opt,name=faces_only,json=facesOnly,proto3" json:"faces_only,omitempty"`
}
func (x *PersonBlurConfig) Reset() {
*x = PersonBlurConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PersonBlurConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PersonBlurConfig) ProtoMessage() {}
func (x *PersonBlurConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[56]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PersonBlurConfig.ProtoReflect.Descriptor instead.
func (*PersonBlurConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{56}
}
func (x *PersonBlurConfig) GetPersonBlurType() PersonBlurConfig_PersonBlurType {
if x != nil {
return x.PersonBlurType
}
return PersonBlurConfig_PERSON_BLUR_TYPE_UNSPECIFIED
}
func (x *PersonBlurConfig) GetFacesOnly() bool {
if x != nil {
return x.FacesOnly
}
return false
}
// Message describing OccupancyCountConfig.
type OccupancyCountConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Whether to count the appearances of people, output counts have 'people' as
// the key.
EnablePeopleCounting bool `protobuf:"varint,1,opt,name=enable_people_counting,json=enablePeopleCounting,proto3" json:"enable_people_counting,omitempty"`
// Whether to count the appearances of vehicles, output counts will have
// 'vehicle' as the key.
EnableVehicleCounting bool `protobuf:"varint,2,opt,name=enable_vehicle_counting,json=enableVehicleCounting,proto3" json:"enable_vehicle_counting,omitempty"`
// Whether to track each invidual object's loitering time inside the scene or
// specific zone.
EnableDwellingTimeTracking bool `protobuf:"varint,3,opt,name=enable_dwelling_time_tracking,json=enableDwellingTimeTracking,proto3" json:"enable_dwelling_time_tracking,omitempty"`
}
func (x *OccupancyCountConfig) Reset() {
*x = OccupancyCountConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OccupancyCountConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OccupancyCountConfig) ProtoMessage() {}
func (x *OccupancyCountConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[57]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OccupancyCountConfig.ProtoReflect.Descriptor instead.
func (*OccupancyCountConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{57}
}
func (x *OccupancyCountConfig) GetEnablePeopleCounting() bool {
if x != nil {
return x.EnablePeopleCounting
}
return false
}
func (x *OccupancyCountConfig) GetEnableVehicleCounting() bool {
if x != nil {
return x.EnableVehicleCounting
}
return false
}
func (x *OccupancyCountConfig) GetEnableDwellingTimeTracking() bool {
if x != nil {
return x.EnableDwellingTimeTracking
}
return false
}
// Message describing PersonVehicleDetectionConfig.
type PersonVehicleDetectionConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// At least one of enable_people_counting and enable_vehicle_counting fields
// must be set to true.
// Whether to count the appearances of people, output counts have 'people' as
// the key.
EnablePeopleCounting bool `protobuf:"varint,1,opt,name=enable_people_counting,json=enablePeopleCounting,proto3" json:"enable_people_counting,omitempty"`
// Whether to count the appearances of vehicles, output counts will have
// 'vehicle' as the key.
EnableVehicleCounting bool `protobuf:"varint,2,opt,name=enable_vehicle_counting,json=enableVehicleCounting,proto3" json:"enable_vehicle_counting,omitempty"`
}
func (x *PersonVehicleDetectionConfig) Reset() {
*x = PersonVehicleDetectionConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PersonVehicleDetectionConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PersonVehicleDetectionConfig) ProtoMessage() {}
func (x *PersonVehicleDetectionConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[58]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PersonVehicleDetectionConfig.ProtoReflect.Descriptor instead.
func (*PersonVehicleDetectionConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{58}
}
func (x *PersonVehicleDetectionConfig) GetEnablePeopleCounting() bool {
if x != nil {
return x.EnablePeopleCounting
}
return false
}
func (x *PersonVehicleDetectionConfig) GetEnableVehicleCounting() bool {
if x != nil {
return x.EnableVehicleCounting
}
return false
}
// Message describing PersonalProtectiveEquipmentDetectionConfig.
type PersonalProtectiveEquipmentDetectionConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Whether to enable face coverage detection.
EnableFaceCoverageDetection bool `protobuf:"varint,1,opt,name=enable_face_coverage_detection,json=enableFaceCoverageDetection,proto3" json:"enable_face_coverage_detection,omitempty"`
// Whether to enable head coverage detection.
EnableHeadCoverageDetection bool `protobuf:"varint,2,opt,name=enable_head_coverage_detection,json=enableHeadCoverageDetection,proto3" json:"enable_head_coverage_detection,omitempty"`
// Whether to enable hands coverage detection.
EnableHandsCoverageDetection bool `protobuf:"varint,3,opt,name=enable_hands_coverage_detection,json=enableHandsCoverageDetection,proto3" json:"enable_hands_coverage_detection,omitempty"`
}
func (x *PersonalProtectiveEquipmentDetectionConfig) Reset() {
*x = PersonalProtectiveEquipmentDetectionConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PersonalProtectiveEquipmentDetectionConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PersonalProtectiveEquipmentDetectionConfig) ProtoMessage() {}
func (x *PersonalProtectiveEquipmentDetectionConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[59]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PersonalProtectiveEquipmentDetectionConfig.ProtoReflect.Descriptor instead.
func (*PersonalProtectiveEquipmentDetectionConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{59}
}
func (x *PersonalProtectiveEquipmentDetectionConfig) GetEnableFaceCoverageDetection() bool {
if x != nil {
return x.EnableFaceCoverageDetection
}
return false
}
func (x *PersonalProtectiveEquipmentDetectionConfig) GetEnableHeadCoverageDetection() bool {
if x != nil {
return x.EnableHeadCoverageDetection
}
return false
}
func (x *PersonalProtectiveEquipmentDetectionConfig) GetEnableHandsCoverageDetection() bool {
if x != nil {
return x.EnableHandsCoverageDetection
}
return false
}
// Message of configurations for General Object Detection processor.
type GeneralObjectDetectionConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GeneralObjectDetectionConfig) Reset() {
*x = GeneralObjectDetectionConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GeneralObjectDetectionConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GeneralObjectDetectionConfig) ProtoMessage() {}
func (x *GeneralObjectDetectionConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[60]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GeneralObjectDetectionConfig.ProtoReflect.Descriptor instead.
func (*GeneralObjectDetectionConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{60}
}
// Message of configurations for BigQuery processor.
type BigQueryConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// BigQuery table resource for Vision AI Platform to ingest annotations to.
Table string `protobuf:"bytes,1,opt,name=table,proto3" json:"table,omitempty"`
// Data Schema
// By default, Vision AI Application will try to write annotations to the
// target BigQuery table using the following schema:
//
// ingestion_time: TIMESTAMP, the ingestion time of the original data.
//
// application: STRING, name of the application which produces the annotation.
//
// instance: STRING, Id of the instance which produces the annotation.
//
// node: STRING, name of the application graph node which produces the
// annotation.
//
// annotation: STRING or JSON, the actual annotation protobuf will be
// converted to json string with bytes field as 64 encoded string. It can be
// written to both String or Json type column.
//
// To forward annotation data to an existing BigQuery table, customer needs to
// make sure the compatibility of the schema.
// The map maps application node name to its corresponding cloud function
// endpoint to transform the annotations directly to the
// google.cloud.bigquery.storage.v1.AppendRowsRequest (only avro_rows or
// proto_rows should be set). If configured, annotations produced by
// corresponding application node will sent to the Cloud Function at first
// before be forwarded to BigQuery.
//
// If the default table schema doesn't fit, customer is able to transform the
// annotation output from Vision AI Application to arbitrary BigQuery table
// schema with CloudFunction.
// * The cloud function will receive AppPlatformCloudFunctionRequest where
// the annotations field will be the json format of Vision AI annotation.
// * The cloud function should return AppPlatformCloudFunctionResponse with
// AppendRowsRequest stored in the annotations field.
// * To drop the annotation, simply clear the annotations field in the
// returned AppPlatformCloudFunctionResponse.
CloudFunctionMapping map[string]string `protobuf:"bytes,2,rep,name=cloud_function_mapping,json=cloudFunctionMapping,proto3" json:"cloud_function_mapping,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// If true, App Platform will create the BigQuery DataSet and the
// BigQuery Table with default schema if the specified table doesn't exist.
// This doesn't work if any cloud function customized schema is specified
// since the system doesn't know your desired schema.
// JSON column will be used in the default table created by App Platform.
CreateDefaultTableIfNotExists bool `protobuf:"varint,3,opt,name=create_default_table_if_not_exists,json=createDefaultTableIfNotExists,proto3" json:"create_default_table_if_not_exists,omitempty"`
}
func (x *BigQueryConfig) Reset() {
*x = BigQueryConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BigQueryConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BigQueryConfig) ProtoMessage() {}
func (x *BigQueryConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[61]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BigQueryConfig.ProtoReflect.Descriptor instead.
func (*BigQueryConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{61}
}
func (x *BigQueryConfig) GetTable() string {
if x != nil {
return x.Table
}
return ""
}
func (x *BigQueryConfig) GetCloudFunctionMapping() map[string]string {
if x != nil {
return x.CloudFunctionMapping
}
return nil
}
func (x *BigQueryConfig) GetCreateDefaultTableIfNotExists() bool {
if x != nil {
return x.CreateDefaultTableIfNotExists
}
return false
}
// Message of configurations of Vertex AutoML Vision Processors.
type VertexAutoMLVisionConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Only entities with higher score than the threshold will be returned.
// Value 0.0 means to return all the detected entities.
ConfidenceThreshold float32 `protobuf:"fixed32,1,opt,name=confidence_threshold,json=confidenceThreshold,proto3" json:"confidence_threshold,omitempty"`
// At most this many predictions will be returned per output frame.
// Value 0 means to return all the detected entities.
MaxPredictions int32 `protobuf:"varint,2,opt,name=max_predictions,json=maxPredictions,proto3" json:"max_predictions,omitempty"`
}
func (x *VertexAutoMLVisionConfig) Reset() {
*x = VertexAutoMLVisionConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VertexAutoMLVisionConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VertexAutoMLVisionConfig) ProtoMessage() {}
func (x *VertexAutoMLVisionConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[62]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VertexAutoMLVisionConfig.ProtoReflect.Descriptor instead.
func (*VertexAutoMLVisionConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{62}
}
func (x *VertexAutoMLVisionConfig) GetConfidenceThreshold() float32 {
if x != nil {
return x.ConfidenceThreshold
}
return 0
}
func (x *VertexAutoMLVisionConfig) GetMaxPredictions() int32 {
if x != nil {
return x.MaxPredictions
}
return 0
}
// Message describing VertexAutoMLVideoConfig.
type VertexAutoMLVideoConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Only entities with higher score than the threshold will be returned.
// Value 0.0 means returns all the detected entities.
ConfidenceThreshold float32 `protobuf:"fixed32,1,opt,name=confidence_threshold,json=confidenceThreshold,proto3" json:"confidence_threshold,omitempty"`
// Labels specified in this field won't be returned.
BlockedLabels []string `protobuf:"bytes,2,rep,name=blocked_labels,json=blockedLabels,proto3" json:"blocked_labels,omitempty"`
// At most this many predictions will be returned per output frame.
// Value 0 means to return all the detected entities.
MaxPredictions int32 `protobuf:"varint,3,opt,name=max_predictions,json=maxPredictions,proto3" json:"max_predictions,omitempty"`
// Only Bounding Box whose size is larger than this limit will be returned.
// Object Tracking only.
// Value 0.0 means to return all the detected entities.
BoundingBoxSizeLimit float32 `protobuf:"fixed32,4,opt,name=bounding_box_size_limit,json=boundingBoxSizeLimit,proto3" json:"bounding_box_size_limit,omitempty"`
}
func (x *VertexAutoMLVideoConfig) Reset() {
*x = VertexAutoMLVideoConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VertexAutoMLVideoConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VertexAutoMLVideoConfig) ProtoMessage() {}
func (x *VertexAutoMLVideoConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[63]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VertexAutoMLVideoConfig.ProtoReflect.Descriptor instead.
func (*VertexAutoMLVideoConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{63}
}
func (x *VertexAutoMLVideoConfig) GetConfidenceThreshold() float32 {
if x != nil {
return x.ConfidenceThreshold
}
return 0
}
func (x *VertexAutoMLVideoConfig) GetBlockedLabels() []string {
if x != nil {
return x.BlockedLabels
}
return nil
}
func (x *VertexAutoMLVideoConfig) GetMaxPredictions() int32 {
if x != nil {
return x.MaxPredictions
}
return 0
}
func (x *VertexAutoMLVideoConfig) GetBoundingBoxSizeLimit() float32 {
if x != nil {
return x.BoundingBoxSizeLimit
}
return 0
}
// Message describing VertexCustomConfig.
type VertexCustomConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The max prediction frame per second. This attribute sets how fast the
// operator sends prediction requests to Vertex AI endpoint. Default value is
// 0, which means there is no max prediction fps limit. The operator sends
// prediction requests at input fps.
MaxPredictionFps int32 `protobuf:"varint,1,opt,name=max_prediction_fps,json=maxPredictionFps,proto3" json:"max_prediction_fps,omitempty"`
// A description of resources that are dedicated to the DeployedModel, and
// that need a higher degree of manual configuration.
DedicatedResources *DedicatedResources `protobuf:"bytes,2,opt,name=dedicated_resources,json=dedicatedResources,proto3" json:"dedicated_resources,omitempty"`
// If not empty, the prediction result will be sent to the specified cloud
// function for post processing.
// * The cloud function will receive AppPlatformCloudFunctionRequest where
// the annotations field will be the json format of proto PredictResponse.
// * The cloud function should return AppPlatformCloudFunctionResponse with
// PredictResponse stored in the annotations field.
// * To drop the prediction output, simply clear the payload field in the
// returned AppPlatformCloudFunctionResponse.
PostProcessingCloudFunction string `protobuf:"bytes,3,opt,name=post_processing_cloud_function,json=postProcessingCloudFunction,proto3" json:"post_processing_cloud_function,omitempty"`
// If true, the prediction request received by custom model will also contain
// metadata with the following schema:
//
// 'appPlatformMetadata': {
// 'ingestionTime': DOUBLE; (UNIX timestamp)
// 'application': STRING;
// 'instanceId': STRING;
// 'node': STRING;
// 'processor': STRING;
// }
AttachApplicationMetadata bool `protobuf:"varint,4,opt,name=attach_application_metadata,json=attachApplicationMetadata,proto3" json:"attach_application_metadata,omitempty"`
// Optional. By setting the configuration_input_topic, processor will
// subscribe to given topic, only pub/sub topic is supported now. Example
// channel:
// //pubsub.googleapis.com/projects/visionai-testing-stable/topics/test-topic
// message schema should be:
// message Message {
// // The ID of the stream that associates with the application instance.
// string stream_id = 1;
// // The target fps. By default, the custom processor will *not* send any
// data to the Vertex Prediction container. Note that once the
// dynamic_config_input_topic is set, max_prediction_fps will not work and be
// preceded by the fps set inside the topic.
// int32 fps = 2;
// }
DynamicConfigInputTopic *string `protobuf:"bytes,6,opt,name=dynamic_config_input_topic,json=dynamicConfigInputTopic,proto3,oneof" json:"dynamic_config_input_topic,omitempty"`
}
func (x *VertexCustomConfig) Reset() {
*x = VertexCustomConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VertexCustomConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VertexCustomConfig) ProtoMessage() {}
func (x *VertexCustomConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[64]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VertexCustomConfig.ProtoReflect.Descriptor instead.
func (*VertexCustomConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{64}
}
func (x *VertexCustomConfig) GetMaxPredictionFps() int32 {
if x != nil {
return x.MaxPredictionFps
}
return 0
}
func (x *VertexCustomConfig) GetDedicatedResources() *DedicatedResources {
if x != nil {
return x.DedicatedResources
}
return nil
}
func (x *VertexCustomConfig) GetPostProcessingCloudFunction() string {
if x != nil {
return x.PostProcessingCloudFunction
}
return ""
}
func (x *VertexCustomConfig) GetAttachApplicationMetadata() bool {
if x != nil {
return x.AttachApplicationMetadata
}
return false
}
func (x *VertexCustomConfig) GetDynamicConfigInputTopic() string {
if x != nil && x.DynamicConfigInputTopic != nil {
return *x.DynamicConfigInputTopic
}
return ""
}
// Message describing GcsOutputConfig.
type GcsOutputConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The Cloud Storage path for Vision AI Platform to ingest annotations to.
GcsPath string `protobuf:"bytes,1,opt,name=gcs_path,json=gcsPath,proto3" json:"gcs_path,omitempty"`
}
func (x *GcsOutputConfig) Reset() {
*x = GcsOutputConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GcsOutputConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GcsOutputConfig) ProtoMessage() {}
func (x *GcsOutputConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[65]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GcsOutputConfig.ProtoReflect.Descriptor instead.
func (*GcsOutputConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{65}
}
func (x *GcsOutputConfig) GetGcsPath() string {
if x != nil {
return x.GcsPath
}
return ""
}
// Message describing UniversalInputConfig.
type UniversalInputConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *UniversalInputConfig) Reset() {
*x = UniversalInputConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UniversalInputConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UniversalInputConfig) ProtoMessage() {}
func (x *UniversalInputConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[66]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UniversalInputConfig.ProtoReflect.Descriptor instead.
func (*UniversalInputConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{66}
}
// Specification of a single machine.
type MachineSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Immutable. The type of the machine.
//
// See the [list of machine types supported for
// prediction](https://cloud.google.com/vertex-ai/docs/predictions/configure-compute#machine-types)
//
// See the [list of machine types supported for custom
// training](https://cloud.google.com/vertex-ai/docs/training/configure-compute#machine-types).
//
// For [DeployedModel][] this field is optional, and the default
// value is `n1-standard-2`. For [BatchPredictionJob][] or as part of
// [WorkerPoolSpec][] this field is required.
MachineType string `protobuf:"bytes,1,opt,name=machine_type,json=machineType,proto3" json:"machine_type,omitempty"`
// Immutable. The type of accelerator(s) that may be attached to the machine
// as per
// [accelerator_count][google.cloud.visionai.v1.MachineSpec.accelerator_count].
AcceleratorType AcceleratorType `protobuf:"varint,2,opt,name=accelerator_type,json=acceleratorType,proto3,enum=google.cloud.visionai.v1.AcceleratorType" json:"accelerator_type,omitempty"`
// The number of accelerators to attach to the machine.
AcceleratorCount int32 `protobuf:"varint,3,opt,name=accelerator_count,json=acceleratorCount,proto3" json:"accelerator_count,omitempty"`
}
func (x *MachineSpec) Reset() {
*x = MachineSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MachineSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MachineSpec) ProtoMessage() {}
func (x *MachineSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[67]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MachineSpec.ProtoReflect.Descriptor instead.
func (*MachineSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{67}
}
func (x *MachineSpec) GetMachineType() string {
if x != nil {
return x.MachineType
}
return ""
}
func (x *MachineSpec) GetAcceleratorType() AcceleratorType {
if x != nil {
return x.AcceleratorType
}
return AcceleratorType_ACCELERATOR_TYPE_UNSPECIFIED
}
func (x *MachineSpec) GetAcceleratorCount() int32 {
if x != nil {
return x.AcceleratorCount
}
return 0
}
// The metric specification that defines the target resource utilization
// (CPU utilization, accelerator's duty cycle, and so on) for calculating the
// desired replica count.
type AutoscalingMetricSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The resource metric name.
// Supported metrics:
//
// * For Online Prediction:
// * `aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle`
// * `aiplatform.googleapis.com/prediction/online/cpu/utilization`
MetricName string `protobuf:"bytes,1,opt,name=metric_name,json=metricName,proto3" json:"metric_name,omitempty"`
// The target resource utilization in percentage (1% - 100%) for the given
// metric; once the real usage deviates from the target by a certain
// percentage, the machine replicas change. The default value is 60
// (representing 60%) if not provided.
Target int32 `protobuf:"varint,2,opt,name=target,proto3" json:"target,omitempty"`
}
func (x *AutoscalingMetricSpec) Reset() {
*x = AutoscalingMetricSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AutoscalingMetricSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AutoscalingMetricSpec) ProtoMessage() {}
func (x *AutoscalingMetricSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[68]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AutoscalingMetricSpec.ProtoReflect.Descriptor instead.
func (*AutoscalingMetricSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{68}
}
func (x *AutoscalingMetricSpec) GetMetricName() string {
if x != nil {
return x.MetricName
}
return ""
}
func (x *AutoscalingMetricSpec) GetTarget() int32 {
if x != nil {
return x.Target
}
return 0
}
// A description of resources that are dedicated to a DeployedModel, and
// that need a higher degree of manual configuration.
type DedicatedResources struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Immutable. The specification of a single machine used by the
// prediction.
MachineSpec *MachineSpec `protobuf:"bytes,1,opt,name=machine_spec,json=machineSpec,proto3" json:"machine_spec,omitempty"`
// Required. Immutable. The minimum number of machine replicas this
// DeployedModel will be always deployed on. This value must be greater than
// or equal to 1.
//
// If traffic against the DeployedModel increases, it may dynamically be
// deployed onto more replicas, and as traffic decreases, some of these extra
// replicas may be freed.
MinReplicaCount int32 `protobuf:"varint,2,opt,name=min_replica_count,json=minReplicaCount,proto3" json:"min_replica_count,omitempty"`
// Immutable. The maximum number of replicas this DeployedModel may be
// deployed on when the traffic against it increases. If the requested value
// is too large, the deployment will error, but if deployment succeeds then
// the ability to scale the model to that many replicas is guaranteed (barring
// service outages). If traffic against the DeployedModel increases beyond
// what its replicas at maximum may handle, a portion of the traffic will be
// dropped. If this value is not provided, will use
// [min_replica_count][google.cloud.visionai.v1.DedicatedResources.min_replica_count]
// as the default value.
//
// The value of this field impacts the charge against Vertex CPU and GPU
// quotas. Specifically, you will be charged for max_replica_count *
// number of cores in the selected machine type) and (max_replica_count *
// number of GPUs per replica in the selected machine type).
MaxReplicaCount int32 `protobuf:"varint,3,opt,name=max_replica_count,json=maxReplicaCount,proto3" json:"max_replica_count,omitempty"`
// Immutable. The metric specifications that overrides a resource
// utilization metric (CPU utilization, accelerator's duty cycle, and so on)
// target value (default to 60 if not set). At most one entry is allowed per
// metric.
//
// If
// [machine_spec.accelerator_count][google.cloud.visionai.v1.MachineSpec.accelerator_count]
// is above 0, the autoscaling will be based on both CPU utilization and
// accelerator's duty cycle metrics and scale up when either metrics exceeds
// its target value while scale down if both metrics are under their target
// value. The default target value is 60 for both metrics.
//
// If
// [machine_spec.accelerator_count][google.cloud.visionai.v1.MachineSpec.accelerator_count]
// is 0, the autoscaling will be based on CPU utilization metric only with
// default target value 60 if not explicitly set.
//
// For example, in the case of Online Prediction, if you want to override
// target CPU utilization to 80, you should set
// [autoscaling_metric_specs.metric_name][google.cloud.visionai.v1.AutoscalingMetricSpec.metric_name]
// to `aiplatform.googleapis.com/prediction/online/cpu/utilization` and
// [autoscaling_metric_specs.target][google.cloud.visionai.v1.AutoscalingMetricSpec.target]
// to `80`.
AutoscalingMetricSpecs []*AutoscalingMetricSpec `protobuf:"bytes,4,rep,name=autoscaling_metric_specs,json=autoscalingMetricSpecs,proto3" json:"autoscaling_metric_specs,omitempty"`
}
func (x *DedicatedResources) Reset() {
*x = DedicatedResources{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DedicatedResources) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DedicatedResources) ProtoMessage() {}
func (x *DedicatedResources) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[69]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DedicatedResources.ProtoReflect.Descriptor instead.
func (*DedicatedResources) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{69}
}
func (x *DedicatedResources) GetMachineSpec() *MachineSpec {
if x != nil {
return x.MachineSpec
}
return nil
}
func (x *DedicatedResources) GetMinReplicaCount() int32 {
if x != nil {
return x.MinReplicaCount
}
return 0
}
func (x *DedicatedResources) GetMaxReplicaCount() int32 {
if x != nil {
return x.MaxReplicaCount
}
return 0
}
func (x *DedicatedResources) GetAutoscalingMetricSpecs() []*AutoscalingMetricSpec {
if x != nil {
return x.AutoscalingMetricSpecs
}
return nil
}
// Message describing ProductRecognizerConfig.
type ProductRecognizerConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The resource name of retail endpoint to use.
RetailEndpoint string `protobuf:"bytes,1,opt,name=retail_endpoint,json=retailEndpoint,proto3" json:"retail_endpoint,omitempty"`
// Confidence threshold to filter detection results. If not set, a system
// default value will be used.
RecognitionConfidenceThreshold float32 `protobuf:"fixed32,2,opt,name=recognition_confidence_threshold,json=recognitionConfidenceThreshold,proto3" json:"recognition_confidence_threshold,omitempty"`
}
func (x *ProductRecognizerConfig) Reset() {
*x = ProductRecognizerConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProductRecognizerConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProductRecognizerConfig) ProtoMessage() {}
func (x *ProductRecognizerConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[70]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProductRecognizerConfig.ProtoReflect.Descriptor instead.
func (*ProductRecognizerConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{70}
}
func (x *ProductRecognizerConfig) GetRetailEndpoint() string {
if x != nil {
return x.RetailEndpoint
}
return ""
}
func (x *ProductRecognizerConfig) GetRecognitionConfidenceThreshold() float32 {
if x != nil {
return x.RecognitionConfidenceThreshold
}
return 0
}
// Message describing TagRecognizerConfig.
type TagRecognizerConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Confidence threshold to filter detection results. If not set, a system
// default value will be used.
EntityDetectionConfidenceThreshold float32 `protobuf:"fixed32,1,opt,name=entity_detection_confidence_threshold,json=entityDetectionConfidenceThreshold,proto3" json:"entity_detection_confidence_threshold,omitempty"`
// Configuration to customize how tags are parsed.
TagParsingConfig *TagParsingConfig `protobuf:"bytes,2,opt,name=tag_parsing_config,json=tagParsingConfig,proto3" json:"tag_parsing_config,omitempty"`
}
func (x *TagRecognizerConfig) Reset() {
*x = TagRecognizerConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TagRecognizerConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TagRecognizerConfig) ProtoMessage() {}
func (x *TagRecognizerConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[71]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TagRecognizerConfig.ProtoReflect.Descriptor instead.
func (*TagRecognizerConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{71}
}
func (x *TagRecognizerConfig) GetEntityDetectionConfidenceThreshold() float32 {
if x != nil {
return x.EntityDetectionConfidenceThreshold
}
return 0
}
func (x *TagRecognizerConfig) GetTagParsingConfig() *TagParsingConfig {
if x != nil {
return x.TagParsingConfig
}
return nil
}
// Configuration for tag parsing.
type TagParsingConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Each tag entity class may have an optional EntityParsingConfig which is
// used to help parse the entities of the class.
EntityParsingConfigs []*TagParsingConfig_EntityParsingConfig `protobuf:"bytes,1,rep,name=entity_parsing_configs,json=entityParsingConfigs,proto3" json:"entity_parsing_configs,omitempty"`
}
func (x *TagParsingConfig) Reset() {
*x = TagParsingConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TagParsingConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TagParsingConfig) ProtoMessage() {}
func (x *TagParsingConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[72]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TagParsingConfig.ProtoReflect.Descriptor instead.
func (*TagParsingConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{72}
}
func (x *TagParsingConfig) GetEntityParsingConfigs() []*TagParsingConfig_EntityParsingConfig {
if x != nil {
return x.EntityParsingConfigs
}
return nil
}
// Message about target streamInput to remove.
type RemoveApplicationStreamInputRequest_TargetStreamInput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Stream string `protobuf:"bytes,1,opt,name=stream,proto3" json:"stream,omitempty"`
}
func (x *RemoveApplicationStreamInputRequest_TargetStreamInput) Reset() {
*x = RemoveApplicationStreamInputRequest_TargetStreamInput{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RemoveApplicationStreamInputRequest_TargetStreamInput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoveApplicationStreamInputRequest_TargetStreamInput) ProtoMessage() {}
func (x *RemoveApplicationStreamInputRequest_TargetStreamInput) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[73]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RemoveApplicationStreamInputRequest_TargetStreamInput.ProtoReflect.Descriptor instead.
func (*RemoveApplicationStreamInputRequest_TargetStreamInput) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{21, 0}
}
func (x *RemoveApplicationStreamInputRequest_TargetStreamInput) GetStream() string {
if x != nil {
return x.Stream
}
return ""
}
type UpdateApplicationInstancesRequest_UpdateApplicationInstance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Optional. Field mask is used to specify the fields to be overwritten in
// the Draft resource by the update. The fields specified in the update_mask
// are relative to the resource, not the full request. A field will be
// overwritten if it is in the mask. If the user does not provide a mask
// then all fields will be overwritten.
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
// Required. The resource being updated.
Instance *Instance `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// Required. The id of the instance.
InstanceId string `protobuf:"bytes,3,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) Reset() {
*x = UpdateApplicationInstancesRequest_UpdateApplicationInstance{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateApplicationInstancesRequest_UpdateApplicationInstance) ProtoMessage() {}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[74]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateApplicationInstancesRequest_UpdateApplicationInstance.ProtoReflect.Descriptor instead.
func (*UpdateApplicationInstancesRequest_UpdateApplicationInstance) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{30, 0}
}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) GetUpdateMask() *fieldmaskpb.FieldMask {
if x != nil {
return x.UpdateMask
}
return nil
}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) GetInstance() *Instance {
if x != nil {
return x.Instance
}
return nil
}
func (x *UpdateApplicationInstancesRequest_UpdateApplicationInstance) GetInstanceId() string {
if x != nil {
return x.InstanceId
}
return ""
}
// Message storing the runtime information of the application.
type Application_ApplicationRuntimeInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Timestamp when the engine be deployed
DeployTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=deploy_time,json=deployTime,proto3" json:"deploy_time,omitempty"`
// Globally created resources like warehouse dataschemas.
GlobalOutputResources []*Application_ApplicationRuntimeInfo_GlobalOutputResource `protobuf:"bytes,3,rep,name=global_output_resources,json=globalOutputResources,proto3" json:"global_output_resources,omitempty"`
// Monitoring-related configuration for this application.
MonitoringConfig *Application_ApplicationRuntimeInfo_MonitoringConfig `protobuf:"bytes,4,opt,name=monitoring_config,json=monitoringConfig,proto3" json:"monitoring_config,omitempty"`
}
func (x *Application_ApplicationRuntimeInfo) Reset() {
*x = Application_ApplicationRuntimeInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Application_ApplicationRuntimeInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Application_ApplicationRuntimeInfo) ProtoMessage() {}
func (x *Application_ApplicationRuntimeInfo) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[75]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Application_ApplicationRuntimeInfo.ProtoReflect.Descriptor instead.
func (*Application_ApplicationRuntimeInfo) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40, 0}
}
func (x *Application_ApplicationRuntimeInfo) GetDeployTime() *timestamppb.Timestamp {
if x != nil {
return x.DeployTime
}
return nil
}
func (x *Application_ApplicationRuntimeInfo) GetGlobalOutputResources() []*Application_ApplicationRuntimeInfo_GlobalOutputResource {
if x != nil {
return x.GlobalOutputResources
}
return nil
}
func (x *Application_ApplicationRuntimeInfo) GetMonitoringConfig() *Application_ApplicationRuntimeInfo_MonitoringConfig {
if x != nil {
return x.MonitoringConfig
}
return nil
}
// Message about output resources from application.
type Application_ApplicationRuntimeInfo_GlobalOutputResource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The full resource name of the outputted resources.
OutputResource string `protobuf:"bytes,1,opt,name=output_resource,json=outputResource,proto3" json:"output_resource,omitempty"`
// The name of graph node who produces the output resource name.
// For example:
// output_resource:
// /projects/123/locations/us-central1/corpora/my-corpus/dataSchemas/my-schema
// producer_node: occupancy-count
ProducerNode string `protobuf:"bytes,2,opt,name=producer_node,json=producerNode,proto3" json:"producer_node,omitempty"`
// The key of the output resource, it has to be unique within the same
// producer node. One producer node can output several output resources,
// the key can be used to match corresponding output resources.
Key string `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"`
}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) Reset() {
*x = Application_ApplicationRuntimeInfo_GlobalOutputResource{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Application_ApplicationRuntimeInfo_GlobalOutputResource) ProtoMessage() {}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[77]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Application_ApplicationRuntimeInfo_GlobalOutputResource.ProtoReflect.Descriptor instead.
func (*Application_ApplicationRuntimeInfo_GlobalOutputResource) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40, 0, 0}
}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) GetOutputResource() string {
if x != nil {
return x.OutputResource
}
return ""
}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) GetProducerNode() string {
if x != nil {
return x.ProducerNode
}
return ""
}
func (x *Application_ApplicationRuntimeInfo_GlobalOutputResource) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
// Monitoring-related configuration for an application.
type Application_ApplicationRuntimeInfo_MonitoringConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Whether this application has monitoring enabled.
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
}
func (x *Application_ApplicationRuntimeInfo_MonitoringConfig) Reset() {
*x = Application_ApplicationRuntimeInfo_MonitoringConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[78]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Application_ApplicationRuntimeInfo_MonitoringConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Application_ApplicationRuntimeInfo_MonitoringConfig) ProtoMessage() {}
func (x *Application_ApplicationRuntimeInfo_MonitoringConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[78]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Application_ApplicationRuntimeInfo_MonitoringConfig.ProtoReflect.Descriptor instead.
func (*Application_ApplicationRuntimeInfo_MonitoringConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{40, 0, 1}
}
func (x *Application_ApplicationRuntimeInfo_MonitoringConfig) GetEnabled() bool {
if x != nil {
return x.Enabled
}
return false
}
// message storing the config for event delivery
type ApplicationConfigs_EventDeliveryConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The delivery channel for the event notification, only pub/sub topic is
// supported now.
// Example channel:
// [//pubsub.googleapis.com/projects/visionai-testing-stable/topics/test-topic]
Channel string `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
// The expected delivery interval for the same event. The same event won't
// be notified multiple times during this internal event that it is
// happening multiple times during the period of time.The same event is
// identified by <event_id, app_platform_metadata>.
MinimalDeliveryInterval *durationpb.Duration `protobuf:"bytes,2,opt,name=minimal_delivery_interval,json=minimalDeliveryInterval,proto3" json:"minimal_delivery_interval,omitempty"`
}
func (x *ApplicationConfigs_EventDeliveryConfig) Reset() {
*x = ApplicationConfigs_EventDeliveryConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[79]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ApplicationConfigs_EventDeliveryConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ApplicationConfigs_EventDeliveryConfig) ProtoMessage() {}
func (x *ApplicationConfigs_EventDeliveryConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[79]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ApplicationConfigs_EventDeliveryConfig.ProtoReflect.Descriptor instead.
func (*ApplicationConfigs_EventDeliveryConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{41, 0}
}
func (x *ApplicationConfigs_EventDeliveryConfig) GetChannel() string {
if x != nil {
return x.Channel
}
return ""
}
func (x *ApplicationConfigs_EventDeliveryConfig) GetMinimalDeliveryInterval() *durationpb.Duration {
if x != nil {
return x.MinimalDeliveryInterval
}
return nil
}
// Message describing one edge pointing into a node.
type Node_InputEdge struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the parent node.
ParentNode string `protobuf:"bytes,1,opt,name=parent_node,json=parentNode,proto3" json:"parent_node,omitempty"`
// The connected output artifact of the parent node.
// It can be omitted if target processor only has 1 output artifact.
ParentOutputChannel string `protobuf:"bytes,2,opt,name=parent_output_channel,json=parentOutputChannel,proto3" json:"parent_output_channel,omitempty"`
// The connected input channel of the current node's processor.
// It can be omitted if target processor only has 1 input channel.
ConnectedInputChannel string `protobuf:"bytes,3,opt,name=connected_input_channel,json=connectedInputChannel,proto3" json:"connected_input_channel,omitempty"`
}
func (x *Node_InputEdge) Reset() {
*x = Node_InputEdge{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[80]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Node_InputEdge) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Node_InputEdge) ProtoMessage() {}
func (x *Node_InputEdge) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[80]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Node_InputEdge.ProtoReflect.Descriptor instead.
func (*Node_InputEdge) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{42, 0}
}
func (x *Node_InputEdge) GetParentNode() string {
if x != nil {
return x.ParentNode
}
return ""
}
func (x *Node_InputEdge) GetParentOutputChannel() string {
if x != nil {
return x.ParentOutputChannel
}
return ""
}
func (x *Node_InputEdge) GetConnectedInputChannel() string {
if x != nil {
return x.ConnectedInputChannel
}
return ""
}
// Message of input resource used in one application instance.
type Instance_InputResource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Specify the input to the application instance.
//
// Types that are assignable to InputResourceInformation:
//
// *Instance_InputResource_InputResource
// *Instance_InputResource_AnnotatedStream
InputResourceInformation isInstance_InputResource_InputResourceInformation `protobuf_oneof:"input_resource_information"`
// Data type for the current input resource.
DataType DataType `protobuf:"varint,6,opt,name=data_type,json=dataType,proto3,enum=google.cloud.visionai.v1.DataType" json:"data_type,omitempty"`
// The name of graph node who receives the input resource.
// For example:
// input_resource:
// visionai.googleapis.com/v1/projects/123/locations/us-central1/clusters/456/streams/input-stream-a
// consumer_node: stream-input
ConsumerNode string `protobuf:"bytes,2,opt,name=consumer_node,json=consumerNode,proto3" json:"consumer_node,omitempty"`
// The specific input resource binding which will consume the current Input
// Resource, can be ignored is there is only 1 input binding.
InputResourceBinding string `protobuf:"bytes,3,opt,name=input_resource_binding,json=inputResourceBinding,proto3" json:"input_resource_binding,omitempty"`
// Contains resource annotations.
Annotations *ResourceAnnotations `protobuf:"bytes,5,opt,name=annotations,proto3" json:"annotations,omitempty"`
}
func (x *Instance_InputResource) Reset() {
*x = Instance_InputResource{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[82]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Instance_InputResource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Instance_InputResource) ProtoMessage() {}
func (x *Instance_InputResource) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[82]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Instance_InputResource.ProtoReflect.Descriptor instead.
func (*Instance_InputResource) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{44, 0}
}
func (m *Instance_InputResource) GetInputResourceInformation() isInstance_InputResource_InputResourceInformation {
if m != nil {
return m.InputResourceInformation
}
return nil
}
func (x *Instance_InputResource) GetInputResource() string {
if x, ok := x.GetInputResourceInformation().(*Instance_InputResource_InputResource); ok {
return x.InputResource
}
return ""
}
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
func (x *Instance_InputResource) GetAnnotatedStream() *StreamWithAnnotation {
if x, ok := x.GetInputResourceInformation().(*Instance_InputResource_AnnotatedStream); ok {
return x.AnnotatedStream
}
return nil
}
func (x *Instance_InputResource) GetDataType() DataType {
if x != nil {
return x.DataType
}
return DataType_DATA_TYPE_UNSPECIFIED
}
func (x *Instance_InputResource) GetConsumerNode() string {
if x != nil {
return x.ConsumerNode
}
return ""
}
func (x *Instance_InputResource) GetInputResourceBinding() string {
if x != nil {
return x.InputResourceBinding
}
return ""
}
func (x *Instance_InputResource) GetAnnotations() *ResourceAnnotations {
if x != nil {
return x.Annotations
}
return nil
}
type isInstance_InputResource_InputResourceInformation interface {
isInstance_InputResource_InputResourceInformation()
}
type Instance_InputResource_InputResource struct {
// The direct input resource name.
// If the instance type is STREAMING_PREDICTION, the input resource is in
// format of
// "projects/123/locations/us-central1/clusters/456/streams/stream-a".
// If the instance type is BATCH_PREDICTION from Cloud Storage input
// container, the input resource is in format of "gs://bucket-a".
InputResource string `protobuf:"bytes,1,opt,name=input_resource,json=inputResource,proto3,oneof"`
}
type Instance_InputResource_AnnotatedStream struct {
// If the input resource is VisionAI Stream, the associated annotations
// can be specified using annotated_stream instead.
//
// Deprecated: Marked as deprecated in google/cloud/visionai/v1/platform.proto.
AnnotatedStream *StreamWithAnnotation `protobuf:"bytes,4,opt,name=annotated_stream,json=annotatedStream,proto3,oneof"`
}
func (*Instance_InputResource_InputResource) isInstance_InputResource_InputResourceInformation() {}
func (*Instance_InputResource_AnnotatedStream) isInstance_InputResource_InputResourceInformation() {}
// Message of output resource used in one application instance.
type Instance_OutputResource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The output resource name for the current application instance.
OutputResource string `protobuf:"bytes,1,opt,name=output_resource,json=outputResource,proto3" json:"output_resource,omitempty"`
// The name of graph node who produces the output resource name.
// For example:
// output_resource:
// /projects/123/locations/us-central1/clusters/456/streams/output-application-789-stream-a-occupancy-counting
// producer_node: occupancy-counting
ProducerNode string `protobuf:"bytes,2,opt,name=producer_node,json=producerNode,proto3" json:"producer_node,omitempty"`
// The specific output resource binding which produces the current
// OutputResource.
OutputResourceBinding string `protobuf:"bytes,4,opt,name=output_resource_binding,json=outputResourceBinding,proto3" json:"output_resource_binding,omitempty"`
// Output only. Whether the output resource is temporary which means the
// resource is generated during the deployment of the application. Temporary
// resource will be deleted during the undeployment of the application.
IsTemporary bool `protobuf:"varint,3,opt,name=is_temporary,json=isTemporary,proto3" json:"is_temporary,omitempty"`
// Output only. Whether the output resource is created automatically by the
// Vision AI App Platform.
Autogen bool `protobuf:"varint,5,opt,name=autogen,proto3" json:"autogen,omitempty"`
}
func (x *Instance_OutputResource) Reset() {
*x = Instance_OutputResource{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[83]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Instance_OutputResource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Instance_OutputResource) ProtoMessage() {}
func (x *Instance_OutputResource) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[83]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Instance_OutputResource.ProtoReflect.Descriptor instead.
func (*Instance_OutputResource) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{44, 1}
}
func (x *Instance_OutputResource) GetOutputResource() string {
if x != nil {
return x.OutputResource
}
return ""
}
func (x *Instance_OutputResource) GetProducerNode() string {
if x != nil {
return x.ProducerNode
}
return ""
}
func (x *Instance_OutputResource) GetOutputResourceBinding() string {
if x != nil {
return x.OutputResourceBinding
}
return ""
}
func (x *Instance_OutputResource) GetIsTemporary() bool {
if x != nil {
return x.IsTemporary
}
return false
}
func (x *Instance_OutputResource) GetAutogen() bool {
if x != nil {
return x.Autogen
}
return false
}
// Message for input channel specification.
type ProcessorIOSpec_GraphInputChannelSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the current input channel.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The data types of the current input channel.
// When this field has more than 1 value, it means this input channel can be
// connected to either of these different data types.
DataType DataType `protobuf:"varint,2,opt,name=data_type,json=dataType,proto3,enum=google.cloud.visionai.v1.DataType" json:"data_type,omitempty"`
// If specified, only those detailed data types can be connected to the
// processor. For example, jpeg stream for MEDIA, or PredictionResult proto
// for PROTO type. If unspecified, then any proto is accepted.
AcceptedDataTypeUris []string `protobuf:"bytes,5,rep,name=accepted_data_type_uris,json=acceptedDataTypeUris,proto3" json:"accepted_data_type_uris,omitempty"`
// Whether the current input channel is required by the processor.
// For example, for a processor with required video input and optional audio
// input, if video input is missing, the application will be rejected while
// the audio input can be missing as long as the video input exists.
Required bool `protobuf:"varint,3,opt,name=required,proto3" json:"required,omitempty"`
// How many input edges can be connected to this input channel. 0 means
// unlimited.
MaxConnectionAllowed int64 `protobuf:"varint,4,opt,name=max_connection_allowed,json=maxConnectionAllowed,proto3" json:"max_connection_allowed,omitempty"`
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) Reset() {
*x = ProcessorIOSpec_GraphInputChannelSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[86]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorIOSpec_GraphInputChannelSpec) ProtoMessage() {}
func (x *ProcessorIOSpec_GraphInputChannelSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[86]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorIOSpec_GraphInputChannelSpec.ProtoReflect.Descriptor instead.
func (*ProcessorIOSpec_GraphInputChannelSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{47, 0}
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) GetDataType() DataType {
if x != nil {
return x.DataType
}
return DataType_DATA_TYPE_UNSPECIFIED
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) GetAcceptedDataTypeUris() []string {
if x != nil {
return x.AcceptedDataTypeUris
}
return nil
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) GetRequired() bool {
if x != nil {
return x.Required
}
return false
}
func (x *ProcessorIOSpec_GraphInputChannelSpec) GetMaxConnectionAllowed() int64 {
if x != nil {
return x.MaxConnectionAllowed
}
return 0
}
// Message for output channel specification.
type ProcessorIOSpec_GraphOutputChannelSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the current output channel.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The data type of the current output channel.
DataType DataType `protobuf:"varint,2,opt,name=data_type,json=dataType,proto3,enum=google.cloud.visionai.v1.DataType" json:"data_type,omitempty"`
DataTypeUri string `protobuf:"bytes,3,opt,name=data_type_uri,json=dataTypeUri,proto3" json:"data_type_uri,omitempty"`
}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) Reset() {
*x = ProcessorIOSpec_GraphOutputChannelSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[87]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorIOSpec_GraphOutputChannelSpec) ProtoMessage() {}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[87]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorIOSpec_GraphOutputChannelSpec.ProtoReflect.Descriptor instead.
func (*ProcessorIOSpec_GraphOutputChannelSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{47, 1}
}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) GetDataType() DataType {
if x != nil {
return x.DataType
}
return DataType_DATA_TYPE_UNSPECIFIED
}
func (x *ProcessorIOSpec_GraphOutputChannelSpec) GetDataTypeUri() string {
if x != nil {
return x.DataTypeUri
}
return ""
}
// Message for instance resource channel specification.
// External resources are virtual nodes which are not expressed in the
// application graph. Each processor expresses its out-graph spec, so customer
// is able to override the external source or destinations to the
type ProcessorIOSpec_InstanceResourceInputBindingSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to ResourceType:
//
// *ProcessorIOSpec_InstanceResourceInputBindingSpec_ConfigTypeUri
// *ProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceTypeUri
ResourceType isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType `protobuf_oneof:"resource_type"`
// Name of the input binding, unique within the processor.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) Reset() {
*x = ProcessorIOSpec_InstanceResourceInputBindingSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[88]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorIOSpec_InstanceResourceInputBindingSpec) ProtoMessage() {}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[88]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorIOSpec_InstanceResourceInputBindingSpec.ProtoReflect.Descriptor instead.
func (*ProcessorIOSpec_InstanceResourceInputBindingSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{47, 2}
}
func (m *ProcessorIOSpec_InstanceResourceInputBindingSpec) GetResourceType() isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType {
if m != nil {
return m.ResourceType
}
return nil
}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) GetConfigTypeUri() string {
if x, ok := x.GetResourceType().(*ProcessorIOSpec_InstanceResourceInputBindingSpec_ConfigTypeUri); ok {
return x.ConfigTypeUri
}
return ""
}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) GetResourceTypeUri() string {
if x, ok := x.GetResourceType().(*ProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceTypeUri); ok {
return x.ResourceTypeUri
}
return ""
}
func (x *ProcessorIOSpec_InstanceResourceInputBindingSpec) GetName() string {
if x != nil {
return x.Name
}
return ""
}
type isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType interface {
isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType()
}
type ProcessorIOSpec_InstanceResourceInputBindingSpec_ConfigTypeUri struct {
// The configuration proto that includes the Googleapis resources. I.e.
// type.googleapis.com/google.cloud.vision.v1.StreamWithAnnotation
ConfigTypeUri string `protobuf:"bytes,2,opt,name=config_type_uri,json=configTypeUri,proto3,oneof"`
}
type ProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceTypeUri struct {
// The direct type url of Googleapis resource. i.e.
// type.googleapis.com/google.cloud.vision.v1.Asset
ResourceTypeUri string `protobuf:"bytes,3,opt,name=resource_type_uri,json=resourceTypeUri,proto3,oneof"`
}
func (*ProcessorIOSpec_InstanceResourceInputBindingSpec_ConfigTypeUri) isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType() {
}
func (*ProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceTypeUri) isProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceType() {
}
type ProcessorIOSpec_InstanceResourceOutputBindingSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the output binding, unique within the processor.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The resource type uri of the acceptable output resource.
ResourceTypeUri string `protobuf:"bytes,2,opt,name=resource_type_uri,json=resourceTypeUri,proto3" json:"resource_type_uri,omitempty"`
// Whether the output resource needs to be explicitly set in the instance.
// If it is false, the processor will automatically generate it if required.
Explicit bool `protobuf:"varint,3,opt,name=explicit,proto3" json:"explicit,omitempty"`
}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) Reset() {
*x = ProcessorIOSpec_InstanceResourceOutputBindingSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[89]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProcessorIOSpec_InstanceResourceOutputBindingSpec) ProtoMessage() {}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[89]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProcessorIOSpec_InstanceResourceOutputBindingSpec.ProtoReflect.Descriptor instead.
func (*ProcessorIOSpec_InstanceResourceOutputBindingSpec) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{47, 3}
}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) GetResourceTypeUri() string {
if x != nil {
return x.ResourceTypeUri
}
return ""
}
func (x *ProcessorIOSpec_InstanceResourceOutputBindingSpec) GetExplicit() bool {
if x != nil {
return x.Explicit
}
return false
}
// Message describes product recognizer artifact.
type CustomProcessorSourceInfo_ProductRecognizerArtifact struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Resource name of RetailProductRecognitionIndex.
// Format is
// 'projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*'
RetailProductRecognitionIndex string `protobuf:"bytes,1,opt,name=retail_product_recognition_index,json=retailProductRecognitionIndex,proto3" json:"retail_product_recognition_index,omitempty"`
// Optional. The resource name of embedding model hosted in Vertex AI
// Platform.
VertexModel string `protobuf:"bytes,2,opt,name=vertex_model,json=vertexModel,proto3" json:"vertex_model,omitempty"`
}
func (x *CustomProcessorSourceInfo_ProductRecognizerArtifact) Reset() {
*x = CustomProcessorSourceInfo_ProductRecognizerArtifact{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[90]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CustomProcessorSourceInfo_ProductRecognizerArtifact) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CustomProcessorSourceInfo_ProductRecognizerArtifact) ProtoMessage() {}
func (x *CustomProcessorSourceInfo_ProductRecognizerArtifact) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[90]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CustomProcessorSourceInfo_ProductRecognizerArtifact.ProtoReflect.Descriptor instead.
func (*CustomProcessorSourceInfo_ProductRecognizerArtifact) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{48, 0}
}
func (x *CustomProcessorSourceInfo_ProductRecognizerArtifact) GetRetailProductRecognitionIndex() string {
if x != nil {
return x.RetailProductRecognitionIndex
}
return ""
}
func (x *CustomProcessorSourceInfo_ProductRecognizerArtifact) GetVertexModel() string {
if x != nil {
return x.VertexModel
}
return ""
}
// The schema is defined as an OpenAPI 3.0.2 [Schema
// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
type CustomProcessorSourceInfo_ModelSchema struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Cloud Storage location to a YAML file that defines the format of a single
// instance used in prediction and explanation requests.
InstancesSchema *GcsSource `protobuf:"bytes,1,opt,name=instances_schema,json=instancesSchema,proto3" json:"instances_schema,omitempty"`
// Cloud Storage location to a YAML file that defines the prediction and
// explanation parameters.
ParametersSchema *GcsSource `protobuf:"bytes,2,opt,name=parameters_schema,json=parametersSchema,proto3" json:"parameters_schema,omitempty"`
// Cloud Storage location to a YAML file that defines the format of a single
// prediction or explanation.
PredictionsSchema *GcsSource `protobuf:"bytes,3,opt,name=predictions_schema,json=predictionsSchema,proto3" json:"predictions_schema,omitempty"`
}
func (x *CustomProcessorSourceInfo_ModelSchema) Reset() {
*x = CustomProcessorSourceInfo_ModelSchema{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[91]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CustomProcessorSourceInfo_ModelSchema) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CustomProcessorSourceInfo_ModelSchema) ProtoMessage() {}
func (x *CustomProcessorSourceInfo_ModelSchema) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[91]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CustomProcessorSourceInfo_ModelSchema.ProtoReflect.Descriptor instead.
func (*CustomProcessorSourceInfo_ModelSchema) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{48, 1}
}
func (x *CustomProcessorSourceInfo_ModelSchema) GetInstancesSchema() *GcsSource {
if x != nil {
return x.InstancesSchema
}
return nil
}
func (x *CustomProcessorSourceInfo_ModelSchema) GetParametersSchema() *GcsSource {
if x != nil {
return x.ParametersSchema
}
return nil
}
func (x *CustomProcessorSourceInfo_ModelSchema) GetPredictionsSchema() *GcsSource {
if x != nil {
return x.PredictionsSchema
}
return nil
}
// Message describing annotations specific to application node.
type StreamWithAnnotation_NodeAnnotation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The node name of the application graph.
Node string `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
// The node specific stream annotations.
Annotations []*StreamAnnotation `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
}
func (x *StreamWithAnnotation_NodeAnnotation) Reset() {
*x = StreamWithAnnotation_NodeAnnotation{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[93]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StreamWithAnnotation_NodeAnnotation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StreamWithAnnotation_NodeAnnotation) ProtoMessage() {}
func (x *StreamWithAnnotation_NodeAnnotation) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[93]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use StreamWithAnnotation_NodeAnnotation.ProtoReflect.Descriptor instead.
func (*StreamWithAnnotation_NodeAnnotation) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{50, 0}
}
func (x *StreamWithAnnotation_NodeAnnotation) GetNode() string {
if x != nil {
return x.Node
}
return ""
}
func (x *StreamWithAnnotation_NodeAnnotation) GetAnnotations() []*StreamAnnotation {
if x != nil {
return x.Annotations
}
return nil
}
// Configuration for parsing a tag entity class.
type TagParsingConfig_EntityParsingConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The tag entity class name. This should match the class name
// produced by the tag entity detection model.
EntityClass string `protobuf:"bytes,1,opt,name=entity_class,json=entityClass,proto3" json:"entity_class,omitempty"`
// Optional. An regular expression hint.
Regex string `protobuf:"bytes,2,opt,name=regex,proto3" json:"regex,omitempty"`
// Optional. Entity matching strategy.
EntityMatchingStrategy TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy `protobuf:"varint,3,opt,name=entity_matching_strategy,json=entityMatchingStrategy,proto3,enum=google.cloud.visionai.v1.TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy" json:"entity_matching_strategy,omitempty"`
}
func (x *TagParsingConfig_EntityParsingConfig) Reset() {
*x = TagParsingConfig_EntityParsingConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[95]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TagParsingConfig_EntityParsingConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TagParsingConfig_EntityParsingConfig) ProtoMessage() {}
func (x *TagParsingConfig_EntityParsingConfig) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_visionai_v1_platform_proto_msgTypes[95]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TagParsingConfig_EntityParsingConfig.ProtoReflect.Descriptor instead.
func (*TagParsingConfig_EntityParsingConfig) Descriptor() ([]byte, []int) {
return file_google_cloud_visionai_v1_platform_proto_rawDescGZIP(), []int{72, 0}
}
func (x *TagParsingConfig_EntityParsingConfig) GetEntityClass() string {
if x != nil {
return x.EntityClass
}
return ""
}
func (x *TagParsingConfig_EntityParsingConfig) GetRegex() string {
if x != nil {
return x.Regex
}
return ""
}
func (x *TagParsingConfig_EntityParsingConfig) GetEntityMatchingStrategy() TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy {
if x != nil {
return x.EntityMatchingStrategy
}
return TagParsingConfig_EntityParsingConfig_ENTITY_MATCHING_STRATEGY_UNSPECIFIED
}
var File_google_cloud_visionai_v1_platform_proto protoreflect.FileDescriptor
var file_google_cloud_visionai_v1_platform_proto_rawDesc = []byte{
0x0a, 0x27, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66,
0x6f, 0x72, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c,
0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68,
0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f, 0x76, 0x31,
0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x1a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73,
0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x24, 0x0a, 0x22,
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x0a, 0x22, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf1,
0x01, 0x0a, 0x21, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x67, 0x0a, 0x15, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x14, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x22,
0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x49, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x21, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x0c, 0x69, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42,
0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65,
0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x0a, 0x1b, 0x55, 0x6e, 0x64, 0x65, 0x70,
0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x0a, 0x24, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61,
0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23,
0x0a, 0x21, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0x26, 0x0a, 0x24, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e,
0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcd, 0x01, 0x0a, 0x17,
0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x12,
0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09,
0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67,
0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74,
0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xaf, 0x01, 0x0a, 0x18,
0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65,
0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65,
0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x75,
0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
0x52, 0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x58, 0x0a,
0x15, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xfd, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x12, 0x23, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x0e, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69,
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xce, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d,
0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c,
0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61,
0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x4c, 0x0a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f,
0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x9a, 0x01, 0x0a, 0x18, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6f,
0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05,
0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x18, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f,
0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69,
0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x11,
0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e,
0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x65, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x81,
0x01, 0x0a, 0x1a, 0x55, 0x6e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02,
0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22,
0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x49, 0x64, 0x22, 0x7e, 0x0a, 0x16, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x64, 0x0a, 0x16,
0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x69,
0x74, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x73, 0x74,
0x72, 0x65, 0x61, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x22, 0xf5, 0x01, 0x0a, 0x20, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x19, 0x61, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69,
0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x17, 0x61,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x9d, 0x02, 0x0a, 0x23, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x19, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76,
0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72,
0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x17, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d,
0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c,
0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0xe0, 0x02, 0x0a, 0x23, 0x52,
0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
0x6d, 0x6f, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e,
0x70, 0x75, 0x74, 0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61,
0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x1a, 0x50, 0x0a, 0x11, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x12, 0x3b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x23, 0xfa, 0x41, 0x20, 0x0a, 0x1e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x22, 0xc7, 0x01,
0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x12, 0x20,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65,
0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67,
0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f,
0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54,
0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xa3, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74,
0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x40, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65,
0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65,
0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x75,
0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
0x52, 0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x52, 0x0a,
0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x22, 0xc1, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x12,
0x1d, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x06,
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73,
0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53,
0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72,
0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72,
0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0x97, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x72,
0x61, 0x66, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06,
0x64, 0x72, 0x61, 0x66, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x06, 0x64,
0x72, 0x61, 0x66, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61,
0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x20, 0x0a,
0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x03,
0x28, 0x09, 0x52, 0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x22,
0x4c, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x39, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd3, 0x01,
0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x12, 0x1d, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x64, 0x72, 0x61, 0x66,
0x74, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x64, 0x72, 0x61, 0x66, 0x74, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72,
0x61, 0x66, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x64, 0x72, 0x61, 0x66, 0x74, 0x12,
0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x49, 0x64, 0x22, 0xdb, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x72,
0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01,
0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x3a, 0x0a, 0x05,
0x64, 0x72, 0x61, 0x66, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x61, 0x66, 0x74, 0x42, 0x03, 0xe0, 0x41,
0x02, 0x52, 0x05, 0x64, 0x72, 0x61, 0x66, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d,
0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e,
0x67, 0x22, 0x85, 0x04, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x25, 0x0a, 0x23, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x8a, 0x01, 0x0a, 0x15, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x55, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52,
0x14, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09,
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c,
0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x1a, 0xc8,
0x01, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0b,
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0,
0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x43,
0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f,
0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x22, 0x73, 0x0a, 0x12, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x39, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0,
0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44,
0x72, 0x61, 0x66, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xc9,
0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23,
0x12, 0x21, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70,
0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65,
0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61,
0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12,
0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xa7, 0x01, 0x0a, 0x16, 0x4c,
0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52, 0x0a,
0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65,
0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
0x65, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c,
0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68,
0x61, 0x62, 0x6c, 0x65, 0x22, 0x62, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x62,
0x75, 0x69, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x65, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74,
0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x22,
0x54, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xef, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52, 0x06, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b,
0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x09, 0x70,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69,
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73,
0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d,
0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
0x4d, 0x61, 0x73, 0x6b, 0x12, 0x46, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41,
0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0a,
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64,
0x22, 0x7b, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23,
0x0a, 0x21, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
0x41, 0x01, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xbd, 0x0c,
0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54,
0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18,
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x62,
0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73,
0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x13, 0x61, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x12, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x64, 0x0a, 0x0c, 0x72, 0x75, 0x6e,
0x74, 0x69, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03, 0xe0,
0x41, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x46, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03,
0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x54, 0x0a, 0x0c, 0x62, 0x69, 0x6c, 0x6c, 0x69,
0x6e, 0x67, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65,
0x52, 0x0b, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x1a, 0x83, 0x04,
0x0a, 0x16, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6e,
0x74, 0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0b, 0x64, 0x65, 0x70, 0x6c,
0x6f, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f,
0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x17, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x15, 0x67, 0x6c, 0x6f, 0x62,
0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x12, 0x7a, 0x0a, 0x11, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f,
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74,
0x6f, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x6d, 0x6f, 0x6e,
0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x76, 0x0a,
0x14, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f,
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x23,
0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4e,
0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x6b, 0x65, 0x79, 0x1a, 0x2c, 0x0a, 0x10, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa7,
0x01, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54,
0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09,
0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x44,
0x45, 0x50, 0x4c, 0x4f, 0x59, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x44,
0x45, 0x50, 0x4c, 0x4f, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45,
0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52,
0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x07,
0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x08, 0x12, 0x0c,
0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x0a, 0x0a, 0x06,
0x46, 0x49, 0x58, 0x49, 0x4e, 0x47, 0x10, 0x0a, 0x22, 0x42, 0x0a, 0x0b, 0x42, 0x69, 0x6c, 0x6c,
0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x49, 0x4c, 0x4c, 0x49,
0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x59, 0x47, 0x10, 0x01, 0x12,
0x0b, 0x0a, 0x07, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x4c, 0x59, 0x10, 0x02, 0x3a, 0x6f, 0xea, 0x41,
0x6c, 0x0a, 0x23, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x61, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x52, 0x01, 0x01, 0x22, 0xc9, 0x02,
0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4e,
0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x74, 0x0a, 0x15, 0x65, 0x76,
0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c,
0x69, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13, 0x65, 0x76, 0x65,
0x6e, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x1a, 0x86, 0x01, 0x0a, 0x13, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65,
0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x12, 0x55, 0x0a, 0x19, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x5f, 0x64, 0x65,
0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x17, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72,
0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x22, 0xf4, 0x03, 0x0a, 0x04, 0x4e, 0x6f,
0x64, 0x65, 0x12, 0x4f, 0x0a, 0x24, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x6c, 0x6c,
0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
0x48, 0x00, 0x52, 0x1f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x6c, 0x6c, 0x4f, 0x75, 0x74,
0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x54, 0x6f, 0x53, 0x74, 0x72,
0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c,
0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x4a, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x70,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x42, 0x0a, 0x07, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x45, 0x64, 0x67, 0x65, 0x52, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x98, 0x01,
0x0a, 0x09, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x64, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70,
0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x32, 0x0a, 0x15,
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
0x12, 0x36, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
0x70, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75,
0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x16, 0x0a, 0x14, 0x73, 0x74, 0x72, 0x65,
0x61, 0x6d, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x22, 0xcd, 0x04, 0x0a, 0x05, 0x44, 0x72, 0x61, 0x66, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40,
0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69,
0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72,
0x61, 0x66, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c,
0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x12, 0x68, 0x0a, 0x19, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x06,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x73, 0x52, 0x17, 0x64, 0x72, 0x61, 0x66, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c,
0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x78, 0xea, 0x41, 0x75, 0x0a, 0x1d, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x72, 0x61, 0x66, 0x74, 0x12, 0x51, 0x70, 0x72, 0x6f, 0x6a,
0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x2f, 0x7b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x64,
0x72, 0x61, 0x66, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x72, 0x61, 0x66, 0x74, 0x7d, 0x52, 0x01, 0x01,
0x22, 0xfc, 0x0d, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x17, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61,
0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a,
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x6c, 0x61,
0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x4c,
0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65,
0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64,
0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x0d,
0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79,
0x70, 0x65, 0x12, 0x59, 0x0a, 0x0f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e,
0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0e, 0x69,
0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x5c, 0x0a,
0x10, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x4f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x05, 0x73,
0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53,
0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0xa4, 0x03, 0x0a, 0x0d,
0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x27, 0x0a,
0x0e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0d, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x5f, 0x0a, 0x10, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
0x74, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
0x61, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65,
0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x3f, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f,
0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08,
0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x73,
0x75, 0x6d, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x34, 0x0a,
0x16, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x69,
0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x69, 0x6e, 0x64,
0x69, 0x6e, 0x67, 0x12, 0x4f, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x42, 0x1c, 0x0a, 0x1a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x1a, 0xdd, 0x01, 0x0a, 0x0e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f,
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x23,
0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4e,
0x6f, 0x64, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0c, 0x69,
0x73, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6f, 0x72,
0x61, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x18, 0x05,
0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x61, 0x75, 0x74, 0x6f, 0x67,
0x65, 0x6e, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, 0x0a,
0x0c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a,
0x19, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55,
0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14,
0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43,
0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f,
0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11,
0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f,
0x4e, 0x10, 0x03, 0x22, 0xb5, 0x01, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a,
0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47,
0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12,
0x0d, 0x0a, 0x09, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0c,
0x0a, 0x08, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b,
0x55, 0x4e, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x0b, 0x0a,
0x07, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52,
0x52, 0x4f, 0x52, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e,
0x47, 0x10, 0x08, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e, 0x47, 0x10,
0x09, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x49, 0x58, 0x49, 0x4e, 0x47, 0x10, 0x0a, 0x12, 0x0c, 0x0a,
0x08, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x0b, 0x3a, 0x81, 0x01, 0xea, 0x41,
0x7e, 0x0a, 0x20, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x12, 0x57, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70,
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x52, 0x01, 0x01, 0x22,
0x80, 0x01, 0x0a, 0x13, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
0x02, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x43, 0x0a,
0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x22, 0xb5, 0x0b, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74,
0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61,
0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x61,
0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
0x73, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69,
0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x0e, 0x70,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x70, 0x72, 0x6f,
0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x6d, 0x6f,
0x64, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54,
0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x74,
0x0a, 0x1c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
0x6f, 0x72, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x19, 0x63, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74,
0x61, 0x74, 0x65, 0x12, 0x5a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x5f, 0x69, 0x6f, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x49, 0x4f, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f,
0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x6f, 0x53, 0x70, 0x65, 0x63, 0x12,
0x38, 0x0a, 0x15, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x5f, 0x74, 0x79, 0x70, 0x65, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
0xe0, 0x41, 0x03, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x75, 0x72, 0x6c, 0x12, 0x71, 0x0a, 0x1a, 0x73, 0x75, 0x70,
0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0,
0x41, 0x03, 0x52, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x41, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18,
0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16,
0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x50, 0x6f, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63,
0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x69, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70,
0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70, 0x6f,
0x72, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65,
0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x0d,
0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a,
0x1a, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a,
0x0a, 0x50, 0x52, 0x45, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a,
0x06, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4e,
0x4e, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x65, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x63,
0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52,
0x4f, 0x43, 0x45, 0x53, 0x53, 0x4f, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e,
0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43,
0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x54,
0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e,
0x47, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x3a,
0x69, 0xea, 0x41, 0x66, 0x0a, 0x21, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f,
0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x7d, 0x52, 0x01, 0x01, 0x22, 0xfc, 0x09, 0x0a, 0x0f, 0x50,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x4f, 0x53, 0x70, 0x65, 0x63, 0x12, 0x7a,
0x0a, 0x19, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f,
0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x4f, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x47, 0x72, 0x61,
0x70, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x70,
0x65, 0x63, 0x52, 0x16, 0x67, 0x72, 0x61, 0x70, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x7d, 0x0a, 0x1a, 0x67, 0x72,
0x61, 0x70, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x49, 0x4f, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x4f,
0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x70, 0x65, 0x63,
0x52, 0x17, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61,
0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x9c, 0x01, 0x0a, 0x25, 0x69, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70,
0x65, 0x63, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x4f,
0x53, 0x70, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e,
0x67, 0x53, 0x70, 0x65, 0x63, 0x52, 0x21, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x64,
0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x9f, 0x01, 0x0a, 0x26, 0x69, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f,
0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70,
0x65, 0x63, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x49, 0x4f,
0x53, 0x70, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x69,
0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x52, 0x22, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69,
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x73, 0x1a, 0xf5, 0x01, 0x0a, 0x15, 0x47,
0x72, 0x61, 0x70, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61,
0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52,
0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x35, 0x0a, 0x17, 0x61, 0x63, 0x63,
0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x75, 0x72, 0x69, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, 0x63, 0x65,
0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x55, 0x72, 0x69, 0x73,
0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16,
0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61,
0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x6d, 0x61,
0x78, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77,
0x65, 0x64, 0x1a, 0x91, 0x01, 0x0a, 0x16, 0x47, 0x72, 0x61, 0x70, 0x68, 0x4f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x3f, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79,
0x70, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x54,
0x79, 0x70, 0x65, 0x55, 0x72, 0x69, 0x1a, 0x9f, 0x01, 0x0a, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x12, 0x28, 0x0a, 0x0f, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79,
0x70, 0x65, 0x55, 0x72, 0x69, 0x12, 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65,
0x55, 0x72, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x1a, 0x7f, 0x0a, 0x21, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79,
0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x55, 0x72, 0x69, 0x12, 0x1a, 0x0a,
0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x22, 0xe5, 0x08, 0x0a, 0x19, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x74, 0x65,
0x78, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
0x0b, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x8f, 0x01, 0x0a,
0x1b, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
0x7a, 0x65, 0x72, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75,
0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52,
0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
0x74, 0x48, 0x00, 0x52, 0x19, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f,
0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x5f,
0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43,
0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54,
0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12,
0x75, 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73,
0x73, 0x6f, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x64,
0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x62, 0x0a, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66,
0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x0b, 0x6d,
0x6f, 0x64, 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x91, 0x01, 0x0a, 0x19, 0x50,
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72,
0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x4c, 0x0a, 0x20, 0x72, 0x65, 0x74, 0x61,
0x69, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67,
0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x1d, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x50,
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78,
0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
0x01, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x83,
0x02, 0x0a, 0x0b, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x4e,
0x0a, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x5f, 0x73, 0x63, 0x68, 0x65,
0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0f, 0x69,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x50,
0x0a, 0x11, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x63, 0x68,
0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x10,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61,
0x12, 0x52, 0x0a, 0x12, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f,
0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x52, 0x11, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x63,
0x68, 0x65, 0x6d, 0x61, 0x1a, 0x41, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x67, 0x0a, 0x0a, 0x53, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f,
0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x54, 0x45, 0x58, 0x5f, 0x41, 0x55, 0x54,
0x4f, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x54, 0x45, 0x58, 0x5f,
0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x52, 0x4f, 0x44,
0x55, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x5a, 0x45, 0x52, 0x10, 0x03,
0x42, 0x0f, 0x0a, 0x0d, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x70, 0x61, 0x74,
0x68, 0x22, 0xee, 0x0e, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6d, 0x0a, 0x19, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x73,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49,
0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x16, 0x76, 0x69,
0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x12, 0x7d, 0x0a, 0x1f, 0x61, 0x69, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74,
0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x49, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1b, 0x61, 0x69, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x12, 0x66, 0x0a, 0x16, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x77, 0x61, 0x72,
0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4d,
0x65, 0x64, 0x69, 0x61, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x61, 0x72, 0x65,
0x68, 0x6f, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5a, 0x0a, 0x12, 0x70,
0x65, 0x72, 0x73, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x75, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x10, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75,
0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x66, 0x0a, 0x16, 0x6f, 0x63, 0x63, 0x75, 0x70,
0x61, 0x6e, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14, 0x6f, 0x63, 0x63, 0x75, 0x70,
0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
0x7f, 0x0a, 0x1f, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c,
0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c,
0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x48, 0x00, 0x52, 0x1c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c,
0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x12, 0x73, 0x0a, 0x1b, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6d,
0x6c, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x41, 0x75, 0x74, 0x6f, 0x4d, 0x4c, 0x56, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x18, 0x76, 0x65, 0x72,
0x74, 0x65, 0x78, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x70, 0x0a, 0x1a, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x5f,
0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x41, 0x75, 0x74, 0x6f, 0x4d,
0x4c, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x17,
0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x56, 0x69, 0x64, 0x65,
0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 0x0a, 0x14, 0x76, 0x65, 0x72, 0x74, 0x65,
0x78, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x12, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x43, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7f, 0x0a, 0x1f, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x6c, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x12, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1c, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x54, 0x0a, 0x10, 0x62, 0x69,
0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x13,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00,
0x52, 0x0e, 0x62, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x12, 0x57, 0x0a, 0x11, 0x67, 0x63, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x67, 0x63, 0x73, 0x4f, 0x75, 0x74,
0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6f, 0x0a, 0x19, 0x70, 0x72, 0x6f,
0x64, 0x75, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x5f,
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52,
0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
0x00, 0x52, 0x17, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e,
0x69, 0x7a, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xaa, 0x01, 0x0a, 0x2e, 0x70,
0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69,
0x76, 0x65, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50,
0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76,
0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x2a, 0x70, 0x65, 0x72,
0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45,
0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x63, 0x0a, 0x15, 0x74, 0x61, 0x67, 0x5f, 0x72,
0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76,
0x31, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x13, 0x74, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f,
0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x66, 0x0a, 0x16,
0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61,
0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14,
0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x12, 0x48, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1a, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x12, 0x65, 0x78, 0x70, 0x65,
0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x12,
0x0a, 0x10, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x22, 0x96, 0x03, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x69, 0x74,
0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x06, 0x73,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x23, 0xfa, 0x41, 0x20,
0x0a, 0x1e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
0x52, 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x63, 0x0a, 0x17, 0x61, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x68, 0x0a,
0x10, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x72, 0x0a, 0x0e, 0x4e, 0x6f, 0x64, 0x65, 0x41,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a,
0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74,
0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7d, 0x0a, 0x19, 0x41,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a, 0x0b,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72,
0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x13, 0x52,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x12, 0x63, 0x0a, 0x17, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53,
0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x16, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5e, 0x0a, 0x10, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa2, 0x01, 0x0a, 0x16, 0x56, 0x69, 0x64, 0x65,
0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x1c, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73,
0x12, 0x6a, 0x0a, 0x17, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68,
0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72,
0x65, 0x61, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x42, 0x02, 0x18, 0x01, 0x52, 0x15, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x57, 0x69,
0x74, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1d, 0x0a, 0x1b,
0x41, 0x49, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x77, 0x0a, 0x14, 0x4d,
0x65, 0x64, 0x69, 0x61, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x72, 0x70, 0x75, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x72, 0x70, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x06, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52,
0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x03, 0x74, 0x74, 0x6c, 0x22, 0xf0, 0x01, 0x0a, 0x10, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42,
0x6c, 0x75, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x63, 0x0a, 0x10, 0x70, 0x65, 0x72,
0x73, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x75, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50,
0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e,
0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d,
0x0a, 0x0a, 0x66, 0x61, 0x63, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01,
0x28, 0x08, 0x52, 0x09, 0x66, 0x61, 0x63, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x58, 0x0a,
0x0e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12,
0x20, 0x0a, 0x1c, 0x50, 0x45, 0x52, 0x53, 0x4f, 0x4e, 0x5f, 0x42, 0x4c, 0x55, 0x52, 0x5f, 0x54,
0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
0x00, 0x12, 0x13, 0x0a, 0x0f, 0x46, 0x55, 0x4c, 0x4c, 0x5f, 0x4f, 0x43, 0x43, 0x55, 0x4c, 0x55,
0x53, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x4c, 0x55, 0x52, 0x5f, 0x46,
0x49, 0x4c, 0x54, 0x45, 0x52, 0x10, 0x02, 0x22, 0xc7, 0x01, 0x0a, 0x14, 0x4f, 0x63, 0x63, 0x75,
0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x12, 0x34, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x6f, 0x70, 0x6c,
0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x43, 0x6f,
0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x36, 0x0a, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x5f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e,
0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x56,
0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x41,
0x0a, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x69, 0x6e,
0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x18,
0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x77, 0x65,
0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
0x67, 0x22, 0x8c, 0x01, 0x0a, 0x1c, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x56, 0x65, 0x68, 0x69,
0x63, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x6f,
0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01,
0x28, 0x08, 0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x65, 0x6f, 0x70, 0x6c, 0x65,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x36, 0x0a, 0x17, 0x65, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x5f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67,
0x22, 0xfd, 0x01, 0x0a, 0x2a, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f,
0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74,
0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
0x43, 0x0a, 0x1e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x63, 0x65, 0x5f, 0x63,
0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46,
0x61, 0x63, 0x65, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x1e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x68,
0x65, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x74,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x65, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x48, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65,
0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x1f, 0x65, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61,
0x67, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
0x28, 0x08, 0x52, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x43,
0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63,
0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x22, 0xb4, 0x02, 0x0a, 0x0e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x78, 0x0a, 0x16, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x70, 0x70,
0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x14, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x70, 0x70,
0x69, 0x6e, 0x67, 0x12, 0x49, 0x0a, 0x22, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x65,
0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x66, 0x5f, 0x6e,
0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
0x1d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61,
0x62, 0x6c, 0x65, 0x49, 0x66, 0x4e, 0x6f, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x1a, 0x47,
0x0a, 0x19, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d,
0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x76, 0x0a, 0x18, 0x56, 0x65, 0x72, 0x74, 0x65,
0x78, 0x41, 0x75, 0x74, 0x6f, 0x4d, 0x4c, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x12, 0x31, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72,
0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72,
0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
0x0e, 0x6d, 0x61, 0x78, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22,
0xd3, 0x01, 0x0a, 0x17, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x41, 0x75, 0x74, 0x6f, 0x4d, 0x4c,
0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x31, 0x0a, 0x14, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x25,
0x0a, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x4c,
0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x65,
0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e,
0x6d, 0x61, 0x78, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35,
0x0a, 0x17, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x5f, 0x73,
0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52,
0x14, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x53, 0x69, 0x7a, 0x65,
0x4c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x8c, 0x03, 0x0a, 0x12, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78,
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2c, 0x0a, 0x12,
0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66,
0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x50, 0x72, 0x65,
0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x70, 0x73, 0x12, 0x5d, 0x0a, 0x13, 0x64, 0x65,
0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x44, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x12, 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x1e, 0x70, 0x6f, 0x73,
0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x1b, 0x70, 0x6f, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e,
0x67, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e,
0x0a, 0x1b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20,
0x01, 0x28, 0x08, 0x52, 0x19, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x45,
0x0a, 0x1a, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x17, 0x64, 0x79, 0x6e, 0x61, 0x6d,
0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x70,
0x69, 0x63, 0x88, 0x01, 0x01, 0x42, 0x1d, 0x0a, 0x1b, 0x5f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69,
0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74,
0x6f, 0x70, 0x69, 0x63, 0x22, 0x2c, 0x0a, 0x0f, 0x47, 0x63, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75,
0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x63, 0x73, 0x5f, 0x70,
0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x63, 0x73, 0x50, 0x61,
0x74, 0x68, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x49,
0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xbd, 0x01, 0x0a, 0x0b, 0x4d,
0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x61,
0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x79,
0x70, 0x65, 0x12, 0x59, 0x0a, 0x10, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0f, 0x61, 0x63,
0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a,
0x11, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x15, 0x41, 0x75,
0x74, 0x6f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53,
0x70, 0x65, 0x63, 0x12, 0x24, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x6d,
0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72,
0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65,
0x74, 0x22, 0xbb, 0x02, 0x0a, 0x12, 0x44, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x52,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x0c, 0x6d, 0x61, 0x63, 0x68,
0x69, 0x6e, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e,
0x65, 0x53, 0x70, 0x65, 0x63, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x6d,
0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x32, 0x0a, 0x11, 0x6d, 0x69,
0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x0f, 0x6d,
0x69, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f,
0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0f,
0x6d, 0x61, 0x78, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12,
0x6e, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74,
0x6f, 0x73, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x70,
0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x16, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x63, 0x61,
0x6c, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x70, 0x65, 0x63, 0x73, 0x22,
0x8c, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x67,
0x6e, 0x69, 0x7a, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x72,
0x65, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x45, 0x6e, 0x64, 0x70,
0x6f, 0x69, 0x6e, 0x74, 0x12, 0x48, 0x0a, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x74,
0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1e,
0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22, 0xc2,
0x01, 0x0a, 0x13, 0x54, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x72,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x25, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x22, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x44, 0x65, 0x74,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65,
0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x58, 0x0a, 0x12, 0x74, 0x61, 0x67,
0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x54, 0x61, 0x67, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x52, 0x10, 0x74, 0x61, 0x67, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x22, 0xed, 0x03, 0x0a, 0x10, 0x54, 0x61, 0x67, 0x50, 0x61, 0x72, 0x73, 0x69,
0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x74, 0x0a, 0x16, 0x65, 0x6e, 0x74, 0x69,
0x74, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x67, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x61, 0x72, 0x73, 0x69,
0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x1a, 0xe2,
0x02, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
0x02, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x19,
0x0a, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
0x41, 0x01, 0x52, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x12, 0x94, 0x01, 0x0a, 0x18, 0x65, 0x6e,
0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74,
0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x55, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x67, 0x50, 0x61, 0x72, 0x73, 0x69,
0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50,
0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x74,
0x69, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74,
0x65, 0x67, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
0x22, 0x71, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69,
0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x28, 0x0a, 0x24, 0x45, 0x4e,
0x54, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54,
0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x5f, 0x4c, 0x49,
0x4e, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x14, 0x0a,
0x10, 0x4d, 0x41, 0x58, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, 0x5f, 0x41, 0x52, 0x45,
0x41, 0x10, 0x02, 0x2a, 0xa0, 0x02, 0x0a, 0x09, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x79, 0x70,
0x65, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a,
0x14, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43,
0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43,
0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x18, 0x0a,
0x14, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43,
0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x56, 0x49, 0x44, 0x45, 0x4f,
0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47,
0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x54, 0x49,
0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05,
0x12, 0x16, 0x0a, 0x12, 0x4f, 0x43, 0x43, 0x55, 0x50, 0x41, 0x4e, 0x43, 0x59, 0x5f, 0x43, 0x4f,
0x55, 0x4e, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x45, 0x52, 0x53,
0x4f, 0x4e, 0x5f, 0x42, 0x4c, 0x55, 0x52, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52,
0x54, 0x45, 0x58, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12,
0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x5a,
0x45, 0x52, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x41, 0x47, 0x5f, 0x52, 0x45, 0x43, 0x4f,
0x47, 0x4e, 0x49, 0x5a, 0x45, 0x52, 0x10, 0x0a, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x59, 0x4e, 0x54,
0x48, 0x5f, 0x49, 0x44, 0x10, 0x0f, 0x2a, 0xd0, 0x01, 0x0a, 0x0f, 0x41, 0x63, 0x63, 0x65, 0x6c,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x43,
0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55,
0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10,
0x4e, 0x56, 0x49, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x45, 0x53, 0x4c, 0x41, 0x5f, 0x4b, 0x38, 0x30,
0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x56, 0x49, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x45, 0x53,
0x4c, 0x41, 0x5f, 0x50, 0x31, 0x30, 0x30, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x56, 0x49,
0x44, 0x49, 0x41, 0x5f, 0x54, 0x45, 0x53, 0x4c, 0x41, 0x5f, 0x56, 0x31, 0x30, 0x30, 0x10, 0x03,
0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x56, 0x49, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x45, 0x53, 0x4c, 0x41,
0x5f, 0x50, 0x34, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x56, 0x49, 0x44, 0x49, 0x41, 0x5f,
0x54, 0x45, 0x53, 0x4c, 0x41, 0x5f, 0x54, 0x34, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x56,
0x49, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x45, 0x53, 0x4c, 0x41, 0x5f, 0x41, 0x31, 0x30, 0x30, 0x10,
0x08, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x50, 0x55, 0x5f, 0x56, 0x32, 0x10, 0x06, 0x12, 0x0a, 0x0a,
0x06, 0x54, 0x50, 0x55, 0x5f, 0x56, 0x33, 0x10, 0x07, 0x2a, 0x57, 0x0a, 0x08, 0x44, 0x61, 0x74,
0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59,
0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
0x12, 0x09, 0x0a, 0x05, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49,
0x4d, 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x10,
0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x48, 0x4f, 0x4c, 0x44, 0x45, 0x52,
0x10, 0x04, 0x32, 0xea, 0x2d, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f,
0x72, 0x6d, 0x12, 0xbc, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x41,
0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12,
0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0xa9, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3f, 0xda, 0x41,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31,
0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xe5, 0x01,
0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, 0xca, 0x41, 0x20, 0x0a, 0x0b, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x12, 0x70, 0x61,
0x72, 0x65, 0x6e, 0x74, 0x2c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x22, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xf7, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8e,
0x01, 0xca, 0x41, 0x20, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x17, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 0xd3,
0xe4, 0x93, 0x02, 0x4b, 0x3a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x32, 0x3c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12,
0xd4, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0xca, 0x41, 0x2a, 0x0a, 0x15, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d,
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3,
0xe4, 0x93, 0x02, 0x32, 0x2a, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xe2, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x70, 0x6c, 0x6f,
0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
0x7a, 0xca, 0x41, 0x2e, 0x0a, 0x19, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x3a,
0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x12, 0xea, 0x01, 0x0a, 0x13,
0x55, 0x6e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55,
0x6e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7e, 0xca, 0x41, 0x30, 0x0a, 0x1b, 0x55,
0x6e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x3a, 0x01, 0x2a, 0x22, 0x39, 0x2f,
0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
0x75, 0x6e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x12, 0x83, 0x02, 0x0a, 0x19, 0x41, 0x64, 0x64,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61,
0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76,
0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67,
0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x22, 0x8a, 0x01, 0xca, 0x41, 0x36, 0x0a, 0x21, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70,
0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x44, 0x3a, 0x01, 0x2a, 0x22, 0x3f, 0x2f,
0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
0x61, 0x64, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x8f,
0x02, 0x0a, 0x1c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12,
0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76,
0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65,
0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e,
0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x90, 0x01,
0xca, 0x41, 0x39, 0x0a, 0x24, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75,
0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x3a, 0x01, 0x2a, 0x22, 0x42, 0x2f, 0x76,
0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72,
0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74,
0x12, 0x8f, 0x02, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75,
0x74, 0x12, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
0x90, 0x01, 0xca, 0x41, 0x39, 0x0a, 0x24, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e,
0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x3a, 0x01, 0x2a, 0x22, 0x42,
0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d,
0x3a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x70,
0x75, 0x74, 0x12, 0xbf, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4d, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x12, 0x3c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x73, 0x12, 0xac, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x4b, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x12, 0x3c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
0x2f, 0x2a, 0x7d, 0x12, 0x92, 0x02, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72,
0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x97,
0x01, 0xca, 0x41, 0x37, 0x0a, 0x22, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x50, 0x3a, 0x01, 0x2a, 0x22, 0x4b, 0x2f, 0x76, 0x31,
0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0xf7, 0x01, 0x0a, 0x1a, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f,
0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x22, 0x7d, 0xca, 0x41, 0x1d, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74,
0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0x50, 0x3a, 0x01, 0x2a, 0x22, 0x4b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x73, 0x12, 0xa9, 0x02, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e,
0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xae, 0x01,
0xca, 0x41, 0x37, 0x0a, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x1b, 0x6e, 0x61, 0x6d,
0x65, 0x2c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x50, 0x3a, 0x01,
0x2a, 0x22, 0x4b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x2f, 0x2a, 0x7d, 0x3a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0xb3,
0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x73, 0x12, 0x2b, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x72, 0x61,
0x66, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x72,
0x61, 0x66, 0x74, 0x73, 0x12, 0xa0, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x44, 0x72, 0x61, 0x66,
0x74, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74,
0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x61, 0x66, 0x74, 0x22, 0x48, 0xda,
0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76,
0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x72,
0x61, 0x66, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xd9, 0x01, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c,
0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, 0xca, 0x41, 0x1a, 0x0a, 0x05, 0x44, 0x72, 0x61, 0x66, 0x74,
0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64,
0x61, 0x74, 0x61, 0xda, 0x41, 0x15, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x64, 0x72, 0x61,
0x66, 0x74, 0x2c, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02,
0x42, 0x3a, 0x05, 0x64, 0x72, 0x61, 0x66, 0x74, 0x22, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70,
0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x72, 0x61,
0x66, 0x74, 0x73, 0x12, 0xdb, 0x01, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x72,
0x61, 0x66, 0x74, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x22, 0x7f, 0xca, 0x41, 0x1a, 0x0a, 0x05, 0x44, 0x72, 0x61, 0x66, 0x74, 0x12, 0x11, 0x4f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda,
0x41, 0x11, 0x64, 0x72, 0x61, 0x66, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d,
0x61, 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x48, 0x3a, 0x05, 0x64, 0x72, 0x61, 0x66, 0x74,
0x32, 0x3f, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x64, 0x72, 0x61, 0x66, 0x74, 0x2e, 0x6e, 0x61, 0x6d,
0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x73, 0x2f, 0x2a,
0x7d, 0x12, 0xd1, 0x01, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66,
0x74, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x75,
0xca, 0x41, 0x2a, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x2a, 0x39, 0x2f, 0x76, 0x31, 0x2f,
0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x72, 0x61, 0x66,
0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xb4, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0xda, 0x41, 0x06,
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x76,
0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0xd8, 0x01, 0x0a,
0x16, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x50, 0x72, 0x6f,
0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x50,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4b, 0xda, 0x41, 0x06, 0x70,
0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x3a, 0x01, 0x2a, 0x22, 0x37,
0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x3a, 0x70,
0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x12, 0xa1, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50,
0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x22, 0x3d, 0xda, 0x41,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x76, 0x31,
0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xe7, 0x01, 0x0a, 0x0f,
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12,
0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x22, 0x82, 0x01, 0xca, 0x41, 0x1e, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x1d, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2c, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f,
0x72, 0x5f, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x3a, 0x09, 0x70, 0x72, 0x6f, 0x63,
0x65, 0x73, 0x73, 0x6f, 0x72, 0x22, 0x2e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0xe9, 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, 0x01, 0xca, 0x41, 0x1e,
0x0a, 0x09, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x11, 0x4f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41,
0x15, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x3a, 0x09, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x32, 0x38, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x72,
0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2f, 0x2a,
0x7d, 0x12, 0xce, 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x63,
0x65, 0x73, 0x73, 0x6f, 0x72, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6a, 0xca, 0x41, 0x2a, 0x0a, 0x15, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74,
0x61, 0x64, 0x61, 0x74, 0x61, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0x30, 0x2a, 0x2e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2f,
0x2a, 0x7d, 0x1a, 0x4b, 0xca, 0x41, 0x17, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41,
0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68,
0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42,
0xbd, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
0x42, 0x0d, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
0x01, 0x5a, 0x38, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f,
0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x70, 0x62,
0x3b, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x70, 0x62, 0xaa, 0x02, 0x18, 0x47, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x56, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x41, 0x49, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c,
0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x49, 0x5c, 0x56,
0x31, 0xea, 0x02, 0x1b, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75,
0x64, 0x3a, 0x3a, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x49, 0x3a, 0x3a, 0x56, 0x31, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_google_cloud_visionai_v1_platform_proto_rawDescOnce sync.Once
file_google_cloud_visionai_v1_platform_proto_rawDescData = file_google_cloud_visionai_v1_platform_proto_rawDesc
)
func file_google_cloud_visionai_v1_platform_proto_rawDescGZIP() []byte {
file_google_cloud_visionai_v1_platform_proto_rawDescOnce.Do(func() {
file_google_cloud_visionai_v1_platform_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_visionai_v1_platform_proto_rawDescData)
})
return file_google_cloud_visionai_v1_platform_proto_rawDescData
}
var file_google_cloud_visionai_v1_platform_proto_enumTypes = make([]protoimpl.EnumInfo, 12)
var file_google_cloud_visionai_v1_platform_proto_msgTypes = make([]protoimpl.MessageInfo, 96)
var file_google_cloud_visionai_v1_platform_proto_goTypes = []interface{}{
(ModelType)(0), // 0: google.cloud.visionai.v1.ModelType
(AcceleratorType)(0), // 1: google.cloud.visionai.v1.AcceleratorType
(DataType)(0), // 2: google.cloud.visionai.v1.DataType
(Application_State)(0), // 3: google.cloud.visionai.v1.Application.State
(Application_BillingMode)(0), // 4: google.cloud.visionai.v1.Application.BillingMode
(Instance_InstanceType)(0), // 5: google.cloud.visionai.v1.Instance.InstanceType
(Instance_State)(0), // 6: google.cloud.visionai.v1.Instance.State
(Processor_ProcessorType)(0), // 7: google.cloud.visionai.v1.Processor.ProcessorType
(Processor_ProcessorState)(0), // 8: google.cloud.visionai.v1.Processor.ProcessorState
(CustomProcessorSourceInfo_SourceType)(0), // 9: google.cloud.visionai.v1.CustomProcessorSourceInfo.SourceType
(PersonBlurConfig_PersonBlurType)(0), // 10: google.cloud.visionai.v1.PersonBlurConfig.PersonBlurType
(TagParsingConfig_EntityParsingConfig_EntityMatchingStrategy)(0), // 11: google.cloud.visionai.v1.TagParsingConfig.EntityParsingConfig.EntityMatchingStrategy
(*DeleteApplicationInstancesResponse)(nil), // 12: google.cloud.visionai.v1.DeleteApplicationInstancesResponse
(*CreateApplicationInstancesResponse)(nil), // 13: google.cloud.visionai.v1.CreateApplicationInstancesResponse
(*UpdateApplicationInstancesResponse)(nil), // 14: google.cloud.visionai.v1.UpdateApplicationInstancesResponse
(*CreateApplicationInstancesRequest)(nil), // 15: google.cloud.visionai.v1.CreateApplicationInstancesRequest
(*DeleteApplicationInstancesRequest)(nil), // 16: google.cloud.visionai.v1.DeleteApplicationInstancesRequest
(*DeployApplicationResponse)(nil), // 17: google.cloud.visionai.v1.DeployApplicationResponse
(*UndeployApplicationResponse)(nil), // 18: google.cloud.visionai.v1.UndeployApplicationResponse
(*RemoveApplicationStreamInputResponse)(nil), // 19: google.cloud.visionai.v1.RemoveApplicationStreamInputResponse
(*AddApplicationStreamInputResponse)(nil), // 20: google.cloud.visionai.v1.AddApplicationStreamInputResponse
(*UpdateApplicationStreamInputResponse)(nil), // 21: google.cloud.visionai.v1.UpdateApplicationStreamInputResponse
(*ListApplicationsRequest)(nil), // 22: google.cloud.visionai.v1.ListApplicationsRequest
(*ListApplicationsResponse)(nil), // 23: google.cloud.visionai.v1.ListApplicationsResponse
(*GetApplicationRequest)(nil), // 24: google.cloud.visionai.v1.GetApplicationRequest
(*CreateApplicationRequest)(nil), // 25: google.cloud.visionai.v1.CreateApplicationRequest
(*UpdateApplicationRequest)(nil), // 26: google.cloud.visionai.v1.UpdateApplicationRequest
(*DeleteApplicationRequest)(nil), // 27: google.cloud.visionai.v1.DeleteApplicationRequest
(*DeployApplicationRequest)(nil), // 28: google.cloud.visionai.v1.DeployApplicationRequest
(*UndeployApplicationRequest)(nil), // 29: google.cloud.visionai.v1.UndeployApplicationRequest
(*ApplicationStreamInput)(nil), // 30: google.cloud.visionai.v1.ApplicationStreamInput
(*AddApplicationStreamInputRequest)(nil), // 31: google.cloud.visionai.v1.AddApplicationStreamInputRequest
(*UpdateApplicationStreamInputRequest)(nil), // 32: google.cloud.visionai.v1.UpdateApplicationStreamInputRequest
(*RemoveApplicationStreamInputRequest)(nil), // 33: google.cloud.visionai.v1.RemoveApplicationStreamInputRequest
(*ListInstancesRequest)(nil), // 34: google.cloud.visionai.v1.ListInstancesRequest
(*ListInstancesResponse)(nil), // 35: google.cloud.visionai.v1.ListInstancesResponse
(*GetInstanceRequest)(nil), // 36: google.cloud.visionai.v1.GetInstanceRequest
(*ListDraftsRequest)(nil), // 37: google.cloud.visionai.v1.ListDraftsRequest
(*ListDraftsResponse)(nil), // 38: google.cloud.visionai.v1.ListDraftsResponse
(*GetDraftRequest)(nil), // 39: google.cloud.visionai.v1.GetDraftRequest
(*CreateDraftRequest)(nil), // 40: google.cloud.visionai.v1.CreateDraftRequest
(*UpdateDraftRequest)(nil), // 41: google.cloud.visionai.v1.UpdateDraftRequest
(*UpdateApplicationInstancesRequest)(nil), // 42: google.cloud.visionai.v1.UpdateApplicationInstancesRequest
(*DeleteDraftRequest)(nil), // 43: google.cloud.visionai.v1.DeleteDraftRequest
(*ListProcessorsRequest)(nil), // 44: google.cloud.visionai.v1.ListProcessorsRequest
(*ListProcessorsResponse)(nil), // 45: google.cloud.visionai.v1.ListProcessorsResponse
(*ListPrebuiltProcessorsRequest)(nil), // 46: google.cloud.visionai.v1.ListPrebuiltProcessorsRequest
(*ListPrebuiltProcessorsResponse)(nil), // 47: google.cloud.visionai.v1.ListPrebuiltProcessorsResponse
(*GetProcessorRequest)(nil), // 48: google.cloud.visionai.v1.GetProcessorRequest
(*CreateProcessorRequest)(nil), // 49: google.cloud.visionai.v1.CreateProcessorRequest
(*UpdateProcessorRequest)(nil), // 50: google.cloud.visionai.v1.UpdateProcessorRequest
(*DeleteProcessorRequest)(nil), // 51: google.cloud.visionai.v1.DeleteProcessorRequest
(*Application)(nil), // 52: google.cloud.visionai.v1.Application
(*ApplicationConfigs)(nil), // 53: google.cloud.visionai.v1.ApplicationConfigs
(*Node)(nil), // 54: google.cloud.visionai.v1.Node
(*Draft)(nil), // 55: google.cloud.visionai.v1.Draft
(*Instance)(nil), // 56: google.cloud.visionai.v1.Instance
(*ApplicationInstance)(nil), // 57: google.cloud.visionai.v1.ApplicationInstance
(*Processor)(nil), // 58: google.cloud.visionai.v1.Processor
(*ProcessorIOSpec)(nil), // 59: google.cloud.visionai.v1.ProcessorIOSpec
(*CustomProcessorSourceInfo)(nil), // 60: google.cloud.visionai.v1.CustomProcessorSourceInfo
(*ProcessorConfig)(nil), // 61: google.cloud.visionai.v1.ProcessorConfig
(*StreamWithAnnotation)(nil), // 62: google.cloud.visionai.v1.StreamWithAnnotation
(*ApplicationNodeAnnotation)(nil), // 63: google.cloud.visionai.v1.ApplicationNodeAnnotation
(*ResourceAnnotations)(nil), // 64: google.cloud.visionai.v1.ResourceAnnotations
(*VideoStreamInputConfig)(nil), // 65: google.cloud.visionai.v1.VideoStreamInputConfig
(*AIEnabledDevicesInputConfig)(nil), // 66: google.cloud.visionai.v1.AIEnabledDevicesInputConfig
(*MediaWarehouseConfig)(nil), // 67: google.cloud.visionai.v1.MediaWarehouseConfig
(*PersonBlurConfig)(nil), // 68: google.cloud.visionai.v1.PersonBlurConfig
(*OccupancyCountConfig)(nil), // 69: google.cloud.visionai.v1.OccupancyCountConfig
(*PersonVehicleDetectionConfig)(nil), // 70: google.cloud.visionai.v1.PersonVehicleDetectionConfig
(*PersonalProtectiveEquipmentDetectionConfig)(nil), // 71: google.cloud.visionai.v1.PersonalProtectiveEquipmentDetectionConfig
(*GeneralObjectDetectionConfig)(nil), // 72: google.cloud.visionai.v1.GeneralObjectDetectionConfig
(*BigQueryConfig)(nil), // 73: google.cloud.visionai.v1.BigQueryConfig
(*VertexAutoMLVisionConfig)(nil), // 74: google.cloud.visionai.v1.VertexAutoMLVisionConfig
(*VertexAutoMLVideoConfig)(nil), // 75: google.cloud.visionai.v1.VertexAutoMLVideoConfig
(*VertexCustomConfig)(nil), // 76: google.cloud.visionai.v1.VertexCustomConfig
(*GcsOutputConfig)(nil), // 77: google.cloud.visionai.v1.GcsOutputConfig
(*UniversalInputConfig)(nil), // 78: google.cloud.visionai.v1.UniversalInputConfig
(*MachineSpec)(nil), // 79: google.cloud.visionai.v1.MachineSpec
(*AutoscalingMetricSpec)(nil), // 80: google.cloud.visionai.v1.AutoscalingMetricSpec
(*DedicatedResources)(nil), // 81: google.cloud.visionai.v1.DedicatedResources
(*ProductRecognizerConfig)(nil), // 82: google.cloud.visionai.v1.ProductRecognizerConfig
(*TagRecognizerConfig)(nil), // 83: google.cloud.visionai.v1.TagRecognizerConfig
(*TagParsingConfig)(nil), // 84: google.cloud.visionai.v1.TagParsingConfig
(*RemoveApplicationStreamInputRequest_TargetStreamInput)(nil), // 85: google.cloud.visionai.v1.RemoveApplicationStreamInputRequest.TargetStreamInput
(*UpdateApplicationInstancesRequest_UpdateApplicationInstance)(nil), // 86: google.cloud.visionai.v1.UpdateApplicationInstancesRequest.UpdateApplicationInstance
(*Application_ApplicationRuntimeInfo)(nil), // 87: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo
nil, // 88: google.cloud.visionai.v1.Application.LabelsEntry
(*Application_ApplicationRuntimeInfo_GlobalOutputResource)(nil), // 89: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.GlobalOutputResource
(*Application_ApplicationRuntimeInfo_MonitoringConfig)(nil), // 90: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.MonitoringConfig
(*ApplicationConfigs_EventDeliveryConfig)(nil), // 91: google.cloud.visionai.v1.ApplicationConfigs.EventDeliveryConfig
(*Node_InputEdge)(nil), // 92: google.cloud.visionai.v1.Node.InputEdge
nil, // 93: google.cloud.visionai.v1.Draft.LabelsEntry
(*Instance_InputResource)(nil), // 94: google.cloud.visionai.v1.Instance.InputResource
(*Instance_OutputResource)(nil), // 95: google.cloud.visionai.v1.Instance.OutputResource
nil, // 96: google.cloud.visionai.v1.Instance.LabelsEntry
nil, // 97: google.cloud.visionai.v1.Processor.LabelsEntry
(*ProcessorIOSpec_GraphInputChannelSpec)(nil), // 98: google.cloud.visionai.v1.ProcessorIOSpec.GraphInputChannelSpec
(*ProcessorIOSpec_GraphOutputChannelSpec)(nil), // 99: google.cloud.visionai.v1.ProcessorIOSpec.GraphOutputChannelSpec
(*ProcessorIOSpec_InstanceResourceInputBindingSpec)(nil), // 100: google.cloud.visionai.v1.ProcessorIOSpec.InstanceResourceInputBindingSpec
(*ProcessorIOSpec_InstanceResourceOutputBindingSpec)(nil), // 101: google.cloud.visionai.v1.ProcessorIOSpec.InstanceResourceOutputBindingSpec
(*CustomProcessorSourceInfo_ProductRecognizerArtifact)(nil), // 102: google.cloud.visionai.v1.CustomProcessorSourceInfo.ProductRecognizerArtifact
(*CustomProcessorSourceInfo_ModelSchema)(nil), // 103: google.cloud.visionai.v1.CustomProcessorSourceInfo.ModelSchema
nil, // 104: google.cloud.visionai.v1.CustomProcessorSourceInfo.AdditionalInfoEntry
(*StreamWithAnnotation_NodeAnnotation)(nil), // 105: google.cloud.visionai.v1.StreamWithAnnotation.NodeAnnotation
nil, // 106: google.cloud.visionai.v1.BigQueryConfig.CloudFunctionMappingEntry
(*TagParsingConfig_EntityParsingConfig)(nil), // 107: google.cloud.visionai.v1.TagParsingConfig.EntityParsingConfig
(*fieldmaskpb.FieldMask)(nil), // 108: google.protobuf.FieldMask
(*timestamppb.Timestamp)(nil), // 109: google.protobuf.Timestamp
(StreamAnnotationType)(0), // 110: google.cloud.visionai.v1.StreamAnnotationType
(*structpb.Struct)(nil), // 111: google.protobuf.Struct
(*StreamAnnotation)(nil), // 112: google.cloud.visionai.v1.StreamAnnotation
(*durationpb.Duration)(nil), // 113: google.protobuf.Duration
(*GcsSource)(nil), // 114: google.cloud.visionai.v1.GcsSource
(*longrunningpb.Operation)(nil), // 115: google.longrunning.Operation
}
var file_google_cloud_visionai_v1_platform_proto_depIdxs = []int32{
57, // 0: google.cloud.visionai.v1.CreateApplicationInstancesRequest.application_instances:type_name -> google.cloud.visionai.v1.ApplicationInstance
52, // 1: google.cloud.visionai.v1.ListApplicationsResponse.applications:type_name -> google.cloud.visionai.v1.Application
52, // 2: google.cloud.visionai.v1.CreateApplicationRequest.application:type_name -> google.cloud.visionai.v1.Application
108, // 3: google.cloud.visionai.v1.UpdateApplicationRequest.update_mask:type_name -> google.protobuf.FieldMask
52, // 4: google.cloud.visionai.v1.UpdateApplicationRequest.application:type_name -> google.cloud.visionai.v1.Application
62, // 5: google.cloud.visionai.v1.ApplicationStreamInput.stream_with_annotation:type_name -> google.cloud.visionai.v1.StreamWithAnnotation
30, // 6: google.cloud.visionai.v1.AddApplicationStreamInputRequest.application_stream_inputs:type_name -> google.cloud.visionai.v1.ApplicationStreamInput
30, // 7: google.cloud.visionai.v1.UpdateApplicationStreamInputRequest.application_stream_inputs:type_name -> google.cloud.visionai.v1.ApplicationStreamInput
85, // 8: google.cloud.visionai.v1.RemoveApplicationStreamInputRequest.target_stream_inputs:type_name -> google.cloud.visionai.v1.RemoveApplicationStreamInputRequest.TargetStreamInput
56, // 9: google.cloud.visionai.v1.ListInstancesResponse.instances:type_name -> google.cloud.visionai.v1.Instance
55, // 10: google.cloud.visionai.v1.ListDraftsResponse.drafts:type_name -> google.cloud.visionai.v1.Draft
55, // 11: google.cloud.visionai.v1.CreateDraftRequest.draft:type_name -> google.cloud.visionai.v1.Draft
108, // 12: google.cloud.visionai.v1.UpdateDraftRequest.update_mask:type_name -> google.protobuf.FieldMask
55, // 13: google.cloud.visionai.v1.UpdateDraftRequest.draft:type_name -> google.cloud.visionai.v1.Draft
86, // 14: google.cloud.visionai.v1.UpdateApplicationInstancesRequest.application_instances:type_name -> google.cloud.visionai.v1.UpdateApplicationInstancesRequest.UpdateApplicationInstance
58, // 15: google.cloud.visionai.v1.ListProcessorsResponse.processors:type_name -> google.cloud.visionai.v1.Processor
58, // 16: google.cloud.visionai.v1.ListPrebuiltProcessorsResponse.processors:type_name -> google.cloud.visionai.v1.Processor
58, // 17: google.cloud.visionai.v1.CreateProcessorRequest.processor:type_name -> google.cloud.visionai.v1.Processor
108, // 18: google.cloud.visionai.v1.UpdateProcessorRequest.update_mask:type_name -> google.protobuf.FieldMask
58, // 19: google.cloud.visionai.v1.UpdateProcessorRequest.processor:type_name -> google.cloud.visionai.v1.Processor
109, // 20: google.cloud.visionai.v1.Application.create_time:type_name -> google.protobuf.Timestamp
109, // 21: google.cloud.visionai.v1.Application.update_time:type_name -> google.protobuf.Timestamp
88, // 22: google.cloud.visionai.v1.Application.labels:type_name -> google.cloud.visionai.v1.Application.LabelsEntry
53, // 23: google.cloud.visionai.v1.Application.application_configs:type_name -> google.cloud.visionai.v1.ApplicationConfigs
87, // 24: google.cloud.visionai.v1.Application.runtime_info:type_name -> google.cloud.visionai.v1.Application.ApplicationRuntimeInfo
3, // 25: google.cloud.visionai.v1.Application.state:type_name -> google.cloud.visionai.v1.Application.State
4, // 26: google.cloud.visionai.v1.Application.billing_mode:type_name -> google.cloud.visionai.v1.Application.BillingMode
54, // 27: google.cloud.visionai.v1.ApplicationConfigs.nodes:type_name -> google.cloud.visionai.v1.Node
91, // 28: google.cloud.visionai.v1.ApplicationConfigs.event_delivery_config:type_name -> google.cloud.visionai.v1.ApplicationConfigs.EventDeliveryConfig
61, // 29: google.cloud.visionai.v1.Node.node_config:type_name -> google.cloud.visionai.v1.ProcessorConfig
92, // 30: google.cloud.visionai.v1.Node.parents:type_name -> google.cloud.visionai.v1.Node.InputEdge
109, // 31: google.cloud.visionai.v1.Draft.create_time:type_name -> google.protobuf.Timestamp
109, // 32: google.cloud.visionai.v1.Draft.update_time:type_name -> google.protobuf.Timestamp
93, // 33: google.cloud.visionai.v1.Draft.labels:type_name -> google.cloud.visionai.v1.Draft.LabelsEntry
53, // 34: google.cloud.visionai.v1.Draft.draft_application_configs:type_name -> google.cloud.visionai.v1.ApplicationConfigs
109, // 35: google.cloud.visionai.v1.Instance.create_time:type_name -> google.protobuf.Timestamp
109, // 36: google.cloud.visionai.v1.Instance.update_time:type_name -> google.protobuf.Timestamp
96, // 37: google.cloud.visionai.v1.Instance.labels:type_name -> google.cloud.visionai.v1.Instance.LabelsEntry
5, // 38: google.cloud.visionai.v1.Instance.instance_type:type_name -> google.cloud.visionai.v1.Instance.InstanceType
94, // 39: google.cloud.visionai.v1.Instance.input_resources:type_name -> google.cloud.visionai.v1.Instance.InputResource
95, // 40: google.cloud.visionai.v1.Instance.output_resources:type_name -> google.cloud.visionai.v1.Instance.OutputResource
6, // 41: google.cloud.visionai.v1.Instance.state:type_name -> google.cloud.visionai.v1.Instance.State
56, // 42: google.cloud.visionai.v1.ApplicationInstance.instance:type_name -> google.cloud.visionai.v1.Instance
109, // 43: google.cloud.visionai.v1.Processor.create_time:type_name -> google.protobuf.Timestamp
109, // 44: google.cloud.visionai.v1.Processor.update_time:type_name -> google.protobuf.Timestamp
97, // 45: google.cloud.visionai.v1.Processor.labels:type_name -> google.cloud.visionai.v1.Processor.LabelsEntry
7, // 46: google.cloud.visionai.v1.Processor.processor_type:type_name -> google.cloud.visionai.v1.Processor.ProcessorType
0, // 47: google.cloud.visionai.v1.Processor.model_type:type_name -> google.cloud.visionai.v1.ModelType
60, // 48: google.cloud.visionai.v1.Processor.custom_processor_source_info:type_name -> google.cloud.visionai.v1.CustomProcessorSourceInfo
8, // 49: google.cloud.visionai.v1.Processor.state:type_name -> google.cloud.visionai.v1.Processor.ProcessorState
59, // 50: google.cloud.visionai.v1.Processor.processor_io_spec:type_name -> google.cloud.visionai.v1.ProcessorIOSpec
110, // 51: google.cloud.visionai.v1.Processor.supported_annotation_types:type_name -> google.cloud.visionai.v1.StreamAnnotationType
5, // 52: google.cloud.visionai.v1.Processor.supported_instance_types:type_name -> google.cloud.visionai.v1.Instance.InstanceType
98, // 53: google.cloud.visionai.v1.ProcessorIOSpec.graph_input_channel_specs:type_name -> google.cloud.visionai.v1.ProcessorIOSpec.GraphInputChannelSpec
99, // 54: google.cloud.visionai.v1.ProcessorIOSpec.graph_output_channel_specs:type_name -> google.cloud.visionai.v1.ProcessorIOSpec.GraphOutputChannelSpec
100, // 55: google.cloud.visionai.v1.ProcessorIOSpec.instance_resource_input_binding_specs:type_name -> google.cloud.visionai.v1.ProcessorIOSpec.InstanceResourceInputBindingSpec
101, // 56: google.cloud.visionai.v1.ProcessorIOSpec.instance_resource_output_binding_specs:type_name -> google.cloud.visionai.v1.ProcessorIOSpec.InstanceResourceOutputBindingSpec
102, // 57: google.cloud.visionai.v1.CustomProcessorSourceInfo.product_recognizer_artifact:type_name -> google.cloud.visionai.v1.CustomProcessorSourceInfo.ProductRecognizerArtifact
9, // 58: google.cloud.visionai.v1.CustomProcessorSourceInfo.source_type:type_name -> google.cloud.visionai.v1.CustomProcessorSourceInfo.SourceType
104, // 59: google.cloud.visionai.v1.CustomProcessorSourceInfo.additional_info:type_name -> google.cloud.visionai.v1.CustomProcessorSourceInfo.AdditionalInfoEntry
103, // 60: google.cloud.visionai.v1.CustomProcessorSourceInfo.model_schema:type_name -> google.cloud.visionai.v1.CustomProcessorSourceInfo.ModelSchema
65, // 61: google.cloud.visionai.v1.ProcessorConfig.video_stream_input_config:type_name -> google.cloud.visionai.v1.VideoStreamInputConfig
66, // 62: google.cloud.visionai.v1.ProcessorConfig.ai_enabled_devices_input_config:type_name -> google.cloud.visionai.v1.AIEnabledDevicesInputConfig
67, // 63: google.cloud.visionai.v1.ProcessorConfig.media_warehouse_config:type_name -> google.cloud.visionai.v1.MediaWarehouseConfig
68, // 64: google.cloud.visionai.v1.ProcessorConfig.person_blur_config:type_name -> google.cloud.visionai.v1.PersonBlurConfig
69, // 65: google.cloud.visionai.v1.ProcessorConfig.occupancy_count_config:type_name -> google.cloud.visionai.v1.OccupancyCountConfig
70, // 66: google.cloud.visionai.v1.ProcessorConfig.person_vehicle_detection_config:type_name -> google.cloud.visionai.v1.PersonVehicleDetectionConfig
74, // 67: google.cloud.visionai.v1.ProcessorConfig.vertex_automl_vision_config:type_name -> google.cloud.visionai.v1.VertexAutoMLVisionConfig
75, // 68: google.cloud.visionai.v1.ProcessorConfig.vertex_automl_video_config:type_name -> google.cloud.visionai.v1.VertexAutoMLVideoConfig
76, // 69: google.cloud.visionai.v1.ProcessorConfig.vertex_custom_config:type_name -> google.cloud.visionai.v1.VertexCustomConfig
72, // 70: google.cloud.visionai.v1.ProcessorConfig.general_object_detection_config:type_name -> google.cloud.visionai.v1.GeneralObjectDetectionConfig
73, // 71: google.cloud.visionai.v1.ProcessorConfig.big_query_config:type_name -> google.cloud.visionai.v1.BigQueryConfig
77, // 72: google.cloud.visionai.v1.ProcessorConfig.gcs_output_config:type_name -> google.cloud.visionai.v1.GcsOutputConfig
82, // 73: google.cloud.visionai.v1.ProcessorConfig.product_recognizer_config:type_name -> google.cloud.visionai.v1.ProductRecognizerConfig
71, // 74: google.cloud.visionai.v1.ProcessorConfig.personal_protective_equipment_detection_config:type_name -> google.cloud.visionai.v1.PersonalProtectiveEquipmentDetectionConfig
83, // 75: google.cloud.visionai.v1.ProcessorConfig.tag_recognizer_config:type_name -> google.cloud.visionai.v1.TagRecognizerConfig
78, // 76: google.cloud.visionai.v1.ProcessorConfig.universal_input_config:type_name -> google.cloud.visionai.v1.UniversalInputConfig
111, // 77: google.cloud.visionai.v1.ProcessorConfig.experimental_config:type_name -> google.protobuf.Struct
112, // 78: google.cloud.visionai.v1.StreamWithAnnotation.application_annotations:type_name -> google.cloud.visionai.v1.StreamAnnotation
105, // 79: google.cloud.visionai.v1.StreamWithAnnotation.node_annotations:type_name -> google.cloud.visionai.v1.StreamWithAnnotation.NodeAnnotation
112, // 80: google.cloud.visionai.v1.ApplicationNodeAnnotation.annotations:type_name -> google.cloud.visionai.v1.StreamAnnotation
112, // 81: google.cloud.visionai.v1.ResourceAnnotations.application_annotations:type_name -> google.cloud.visionai.v1.StreamAnnotation
63, // 82: google.cloud.visionai.v1.ResourceAnnotations.node_annotations:type_name -> google.cloud.visionai.v1.ApplicationNodeAnnotation
62, // 83: google.cloud.visionai.v1.VideoStreamInputConfig.streams_with_annotation:type_name -> google.cloud.visionai.v1.StreamWithAnnotation
113, // 84: google.cloud.visionai.v1.MediaWarehouseConfig.ttl:type_name -> google.protobuf.Duration
10, // 85: google.cloud.visionai.v1.PersonBlurConfig.person_blur_type:type_name -> google.cloud.visionai.v1.PersonBlurConfig.PersonBlurType
106, // 86: google.cloud.visionai.v1.BigQueryConfig.cloud_function_mapping:type_name -> google.cloud.visionai.v1.BigQueryConfig.CloudFunctionMappingEntry
81, // 87: google.cloud.visionai.v1.VertexCustomConfig.dedicated_resources:type_name -> google.cloud.visionai.v1.DedicatedResources
1, // 88: google.cloud.visionai.v1.MachineSpec.accelerator_type:type_name -> google.cloud.visionai.v1.AcceleratorType
79, // 89: google.cloud.visionai.v1.DedicatedResources.machine_spec:type_name -> google.cloud.visionai.v1.MachineSpec
80, // 90: google.cloud.visionai.v1.DedicatedResources.autoscaling_metric_specs:type_name -> google.cloud.visionai.v1.AutoscalingMetricSpec
84, // 91: google.cloud.visionai.v1.TagRecognizerConfig.tag_parsing_config:type_name -> google.cloud.visionai.v1.TagParsingConfig
107, // 92: google.cloud.visionai.v1.TagParsingConfig.entity_parsing_configs:type_name -> google.cloud.visionai.v1.TagParsingConfig.EntityParsingConfig
108, // 93: google.cloud.visionai.v1.UpdateApplicationInstancesRequest.UpdateApplicationInstance.update_mask:type_name -> google.protobuf.FieldMask
56, // 94: google.cloud.visionai.v1.UpdateApplicationInstancesRequest.UpdateApplicationInstance.instance:type_name -> google.cloud.visionai.v1.Instance
109, // 95: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.deploy_time:type_name -> google.protobuf.Timestamp
89, // 96: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.global_output_resources:type_name -> google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.GlobalOutputResource
90, // 97: google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.monitoring_config:type_name -> google.cloud.visionai.v1.Application.ApplicationRuntimeInfo.MonitoringConfig
113, // 98: google.cloud.visionai.v1.ApplicationConfigs.EventDeliveryConfig.minimal_delivery_interval:type_name -> google.protobuf.Duration
62, // 99: google.cloud.visionai.v1.Instance.InputResource.annotated_stream:type_name -> google.cloud.visionai.v1.StreamWithAnnotation
2, // 100: google.cloud.visionai.v1.Instance.InputResource.data_type:type_name -> google.cloud.visionai.v1.DataType
64, // 101: google.cloud.visionai.v1.Instance.InputResource.annotations:type_name -> google.cloud.visionai.v1.ResourceAnnotations
2, // 102: google.cloud.visionai.v1.ProcessorIOSpec.GraphInputChannelSpec.data_type:type_name -> google.cloud.visionai.v1.DataType
2, // 103: google.cloud.visionai.v1.ProcessorIOSpec.GraphOutputChannelSpec.data_type:type_name -> google.cloud.visionai.v1.DataType
114, // 104: google.cloud.visionai.v1.CustomProcessorSourceInfo.ModelSchema.instances_schema:type_name -> google.cloud.visionai.v1.GcsSource
114, // 105: google.cloud.visionai.v1.CustomProcessorSourceInfo.ModelSchema.parameters_schema:type_name -> google.cloud.visionai.v1.GcsSource
114, // 106: google.cloud.visionai.v1.CustomProcessorSourceInfo.ModelSchema.predictions_schema:type_name -> google.cloud.visionai.v1.GcsSource
112, // 107: google.cloud.visionai.v1.StreamWithAnnotation.NodeAnnotation.annotations:type_name -> google.cloud.visionai.v1.StreamAnnotation
11, // 108: google.cloud.visionai.v1.TagParsingConfig.EntityParsingConfig.entity_matching_strategy:type_name -> google.cloud.visionai.v1.TagParsingConfig.EntityParsingConfig.EntityMatchingStrategy
22, // 109: google.cloud.visionai.v1.AppPlatform.ListApplications:input_type -> google.cloud.visionai.v1.ListApplicationsRequest
24, // 110: google.cloud.visionai.v1.AppPlatform.GetApplication:input_type -> google.cloud.visionai.v1.GetApplicationRequest
25, // 111: google.cloud.visionai.v1.AppPlatform.CreateApplication:input_type -> google.cloud.visionai.v1.CreateApplicationRequest
26, // 112: google.cloud.visionai.v1.AppPlatform.UpdateApplication:input_type -> google.cloud.visionai.v1.UpdateApplicationRequest
27, // 113: google.cloud.visionai.v1.AppPlatform.DeleteApplication:input_type -> google.cloud.visionai.v1.DeleteApplicationRequest
28, // 114: google.cloud.visionai.v1.AppPlatform.DeployApplication:input_type -> google.cloud.visionai.v1.DeployApplicationRequest
29, // 115: google.cloud.visionai.v1.AppPlatform.UndeployApplication:input_type -> google.cloud.visionai.v1.UndeployApplicationRequest
31, // 116: google.cloud.visionai.v1.AppPlatform.AddApplicationStreamInput:input_type -> google.cloud.visionai.v1.AddApplicationStreamInputRequest
33, // 117: google.cloud.visionai.v1.AppPlatform.RemoveApplicationStreamInput:input_type -> google.cloud.visionai.v1.RemoveApplicationStreamInputRequest
32, // 118: google.cloud.visionai.v1.AppPlatform.UpdateApplicationStreamInput:input_type -> google.cloud.visionai.v1.UpdateApplicationStreamInputRequest
34, // 119: google.cloud.visionai.v1.AppPlatform.ListInstances:input_type -> google.cloud.visionai.v1.ListInstancesRequest
36, // 120: google.cloud.visionai.v1.AppPlatform.GetInstance:input_type -> google.cloud.visionai.v1.GetInstanceRequest
15, // 121: google.cloud.visionai.v1.AppPlatform.CreateApplicationInstances:input_type -> google.cloud.visionai.v1.CreateApplicationInstancesRequest
16, // 122: google.cloud.visionai.v1.AppPlatform.DeleteApplicationInstances:input_type -> google.cloud.visionai.v1.DeleteApplicationInstancesRequest
42, // 123: google.cloud.visionai.v1.AppPlatform.UpdateApplicationInstances:input_type -> google.cloud.visionai.v1.UpdateApplicationInstancesRequest
37, // 124: google.cloud.visionai.v1.AppPlatform.ListDrafts:input_type -> google.cloud.visionai.v1.ListDraftsRequest
39, // 125: google.cloud.visionai.v1.AppPlatform.GetDraft:input_type -> google.cloud.visionai.v1.GetDraftRequest
40, // 126: google.cloud.visionai.v1.AppPlatform.CreateDraft:input_type -> google.cloud.visionai.v1.CreateDraftRequest
41, // 127: google.cloud.visionai.v1.AppPlatform.UpdateDraft:input_type -> google.cloud.visionai.v1.UpdateDraftRequest
43, // 128: google.cloud.visionai.v1.AppPlatform.DeleteDraft:input_type -> google.cloud.visionai.v1.DeleteDraftRequest
44, // 129: google.cloud.visionai.v1.AppPlatform.ListProcessors:input_type -> google.cloud.visionai.v1.ListProcessorsRequest
46, // 130: google.cloud.visionai.v1.AppPlatform.ListPrebuiltProcessors:input_type -> google.cloud.visionai.v1.ListPrebuiltProcessorsRequest
48, // 131: google.cloud.visionai.v1.AppPlatform.GetProcessor:input_type -> google.cloud.visionai.v1.GetProcessorRequest
49, // 132: google.cloud.visionai.v1.AppPlatform.CreateProcessor:input_type -> google.cloud.visionai.v1.CreateProcessorRequest
50, // 133: google.cloud.visionai.v1.AppPlatform.UpdateProcessor:input_type -> google.cloud.visionai.v1.UpdateProcessorRequest
51, // 134: google.cloud.visionai.v1.AppPlatform.DeleteProcessor:input_type -> google.cloud.visionai.v1.DeleteProcessorRequest
23, // 135: google.cloud.visionai.v1.AppPlatform.ListApplications:output_type -> google.cloud.visionai.v1.ListApplicationsResponse
52, // 136: google.cloud.visionai.v1.AppPlatform.GetApplication:output_type -> google.cloud.visionai.v1.Application
115, // 137: google.cloud.visionai.v1.AppPlatform.CreateApplication:output_type -> google.longrunning.Operation
115, // 138: google.cloud.visionai.v1.AppPlatform.UpdateApplication:output_type -> google.longrunning.Operation
115, // 139: google.cloud.visionai.v1.AppPlatform.DeleteApplication:output_type -> google.longrunning.Operation
115, // 140: google.cloud.visionai.v1.AppPlatform.DeployApplication:output_type -> google.longrunning.Operation
115, // 141: google.cloud.visionai.v1.AppPlatform.UndeployApplication:output_type -> google.longrunning.Operation
115, // 142: google.cloud.visionai.v1.AppPlatform.AddApplicationStreamInput:output_type -> google.longrunning.Operation
115, // 143: google.cloud.visionai.v1.AppPlatform.RemoveApplicationStreamInput:output_type -> google.longrunning.Operation
115, // 144: google.cloud.visionai.v1.AppPlatform.UpdateApplicationStreamInput:output_type -> google.longrunning.Operation
35, // 145: google.cloud.visionai.v1.AppPlatform.ListInstances:output_type -> google.cloud.visionai.v1.ListInstancesResponse
56, // 146: google.cloud.visionai.v1.AppPlatform.GetInstance:output_type -> google.cloud.visionai.v1.Instance
115, // 147: google.cloud.visionai.v1.AppPlatform.CreateApplicationInstances:output_type -> google.longrunning.Operation
115, // 148: google.cloud.visionai.v1.AppPlatform.DeleteApplicationInstances:output_type -> google.longrunning.Operation
115, // 149: google.cloud.visionai.v1.AppPlatform.UpdateApplicationInstances:output_type -> google.longrunning.Operation
38, // 150: google.cloud.visionai.v1.AppPlatform.ListDrafts:output_type -> google.cloud.visionai.v1.ListDraftsResponse
55, // 151: google.cloud.visionai.v1.AppPlatform.GetDraft:output_type -> google.cloud.visionai.v1.Draft
115, // 152: google.cloud.visionai.v1.AppPlatform.CreateDraft:output_type -> google.longrunning.Operation
115, // 153: google.cloud.visionai.v1.AppPlatform.UpdateDraft:output_type -> google.longrunning.Operation
115, // 154: google.cloud.visionai.v1.AppPlatform.DeleteDraft:output_type -> google.longrunning.Operation
45, // 155: google.cloud.visionai.v1.AppPlatform.ListProcessors:output_type -> google.cloud.visionai.v1.ListProcessorsResponse
47, // 156: google.cloud.visionai.v1.AppPlatform.ListPrebuiltProcessors:output_type -> google.cloud.visionai.v1.ListPrebuiltProcessorsResponse
58, // 157: google.cloud.visionai.v1.AppPlatform.GetProcessor:output_type -> google.cloud.visionai.v1.Processor
115, // 158: google.cloud.visionai.v1.AppPlatform.CreateProcessor:output_type -> google.longrunning.Operation
115, // 159: google.cloud.visionai.v1.AppPlatform.UpdateProcessor:output_type -> google.longrunning.Operation
115, // 160: google.cloud.visionai.v1.AppPlatform.DeleteProcessor:output_type -> google.longrunning.Operation
135, // [135:161] is the sub-list for method output_type
109, // [109:135] is the sub-list for method input_type
109, // [109:109] is the sub-list for extension type_name
109, // [109:109] is the sub-list for extension extendee
0, // [0:109] is the sub-list for field type_name
}
func init() { file_google_cloud_visionai_v1_platform_proto_init() }
func file_google_cloud_visionai_v1_platform_proto_init() {
if File_google_cloud_visionai_v1_platform_proto != nil {
return
}
file_google_cloud_visionai_v1_annotations_proto_init()
file_google_cloud_visionai_v1_common_proto_init()
if !protoimpl.UnsafeEnabled {
file_google_cloud_visionai_v1_platform_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteApplicationInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateApplicationInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateApplicationInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteApplicationInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeployApplicationResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UndeployApplicationResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RemoveApplicationStreamInputResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddApplicationStreamInputResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationStreamInputResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListApplicationsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListApplicationsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeployApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UndeployApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApplicationStreamInput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddApplicationStreamInputRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationStreamInputRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RemoveApplicationStreamInputRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetInstanceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListDraftsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListDraftsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetDraftRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateDraftRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateDraftRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteDraftRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListProcessorsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListProcessorsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListPrebuiltProcessorsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListPrebuiltProcessorsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetProcessorRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateProcessorRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateProcessorRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteProcessorRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Application); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApplicationConfigs); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Node); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Draft); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Instance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApplicationInstance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Processor); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorIOSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CustomProcessorSourceInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StreamWithAnnotation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApplicationNodeAnnotation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResourceAnnotations); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VideoStreamInputConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AIEnabledDevicesInputConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MediaWarehouseConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PersonBlurConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OccupancyCountConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PersonVehicleDetectionConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PersonalProtectiveEquipmentDetectionConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GeneralObjectDetectionConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BigQueryConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VertexAutoMLVisionConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VertexAutoMLVideoConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VertexCustomConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GcsOutputConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UniversalInputConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MachineSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AutoscalingMetricSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DedicatedResources); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProductRecognizerConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TagRecognizerConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TagParsingConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RemoveApplicationStreamInputRequest_TargetStreamInput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateApplicationInstancesRequest_UpdateApplicationInstance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Application_ApplicationRuntimeInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Application_ApplicationRuntimeInfo_GlobalOutputResource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Application_ApplicationRuntimeInfo_MonitoringConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApplicationConfigs_EventDeliveryConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Node_InputEdge); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Instance_InputResource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Instance_OutputResource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorIOSpec_GraphInputChannelSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorIOSpec_GraphOutputChannelSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorIOSpec_InstanceResourceInputBindingSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProcessorIOSpec_InstanceResourceOutputBindingSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CustomProcessorSourceInfo_ProductRecognizerArtifact); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CustomProcessorSourceInfo_ModelSchema); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StreamWithAnnotation_NodeAnnotation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TagParsingConfig_EntityParsingConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[42].OneofWrappers = []interface{}{
(*Node_OutputAllOutputChannelsToStream)(nil),
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[48].OneofWrappers = []interface{}{
(*CustomProcessorSourceInfo_VertexModel)(nil),
(*CustomProcessorSourceInfo_ProductRecognizerArtifact_)(nil),
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[49].OneofWrappers = []interface{}{
(*ProcessorConfig_VideoStreamInputConfig)(nil),
(*ProcessorConfig_AiEnabledDevicesInputConfig)(nil),
(*ProcessorConfig_MediaWarehouseConfig)(nil),
(*ProcessorConfig_PersonBlurConfig)(nil),
(*ProcessorConfig_OccupancyCountConfig)(nil),
(*ProcessorConfig_PersonVehicleDetectionConfig)(nil),
(*ProcessorConfig_VertexAutomlVisionConfig)(nil),
(*ProcessorConfig_VertexAutomlVideoConfig)(nil),
(*ProcessorConfig_VertexCustomConfig)(nil),
(*ProcessorConfig_GeneralObjectDetectionConfig)(nil),
(*ProcessorConfig_BigQueryConfig)(nil),
(*ProcessorConfig_GcsOutputConfig)(nil),
(*ProcessorConfig_ProductRecognizerConfig)(nil),
(*ProcessorConfig_PersonalProtectiveEquipmentDetectionConfig)(nil),
(*ProcessorConfig_TagRecognizerConfig)(nil),
(*ProcessorConfig_UniversalInputConfig)(nil),
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[64].OneofWrappers = []interface{}{}
file_google_cloud_visionai_v1_platform_proto_msgTypes[82].OneofWrappers = []interface{}{
(*Instance_InputResource_InputResource)(nil),
(*Instance_InputResource_AnnotatedStream)(nil),
}
file_google_cloud_visionai_v1_platform_proto_msgTypes[88].OneofWrappers = []interface{}{
(*ProcessorIOSpec_InstanceResourceInputBindingSpec_ConfigTypeUri)(nil),
(*ProcessorIOSpec_InstanceResourceInputBindingSpec_ResourceTypeUri)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_google_cloud_visionai_v1_platform_proto_rawDesc,
NumEnums: 12,
NumMessages: 96,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_google_cloud_visionai_v1_platform_proto_goTypes,
DependencyIndexes: file_google_cloud_visionai_v1_platform_proto_depIdxs,
EnumInfos: file_google_cloud_visionai_v1_platform_proto_enumTypes,
MessageInfos: file_google_cloud_visionai_v1_platform_proto_msgTypes,
}.Build()
File_google_cloud_visionai_v1_platform_proto = out.File
file_google_cloud_visionai_v1_platform_proto_rawDesc = nil
file_google_cloud_visionai_v1_platform_proto_goTypes = nil
file_google_cloud_visionai_v1_platform_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// AppPlatformClient is the client API for AppPlatform service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type AppPlatformClient interface {
// Lists Applications in a given project and location.
ListApplications(ctx context.Context, in *ListApplicationsRequest, opts ...grpc.CallOption) (*ListApplicationsResponse, error)
// Gets details of a single Application.
GetApplication(ctx context.Context, in *GetApplicationRequest, opts ...grpc.CallOption) (*Application, error)
// Creates a new Application in a given project and location.
CreateApplication(ctx context.Context, in *CreateApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Updates the parameters of a single Application.
UpdateApplication(ctx context.Context, in *UpdateApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Deletes a single Application.
DeleteApplication(ctx context.Context, in *DeleteApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Deploys a single Application.
DeployApplication(ctx context.Context, in *DeployApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Undeploys a single Application.
UndeployApplication(ctx context.Context, in *UndeployApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
AddApplicationStreamInput(ctx context.Context, in *AddApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Remove target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deleted. If the stream
// is not in the Application, the RPC will fail.
RemoveApplicationStreamInput(ctx context.Context, in *RemoveApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Update target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deployed. For
// CreateOrUpdate behavior, set allow_missing to true.
UpdateApplicationStreamInput(ctx context.Context, in *UpdateApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Lists Instances in a given project and location.
ListInstances(ctx context.Context, in *ListInstancesRequest, opts ...grpc.CallOption) (*ListInstancesResponse, error)
// Gets details of a single Instance.
GetInstance(ctx context.Context, in *GetInstanceRequest, opts ...grpc.CallOption) (*Instance, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
CreateApplicationInstances(ctx context.Context, in *CreateApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Remove target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deleted. If the stream
// is not in the Application, the RPC will fail.
DeleteApplicationInstances(ctx context.Context, in *DeleteApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
UpdateApplicationInstances(ctx context.Context, in *UpdateApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Lists Drafts in a given project and location.
ListDrafts(ctx context.Context, in *ListDraftsRequest, opts ...grpc.CallOption) (*ListDraftsResponse, error)
// Gets details of a single Draft.
GetDraft(ctx context.Context, in *GetDraftRequest, opts ...grpc.CallOption) (*Draft, error)
// Creates a new Draft in a given project and location.
CreateDraft(ctx context.Context, in *CreateDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Updates the parameters of a single Draft.
UpdateDraft(ctx context.Context, in *UpdateDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Deletes a single Draft.
DeleteDraft(ctx context.Context, in *DeleteDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Lists Processors in a given project and location.
ListProcessors(ctx context.Context, in *ListProcessorsRequest, opts ...grpc.CallOption) (*ListProcessorsResponse, error)
// ListPrebuiltProcessors is a custom pass-through verb that Lists Prebuilt
// Processors.
ListPrebuiltProcessors(ctx context.Context, in *ListPrebuiltProcessorsRequest, opts ...grpc.CallOption) (*ListPrebuiltProcessorsResponse, error)
// Gets details of a single Processor.
GetProcessor(ctx context.Context, in *GetProcessorRequest, opts ...grpc.CallOption) (*Processor, error)
// Creates a new Processor in a given project and location.
CreateProcessor(ctx context.Context, in *CreateProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Updates the parameters of a single Processor.
UpdateProcessor(ctx context.Context, in *UpdateProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
// Deletes a single Processor.
DeleteProcessor(ctx context.Context, in *DeleteProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error)
}
type appPlatformClient struct {
cc grpc.ClientConnInterface
}
func NewAppPlatformClient(cc grpc.ClientConnInterface) AppPlatformClient {
return &appPlatformClient{cc}
}
func (c *appPlatformClient) ListApplications(ctx context.Context, in *ListApplicationsRequest, opts ...grpc.CallOption) (*ListApplicationsResponse, error) {
out := new(ListApplicationsResponse)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/ListApplications", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) GetApplication(ctx context.Context, in *GetApplicationRequest, opts ...grpc.CallOption) (*Application, error) {
out := new(Application)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/GetApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) CreateApplication(ctx context.Context, in *CreateApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/CreateApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UpdateApplication(ctx context.Context, in *UpdateApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UpdateApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) DeleteApplication(ctx context.Context, in *DeleteApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/DeleteApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) DeployApplication(ctx context.Context, in *DeployApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/DeployApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UndeployApplication(ctx context.Context, in *UndeployApplicationRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UndeployApplication", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) AddApplicationStreamInput(ctx context.Context, in *AddApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/AddApplicationStreamInput", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) RemoveApplicationStreamInput(ctx context.Context, in *RemoveApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/RemoveApplicationStreamInput", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UpdateApplicationStreamInput(ctx context.Context, in *UpdateApplicationStreamInputRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UpdateApplicationStreamInput", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) ListInstances(ctx context.Context, in *ListInstancesRequest, opts ...grpc.CallOption) (*ListInstancesResponse, error) {
out := new(ListInstancesResponse)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/ListInstances", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) GetInstance(ctx context.Context, in *GetInstanceRequest, opts ...grpc.CallOption) (*Instance, error) {
out := new(Instance)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/GetInstance", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) CreateApplicationInstances(ctx context.Context, in *CreateApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/CreateApplicationInstances", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) DeleteApplicationInstances(ctx context.Context, in *DeleteApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/DeleteApplicationInstances", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UpdateApplicationInstances(ctx context.Context, in *UpdateApplicationInstancesRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UpdateApplicationInstances", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) ListDrafts(ctx context.Context, in *ListDraftsRequest, opts ...grpc.CallOption) (*ListDraftsResponse, error) {
out := new(ListDraftsResponse)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/ListDrafts", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) GetDraft(ctx context.Context, in *GetDraftRequest, opts ...grpc.CallOption) (*Draft, error) {
out := new(Draft)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/GetDraft", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) CreateDraft(ctx context.Context, in *CreateDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/CreateDraft", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UpdateDraft(ctx context.Context, in *UpdateDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UpdateDraft", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) DeleteDraft(ctx context.Context, in *DeleteDraftRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/DeleteDraft", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) ListProcessors(ctx context.Context, in *ListProcessorsRequest, opts ...grpc.CallOption) (*ListProcessorsResponse, error) {
out := new(ListProcessorsResponse)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/ListProcessors", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) ListPrebuiltProcessors(ctx context.Context, in *ListPrebuiltProcessorsRequest, opts ...grpc.CallOption) (*ListPrebuiltProcessorsResponse, error) {
out := new(ListPrebuiltProcessorsResponse)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/ListPrebuiltProcessors", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) GetProcessor(ctx context.Context, in *GetProcessorRequest, opts ...grpc.CallOption) (*Processor, error) {
out := new(Processor)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/GetProcessor", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) CreateProcessor(ctx context.Context, in *CreateProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/CreateProcessor", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) UpdateProcessor(ctx context.Context, in *UpdateProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/UpdateProcessor", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *appPlatformClient) DeleteProcessor(ctx context.Context, in *DeleteProcessorRequest, opts ...grpc.CallOption) (*longrunningpb.Operation, error) {
out := new(longrunningpb.Operation)
err := c.cc.Invoke(ctx, "/google.cloud.visionai.v1.AppPlatform/DeleteProcessor", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// AppPlatformServer is the server API for AppPlatform service.
type AppPlatformServer interface {
// Lists Applications in a given project and location.
ListApplications(context.Context, *ListApplicationsRequest) (*ListApplicationsResponse, error)
// Gets details of a single Application.
GetApplication(context.Context, *GetApplicationRequest) (*Application, error)
// Creates a new Application in a given project and location.
CreateApplication(context.Context, *CreateApplicationRequest) (*longrunningpb.Operation, error)
// Updates the parameters of a single Application.
UpdateApplication(context.Context, *UpdateApplicationRequest) (*longrunningpb.Operation, error)
// Deletes a single Application.
DeleteApplication(context.Context, *DeleteApplicationRequest) (*longrunningpb.Operation, error)
// Deploys a single Application.
DeployApplication(context.Context, *DeployApplicationRequest) (*longrunningpb.Operation, error)
// Undeploys a single Application.
UndeployApplication(context.Context, *UndeployApplicationRequest) (*longrunningpb.Operation, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
AddApplicationStreamInput(context.Context, *AddApplicationStreamInputRequest) (*longrunningpb.Operation, error)
// Remove target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deleted. If the stream
// is not in the Application, the RPC will fail.
RemoveApplicationStreamInput(context.Context, *RemoveApplicationStreamInputRequest) (*longrunningpb.Operation, error)
// Update target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deployed. For
// CreateOrUpdate behavior, set allow_missing to true.
UpdateApplicationStreamInput(context.Context, *UpdateApplicationStreamInputRequest) (*longrunningpb.Operation, error)
// Lists Instances in a given project and location.
ListInstances(context.Context, *ListInstancesRequest) (*ListInstancesResponse, error)
// Gets details of a single Instance.
GetInstance(context.Context, *GetInstanceRequest) (*Instance, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
CreateApplicationInstances(context.Context, *CreateApplicationInstancesRequest) (*longrunningpb.Operation, error)
// Remove target stream input to the Application, if the Application is
// deployed, the corresponding instance based will be deleted. If the stream
// is not in the Application, the RPC will fail.
DeleteApplicationInstances(context.Context, *DeleteApplicationInstancesRequest) (*longrunningpb.Operation, error)
// Adds target stream input to the Application.
// If the Application is deployed, the corresponding new Application instance
// will be created. If the stream has already been in the Application, the RPC
// will fail.
UpdateApplicationInstances(context.Context, *UpdateApplicationInstancesRequest) (*longrunningpb.Operation, error)
// Lists Drafts in a given project and location.
ListDrafts(context.Context, *ListDraftsRequest) (*ListDraftsResponse, error)
// Gets details of a single Draft.
GetDraft(context.Context, *GetDraftRequest) (*Draft, error)
// Creates a new Draft in a given project and location.
CreateDraft(context.Context, *CreateDraftRequest) (*longrunningpb.Operation, error)
// Updates the parameters of a single Draft.
UpdateDraft(context.Context, *UpdateDraftRequest) (*longrunningpb.Operation, error)
// Deletes a single Draft.
DeleteDraft(context.Context, *DeleteDraftRequest) (*longrunningpb.Operation, error)
// Lists Processors in a given project and location.
ListProcessors(context.Context, *ListProcessorsRequest) (*ListProcessorsResponse, error)
// ListPrebuiltProcessors is a custom pass-through verb that Lists Prebuilt
// Processors.
ListPrebuiltProcessors(context.Context, *ListPrebuiltProcessorsRequest) (*ListPrebuiltProcessorsResponse, error)
// Gets details of a single Processor.
GetProcessor(context.Context, *GetProcessorRequest) (*Processor, error)
// Creates a new Processor in a given project and location.
CreateProcessor(context.Context, *CreateProcessorRequest) (*longrunningpb.Operation, error)
// Updates the parameters of a single Processor.
UpdateProcessor(context.Context, *UpdateProcessorRequest) (*longrunningpb.Operation, error)
// Deletes a single Processor.
DeleteProcessor(context.Context, *DeleteProcessorRequest) (*longrunningpb.Operation, error)
}
// UnimplementedAppPlatformServer can be embedded to have forward compatible implementations.
type UnimplementedAppPlatformServer struct {
}
func (*UnimplementedAppPlatformServer) ListApplications(context.Context, *ListApplicationsRequest) (*ListApplicationsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListApplications not implemented")
}
func (*UnimplementedAppPlatformServer) GetApplication(context.Context, *GetApplicationRequest) (*Application, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetApplication not implemented")
}
func (*UnimplementedAppPlatformServer) CreateApplication(context.Context, *CreateApplicationRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateApplication not implemented")
}
func (*UnimplementedAppPlatformServer) UpdateApplication(context.Context, *UpdateApplicationRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateApplication not implemented")
}
func (*UnimplementedAppPlatformServer) DeleteApplication(context.Context, *DeleteApplicationRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteApplication not implemented")
}
func (*UnimplementedAppPlatformServer) DeployApplication(context.Context, *DeployApplicationRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeployApplication not implemented")
}
func (*UnimplementedAppPlatformServer) UndeployApplication(context.Context, *UndeployApplicationRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UndeployApplication not implemented")
}
func (*UnimplementedAppPlatformServer) AddApplicationStreamInput(context.Context, *AddApplicationStreamInputRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method AddApplicationStreamInput not implemented")
}
func (*UnimplementedAppPlatformServer) RemoveApplicationStreamInput(context.Context, *RemoveApplicationStreamInputRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method RemoveApplicationStreamInput not implemented")
}
func (*UnimplementedAppPlatformServer) UpdateApplicationStreamInput(context.Context, *UpdateApplicationStreamInputRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateApplicationStreamInput not implemented")
}
func (*UnimplementedAppPlatformServer) ListInstances(context.Context, *ListInstancesRequest) (*ListInstancesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListInstances not implemented")
}
func (*UnimplementedAppPlatformServer) GetInstance(context.Context, *GetInstanceRequest) (*Instance, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetInstance not implemented")
}
func (*UnimplementedAppPlatformServer) CreateApplicationInstances(context.Context, *CreateApplicationInstancesRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateApplicationInstances not implemented")
}
func (*UnimplementedAppPlatformServer) DeleteApplicationInstances(context.Context, *DeleteApplicationInstancesRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteApplicationInstances not implemented")
}
func (*UnimplementedAppPlatformServer) UpdateApplicationInstances(context.Context, *UpdateApplicationInstancesRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateApplicationInstances not implemented")
}
func (*UnimplementedAppPlatformServer) ListDrafts(context.Context, *ListDraftsRequest) (*ListDraftsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListDrafts not implemented")
}
func (*UnimplementedAppPlatformServer) GetDraft(context.Context, *GetDraftRequest) (*Draft, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetDraft not implemented")
}
func (*UnimplementedAppPlatformServer) CreateDraft(context.Context, *CreateDraftRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateDraft not implemented")
}
func (*UnimplementedAppPlatformServer) UpdateDraft(context.Context, *UpdateDraftRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateDraft not implemented")
}
func (*UnimplementedAppPlatformServer) DeleteDraft(context.Context, *DeleteDraftRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteDraft not implemented")
}
func (*UnimplementedAppPlatformServer) ListProcessors(context.Context, *ListProcessorsRequest) (*ListProcessorsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListProcessors not implemented")
}
func (*UnimplementedAppPlatformServer) ListPrebuiltProcessors(context.Context, *ListPrebuiltProcessorsRequest) (*ListPrebuiltProcessorsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListPrebuiltProcessors not implemented")
}
func (*UnimplementedAppPlatformServer) GetProcessor(context.Context, *GetProcessorRequest) (*Processor, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetProcessor not implemented")
}
func (*UnimplementedAppPlatformServer) CreateProcessor(context.Context, *CreateProcessorRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateProcessor not implemented")
}
func (*UnimplementedAppPlatformServer) UpdateProcessor(context.Context, *UpdateProcessorRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateProcessor not implemented")
}
func (*UnimplementedAppPlatformServer) DeleteProcessor(context.Context, *DeleteProcessorRequest) (*longrunningpb.Operation, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteProcessor not implemented")
}
func RegisterAppPlatformServer(s *grpc.Server, srv AppPlatformServer) {
s.RegisterService(&_AppPlatform_serviceDesc, srv)
}
func _AppPlatform_ListApplications_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListApplicationsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).ListApplications(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/ListApplications",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).ListApplications(ctx, req.(*ListApplicationsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_GetApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).GetApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/GetApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).GetApplication(ctx, req.(*GetApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_CreateApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).CreateApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/CreateApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).CreateApplication(ctx, req.(*CreateApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UpdateApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UpdateApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UpdateApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UpdateApplication(ctx, req.(*UpdateApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_DeleteApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).DeleteApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/DeleteApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).DeleteApplication(ctx, req.(*DeleteApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_DeployApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeployApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).DeployApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/DeployApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).DeployApplication(ctx, req.(*DeployApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UndeployApplication_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UndeployApplicationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UndeployApplication(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UndeployApplication",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UndeployApplication(ctx, req.(*UndeployApplicationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_AddApplicationStreamInput_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(AddApplicationStreamInputRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).AddApplicationStreamInput(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/AddApplicationStreamInput",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).AddApplicationStreamInput(ctx, req.(*AddApplicationStreamInputRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_RemoveApplicationStreamInput_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(RemoveApplicationStreamInputRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).RemoveApplicationStreamInput(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/RemoveApplicationStreamInput",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).RemoveApplicationStreamInput(ctx, req.(*RemoveApplicationStreamInputRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UpdateApplicationStreamInput_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateApplicationStreamInputRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UpdateApplicationStreamInput(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UpdateApplicationStreamInput",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UpdateApplicationStreamInput(ctx, req.(*UpdateApplicationStreamInputRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_ListInstances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListInstancesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).ListInstances(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/ListInstances",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).ListInstances(ctx, req.(*ListInstancesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_GetInstance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetInstanceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).GetInstance(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/GetInstance",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).GetInstance(ctx, req.(*GetInstanceRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_CreateApplicationInstances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateApplicationInstancesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).CreateApplicationInstances(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/CreateApplicationInstances",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).CreateApplicationInstances(ctx, req.(*CreateApplicationInstancesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_DeleteApplicationInstances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteApplicationInstancesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).DeleteApplicationInstances(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/DeleteApplicationInstances",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).DeleteApplicationInstances(ctx, req.(*DeleteApplicationInstancesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UpdateApplicationInstances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateApplicationInstancesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UpdateApplicationInstances(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UpdateApplicationInstances",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UpdateApplicationInstances(ctx, req.(*UpdateApplicationInstancesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_ListDrafts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListDraftsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).ListDrafts(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/ListDrafts",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).ListDrafts(ctx, req.(*ListDraftsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_GetDraft_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetDraftRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).GetDraft(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/GetDraft",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).GetDraft(ctx, req.(*GetDraftRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_CreateDraft_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateDraftRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).CreateDraft(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/CreateDraft",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).CreateDraft(ctx, req.(*CreateDraftRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UpdateDraft_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateDraftRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UpdateDraft(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UpdateDraft",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UpdateDraft(ctx, req.(*UpdateDraftRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_DeleteDraft_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteDraftRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).DeleteDraft(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/DeleteDraft",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).DeleteDraft(ctx, req.(*DeleteDraftRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_ListProcessors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListProcessorsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).ListProcessors(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/ListProcessors",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).ListProcessors(ctx, req.(*ListProcessorsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_ListPrebuiltProcessors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListPrebuiltProcessorsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).ListPrebuiltProcessors(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/ListPrebuiltProcessors",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).ListPrebuiltProcessors(ctx, req.(*ListPrebuiltProcessorsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_GetProcessor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetProcessorRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).GetProcessor(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/GetProcessor",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).GetProcessor(ctx, req.(*GetProcessorRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_CreateProcessor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateProcessorRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).CreateProcessor(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/CreateProcessor",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).CreateProcessor(ctx, req.(*CreateProcessorRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_UpdateProcessor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateProcessorRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).UpdateProcessor(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/UpdateProcessor",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).UpdateProcessor(ctx, req.(*UpdateProcessorRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AppPlatform_DeleteProcessor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteProcessorRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AppPlatformServer).DeleteProcessor(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.visionai.v1.AppPlatform/DeleteProcessor",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AppPlatformServer).DeleteProcessor(ctx, req.(*DeleteProcessorRequest))
}
return interceptor(ctx, in, info, handler)
}
var _AppPlatform_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.cloud.visionai.v1.AppPlatform",
HandlerType: (*AppPlatformServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "ListApplications",
Handler: _AppPlatform_ListApplications_Handler,
},
{
MethodName: "GetApplication",
Handler: _AppPlatform_GetApplication_Handler,
},
{
MethodName: "CreateApplication",
Handler: _AppPlatform_CreateApplication_Handler,
},
{
MethodName: "UpdateApplication",
Handler: _AppPlatform_UpdateApplication_Handler,
},
{
MethodName: "DeleteApplication",
Handler: _AppPlatform_DeleteApplication_Handler,
},
{
MethodName: "DeployApplication",
Handler: _AppPlatform_DeployApplication_Handler,
},
{
MethodName: "UndeployApplication",
Handler: _AppPlatform_UndeployApplication_Handler,
},
{
MethodName: "AddApplicationStreamInput",
Handler: _AppPlatform_AddApplicationStreamInput_Handler,
},
{
MethodName: "RemoveApplicationStreamInput",
Handler: _AppPlatform_RemoveApplicationStreamInput_Handler,
},
{
MethodName: "UpdateApplicationStreamInput",
Handler: _AppPlatform_UpdateApplicationStreamInput_Handler,
},
{
MethodName: "ListInstances",
Handler: _AppPlatform_ListInstances_Handler,
},
{
MethodName: "GetInstance",
Handler: _AppPlatform_GetInstance_Handler,
},
{
MethodName: "CreateApplicationInstances",
Handler: _AppPlatform_CreateApplicationInstances_Handler,
},
{
MethodName: "DeleteApplicationInstances",
Handler: _AppPlatform_DeleteApplicationInstances_Handler,
},
{
MethodName: "UpdateApplicationInstances",
Handler: _AppPlatform_UpdateApplicationInstances_Handler,
},
{
MethodName: "ListDrafts",
Handler: _AppPlatform_ListDrafts_Handler,
},
{
MethodName: "GetDraft",
Handler: _AppPlatform_GetDraft_Handler,
},
{
MethodName: "CreateDraft",
Handler: _AppPlatform_CreateDraft_Handler,
},
{
MethodName: "UpdateDraft",
Handler: _AppPlatform_UpdateDraft_Handler,
},
{
MethodName: "DeleteDraft",
Handler: _AppPlatform_DeleteDraft_Handler,
},
{
MethodName: "ListProcessors",
Handler: _AppPlatform_ListProcessors_Handler,
},
{
MethodName: "ListPrebuiltProcessors",
Handler: _AppPlatform_ListPrebuiltProcessors_Handler,
},
{
MethodName: "GetProcessor",
Handler: _AppPlatform_GetProcessor_Handler,
},
{
MethodName: "CreateProcessor",
Handler: _AppPlatform_CreateProcessor_Handler,
},
{
MethodName: "UpdateProcessor",
Handler: _AppPlatform_UpdateProcessor_Handler,
},
{
MethodName: "DeleteProcessor",
Handler: _AppPlatform_DeleteProcessor_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "google/cloud/visionai/v1/platform.proto",
}