...

Source file src/google.golang.org/genproto/googleapis/cloud/visionai/v1alpha1/annotations.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/visionai/v1alpha1

     1  // Copyright 2022 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v3.21.9
    19  // source: google/cloud/visionai/v1alpha1/annotations.proto
    20  
    21  package visionai
    22  
    23  import (
    24  	reflect "reflect"
    25  	sync "sync"
    26  
    27  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    28  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    29  	structpb "google.golang.org/protobuf/types/known/structpb"
    30  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  // Enum describing all possible types of a stream annotation.
    41  type StreamAnnotationType int32
    42  
    43  const (
    44  	// Type UNSPECIFIED.
    45  	StreamAnnotationType_STREAM_ANNOTATION_TYPE_UNSPECIFIED StreamAnnotationType = 0
    46  	// active_zone annotation defines a polygon on top of the content from an
    47  	// image/video based stream, following processing will only focus on the
    48  	// content inside the active zone.
    49  	StreamAnnotationType_STREAM_ANNOTATION_TYPE_ACTIVE_ZONE StreamAnnotationType = 1
    50  	// crossing_line annotation defines a polyline on top of the content from an
    51  	// image/video based Vision AI stream, events happening across the line will
    52  	// be captured. For example, the counts of people who goes acroos the line
    53  	// in Occupancy Analytic Processor.
    54  	StreamAnnotationType_STREAM_ANNOTATION_TYPE_CROSSING_LINE StreamAnnotationType = 2
    55  )
    56  
    57  // Enum value maps for StreamAnnotationType.
    58  var (
    59  	StreamAnnotationType_name = map[int32]string{
    60  		0: "STREAM_ANNOTATION_TYPE_UNSPECIFIED",
    61  		1: "STREAM_ANNOTATION_TYPE_ACTIVE_ZONE",
    62  		2: "STREAM_ANNOTATION_TYPE_CROSSING_LINE",
    63  	}
    64  	StreamAnnotationType_value = map[string]int32{
    65  		"STREAM_ANNOTATION_TYPE_UNSPECIFIED":   0,
    66  		"STREAM_ANNOTATION_TYPE_ACTIVE_ZONE":   1,
    67  		"STREAM_ANNOTATION_TYPE_CROSSING_LINE": 2,
    68  	}
    69  )
    70  
    71  func (x StreamAnnotationType) Enum() *StreamAnnotationType {
    72  	p := new(StreamAnnotationType)
    73  	*p = x
    74  	return p
    75  }
    76  
    77  func (x StreamAnnotationType) String() string {
    78  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    79  }
    80  
    81  func (StreamAnnotationType) Descriptor() protoreflect.EnumDescriptor {
    82  	return file_google_cloud_visionai_v1alpha1_annotations_proto_enumTypes[0].Descriptor()
    83  }
    84  
    85  func (StreamAnnotationType) Type() protoreflect.EnumType {
    86  	return &file_google_cloud_visionai_v1alpha1_annotations_proto_enumTypes[0]
    87  }
    88  
    89  func (x StreamAnnotationType) Number() protoreflect.EnumNumber {
    90  	return protoreflect.EnumNumber(x)
    91  }
    92  
    93  // Deprecated: Use StreamAnnotationType.Descriptor instead.
    94  func (StreamAnnotationType) EnumDescriptor() ([]byte, []int) {
    95  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0}
    96  }
    97  
    98  // Output format for Personal Protective Equipment Detection Operator.
    99  type PersonalProtectiveEquipmentDetectionOutput struct {
   100  	state         protoimpl.MessageState
   101  	sizeCache     protoimpl.SizeCache
   102  	unknownFields protoimpl.UnknownFields
   103  
   104  	// Current timestamp.
   105  	CurrentTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=current_time,json=currentTime,proto3" json:"current_time,omitempty"`
   106  	// A list of DetectedPersons.
   107  	DetectedPersons []*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson `protobuf:"bytes,2,rep,name=detected_persons,json=detectedPersons,proto3" json:"detected_persons,omitempty"`
   108  }
   109  
   110  func (x *PersonalProtectiveEquipmentDetectionOutput) Reset() {
   111  	*x = PersonalProtectiveEquipmentDetectionOutput{}
   112  	if protoimpl.UnsafeEnabled {
   113  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[0]
   114  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   115  		ms.StoreMessageInfo(mi)
   116  	}
   117  }
   118  
   119  func (x *PersonalProtectiveEquipmentDetectionOutput) String() string {
   120  	return protoimpl.X.MessageStringOf(x)
   121  }
   122  
   123  func (*PersonalProtectiveEquipmentDetectionOutput) ProtoMessage() {}
   124  
   125  func (x *PersonalProtectiveEquipmentDetectionOutput) ProtoReflect() protoreflect.Message {
   126  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[0]
   127  	if protoimpl.UnsafeEnabled && x != nil {
   128  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   129  		if ms.LoadMessageInfo() == nil {
   130  			ms.StoreMessageInfo(mi)
   131  		}
   132  		return ms
   133  	}
   134  	return mi.MessageOf(x)
   135  }
   136  
   137  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput.ProtoReflect.Descriptor instead.
   138  func (*PersonalProtectiveEquipmentDetectionOutput) Descriptor() ([]byte, []int) {
   139  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0}
   140  }
   141  
   142  func (x *PersonalProtectiveEquipmentDetectionOutput) GetCurrentTime() *timestamppb.Timestamp {
   143  	if x != nil {
   144  		return x.CurrentTime
   145  	}
   146  	return nil
   147  }
   148  
   149  func (x *PersonalProtectiveEquipmentDetectionOutput) GetDetectedPersons() []*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson {
   150  	if x != nil {
   151  		return x.DetectedPersons
   152  	}
   153  	return nil
   154  }
   155  
   156  // Prediction output format for Generic Object Detection.
   157  type ObjectDetectionPredictionResult struct {
   158  	state         protoimpl.MessageState
   159  	sizeCache     protoimpl.SizeCache
   160  	unknownFields protoimpl.UnknownFields
   161  
   162  	// Current timestamp.
   163  	CurrentTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=current_time,json=currentTime,proto3" json:"current_time,omitempty"`
   164  	// A list of identified boxes.
   165  	IdentifiedBoxes []*ObjectDetectionPredictionResult_IdentifiedBox `protobuf:"bytes,2,rep,name=identified_boxes,json=identifiedBoxes,proto3" json:"identified_boxes,omitempty"`
   166  }
   167  
   168  func (x *ObjectDetectionPredictionResult) Reset() {
   169  	*x = ObjectDetectionPredictionResult{}
   170  	if protoimpl.UnsafeEnabled {
   171  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[1]
   172  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   173  		ms.StoreMessageInfo(mi)
   174  	}
   175  }
   176  
   177  func (x *ObjectDetectionPredictionResult) String() string {
   178  	return protoimpl.X.MessageStringOf(x)
   179  }
   180  
   181  func (*ObjectDetectionPredictionResult) ProtoMessage() {}
   182  
   183  func (x *ObjectDetectionPredictionResult) ProtoReflect() protoreflect.Message {
   184  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[1]
   185  	if protoimpl.UnsafeEnabled && x != nil {
   186  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   187  		if ms.LoadMessageInfo() == nil {
   188  			ms.StoreMessageInfo(mi)
   189  		}
   190  		return ms
   191  	}
   192  	return mi.MessageOf(x)
   193  }
   194  
   195  // Deprecated: Use ObjectDetectionPredictionResult.ProtoReflect.Descriptor instead.
   196  func (*ObjectDetectionPredictionResult) Descriptor() ([]byte, []int) {
   197  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{1}
   198  }
   199  
   200  func (x *ObjectDetectionPredictionResult) GetCurrentTime() *timestamppb.Timestamp {
   201  	if x != nil {
   202  		return x.CurrentTime
   203  	}
   204  	return nil
   205  }
   206  
   207  func (x *ObjectDetectionPredictionResult) GetIdentifiedBoxes() []*ObjectDetectionPredictionResult_IdentifiedBox {
   208  	if x != nil {
   209  		return x.IdentifiedBoxes
   210  	}
   211  	return nil
   212  }
   213  
   214  // Prediction output format for Image Object Detection.
   215  type ImageObjectDetectionPredictionResult struct {
   216  	state         protoimpl.MessageState
   217  	sizeCache     protoimpl.SizeCache
   218  	unknownFields protoimpl.UnknownFields
   219  
   220  	// The resource IDs of the AnnotationSpecs that had been identified, ordered
   221  	// by the confidence score descendingly. It is the id segment instead of full
   222  	// resource name.
   223  	Ids []int64 `protobuf:"varint,1,rep,packed,name=ids,proto3" json:"ids,omitempty"`
   224  	// The display names of the AnnotationSpecs that had been identified, order
   225  	// matches the IDs.
   226  	DisplayNames []string `protobuf:"bytes,2,rep,name=display_names,json=displayNames,proto3" json:"display_names,omitempty"`
   227  	// The Model's confidences in correctness of the predicted IDs, higher value
   228  	// means higher confidence. Order matches the Ids.
   229  	Confidences []float32 `protobuf:"fixed32,3,rep,packed,name=confidences,proto3" json:"confidences,omitempty"`
   230  	// Bounding boxes, i.e. the rectangles over the image, that pinpoint
   231  	// the found AnnotationSpecs. Given in order that matches the IDs. Each
   232  	// bounding box is an array of 4 numbers `xMin`, `xMax`, `yMin`, and
   233  	// `yMax`, which represent the extremal coordinates of the box. They are
   234  	// relative to the image size, and the point 0,0 is in the top left
   235  	// of the image.
   236  	Bboxes []*structpb.ListValue `protobuf:"bytes,4,rep,name=bboxes,proto3" json:"bboxes,omitempty"`
   237  }
   238  
   239  func (x *ImageObjectDetectionPredictionResult) Reset() {
   240  	*x = ImageObjectDetectionPredictionResult{}
   241  	if protoimpl.UnsafeEnabled {
   242  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[2]
   243  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   244  		ms.StoreMessageInfo(mi)
   245  	}
   246  }
   247  
   248  func (x *ImageObjectDetectionPredictionResult) String() string {
   249  	return protoimpl.X.MessageStringOf(x)
   250  }
   251  
   252  func (*ImageObjectDetectionPredictionResult) ProtoMessage() {}
   253  
   254  func (x *ImageObjectDetectionPredictionResult) ProtoReflect() protoreflect.Message {
   255  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[2]
   256  	if protoimpl.UnsafeEnabled && x != nil {
   257  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   258  		if ms.LoadMessageInfo() == nil {
   259  			ms.StoreMessageInfo(mi)
   260  		}
   261  		return ms
   262  	}
   263  	return mi.MessageOf(x)
   264  }
   265  
   266  // Deprecated: Use ImageObjectDetectionPredictionResult.ProtoReflect.Descriptor instead.
   267  func (*ImageObjectDetectionPredictionResult) Descriptor() ([]byte, []int) {
   268  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{2}
   269  }
   270  
   271  func (x *ImageObjectDetectionPredictionResult) GetIds() []int64 {
   272  	if x != nil {
   273  		return x.Ids
   274  	}
   275  	return nil
   276  }
   277  
   278  func (x *ImageObjectDetectionPredictionResult) GetDisplayNames() []string {
   279  	if x != nil {
   280  		return x.DisplayNames
   281  	}
   282  	return nil
   283  }
   284  
   285  func (x *ImageObjectDetectionPredictionResult) GetConfidences() []float32 {
   286  	if x != nil {
   287  		return x.Confidences
   288  	}
   289  	return nil
   290  }
   291  
   292  func (x *ImageObjectDetectionPredictionResult) GetBboxes() []*structpb.ListValue {
   293  	if x != nil {
   294  		return x.Bboxes
   295  	}
   296  	return nil
   297  }
   298  
   299  // Prediction output format for Image and Text Classification.
   300  type ClassificationPredictionResult struct {
   301  	state         protoimpl.MessageState
   302  	sizeCache     protoimpl.SizeCache
   303  	unknownFields protoimpl.UnknownFields
   304  
   305  	// The resource IDs of the AnnotationSpecs that had been identified.
   306  	Ids []int64 `protobuf:"varint,1,rep,packed,name=ids,proto3" json:"ids,omitempty"`
   307  	// The display names of the AnnotationSpecs that had been identified, order
   308  	// matches the IDs.
   309  	DisplayNames []string `protobuf:"bytes,2,rep,name=display_names,json=displayNames,proto3" json:"display_names,omitempty"`
   310  	// The Model's confidences in correctness of the predicted IDs, higher value
   311  	// means higher confidence. Order matches the Ids.
   312  	Confidences []float32 `protobuf:"fixed32,3,rep,packed,name=confidences,proto3" json:"confidences,omitempty"`
   313  }
   314  
   315  func (x *ClassificationPredictionResult) Reset() {
   316  	*x = ClassificationPredictionResult{}
   317  	if protoimpl.UnsafeEnabled {
   318  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[3]
   319  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   320  		ms.StoreMessageInfo(mi)
   321  	}
   322  }
   323  
   324  func (x *ClassificationPredictionResult) String() string {
   325  	return protoimpl.X.MessageStringOf(x)
   326  }
   327  
   328  func (*ClassificationPredictionResult) ProtoMessage() {}
   329  
   330  func (x *ClassificationPredictionResult) ProtoReflect() protoreflect.Message {
   331  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[3]
   332  	if protoimpl.UnsafeEnabled && x != nil {
   333  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   334  		if ms.LoadMessageInfo() == nil {
   335  			ms.StoreMessageInfo(mi)
   336  		}
   337  		return ms
   338  	}
   339  	return mi.MessageOf(x)
   340  }
   341  
   342  // Deprecated: Use ClassificationPredictionResult.ProtoReflect.Descriptor instead.
   343  func (*ClassificationPredictionResult) Descriptor() ([]byte, []int) {
   344  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{3}
   345  }
   346  
   347  func (x *ClassificationPredictionResult) GetIds() []int64 {
   348  	if x != nil {
   349  		return x.Ids
   350  	}
   351  	return nil
   352  }
   353  
   354  func (x *ClassificationPredictionResult) GetDisplayNames() []string {
   355  	if x != nil {
   356  		return x.DisplayNames
   357  	}
   358  	return nil
   359  }
   360  
   361  func (x *ClassificationPredictionResult) GetConfidences() []float32 {
   362  	if x != nil {
   363  		return x.Confidences
   364  	}
   365  	return nil
   366  }
   367  
   368  // Prediction output format for Image Segmentation.
   369  type ImageSegmentationPredictionResult struct {
   370  	state         protoimpl.MessageState
   371  	sizeCache     protoimpl.SizeCache
   372  	unknownFields protoimpl.UnknownFields
   373  
   374  	// A PNG image where each pixel in the mask represents the category in which
   375  	// the pixel in the original image was predicted to belong to. The size of
   376  	// this image will be the same as the original image. The mapping between the
   377  	// AnntoationSpec and the color can be found in model's metadata. The model
   378  	// will choose the most likely category and if none of the categories reach
   379  	// the confidence threshold, the pixel will be marked as background.
   380  	CategoryMask string `protobuf:"bytes,1,opt,name=category_mask,json=categoryMask,proto3" json:"category_mask,omitempty"`
   381  	// A one channel image which is encoded as an 8bit lossless PNG. The size of
   382  	// the image will be the same as the original image. For a specific pixel,
   383  	// darker color means less confidence in correctness of the cateogry in the
   384  	// categoryMask for the corresponding pixel. Black means no confidence and
   385  	// white means complete confidence.
   386  	ConfidenceMask string `protobuf:"bytes,2,opt,name=confidence_mask,json=confidenceMask,proto3" json:"confidence_mask,omitempty"`
   387  }
   388  
   389  func (x *ImageSegmentationPredictionResult) Reset() {
   390  	*x = ImageSegmentationPredictionResult{}
   391  	if protoimpl.UnsafeEnabled {
   392  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[4]
   393  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   394  		ms.StoreMessageInfo(mi)
   395  	}
   396  }
   397  
   398  func (x *ImageSegmentationPredictionResult) String() string {
   399  	return protoimpl.X.MessageStringOf(x)
   400  }
   401  
   402  func (*ImageSegmentationPredictionResult) ProtoMessage() {}
   403  
   404  func (x *ImageSegmentationPredictionResult) ProtoReflect() protoreflect.Message {
   405  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[4]
   406  	if protoimpl.UnsafeEnabled && x != nil {
   407  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   408  		if ms.LoadMessageInfo() == nil {
   409  			ms.StoreMessageInfo(mi)
   410  		}
   411  		return ms
   412  	}
   413  	return mi.MessageOf(x)
   414  }
   415  
   416  // Deprecated: Use ImageSegmentationPredictionResult.ProtoReflect.Descriptor instead.
   417  func (*ImageSegmentationPredictionResult) Descriptor() ([]byte, []int) {
   418  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{4}
   419  }
   420  
   421  func (x *ImageSegmentationPredictionResult) GetCategoryMask() string {
   422  	if x != nil {
   423  		return x.CategoryMask
   424  	}
   425  	return ""
   426  }
   427  
   428  func (x *ImageSegmentationPredictionResult) GetConfidenceMask() string {
   429  	if x != nil {
   430  		return x.ConfidenceMask
   431  	}
   432  	return ""
   433  }
   434  
   435  // Prediction output format for Video Action Recognition.
   436  type VideoActionRecognitionPredictionResult struct {
   437  	state         protoimpl.MessageState
   438  	sizeCache     protoimpl.SizeCache
   439  	unknownFields protoimpl.UnknownFields
   440  
   441  	// The beginning, inclusive, of the video's time segment in which the
   442  	// actions have been identified.
   443  	SegmentStartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=segment_start_time,json=segmentStartTime,proto3" json:"segment_start_time,omitempty"`
   444  	// The end, inclusive, of the video's time segment in which the actions have
   445  	// been identified. Particularly, if the end is the same as the start, it
   446  	// means the identification happens on a specific video frame.
   447  	SegmentEndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=segment_end_time,json=segmentEndTime,proto3" json:"segment_end_time,omitempty"`
   448  	// All of the actions identified in the time range.
   449  	Actions []*VideoActionRecognitionPredictionResult_IdentifiedAction `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"`
   450  }
   451  
   452  func (x *VideoActionRecognitionPredictionResult) Reset() {
   453  	*x = VideoActionRecognitionPredictionResult{}
   454  	if protoimpl.UnsafeEnabled {
   455  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[5]
   456  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   457  		ms.StoreMessageInfo(mi)
   458  	}
   459  }
   460  
   461  func (x *VideoActionRecognitionPredictionResult) String() string {
   462  	return protoimpl.X.MessageStringOf(x)
   463  }
   464  
   465  func (*VideoActionRecognitionPredictionResult) ProtoMessage() {}
   466  
   467  func (x *VideoActionRecognitionPredictionResult) ProtoReflect() protoreflect.Message {
   468  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[5]
   469  	if protoimpl.UnsafeEnabled && x != nil {
   470  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   471  		if ms.LoadMessageInfo() == nil {
   472  			ms.StoreMessageInfo(mi)
   473  		}
   474  		return ms
   475  	}
   476  	return mi.MessageOf(x)
   477  }
   478  
   479  // Deprecated: Use VideoActionRecognitionPredictionResult.ProtoReflect.Descriptor instead.
   480  func (*VideoActionRecognitionPredictionResult) Descriptor() ([]byte, []int) {
   481  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{5}
   482  }
   483  
   484  func (x *VideoActionRecognitionPredictionResult) GetSegmentStartTime() *timestamppb.Timestamp {
   485  	if x != nil {
   486  		return x.SegmentStartTime
   487  	}
   488  	return nil
   489  }
   490  
   491  func (x *VideoActionRecognitionPredictionResult) GetSegmentEndTime() *timestamppb.Timestamp {
   492  	if x != nil {
   493  		return x.SegmentEndTime
   494  	}
   495  	return nil
   496  }
   497  
   498  func (x *VideoActionRecognitionPredictionResult) GetActions() []*VideoActionRecognitionPredictionResult_IdentifiedAction {
   499  	if x != nil {
   500  		return x.Actions
   501  	}
   502  	return nil
   503  }
   504  
   505  // Prediction output format for Video Object Tracking.
   506  type VideoObjectTrackingPredictionResult struct {
   507  	state         protoimpl.MessageState
   508  	sizeCache     protoimpl.SizeCache
   509  	unknownFields protoimpl.UnknownFields
   510  
   511  	// The beginning, inclusive, of the video's time segment in which the
   512  	// current identifications happens.
   513  	SegmentStartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=segment_start_time,json=segmentStartTime,proto3" json:"segment_start_time,omitempty"`
   514  	// The end, inclusive, of the video's time segment in which the current
   515  	// identifications happen. Particularly, if the end is the same as the start,
   516  	// it means the identifications happen on a specific video frame.
   517  	SegmentEndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=segment_end_time,json=segmentEndTime,proto3" json:"segment_end_time,omitempty"`
   518  	// All of the objects detected in the specified time range.
   519  	Objects []*VideoObjectTrackingPredictionResult_DetectedObject `protobuf:"bytes,3,rep,name=objects,proto3" json:"objects,omitempty"`
   520  }
   521  
   522  func (x *VideoObjectTrackingPredictionResult) Reset() {
   523  	*x = VideoObjectTrackingPredictionResult{}
   524  	if protoimpl.UnsafeEnabled {
   525  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[6]
   526  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   527  		ms.StoreMessageInfo(mi)
   528  	}
   529  }
   530  
   531  func (x *VideoObjectTrackingPredictionResult) String() string {
   532  	return protoimpl.X.MessageStringOf(x)
   533  }
   534  
   535  func (*VideoObjectTrackingPredictionResult) ProtoMessage() {}
   536  
   537  func (x *VideoObjectTrackingPredictionResult) ProtoReflect() protoreflect.Message {
   538  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[6]
   539  	if protoimpl.UnsafeEnabled && x != nil {
   540  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   541  		if ms.LoadMessageInfo() == nil {
   542  			ms.StoreMessageInfo(mi)
   543  		}
   544  		return ms
   545  	}
   546  	return mi.MessageOf(x)
   547  }
   548  
   549  // Deprecated: Use VideoObjectTrackingPredictionResult.ProtoReflect.Descriptor instead.
   550  func (*VideoObjectTrackingPredictionResult) Descriptor() ([]byte, []int) {
   551  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{6}
   552  }
   553  
   554  func (x *VideoObjectTrackingPredictionResult) GetSegmentStartTime() *timestamppb.Timestamp {
   555  	if x != nil {
   556  		return x.SegmentStartTime
   557  	}
   558  	return nil
   559  }
   560  
   561  func (x *VideoObjectTrackingPredictionResult) GetSegmentEndTime() *timestamppb.Timestamp {
   562  	if x != nil {
   563  		return x.SegmentEndTime
   564  	}
   565  	return nil
   566  }
   567  
   568  func (x *VideoObjectTrackingPredictionResult) GetObjects() []*VideoObjectTrackingPredictionResult_DetectedObject {
   569  	if x != nil {
   570  		return x.Objects
   571  	}
   572  	return nil
   573  }
   574  
   575  // Prediction output format for Video Classification.
   576  type VideoClassificationPredictionResult struct {
   577  	state         protoimpl.MessageState
   578  	sizeCache     protoimpl.SizeCache
   579  	unknownFields protoimpl.UnknownFields
   580  
   581  	// The beginning, inclusive, of the video's time segment in which the
   582  	// classifications have been identified.
   583  	SegmentStartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=segment_start_time,json=segmentStartTime,proto3" json:"segment_start_time,omitempty"`
   584  	// The end, inclusive, of the video's time segment in which the
   585  	// classifications have been identified. Particularly, if the end is the same
   586  	// as the start, it means the identification happens on a specific video
   587  	// frame.
   588  	SegmentEndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=segment_end_time,json=segmentEndTime,proto3" json:"segment_end_time,omitempty"`
   589  	// All of the classifications identified in the time range.
   590  	Classifications []*VideoClassificationPredictionResult_IdentifiedClassification `protobuf:"bytes,3,rep,name=classifications,proto3" json:"classifications,omitempty"`
   591  }
   592  
   593  func (x *VideoClassificationPredictionResult) Reset() {
   594  	*x = VideoClassificationPredictionResult{}
   595  	if protoimpl.UnsafeEnabled {
   596  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[7]
   597  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   598  		ms.StoreMessageInfo(mi)
   599  	}
   600  }
   601  
   602  func (x *VideoClassificationPredictionResult) String() string {
   603  	return protoimpl.X.MessageStringOf(x)
   604  }
   605  
   606  func (*VideoClassificationPredictionResult) ProtoMessage() {}
   607  
   608  func (x *VideoClassificationPredictionResult) ProtoReflect() protoreflect.Message {
   609  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[7]
   610  	if protoimpl.UnsafeEnabled && x != nil {
   611  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   612  		if ms.LoadMessageInfo() == nil {
   613  			ms.StoreMessageInfo(mi)
   614  		}
   615  		return ms
   616  	}
   617  	return mi.MessageOf(x)
   618  }
   619  
   620  // Deprecated: Use VideoClassificationPredictionResult.ProtoReflect.Descriptor instead.
   621  func (*VideoClassificationPredictionResult) Descriptor() ([]byte, []int) {
   622  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{7}
   623  }
   624  
   625  func (x *VideoClassificationPredictionResult) GetSegmentStartTime() *timestamppb.Timestamp {
   626  	if x != nil {
   627  		return x.SegmentStartTime
   628  	}
   629  	return nil
   630  }
   631  
   632  func (x *VideoClassificationPredictionResult) GetSegmentEndTime() *timestamppb.Timestamp {
   633  	if x != nil {
   634  		return x.SegmentEndTime
   635  	}
   636  	return nil
   637  }
   638  
   639  func (x *VideoClassificationPredictionResult) GetClassifications() []*VideoClassificationPredictionResult_IdentifiedClassification {
   640  	if x != nil {
   641  		return x.Classifications
   642  	}
   643  	return nil
   644  }
   645  
   646  // The prediction result proto for occupancy counting.
   647  type OccupancyCountingPredictionResult struct {
   648  	state         protoimpl.MessageState
   649  	sizeCache     protoimpl.SizeCache
   650  	unknownFields protoimpl.UnknownFields
   651  
   652  	// Current timestamp.
   653  	CurrentTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=current_time,json=currentTime,proto3" json:"current_time,omitempty"`
   654  	// A list of identified boxes.
   655  	IdentifiedBoxes []*OccupancyCountingPredictionResult_IdentifiedBox `protobuf:"bytes,2,rep,name=identified_boxes,json=identifiedBoxes,proto3" json:"identified_boxes,omitempty"`
   656  	// Detection statistics.
   657  	Stats *OccupancyCountingPredictionResult_Stats `protobuf:"bytes,3,opt,name=stats,proto3" json:"stats,omitempty"`
   658  	// Track related information. All the tracks that are live at this timestamp.
   659  	// It only exists if tracking is enabled.
   660  	TrackInfo []*OccupancyCountingPredictionResult_TrackInfo `protobuf:"bytes,4,rep,name=track_info,json=trackInfo,proto3" json:"track_info,omitempty"`
   661  	// Dwell time related information. All the tracks that are live in a given
   662  	// zone with a start and end dwell time timestamp
   663  	DwellTimeInfo []*OccupancyCountingPredictionResult_DwellTimeInfo `protobuf:"bytes,5,rep,name=dwell_time_info,json=dwellTimeInfo,proto3" json:"dwell_time_info,omitempty"`
   664  }
   665  
   666  func (x *OccupancyCountingPredictionResult) Reset() {
   667  	*x = OccupancyCountingPredictionResult{}
   668  	if protoimpl.UnsafeEnabled {
   669  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[8]
   670  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   671  		ms.StoreMessageInfo(mi)
   672  	}
   673  }
   674  
   675  func (x *OccupancyCountingPredictionResult) String() string {
   676  	return protoimpl.X.MessageStringOf(x)
   677  }
   678  
   679  func (*OccupancyCountingPredictionResult) ProtoMessage() {}
   680  
   681  func (x *OccupancyCountingPredictionResult) ProtoReflect() protoreflect.Message {
   682  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[8]
   683  	if protoimpl.UnsafeEnabled && x != nil {
   684  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   685  		if ms.LoadMessageInfo() == nil {
   686  			ms.StoreMessageInfo(mi)
   687  		}
   688  		return ms
   689  	}
   690  	return mi.MessageOf(x)
   691  }
   692  
   693  // Deprecated: Use OccupancyCountingPredictionResult.ProtoReflect.Descriptor instead.
   694  func (*OccupancyCountingPredictionResult) Descriptor() ([]byte, []int) {
   695  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8}
   696  }
   697  
   698  func (x *OccupancyCountingPredictionResult) GetCurrentTime() *timestamppb.Timestamp {
   699  	if x != nil {
   700  		return x.CurrentTime
   701  	}
   702  	return nil
   703  }
   704  
   705  func (x *OccupancyCountingPredictionResult) GetIdentifiedBoxes() []*OccupancyCountingPredictionResult_IdentifiedBox {
   706  	if x != nil {
   707  		return x.IdentifiedBoxes
   708  	}
   709  	return nil
   710  }
   711  
   712  func (x *OccupancyCountingPredictionResult) GetStats() *OccupancyCountingPredictionResult_Stats {
   713  	if x != nil {
   714  		return x.Stats
   715  	}
   716  	return nil
   717  }
   718  
   719  func (x *OccupancyCountingPredictionResult) GetTrackInfo() []*OccupancyCountingPredictionResult_TrackInfo {
   720  	if x != nil {
   721  		return x.TrackInfo
   722  	}
   723  	return nil
   724  }
   725  
   726  func (x *OccupancyCountingPredictionResult) GetDwellTimeInfo() []*OccupancyCountingPredictionResult_DwellTimeInfo {
   727  	if x != nil {
   728  		return x.DwellTimeInfo
   729  	}
   730  	return nil
   731  }
   732  
   733  // message about annotations about Vision AI stream resource.
   734  type StreamAnnotation struct {
   735  	state         protoimpl.MessageState
   736  	sizeCache     protoimpl.SizeCache
   737  	unknownFields protoimpl.UnknownFields
   738  
   739  	// Types that are assignable to AnnotationPayload:
   740  	//
   741  	//	*StreamAnnotation_ActiveZone
   742  	//	*StreamAnnotation_CrossingLine
   743  	AnnotationPayload isStreamAnnotation_AnnotationPayload `protobuf_oneof:"annotation_payload"`
   744  	// ID of the annotation. It must be unique when used in the certain context.
   745  	// For example, all the annotations to one input streams of a Vision AI
   746  	// application.
   747  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   748  	// User-friendly name for the annotation.
   749  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   750  	// The Vision AI stream resource name.
   751  	SourceStream string `protobuf:"bytes,3,opt,name=source_stream,json=sourceStream,proto3" json:"source_stream,omitempty"`
   752  	// The actual type of Annotation.
   753  	Type StreamAnnotationType `protobuf:"varint,4,opt,name=type,proto3,enum=google.cloud.visionai.v1alpha1.StreamAnnotationType" json:"type,omitempty"`
   754  }
   755  
   756  func (x *StreamAnnotation) Reset() {
   757  	*x = StreamAnnotation{}
   758  	if protoimpl.UnsafeEnabled {
   759  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[9]
   760  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   761  		ms.StoreMessageInfo(mi)
   762  	}
   763  }
   764  
   765  func (x *StreamAnnotation) String() string {
   766  	return protoimpl.X.MessageStringOf(x)
   767  }
   768  
   769  func (*StreamAnnotation) ProtoMessage() {}
   770  
   771  func (x *StreamAnnotation) ProtoReflect() protoreflect.Message {
   772  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[9]
   773  	if protoimpl.UnsafeEnabled && x != nil {
   774  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   775  		if ms.LoadMessageInfo() == nil {
   776  			ms.StoreMessageInfo(mi)
   777  		}
   778  		return ms
   779  	}
   780  	return mi.MessageOf(x)
   781  }
   782  
   783  // Deprecated: Use StreamAnnotation.ProtoReflect.Descriptor instead.
   784  func (*StreamAnnotation) Descriptor() ([]byte, []int) {
   785  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{9}
   786  }
   787  
   788  func (m *StreamAnnotation) GetAnnotationPayload() isStreamAnnotation_AnnotationPayload {
   789  	if m != nil {
   790  		return m.AnnotationPayload
   791  	}
   792  	return nil
   793  }
   794  
   795  func (x *StreamAnnotation) GetActiveZone() *NormalizedPolygon {
   796  	if x, ok := x.GetAnnotationPayload().(*StreamAnnotation_ActiveZone); ok {
   797  		return x.ActiveZone
   798  	}
   799  	return nil
   800  }
   801  
   802  func (x *StreamAnnotation) GetCrossingLine() *NormalizedPolyline {
   803  	if x, ok := x.GetAnnotationPayload().(*StreamAnnotation_CrossingLine); ok {
   804  		return x.CrossingLine
   805  	}
   806  	return nil
   807  }
   808  
   809  func (x *StreamAnnotation) GetId() string {
   810  	if x != nil {
   811  		return x.Id
   812  	}
   813  	return ""
   814  }
   815  
   816  func (x *StreamAnnotation) GetDisplayName() string {
   817  	if x != nil {
   818  		return x.DisplayName
   819  	}
   820  	return ""
   821  }
   822  
   823  func (x *StreamAnnotation) GetSourceStream() string {
   824  	if x != nil {
   825  		return x.SourceStream
   826  	}
   827  	return ""
   828  }
   829  
   830  func (x *StreamAnnotation) GetType() StreamAnnotationType {
   831  	if x != nil {
   832  		return x.Type
   833  	}
   834  	return StreamAnnotationType_STREAM_ANNOTATION_TYPE_UNSPECIFIED
   835  }
   836  
   837  type isStreamAnnotation_AnnotationPayload interface {
   838  	isStreamAnnotation_AnnotationPayload()
   839  }
   840  
   841  type StreamAnnotation_ActiveZone struct {
   842  	// Annotation for type ACTIVE_ZONE
   843  	ActiveZone *NormalizedPolygon `protobuf:"bytes,5,opt,name=active_zone,json=activeZone,proto3,oneof"`
   844  }
   845  
   846  type StreamAnnotation_CrossingLine struct {
   847  	// Annotation for type CROSSING_LINE
   848  	CrossingLine *NormalizedPolyline `protobuf:"bytes,6,opt,name=crossing_line,json=crossingLine,proto3,oneof"`
   849  }
   850  
   851  func (*StreamAnnotation_ActiveZone) isStreamAnnotation_AnnotationPayload() {}
   852  
   853  func (*StreamAnnotation_CrossingLine) isStreamAnnotation_AnnotationPayload() {}
   854  
   855  // A wrapper of repeated StreamAnnotation.
   856  type StreamAnnotations struct {
   857  	state         protoimpl.MessageState
   858  	sizeCache     protoimpl.SizeCache
   859  	unknownFields protoimpl.UnknownFields
   860  
   861  	// Multiple annotations.
   862  	StreamAnnotations []*StreamAnnotation `protobuf:"bytes,1,rep,name=stream_annotations,json=streamAnnotations,proto3" json:"stream_annotations,omitempty"`
   863  }
   864  
   865  func (x *StreamAnnotations) Reset() {
   866  	*x = StreamAnnotations{}
   867  	if protoimpl.UnsafeEnabled {
   868  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[10]
   869  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   870  		ms.StoreMessageInfo(mi)
   871  	}
   872  }
   873  
   874  func (x *StreamAnnotations) String() string {
   875  	return protoimpl.X.MessageStringOf(x)
   876  }
   877  
   878  func (*StreamAnnotations) ProtoMessage() {}
   879  
   880  func (x *StreamAnnotations) ProtoReflect() protoreflect.Message {
   881  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[10]
   882  	if protoimpl.UnsafeEnabled && x != nil {
   883  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   884  		if ms.LoadMessageInfo() == nil {
   885  			ms.StoreMessageInfo(mi)
   886  		}
   887  		return ms
   888  	}
   889  	return mi.MessageOf(x)
   890  }
   891  
   892  // Deprecated: Use StreamAnnotations.ProtoReflect.Descriptor instead.
   893  func (*StreamAnnotations) Descriptor() ([]byte, []int) {
   894  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{10}
   895  }
   896  
   897  func (x *StreamAnnotations) GetStreamAnnotations() []*StreamAnnotation {
   898  	if x != nil {
   899  		return x.StreamAnnotations
   900  	}
   901  	return nil
   902  }
   903  
   904  // Normalized Polygon.
   905  type NormalizedPolygon struct {
   906  	state         protoimpl.MessageState
   907  	sizeCache     protoimpl.SizeCache
   908  	unknownFields protoimpl.UnknownFields
   909  
   910  	// The bounding polygon normalized vertices. Top left corner of the image
   911  	// will be [0, 0].
   912  	NormalizedVertices []*NormalizedVertex `protobuf:"bytes,1,rep,name=normalized_vertices,json=normalizedVertices,proto3" json:"normalized_vertices,omitempty"`
   913  }
   914  
   915  func (x *NormalizedPolygon) Reset() {
   916  	*x = NormalizedPolygon{}
   917  	if protoimpl.UnsafeEnabled {
   918  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[11]
   919  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   920  		ms.StoreMessageInfo(mi)
   921  	}
   922  }
   923  
   924  func (x *NormalizedPolygon) String() string {
   925  	return protoimpl.X.MessageStringOf(x)
   926  }
   927  
   928  func (*NormalizedPolygon) ProtoMessage() {}
   929  
   930  func (x *NormalizedPolygon) ProtoReflect() protoreflect.Message {
   931  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[11]
   932  	if protoimpl.UnsafeEnabled && x != nil {
   933  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   934  		if ms.LoadMessageInfo() == nil {
   935  			ms.StoreMessageInfo(mi)
   936  		}
   937  		return ms
   938  	}
   939  	return mi.MessageOf(x)
   940  }
   941  
   942  // Deprecated: Use NormalizedPolygon.ProtoReflect.Descriptor instead.
   943  func (*NormalizedPolygon) Descriptor() ([]byte, []int) {
   944  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{11}
   945  }
   946  
   947  func (x *NormalizedPolygon) GetNormalizedVertices() []*NormalizedVertex {
   948  	if x != nil {
   949  		return x.NormalizedVertices
   950  	}
   951  	return nil
   952  }
   953  
   954  // Normalized Pplyline, which represents a curve consisting of connected
   955  // straight-line segments.
   956  type NormalizedPolyline struct {
   957  	state         protoimpl.MessageState
   958  	sizeCache     protoimpl.SizeCache
   959  	unknownFields protoimpl.UnknownFields
   960  
   961  	// A sequence of vertices connected by straight lines.
   962  	NormalizedVertices []*NormalizedVertex `protobuf:"bytes,1,rep,name=normalized_vertices,json=normalizedVertices,proto3" json:"normalized_vertices,omitempty"`
   963  }
   964  
   965  func (x *NormalizedPolyline) Reset() {
   966  	*x = NormalizedPolyline{}
   967  	if protoimpl.UnsafeEnabled {
   968  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[12]
   969  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   970  		ms.StoreMessageInfo(mi)
   971  	}
   972  }
   973  
   974  func (x *NormalizedPolyline) String() string {
   975  	return protoimpl.X.MessageStringOf(x)
   976  }
   977  
   978  func (*NormalizedPolyline) ProtoMessage() {}
   979  
   980  func (x *NormalizedPolyline) ProtoReflect() protoreflect.Message {
   981  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[12]
   982  	if protoimpl.UnsafeEnabled && x != nil {
   983  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   984  		if ms.LoadMessageInfo() == nil {
   985  			ms.StoreMessageInfo(mi)
   986  		}
   987  		return ms
   988  	}
   989  	return mi.MessageOf(x)
   990  }
   991  
   992  // Deprecated: Use NormalizedPolyline.ProtoReflect.Descriptor instead.
   993  func (*NormalizedPolyline) Descriptor() ([]byte, []int) {
   994  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{12}
   995  }
   996  
   997  func (x *NormalizedPolyline) GetNormalizedVertices() []*NormalizedVertex {
   998  	if x != nil {
   999  		return x.NormalizedVertices
  1000  	}
  1001  	return nil
  1002  }
  1003  
  1004  // A vertex represents a 2D point in the image.
  1005  // NOTE: the normalized vertex coordinates are relative to the original image
  1006  // and range from 0 to 1.
  1007  type NormalizedVertex struct {
  1008  	state         protoimpl.MessageState
  1009  	sizeCache     protoimpl.SizeCache
  1010  	unknownFields protoimpl.UnknownFields
  1011  
  1012  	// X coordinate.
  1013  	X float32 `protobuf:"fixed32,1,opt,name=x,proto3" json:"x,omitempty"`
  1014  	// Y coordinate.
  1015  	Y float32 `protobuf:"fixed32,2,opt,name=y,proto3" json:"y,omitempty"`
  1016  }
  1017  
  1018  func (x *NormalizedVertex) Reset() {
  1019  	*x = NormalizedVertex{}
  1020  	if protoimpl.UnsafeEnabled {
  1021  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[13]
  1022  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1023  		ms.StoreMessageInfo(mi)
  1024  	}
  1025  }
  1026  
  1027  func (x *NormalizedVertex) String() string {
  1028  	return protoimpl.X.MessageStringOf(x)
  1029  }
  1030  
  1031  func (*NormalizedVertex) ProtoMessage() {}
  1032  
  1033  func (x *NormalizedVertex) ProtoReflect() protoreflect.Message {
  1034  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[13]
  1035  	if protoimpl.UnsafeEnabled && x != nil {
  1036  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1037  		if ms.LoadMessageInfo() == nil {
  1038  			ms.StoreMessageInfo(mi)
  1039  		}
  1040  		return ms
  1041  	}
  1042  	return mi.MessageOf(x)
  1043  }
  1044  
  1045  // Deprecated: Use NormalizedVertex.ProtoReflect.Descriptor instead.
  1046  func (*NormalizedVertex) Descriptor() ([]byte, []int) {
  1047  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{13}
  1048  }
  1049  
  1050  func (x *NormalizedVertex) GetX() float32 {
  1051  	if x != nil {
  1052  		return x.X
  1053  	}
  1054  	return 0
  1055  }
  1056  
  1057  func (x *NormalizedVertex) GetY() float32 {
  1058  	if x != nil {
  1059  		return x.Y
  1060  	}
  1061  	return 0
  1062  }
  1063  
  1064  // Message of essential metadata of App Platform.
  1065  // This message is usually attached to a certain processor output annotation for
  1066  // customer to identify the source of the data.
  1067  type AppPlatformMetadata struct {
  1068  	state         protoimpl.MessageState
  1069  	sizeCache     protoimpl.SizeCache
  1070  	unknownFields protoimpl.UnknownFields
  1071  
  1072  	// The application resource name.
  1073  	Application string `protobuf:"bytes,1,opt,name=application,proto3" json:"application,omitempty"`
  1074  	// The instance resource id. Instance is the nested resource of application
  1075  	// under collection 'instances'.
  1076  	InstanceId string `protobuf:"bytes,2,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
  1077  	// The node name of the application graph.
  1078  	Node string `protobuf:"bytes,3,opt,name=node,proto3" json:"node,omitempty"`
  1079  	// The referred processor resource name of the application node.
  1080  	Processor string `protobuf:"bytes,4,opt,name=processor,proto3" json:"processor,omitempty"`
  1081  }
  1082  
  1083  func (x *AppPlatformMetadata) Reset() {
  1084  	*x = AppPlatformMetadata{}
  1085  	if protoimpl.UnsafeEnabled {
  1086  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[14]
  1087  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1088  		ms.StoreMessageInfo(mi)
  1089  	}
  1090  }
  1091  
  1092  func (x *AppPlatformMetadata) String() string {
  1093  	return protoimpl.X.MessageStringOf(x)
  1094  }
  1095  
  1096  func (*AppPlatformMetadata) ProtoMessage() {}
  1097  
  1098  func (x *AppPlatformMetadata) ProtoReflect() protoreflect.Message {
  1099  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[14]
  1100  	if protoimpl.UnsafeEnabled && x != nil {
  1101  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1102  		if ms.LoadMessageInfo() == nil {
  1103  			ms.StoreMessageInfo(mi)
  1104  		}
  1105  		return ms
  1106  	}
  1107  	return mi.MessageOf(x)
  1108  }
  1109  
  1110  // Deprecated: Use AppPlatformMetadata.ProtoReflect.Descriptor instead.
  1111  func (*AppPlatformMetadata) Descriptor() ([]byte, []int) {
  1112  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{14}
  1113  }
  1114  
  1115  func (x *AppPlatformMetadata) GetApplication() string {
  1116  	if x != nil {
  1117  		return x.Application
  1118  	}
  1119  	return ""
  1120  }
  1121  
  1122  func (x *AppPlatformMetadata) GetInstanceId() string {
  1123  	if x != nil {
  1124  		return x.InstanceId
  1125  	}
  1126  	return ""
  1127  }
  1128  
  1129  func (x *AppPlatformMetadata) GetNode() string {
  1130  	if x != nil {
  1131  		return x.Node
  1132  	}
  1133  	return ""
  1134  }
  1135  
  1136  func (x *AppPlatformMetadata) GetProcessor() string {
  1137  	if x != nil {
  1138  		return x.Processor
  1139  	}
  1140  	return ""
  1141  }
  1142  
  1143  // For any cloud function based customer processing logic, customer's cloud
  1144  // function is expected to receive AppPlatformCloudFunctionRequest as request
  1145  // and send back AppPlatformCloudFunctionResponse as response.
  1146  // Message of request from AppPlatform to Cloud Function.
  1147  type AppPlatformCloudFunctionRequest struct {
  1148  	state         protoimpl.MessageState
  1149  	sizeCache     protoimpl.SizeCache
  1150  	unknownFields protoimpl.UnknownFields
  1151  
  1152  	// The metadata of the AppPlatform for customer to identify the source of the
  1153  	// payload.
  1154  	AppPlatformMetadata *AppPlatformMetadata `protobuf:"bytes,1,opt,name=app_platform_metadata,json=appPlatformMetadata,proto3" json:"app_platform_metadata,omitempty"`
  1155  	// The actual annotations to be processed by the customized Cloud Function.
  1156  	Annotations []*AppPlatformCloudFunctionRequest_StructedInputAnnotation `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
  1157  }
  1158  
  1159  func (x *AppPlatformCloudFunctionRequest) Reset() {
  1160  	*x = AppPlatformCloudFunctionRequest{}
  1161  	if protoimpl.UnsafeEnabled {
  1162  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[15]
  1163  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1164  		ms.StoreMessageInfo(mi)
  1165  	}
  1166  }
  1167  
  1168  func (x *AppPlatformCloudFunctionRequest) String() string {
  1169  	return protoimpl.X.MessageStringOf(x)
  1170  }
  1171  
  1172  func (*AppPlatformCloudFunctionRequest) ProtoMessage() {}
  1173  
  1174  func (x *AppPlatformCloudFunctionRequest) ProtoReflect() protoreflect.Message {
  1175  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[15]
  1176  	if protoimpl.UnsafeEnabled && x != nil {
  1177  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1178  		if ms.LoadMessageInfo() == nil {
  1179  			ms.StoreMessageInfo(mi)
  1180  		}
  1181  		return ms
  1182  	}
  1183  	return mi.MessageOf(x)
  1184  }
  1185  
  1186  // Deprecated: Use AppPlatformCloudFunctionRequest.ProtoReflect.Descriptor instead.
  1187  func (*AppPlatformCloudFunctionRequest) Descriptor() ([]byte, []int) {
  1188  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{15}
  1189  }
  1190  
  1191  func (x *AppPlatformCloudFunctionRequest) GetAppPlatformMetadata() *AppPlatformMetadata {
  1192  	if x != nil {
  1193  		return x.AppPlatformMetadata
  1194  	}
  1195  	return nil
  1196  }
  1197  
  1198  func (x *AppPlatformCloudFunctionRequest) GetAnnotations() []*AppPlatformCloudFunctionRequest_StructedInputAnnotation {
  1199  	if x != nil {
  1200  		return x.Annotations
  1201  	}
  1202  	return nil
  1203  }
  1204  
  1205  // Message of the response from customer's Cloud Function to AppPlatform.
  1206  type AppPlatformCloudFunctionResponse struct {
  1207  	state         protoimpl.MessageState
  1208  	sizeCache     protoimpl.SizeCache
  1209  	unknownFields protoimpl.UnknownFields
  1210  
  1211  	// The modified annotations that is returned back to AppPlatform.
  1212  	// If the annotations fields are empty, then those annotations will be dropped
  1213  	// by AppPlatform.
  1214  	Annotations []*AppPlatformCloudFunctionResponse_StructedOutputAnnotation `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
  1215  	// If set to true, AppPlatform will use original annotations instead of
  1216  	// dropping them, even if it is empty in the annotations filed.
  1217  	AnnotationPassthrough bool `protobuf:"varint,3,opt,name=annotation_passthrough,json=annotationPassthrough,proto3" json:"annotation_passthrough,omitempty"`
  1218  	// The event notifications that is returned back to AppPlatform. Typically it
  1219  	// will then be configured to be consumed/forwared to a operator that handles
  1220  	// events, such as Pub/Sub operator.
  1221  	Events []*AppPlatformEventBody `protobuf:"bytes,4,rep,name=events,proto3" json:"events,omitempty"`
  1222  }
  1223  
  1224  func (x *AppPlatformCloudFunctionResponse) Reset() {
  1225  	*x = AppPlatformCloudFunctionResponse{}
  1226  	if protoimpl.UnsafeEnabled {
  1227  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[16]
  1228  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1229  		ms.StoreMessageInfo(mi)
  1230  	}
  1231  }
  1232  
  1233  func (x *AppPlatformCloudFunctionResponse) String() string {
  1234  	return protoimpl.X.MessageStringOf(x)
  1235  }
  1236  
  1237  func (*AppPlatformCloudFunctionResponse) ProtoMessage() {}
  1238  
  1239  func (x *AppPlatformCloudFunctionResponse) ProtoReflect() protoreflect.Message {
  1240  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[16]
  1241  	if protoimpl.UnsafeEnabled && x != nil {
  1242  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1243  		if ms.LoadMessageInfo() == nil {
  1244  			ms.StoreMessageInfo(mi)
  1245  		}
  1246  		return ms
  1247  	}
  1248  	return mi.MessageOf(x)
  1249  }
  1250  
  1251  // Deprecated: Use AppPlatformCloudFunctionResponse.ProtoReflect.Descriptor instead.
  1252  func (*AppPlatformCloudFunctionResponse) Descriptor() ([]byte, []int) {
  1253  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{16}
  1254  }
  1255  
  1256  func (x *AppPlatformCloudFunctionResponse) GetAnnotations() []*AppPlatformCloudFunctionResponse_StructedOutputAnnotation {
  1257  	if x != nil {
  1258  		return x.Annotations
  1259  	}
  1260  	return nil
  1261  }
  1262  
  1263  func (x *AppPlatformCloudFunctionResponse) GetAnnotationPassthrough() bool {
  1264  	if x != nil {
  1265  		return x.AnnotationPassthrough
  1266  	}
  1267  	return false
  1268  }
  1269  
  1270  func (x *AppPlatformCloudFunctionResponse) GetEvents() []*AppPlatformEventBody {
  1271  	if x != nil {
  1272  		return x.Events
  1273  	}
  1274  	return nil
  1275  }
  1276  
  1277  // Message of content of appPlatform event
  1278  type AppPlatformEventBody struct {
  1279  	state         protoimpl.MessageState
  1280  	sizeCache     protoimpl.SizeCache
  1281  	unknownFields protoimpl.UnknownFields
  1282  
  1283  	// Human readable string of the event like "There are more than 6 people in
  1284  	// the scene". or "Shelf is empty!".
  1285  	EventMessage string `protobuf:"bytes,1,opt,name=event_message,json=eventMessage,proto3" json:"event_message,omitempty"`
  1286  	// For the case of Pub/Sub, it will be stored in the message attributes.
  1287  	// ​​pubsub.proto
  1288  	Payload *structpb.Struct `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
  1289  	// User defined Event Id, used to classify event, within a delivery interval,
  1290  	// events from the same application instance with the same id will be
  1291  	// de-duplicated & only first one will be sent out. Empty event_id will be
  1292  	// treated as "".
  1293  	EventId string `protobuf:"bytes,3,opt,name=event_id,json=eventId,proto3" json:"event_id,omitempty"`
  1294  }
  1295  
  1296  func (x *AppPlatformEventBody) Reset() {
  1297  	*x = AppPlatformEventBody{}
  1298  	if protoimpl.UnsafeEnabled {
  1299  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[17]
  1300  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1301  		ms.StoreMessageInfo(mi)
  1302  	}
  1303  }
  1304  
  1305  func (x *AppPlatformEventBody) String() string {
  1306  	return protoimpl.X.MessageStringOf(x)
  1307  }
  1308  
  1309  func (*AppPlatformEventBody) ProtoMessage() {}
  1310  
  1311  func (x *AppPlatformEventBody) ProtoReflect() protoreflect.Message {
  1312  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[17]
  1313  	if protoimpl.UnsafeEnabled && x != nil {
  1314  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1315  		if ms.LoadMessageInfo() == nil {
  1316  			ms.StoreMessageInfo(mi)
  1317  		}
  1318  		return ms
  1319  	}
  1320  	return mi.MessageOf(x)
  1321  }
  1322  
  1323  // Deprecated: Use AppPlatformEventBody.ProtoReflect.Descriptor instead.
  1324  func (*AppPlatformEventBody) Descriptor() ([]byte, []int) {
  1325  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{17}
  1326  }
  1327  
  1328  func (x *AppPlatformEventBody) GetEventMessage() string {
  1329  	if x != nil {
  1330  		return x.EventMessage
  1331  	}
  1332  	return ""
  1333  }
  1334  
  1335  func (x *AppPlatformEventBody) GetPayload() *structpb.Struct {
  1336  	if x != nil {
  1337  		return x.Payload
  1338  	}
  1339  	return nil
  1340  }
  1341  
  1342  func (x *AppPlatformEventBody) GetEventId() string {
  1343  	if x != nil {
  1344  		return x.EventId
  1345  	}
  1346  	return ""
  1347  }
  1348  
  1349  // The entity info for annotations from person detection prediction result.
  1350  type PersonalProtectiveEquipmentDetectionOutput_PersonEntity struct {
  1351  	state         protoimpl.MessageState
  1352  	sizeCache     protoimpl.SizeCache
  1353  	unknownFields protoimpl.UnknownFields
  1354  
  1355  	// Entity id.
  1356  	PersonEntityId int64 `protobuf:"varint,1,opt,name=person_entity_id,json=personEntityId,proto3" json:"person_entity_id,omitempty"`
  1357  }
  1358  
  1359  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonEntity) Reset() {
  1360  	*x = PersonalProtectiveEquipmentDetectionOutput_PersonEntity{}
  1361  	if protoimpl.UnsafeEnabled {
  1362  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[18]
  1363  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1364  		ms.StoreMessageInfo(mi)
  1365  	}
  1366  }
  1367  
  1368  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonEntity) String() string {
  1369  	return protoimpl.X.MessageStringOf(x)
  1370  }
  1371  
  1372  func (*PersonalProtectiveEquipmentDetectionOutput_PersonEntity) ProtoMessage() {}
  1373  
  1374  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonEntity) ProtoReflect() protoreflect.Message {
  1375  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[18]
  1376  	if protoimpl.UnsafeEnabled && x != nil {
  1377  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1378  		if ms.LoadMessageInfo() == nil {
  1379  			ms.StoreMessageInfo(mi)
  1380  		}
  1381  		return ms
  1382  	}
  1383  	return mi.MessageOf(x)
  1384  }
  1385  
  1386  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_PersonEntity.ProtoReflect.Descriptor instead.
  1387  func (*PersonalProtectiveEquipmentDetectionOutput_PersonEntity) Descriptor() ([]byte, []int) {
  1388  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 0}
  1389  }
  1390  
  1391  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonEntity) GetPersonEntityId() int64 {
  1392  	if x != nil {
  1393  		return x.PersonEntityId
  1394  	}
  1395  	return 0
  1396  }
  1397  
  1398  // The entity info for annotations from PPE detection prediction result.
  1399  type PersonalProtectiveEquipmentDetectionOutput_PPEEntity struct {
  1400  	state         protoimpl.MessageState
  1401  	sizeCache     protoimpl.SizeCache
  1402  	unknownFields protoimpl.UnknownFields
  1403  
  1404  	// Label id.
  1405  	PpeLabelId int64 `protobuf:"varint,1,opt,name=ppe_label_id,json=ppeLabelId,proto3" json:"ppe_label_id,omitempty"`
  1406  	// Human readable string of the label (Examples: helmet, glove, mask).
  1407  	PpeLabelString string `protobuf:"bytes,2,opt,name=ppe_label_string,json=ppeLabelString,proto3" json:"ppe_label_string,omitempty"`
  1408  	// Human readable string of the super category label (Examples: head_cover,
  1409  	// hands_cover, face_cover).
  1410  	PpeSupercategoryLabelString string `protobuf:"bytes,3,opt,name=ppe_supercategory_label_string,json=ppeSupercategoryLabelString,proto3" json:"ppe_supercategory_label_string,omitempty"`
  1411  	// Entity id.
  1412  	PpeEntityId int64 `protobuf:"varint,4,opt,name=ppe_entity_id,json=ppeEntityId,proto3" json:"ppe_entity_id,omitempty"`
  1413  }
  1414  
  1415  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) Reset() {
  1416  	*x = PersonalProtectiveEquipmentDetectionOutput_PPEEntity{}
  1417  	if protoimpl.UnsafeEnabled {
  1418  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[19]
  1419  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1420  		ms.StoreMessageInfo(mi)
  1421  	}
  1422  }
  1423  
  1424  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) String() string {
  1425  	return protoimpl.X.MessageStringOf(x)
  1426  }
  1427  
  1428  func (*PersonalProtectiveEquipmentDetectionOutput_PPEEntity) ProtoMessage() {}
  1429  
  1430  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) ProtoReflect() protoreflect.Message {
  1431  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[19]
  1432  	if protoimpl.UnsafeEnabled && x != nil {
  1433  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1434  		if ms.LoadMessageInfo() == nil {
  1435  			ms.StoreMessageInfo(mi)
  1436  		}
  1437  		return ms
  1438  	}
  1439  	return mi.MessageOf(x)
  1440  }
  1441  
  1442  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_PPEEntity.ProtoReflect.Descriptor instead.
  1443  func (*PersonalProtectiveEquipmentDetectionOutput_PPEEntity) Descriptor() ([]byte, []int) {
  1444  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 1}
  1445  }
  1446  
  1447  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) GetPpeLabelId() int64 {
  1448  	if x != nil {
  1449  		return x.PpeLabelId
  1450  	}
  1451  	return 0
  1452  }
  1453  
  1454  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) GetPpeLabelString() string {
  1455  	if x != nil {
  1456  		return x.PpeLabelString
  1457  	}
  1458  	return ""
  1459  }
  1460  
  1461  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) GetPpeSupercategoryLabelString() string {
  1462  	if x != nil {
  1463  		return x.PpeSupercategoryLabelString
  1464  	}
  1465  	return ""
  1466  }
  1467  
  1468  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEEntity) GetPpeEntityId() int64 {
  1469  	if x != nil {
  1470  		return x.PpeEntityId
  1471  	}
  1472  	return 0
  1473  }
  1474  
  1475  // Bounding Box in the normalized coordinates.
  1476  type PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox struct {
  1477  	state         protoimpl.MessageState
  1478  	sizeCache     protoimpl.SizeCache
  1479  	unknownFields protoimpl.UnknownFields
  1480  
  1481  	// Min in x coordinate.
  1482  	Xmin float32 `protobuf:"fixed32,1,opt,name=xmin,proto3" json:"xmin,omitempty"`
  1483  	// Min in y coordinate.
  1484  	Ymin float32 `protobuf:"fixed32,2,opt,name=ymin,proto3" json:"ymin,omitempty"`
  1485  	// Width of the bounding box.
  1486  	Width float32 `protobuf:"fixed32,3,opt,name=width,proto3" json:"width,omitempty"`
  1487  	// Height of the bounding box.
  1488  	Height float32 `protobuf:"fixed32,4,opt,name=height,proto3" json:"height,omitempty"`
  1489  }
  1490  
  1491  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) Reset() {
  1492  	*x = PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox{}
  1493  	if protoimpl.UnsafeEnabled {
  1494  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[20]
  1495  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1496  		ms.StoreMessageInfo(mi)
  1497  	}
  1498  }
  1499  
  1500  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) String() string {
  1501  	return protoimpl.X.MessageStringOf(x)
  1502  }
  1503  
  1504  func (*PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) ProtoMessage() {}
  1505  
  1506  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) ProtoReflect() protoreflect.Message {
  1507  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[20]
  1508  	if protoimpl.UnsafeEnabled && x != nil {
  1509  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1510  		if ms.LoadMessageInfo() == nil {
  1511  			ms.StoreMessageInfo(mi)
  1512  		}
  1513  		return ms
  1514  	}
  1515  	return mi.MessageOf(x)
  1516  }
  1517  
  1518  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox.ProtoReflect.Descriptor instead.
  1519  func (*PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) Descriptor() ([]byte, []int) {
  1520  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 2}
  1521  }
  1522  
  1523  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) GetXmin() float32 {
  1524  	if x != nil {
  1525  		return x.Xmin
  1526  	}
  1527  	return 0
  1528  }
  1529  
  1530  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) GetYmin() float32 {
  1531  	if x != nil {
  1532  		return x.Ymin
  1533  	}
  1534  	return 0
  1535  }
  1536  
  1537  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) GetWidth() float32 {
  1538  	if x != nil {
  1539  		return x.Width
  1540  	}
  1541  	return 0
  1542  }
  1543  
  1544  func (x *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox) GetHeight() float32 {
  1545  	if x != nil {
  1546  		return x.Height
  1547  	}
  1548  	return 0
  1549  }
  1550  
  1551  // PersonIdentified box contains the location and the entity info of the
  1552  // person.
  1553  type PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox struct {
  1554  	state         protoimpl.MessageState
  1555  	sizeCache     protoimpl.SizeCache
  1556  	unknownFields protoimpl.UnknownFields
  1557  
  1558  	// An unique id for this box.
  1559  	BoxId int64 `protobuf:"varint,1,opt,name=box_id,json=boxId,proto3" json:"box_id,omitempty"`
  1560  	// Bounding Box in the normalized coordinates.
  1561  	NormalizedBoundingBox *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox `protobuf:"bytes,2,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
  1562  	// Confidence score associated with this box.
  1563  	ConfidenceScore float32 `protobuf:"fixed32,3,opt,name=confidence_score,json=confidenceScore,proto3" json:"confidence_score,omitempty"`
  1564  	// Person entity info.
  1565  	PersonEntity *PersonalProtectiveEquipmentDetectionOutput_PersonEntity `protobuf:"bytes,4,opt,name=person_entity,json=personEntity,proto3" json:"person_entity,omitempty"`
  1566  }
  1567  
  1568  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) Reset() {
  1569  	*x = PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox{}
  1570  	if protoimpl.UnsafeEnabled {
  1571  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[21]
  1572  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1573  		ms.StoreMessageInfo(mi)
  1574  	}
  1575  }
  1576  
  1577  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) String() string {
  1578  	return protoimpl.X.MessageStringOf(x)
  1579  }
  1580  
  1581  func (*PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) ProtoMessage() {}
  1582  
  1583  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) ProtoReflect() protoreflect.Message {
  1584  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[21]
  1585  	if protoimpl.UnsafeEnabled && x != nil {
  1586  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1587  		if ms.LoadMessageInfo() == nil {
  1588  			ms.StoreMessageInfo(mi)
  1589  		}
  1590  		return ms
  1591  	}
  1592  	return mi.MessageOf(x)
  1593  }
  1594  
  1595  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox.ProtoReflect.Descriptor instead.
  1596  func (*PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) Descriptor() ([]byte, []int) {
  1597  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 3}
  1598  }
  1599  
  1600  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) GetBoxId() int64 {
  1601  	if x != nil {
  1602  		return x.BoxId
  1603  	}
  1604  	return 0
  1605  }
  1606  
  1607  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) GetNormalizedBoundingBox() *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox {
  1608  	if x != nil {
  1609  		return x.NormalizedBoundingBox
  1610  	}
  1611  	return nil
  1612  }
  1613  
  1614  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) GetConfidenceScore() float32 {
  1615  	if x != nil {
  1616  		return x.ConfidenceScore
  1617  	}
  1618  	return 0
  1619  }
  1620  
  1621  func (x *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox) GetPersonEntity() *PersonalProtectiveEquipmentDetectionOutput_PersonEntity {
  1622  	if x != nil {
  1623  		return x.PersonEntity
  1624  	}
  1625  	return nil
  1626  }
  1627  
  1628  // PPEIdentified box contains the location and the entity info of the PPE.
  1629  type PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox struct {
  1630  	state         protoimpl.MessageState
  1631  	sizeCache     protoimpl.SizeCache
  1632  	unknownFields protoimpl.UnknownFields
  1633  
  1634  	// An unique id for this box.
  1635  	BoxId int64 `protobuf:"varint,1,opt,name=box_id,json=boxId,proto3" json:"box_id,omitempty"`
  1636  	// Bounding Box in the normalized coordinates.
  1637  	NormalizedBoundingBox *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox `protobuf:"bytes,2,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
  1638  	// Confidence score associated with this box.
  1639  	ConfidenceScore float32 `protobuf:"fixed32,3,opt,name=confidence_score,json=confidenceScore,proto3" json:"confidence_score,omitempty"`
  1640  	// PPE entity info.
  1641  	PpeEntity *PersonalProtectiveEquipmentDetectionOutput_PPEEntity `protobuf:"bytes,4,opt,name=ppe_entity,json=ppeEntity,proto3" json:"ppe_entity,omitempty"`
  1642  }
  1643  
  1644  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) Reset() {
  1645  	*x = PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox{}
  1646  	if protoimpl.UnsafeEnabled {
  1647  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[22]
  1648  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1649  		ms.StoreMessageInfo(mi)
  1650  	}
  1651  }
  1652  
  1653  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) String() string {
  1654  	return protoimpl.X.MessageStringOf(x)
  1655  }
  1656  
  1657  func (*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) ProtoMessage() {}
  1658  
  1659  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) ProtoReflect() protoreflect.Message {
  1660  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[22]
  1661  	if protoimpl.UnsafeEnabled && x != nil {
  1662  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1663  		if ms.LoadMessageInfo() == nil {
  1664  			ms.StoreMessageInfo(mi)
  1665  		}
  1666  		return ms
  1667  	}
  1668  	return mi.MessageOf(x)
  1669  }
  1670  
  1671  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox.ProtoReflect.Descriptor instead.
  1672  func (*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) Descriptor() ([]byte, []int) {
  1673  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 4}
  1674  }
  1675  
  1676  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) GetBoxId() int64 {
  1677  	if x != nil {
  1678  		return x.BoxId
  1679  	}
  1680  	return 0
  1681  }
  1682  
  1683  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) GetNormalizedBoundingBox() *PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox {
  1684  	if x != nil {
  1685  		return x.NormalizedBoundingBox
  1686  	}
  1687  	return nil
  1688  }
  1689  
  1690  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) GetConfidenceScore() float32 {
  1691  	if x != nil {
  1692  		return x.ConfidenceScore
  1693  	}
  1694  	return 0
  1695  }
  1696  
  1697  func (x *PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox) GetPpeEntity() *PersonalProtectiveEquipmentDetectionOutput_PPEEntity {
  1698  	if x != nil {
  1699  		return x.PpeEntity
  1700  	}
  1701  	return nil
  1702  }
  1703  
  1704  // Detected Person contains the detected person and their associated
  1705  // ppes and their protecting information.
  1706  type PersonalProtectiveEquipmentDetectionOutput_DetectedPerson struct {
  1707  	state         protoimpl.MessageState
  1708  	sizeCache     protoimpl.SizeCache
  1709  	unknownFields protoimpl.UnknownFields
  1710  
  1711  	// The id of detected person.
  1712  	PersonId int64 `protobuf:"varint,1,opt,name=person_id,json=personId,proto3" json:"person_id,omitempty"`
  1713  	// The info of detected person identified box.
  1714  	DetectedPersonIdentifiedBox *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox `protobuf:"bytes,2,opt,name=detected_person_identified_box,json=detectedPersonIdentifiedBox,proto3" json:"detected_person_identified_box,omitempty"`
  1715  	// The info of detected person associated ppe identified boxes.
  1716  	DetectedPpeIdentifiedBoxes []*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox `protobuf:"bytes,3,rep,name=detected_ppe_identified_boxes,json=detectedPpeIdentifiedBoxes,proto3" json:"detected_ppe_identified_boxes,omitempty"`
  1717  	// Coverage score for each body part.
  1718  	// Coverage score for face.
  1719  	FaceCoverageScore *float32 `protobuf:"fixed32,4,opt,name=face_coverage_score,json=faceCoverageScore,proto3,oneof" json:"face_coverage_score,omitempty"`
  1720  	// Coverage score for eyes.
  1721  	EyesCoverageScore *float32 `protobuf:"fixed32,5,opt,name=eyes_coverage_score,json=eyesCoverageScore,proto3,oneof" json:"eyes_coverage_score,omitempty"`
  1722  	// Coverage score for head.
  1723  	HeadCoverageScore *float32 `protobuf:"fixed32,6,opt,name=head_coverage_score,json=headCoverageScore,proto3,oneof" json:"head_coverage_score,omitempty"`
  1724  	// Coverage score for hands.
  1725  	HandsCoverageScore *float32 `protobuf:"fixed32,7,opt,name=hands_coverage_score,json=handsCoverageScore,proto3,oneof" json:"hands_coverage_score,omitempty"`
  1726  	// Coverage score for body.
  1727  	BodyCoverageScore *float32 `protobuf:"fixed32,8,opt,name=body_coverage_score,json=bodyCoverageScore,proto3,oneof" json:"body_coverage_score,omitempty"`
  1728  	// Coverage score for feet.
  1729  	FeetCoverageScore *float32 `protobuf:"fixed32,9,opt,name=feet_coverage_score,json=feetCoverageScore,proto3,oneof" json:"feet_coverage_score,omitempty"`
  1730  }
  1731  
  1732  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) Reset() {
  1733  	*x = PersonalProtectiveEquipmentDetectionOutput_DetectedPerson{}
  1734  	if protoimpl.UnsafeEnabled {
  1735  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[23]
  1736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1737  		ms.StoreMessageInfo(mi)
  1738  	}
  1739  }
  1740  
  1741  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) String() string {
  1742  	return protoimpl.X.MessageStringOf(x)
  1743  }
  1744  
  1745  func (*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) ProtoMessage() {}
  1746  
  1747  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) ProtoReflect() protoreflect.Message {
  1748  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[23]
  1749  	if protoimpl.UnsafeEnabled && x != nil {
  1750  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1751  		if ms.LoadMessageInfo() == nil {
  1752  			ms.StoreMessageInfo(mi)
  1753  		}
  1754  		return ms
  1755  	}
  1756  	return mi.MessageOf(x)
  1757  }
  1758  
  1759  // Deprecated: Use PersonalProtectiveEquipmentDetectionOutput_DetectedPerson.ProtoReflect.Descriptor instead.
  1760  func (*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) Descriptor() ([]byte, []int) {
  1761  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{0, 5}
  1762  }
  1763  
  1764  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetPersonId() int64 {
  1765  	if x != nil {
  1766  		return x.PersonId
  1767  	}
  1768  	return 0
  1769  }
  1770  
  1771  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetDetectedPersonIdentifiedBox() *PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox {
  1772  	if x != nil {
  1773  		return x.DetectedPersonIdentifiedBox
  1774  	}
  1775  	return nil
  1776  }
  1777  
  1778  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetDetectedPpeIdentifiedBoxes() []*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox {
  1779  	if x != nil {
  1780  		return x.DetectedPpeIdentifiedBoxes
  1781  	}
  1782  	return nil
  1783  }
  1784  
  1785  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetFaceCoverageScore() float32 {
  1786  	if x != nil && x.FaceCoverageScore != nil {
  1787  		return *x.FaceCoverageScore
  1788  	}
  1789  	return 0
  1790  }
  1791  
  1792  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetEyesCoverageScore() float32 {
  1793  	if x != nil && x.EyesCoverageScore != nil {
  1794  		return *x.EyesCoverageScore
  1795  	}
  1796  	return 0
  1797  }
  1798  
  1799  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetHeadCoverageScore() float32 {
  1800  	if x != nil && x.HeadCoverageScore != nil {
  1801  		return *x.HeadCoverageScore
  1802  	}
  1803  	return 0
  1804  }
  1805  
  1806  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetHandsCoverageScore() float32 {
  1807  	if x != nil && x.HandsCoverageScore != nil {
  1808  		return *x.HandsCoverageScore
  1809  	}
  1810  	return 0
  1811  }
  1812  
  1813  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetBodyCoverageScore() float32 {
  1814  	if x != nil && x.BodyCoverageScore != nil {
  1815  		return *x.BodyCoverageScore
  1816  	}
  1817  	return 0
  1818  }
  1819  
  1820  func (x *PersonalProtectiveEquipmentDetectionOutput_DetectedPerson) GetFeetCoverageScore() float32 {
  1821  	if x != nil && x.FeetCoverageScore != nil {
  1822  		return *x.FeetCoverageScore
  1823  	}
  1824  	return 0
  1825  }
  1826  
  1827  // The entity info for annotations from object detection prediction result.
  1828  type ObjectDetectionPredictionResult_Entity struct {
  1829  	state         protoimpl.MessageState
  1830  	sizeCache     protoimpl.SizeCache
  1831  	unknownFields protoimpl.UnknownFields
  1832  
  1833  	// Label id.
  1834  	LabelId int64 `protobuf:"varint,1,opt,name=label_id,json=labelId,proto3" json:"label_id,omitempty"`
  1835  	// Human readable string of the label.
  1836  	LabelString string `protobuf:"bytes,2,opt,name=label_string,json=labelString,proto3" json:"label_string,omitempty"`
  1837  }
  1838  
  1839  func (x *ObjectDetectionPredictionResult_Entity) Reset() {
  1840  	*x = ObjectDetectionPredictionResult_Entity{}
  1841  	if protoimpl.UnsafeEnabled {
  1842  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[24]
  1843  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1844  		ms.StoreMessageInfo(mi)
  1845  	}
  1846  }
  1847  
  1848  func (x *ObjectDetectionPredictionResult_Entity) String() string {
  1849  	return protoimpl.X.MessageStringOf(x)
  1850  }
  1851  
  1852  func (*ObjectDetectionPredictionResult_Entity) ProtoMessage() {}
  1853  
  1854  func (x *ObjectDetectionPredictionResult_Entity) ProtoReflect() protoreflect.Message {
  1855  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[24]
  1856  	if protoimpl.UnsafeEnabled && x != nil {
  1857  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1858  		if ms.LoadMessageInfo() == nil {
  1859  			ms.StoreMessageInfo(mi)
  1860  		}
  1861  		return ms
  1862  	}
  1863  	return mi.MessageOf(x)
  1864  }
  1865  
  1866  // Deprecated: Use ObjectDetectionPredictionResult_Entity.ProtoReflect.Descriptor instead.
  1867  func (*ObjectDetectionPredictionResult_Entity) Descriptor() ([]byte, []int) {
  1868  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{1, 0}
  1869  }
  1870  
  1871  func (x *ObjectDetectionPredictionResult_Entity) GetLabelId() int64 {
  1872  	if x != nil {
  1873  		return x.LabelId
  1874  	}
  1875  	return 0
  1876  }
  1877  
  1878  func (x *ObjectDetectionPredictionResult_Entity) GetLabelString() string {
  1879  	if x != nil {
  1880  		return x.LabelString
  1881  	}
  1882  	return ""
  1883  }
  1884  
  1885  // Identified box contains location and the entity of the object.
  1886  type ObjectDetectionPredictionResult_IdentifiedBox struct {
  1887  	state         protoimpl.MessageState
  1888  	sizeCache     protoimpl.SizeCache
  1889  	unknownFields protoimpl.UnknownFields
  1890  
  1891  	// An unique id for this box.
  1892  	BoxId int64 `protobuf:"varint,1,opt,name=box_id,json=boxId,proto3" json:"box_id,omitempty"`
  1893  	// Bounding Box in the normalized coordinates.
  1894  	NormalizedBoundingBox *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox `protobuf:"bytes,2,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
  1895  	// Confidence score associated with this box.
  1896  	ConfidenceScore float32 `protobuf:"fixed32,3,opt,name=confidence_score,json=confidenceScore,proto3" json:"confidence_score,omitempty"`
  1897  	// Entity of this box.
  1898  	Entity *ObjectDetectionPredictionResult_Entity `protobuf:"bytes,4,opt,name=entity,proto3" json:"entity,omitempty"`
  1899  }
  1900  
  1901  func (x *ObjectDetectionPredictionResult_IdentifiedBox) Reset() {
  1902  	*x = ObjectDetectionPredictionResult_IdentifiedBox{}
  1903  	if protoimpl.UnsafeEnabled {
  1904  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[25]
  1905  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1906  		ms.StoreMessageInfo(mi)
  1907  	}
  1908  }
  1909  
  1910  func (x *ObjectDetectionPredictionResult_IdentifiedBox) String() string {
  1911  	return protoimpl.X.MessageStringOf(x)
  1912  }
  1913  
  1914  func (*ObjectDetectionPredictionResult_IdentifiedBox) ProtoMessage() {}
  1915  
  1916  func (x *ObjectDetectionPredictionResult_IdentifiedBox) ProtoReflect() protoreflect.Message {
  1917  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[25]
  1918  	if protoimpl.UnsafeEnabled && x != nil {
  1919  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1920  		if ms.LoadMessageInfo() == nil {
  1921  			ms.StoreMessageInfo(mi)
  1922  		}
  1923  		return ms
  1924  	}
  1925  	return mi.MessageOf(x)
  1926  }
  1927  
  1928  // Deprecated: Use ObjectDetectionPredictionResult_IdentifiedBox.ProtoReflect.Descriptor instead.
  1929  func (*ObjectDetectionPredictionResult_IdentifiedBox) Descriptor() ([]byte, []int) {
  1930  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{1, 1}
  1931  }
  1932  
  1933  func (x *ObjectDetectionPredictionResult_IdentifiedBox) GetBoxId() int64 {
  1934  	if x != nil {
  1935  		return x.BoxId
  1936  	}
  1937  	return 0
  1938  }
  1939  
  1940  func (x *ObjectDetectionPredictionResult_IdentifiedBox) GetNormalizedBoundingBox() *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox {
  1941  	if x != nil {
  1942  		return x.NormalizedBoundingBox
  1943  	}
  1944  	return nil
  1945  }
  1946  
  1947  func (x *ObjectDetectionPredictionResult_IdentifiedBox) GetConfidenceScore() float32 {
  1948  	if x != nil {
  1949  		return x.ConfidenceScore
  1950  	}
  1951  	return 0
  1952  }
  1953  
  1954  func (x *ObjectDetectionPredictionResult_IdentifiedBox) GetEntity() *ObjectDetectionPredictionResult_Entity {
  1955  	if x != nil {
  1956  		return x.Entity
  1957  	}
  1958  	return nil
  1959  }
  1960  
  1961  // Bounding Box in the normalized coordinates.
  1962  type ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox struct {
  1963  	state         protoimpl.MessageState
  1964  	sizeCache     protoimpl.SizeCache
  1965  	unknownFields protoimpl.UnknownFields
  1966  
  1967  	// Min in x coordinate.
  1968  	Xmin float32 `protobuf:"fixed32,1,opt,name=xmin,proto3" json:"xmin,omitempty"`
  1969  	// Min in y coordinate.
  1970  	Ymin float32 `protobuf:"fixed32,2,opt,name=ymin,proto3" json:"ymin,omitempty"`
  1971  	// Width of the bounding box.
  1972  	Width float32 `protobuf:"fixed32,3,opt,name=width,proto3" json:"width,omitempty"`
  1973  	// Height of the bounding box.
  1974  	Height float32 `protobuf:"fixed32,4,opt,name=height,proto3" json:"height,omitempty"`
  1975  }
  1976  
  1977  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) Reset() {
  1978  	*x = ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox{}
  1979  	if protoimpl.UnsafeEnabled {
  1980  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[26]
  1981  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1982  		ms.StoreMessageInfo(mi)
  1983  	}
  1984  }
  1985  
  1986  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) String() string {
  1987  	return protoimpl.X.MessageStringOf(x)
  1988  }
  1989  
  1990  func (*ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) ProtoMessage() {}
  1991  
  1992  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) ProtoReflect() protoreflect.Message {
  1993  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[26]
  1994  	if protoimpl.UnsafeEnabled && x != nil {
  1995  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1996  		if ms.LoadMessageInfo() == nil {
  1997  			ms.StoreMessageInfo(mi)
  1998  		}
  1999  		return ms
  2000  	}
  2001  	return mi.MessageOf(x)
  2002  }
  2003  
  2004  // Deprecated: Use ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox.ProtoReflect.Descriptor instead.
  2005  func (*ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) Descriptor() ([]byte, []int) {
  2006  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{1, 1, 0}
  2007  }
  2008  
  2009  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetXmin() float32 {
  2010  	if x != nil {
  2011  		return x.Xmin
  2012  	}
  2013  	return 0
  2014  }
  2015  
  2016  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetYmin() float32 {
  2017  	if x != nil {
  2018  		return x.Ymin
  2019  	}
  2020  	return 0
  2021  }
  2022  
  2023  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetWidth() float32 {
  2024  	if x != nil {
  2025  		return x.Width
  2026  	}
  2027  	return 0
  2028  }
  2029  
  2030  func (x *ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetHeight() float32 {
  2031  	if x != nil {
  2032  		return x.Height
  2033  	}
  2034  	return 0
  2035  }
  2036  
  2037  // Each IdentifiedAction is one particular identification of an action
  2038  // specified with the AnnotationSpec id, display_name and the associated
  2039  // confidence score.
  2040  type VideoActionRecognitionPredictionResult_IdentifiedAction struct {
  2041  	state         protoimpl.MessageState
  2042  	sizeCache     protoimpl.SizeCache
  2043  	unknownFields protoimpl.UnknownFields
  2044  
  2045  	// The resource ID of the AnnotationSpec that had been identified.
  2046  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2047  	// The display name of the AnnotationSpec that had been identified.
  2048  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
  2049  	// The Model's confidence in correction of this identification, higher
  2050  	// value means higher confidence.
  2051  	Confidence float32 `protobuf:"fixed32,3,opt,name=confidence,proto3" json:"confidence,omitempty"`
  2052  }
  2053  
  2054  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) Reset() {
  2055  	*x = VideoActionRecognitionPredictionResult_IdentifiedAction{}
  2056  	if protoimpl.UnsafeEnabled {
  2057  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[27]
  2058  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2059  		ms.StoreMessageInfo(mi)
  2060  	}
  2061  }
  2062  
  2063  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) String() string {
  2064  	return protoimpl.X.MessageStringOf(x)
  2065  }
  2066  
  2067  func (*VideoActionRecognitionPredictionResult_IdentifiedAction) ProtoMessage() {}
  2068  
  2069  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) ProtoReflect() protoreflect.Message {
  2070  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[27]
  2071  	if protoimpl.UnsafeEnabled && x != nil {
  2072  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2073  		if ms.LoadMessageInfo() == nil {
  2074  			ms.StoreMessageInfo(mi)
  2075  		}
  2076  		return ms
  2077  	}
  2078  	return mi.MessageOf(x)
  2079  }
  2080  
  2081  // Deprecated: Use VideoActionRecognitionPredictionResult_IdentifiedAction.ProtoReflect.Descriptor instead.
  2082  func (*VideoActionRecognitionPredictionResult_IdentifiedAction) Descriptor() ([]byte, []int) {
  2083  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{5, 0}
  2084  }
  2085  
  2086  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) GetId() string {
  2087  	if x != nil {
  2088  		return x.Id
  2089  	}
  2090  	return ""
  2091  }
  2092  
  2093  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) GetDisplayName() string {
  2094  	if x != nil {
  2095  		return x.DisplayName
  2096  	}
  2097  	return ""
  2098  }
  2099  
  2100  func (x *VideoActionRecognitionPredictionResult_IdentifiedAction) GetConfidence() float32 {
  2101  	if x != nil {
  2102  		return x.Confidence
  2103  	}
  2104  	return 0
  2105  }
  2106  
  2107  // Boundingbox for detected object. I.e. the rectangle over the video frame
  2108  // pinpointing the found AnnotationSpec. The coordinates are relative to the
  2109  // frame size, and the point 0,0 is in the top left of the frame.
  2110  type VideoObjectTrackingPredictionResult_BoundingBox struct {
  2111  	state         protoimpl.MessageState
  2112  	sizeCache     protoimpl.SizeCache
  2113  	unknownFields protoimpl.UnknownFields
  2114  
  2115  	// The leftmost coordinate of the bounding box.
  2116  	XMin float32 `protobuf:"fixed32,1,opt,name=x_min,json=xMin,proto3" json:"x_min,omitempty"`
  2117  	// The rightmost coordinate of the bounding box.
  2118  	XMax float32 `protobuf:"fixed32,2,opt,name=x_max,json=xMax,proto3" json:"x_max,omitempty"`
  2119  	// The topmost coordinate of the bounding box.
  2120  	YMin float32 `protobuf:"fixed32,3,opt,name=y_min,json=yMin,proto3" json:"y_min,omitempty"`
  2121  	// The bottommost coordinate of the bounding box.
  2122  	YMax float32 `protobuf:"fixed32,4,opt,name=y_max,json=yMax,proto3" json:"y_max,omitempty"`
  2123  }
  2124  
  2125  func (x *VideoObjectTrackingPredictionResult_BoundingBox) Reset() {
  2126  	*x = VideoObjectTrackingPredictionResult_BoundingBox{}
  2127  	if protoimpl.UnsafeEnabled {
  2128  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[28]
  2129  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2130  		ms.StoreMessageInfo(mi)
  2131  	}
  2132  }
  2133  
  2134  func (x *VideoObjectTrackingPredictionResult_BoundingBox) String() string {
  2135  	return protoimpl.X.MessageStringOf(x)
  2136  }
  2137  
  2138  func (*VideoObjectTrackingPredictionResult_BoundingBox) ProtoMessage() {}
  2139  
  2140  func (x *VideoObjectTrackingPredictionResult_BoundingBox) ProtoReflect() protoreflect.Message {
  2141  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[28]
  2142  	if protoimpl.UnsafeEnabled && x != nil {
  2143  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2144  		if ms.LoadMessageInfo() == nil {
  2145  			ms.StoreMessageInfo(mi)
  2146  		}
  2147  		return ms
  2148  	}
  2149  	return mi.MessageOf(x)
  2150  }
  2151  
  2152  // Deprecated: Use VideoObjectTrackingPredictionResult_BoundingBox.ProtoReflect.Descriptor instead.
  2153  func (*VideoObjectTrackingPredictionResult_BoundingBox) Descriptor() ([]byte, []int) {
  2154  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{6, 0}
  2155  }
  2156  
  2157  func (x *VideoObjectTrackingPredictionResult_BoundingBox) GetXMin() float32 {
  2158  	if x != nil {
  2159  		return x.XMin
  2160  	}
  2161  	return 0
  2162  }
  2163  
  2164  func (x *VideoObjectTrackingPredictionResult_BoundingBox) GetXMax() float32 {
  2165  	if x != nil {
  2166  		return x.XMax
  2167  	}
  2168  	return 0
  2169  }
  2170  
  2171  func (x *VideoObjectTrackingPredictionResult_BoundingBox) GetYMin() float32 {
  2172  	if x != nil {
  2173  		return x.YMin
  2174  	}
  2175  	return 0
  2176  }
  2177  
  2178  func (x *VideoObjectTrackingPredictionResult_BoundingBox) GetYMax() float32 {
  2179  	if x != nil {
  2180  		return x.YMax
  2181  	}
  2182  	return 0
  2183  }
  2184  
  2185  // Each DetectedObject is one particular identification of an object
  2186  // specified with the AnnotationSpec id and display_name, the bounding box,
  2187  // the associated confidence score and the corresponding track_id.
  2188  type VideoObjectTrackingPredictionResult_DetectedObject struct {
  2189  	state         protoimpl.MessageState
  2190  	sizeCache     protoimpl.SizeCache
  2191  	unknownFields protoimpl.UnknownFields
  2192  
  2193  	// The resource ID of the AnnotationSpec that had been identified.
  2194  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2195  	// The display name of the AnnotationSpec that had been identified.
  2196  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
  2197  	// Boundingbox.
  2198  	BoundingBox *VideoObjectTrackingPredictionResult_BoundingBox `protobuf:"bytes,3,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
  2199  	// The Model's confidence in correction of this identification, higher
  2200  	// value means higher confidence.
  2201  	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
  2202  	// The same object may be identified on muitiple frames which are typical
  2203  	// adjacent. The set of frames where a particular object has been detected
  2204  	// form a track. This track_id can be used to trace down all frames for an
  2205  	// detected object.
  2206  	TrackId int64 `protobuf:"varint,5,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
  2207  }
  2208  
  2209  func (x *VideoObjectTrackingPredictionResult_DetectedObject) Reset() {
  2210  	*x = VideoObjectTrackingPredictionResult_DetectedObject{}
  2211  	if protoimpl.UnsafeEnabled {
  2212  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[29]
  2213  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2214  		ms.StoreMessageInfo(mi)
  2215  	}
  2216  }
  2217  
  2218  func (x *VideoObjectTrackingPredictionResult_DetectedObject) String() string {
  2219  	return protoimpl.X.MessageStringOf(x)
  2220  }
  2221  
  2222  func (*VideoObjectTrackingPredictionResult_DetectedObject) ProtoMessage() {}
  2223  
  2224  func (x *VideoObjectTrackingPredictionResult_DetectedObject) ProtoReflect() protoreflect.Message {
  2225  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[29]
  2226  	if protoimpl.UnsafeEnabled && x != nil {
  2227  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2228  		if ms.LoadMessageInfo() == nil {
  2229  			ms.StoreMessageInfo(mi)
  2230  		}
  2231  		return ms
  2232  	}
  2233  	return mi.MessageOf(x)
  2234  }
  2235  
  2236  // Deprecated: Use VideoObjectTrackingPredictionResult_DetectedObject.ProtoReflect.Descriptor instead.
  2237  func (*VideoObjectTrackingPredictionResult_DetectedObject) Descriptor() ([]byte, []int) {
  2238  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{6, 1}
  2239  }
  2240  
  2241  func (x *VideoObjectTrackingPredictionResult_DetectedObject) GetId() string {
  2242  	if x != nil {
  2243  		return x.Id
  2244  	}
  2245  	return ""
  2246  }
  2247  
  2248  func (x *VideoObjectTrackingPredictionResult_DetectedObject) GetDisplayName() string {
  2249  	if x != nil {
  2250  		return x.DisplayName
  2251  	}
  2252  	return ""
  2253  }
  2254  
  2255  func (x *VideoObjectTrackingPredictionResult_DetectedObject) GetBoundingBox() *VideoObjectTrackingPredictionResult_BoundingBox {
  2256  	if x != nil {
  2257  		return x.BoundingBox
  2258  	}
  2259  	return nil
  2260  }
  2261  
  2262  func (x *VideoObjectTrackingPredictionResult_DetectedObject) GetConfidence() float32 {
  2263  	if x != nil {
  2264  		return x.Confidence
  2265  	}
  2266  	return 0
  2267  }
  2268  
  2269  func (x *VideoObjectTrackingPredictionResult_DetectedObject) GetTrackId() int64 {
  2270  	if x != nil {
  2271  		return x.TrackId
  2272  	}
  2273  	return 0
  2274  }
  2275  
  2276  // Each IdentifiedClassification is one particular identification of an
  2277  // classification specified with the AnnotationSpec id and display_name,
  2278  // and the associated confidence score.
  2279  type VideoClassificationPredictionResult_IdentifiedClassification struct {
  2280  	state         protoimpl.MessageState
  2281  	sizeCache     protoimpl.SizeCache
  2282  	unknownFields protoimpl.UnknownFields
  2283  
  2284  	// The resource ID of the AnnotationSpec that had been identified.
  2285  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2286  	// The display name of the AnnotationSpec that had been identified.
  2287  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
  2288  	// The Model's confidence in correction of this identification, higher
  2289  	// value means higher confidence.
  2290  	Confidence float32 `protobuf:"fixed32,3,opt,name=confidence,proto3" json:"confidence,omitempty"`
  2291  }
  2292  
  2293  func (x *VideoClassificationPredictionResult_IdentifiedClassification) Reset() {
  2294  	*x = VideoClassificationPredictionResult_IdentifiedClassification{}
  2295  	if protoimpl.UnsafeEnabled {
  2296  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[30]
  2297  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2298  		ms.StoreMessageInfo(mi)
  2299  	}
  2300  }
  2301  
  2302  func (x *VideoClassificationPredictionResult_IdentifiedClassification) String() string {
  2303  	return protoimpl.X.MessageStringOf(x)
  2304  }
  2305  
  2306  func (*VideoClassificationPredictionResult_IdentifiedClassification) ProtoMessage() {}
  2307  
  2308  func (x *VideoClassificationPredictionResult_IdentifiedClassification) ProtoReflect() protoreflect.Message {
  2309  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[30]
  2310  	if protoimpl.UnsafeEnabled && x != nil {
  2311  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2312  		if ms.LoadMessageInfo() == nil {
  2313  			ms.StoreMessageInfo(mi)
  2314  		}
  2315  		return ms
  2316  	}
  2317  	return mi.MessageOf(x)
  2318  }
  2319  
  2320  // Deprecated: Use VideoClassificationPredictionResult_IdentifiedClassification.ProtoReflect.Descriptor instead.
  2321  func (*VideoClassificationPredictionResult_IdentifiedClassification) Descriptor() ([]byte, []int) {
  2322  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{7, 0}
  2323  }
  2324  
  2325  func (x *VideoClassificationPredictionResult_IdentifiedClassification) GetId() string {
  2326  	if x != nil {
  2327  		return x.Id
  2328  	}
  2329  	return ""
  2330  }
  2331  
  2332  func (x *VideoClassificationPredictionResult_IdentifiedClassification) GetDisplayName() string {
  2333  	if x != nil {
  2334  		return x.DisplayName
  2335  	}
  2336  	return ""
  2337  }
  2338  
  2339  func (x *VideoClassificationPredictionResult_IdentifiedClassification) GetConfidence() float32 {
  2340  	if x != nil {
  2341  		return x.Confidence
  2342  	}
  2343  	return 0
  2344  }
  2345  
  2346  // The entity info for annotations from occupancy counting operator.
  2347  type OccupancyCountingPredictionResult_Entity struct {
  2348  	state         protoimpl.MessageState
  2349  	sizeCache     protoimpl.SizeCache
  2350  	unknownFields protoimpl.UnknownFields
  2351  
  2352  	// Label id.
  2353  	LabelId int64 `protobuf:"varint,1,opt,name=label_id,json=labelId,proto3" json:"label_id,omitempty"`
  2354  	// Human readable string of the label.
  2355  	LabelString string `protobuf:"bytes,2,opt,name=label_string,json=labelString,proto3" json:"label_string,omitempty"`
  2356  }
  2357  
  2358  func (x *OccupancyCountingPredictionResult_Entity) Reset() {
  2359  	*x = OccupancyCountingPredictionResult_Entity{}
  2360  	if protoimpl.UnsafeEnabled {
  2361  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[31]
  2362  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2363  		ms.StoreMessageInfo(mi)
  2364  	}
  2365  }
  2366  
  2367  func (x *OccupancyCountingPredictionResult_Entity) String() string {
  2368  	return protoimpl.X.MessageStringOf(x)
  2369  }
  2370  
  2371  func (*OccupancyCountingPredictionResult_Entity) ProtoMessage() {}
  2372  
  2373  func (x *OccupancyCountingPredictionResult_Entity) ProtoReflect() protoreflect.Message {
  2374  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[31]
  2375  	if protoimpl.UnsafeEnabled && x != nil {
  2376  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2377  		if ms.LoadMessageInfo() == nil {
  2378  			ms.StoreMessageInfo(mi)
  2379  		}
  2380  		return ms
  2381  	}
  2382  	return mi.MessageOf(x)
  2383  }
  2384  
  2385  // Deprecated: Use OccupancyCountingPredictionResult_Entity.ProtoReflect.Descriptor instead.
  2386  func (*OccupancyCountingPredictionResult_Entity) Descriptor() ([]byte, []int) {
  2387  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 0}
  2388  }
  2389  
  2390  func (x *OccupancyCountingPredictionResult_Entity) GetLabelId() int64 {
  2391  	if x != nil {
  2392  		return x.LabelId
  2393  	}
  2394  	return 0
  2395  }
  2396  
  2397  func (x *OccupancyCountingPredictionResult_Entity) GetLabelString() string {
  2398  	if x != nil {
  2399  		return x.LabelString
  2400  	}
  2401  	return ""
  2402  }
  2403  
  2404  // Identified box contains location and the entity of the object.
  2405  type OccupancyCountingPredictionResult_IdentifiedBox struct {
  2406  	state         protoimpl.MessageState
  2407  	sizeCache     protoimpl.SizeCache
  2408  	unknownFields protoimpl.UnknownFields
  2409  
  2410  	// An unique id for this box.
  2411  	BoxId int64 `protobuf:"varint,1,opt,name=box_id,json=boxId,proto3" json:"box_id,omitempty"`
  2412  	// Bounding Box in the normalized coordinates.
  2413  	NormalizedBoundingBox *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox `protobuf:"bytes,2,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
  2414  	// Confidence score associated with this box.
  2415  	Score float32 `protobuf:"fixed32,3,opt,name=score,proto3" json:"score,omitempty"`
  2416  	// Entity of this box.
  2417  	Entity *OccupancyCountingPredictionResult_Entity `protobuf:"bytes,4,opt,name=entity,proto3" json:"entity,omitempty"`
  2418  	// An unique id to identify a track. It should be consistent across frames.
  2419  	// It only exists if tracking is enabled.
  2420  	TrackId int64 `protobuf:"varint,5,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
  2421  }
  2422  
  2423  func (x *OccupancyCountingPredictionResult_IdentifiedBox) Reset() {
  2424  	*x = OccupancyCountingPredictionResult_IdentifiedBox{}
  2425  	if protoimpl.UnsafeEnabled {
  2426  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[32]
  2427  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2428  		ms.StoreMessageInfo(mi)
  2429  	}
  2430  }
  2431  
  2432  func (x *OccupancyCountingPredictionResult_IdentifiedBox) String() string {
  2433  	return protoimpl.X.MessageStringOf(x)
  2434  }
  2435  
  2436  func (*OccupancyCountingPredictionResult_IdentifiedBox) ProtoMessage() {}
  2437  
  2438  func (x *OccupancyCountingPredictionResult_IdentifiedBox) ProtoReflect() protoreflect.Message {
  2439  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[32]
  2440  	if protoimpl.UnsafeEnabled && x != nil {
  2441  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2442  		if ms.LoadMessageInfo() == nil {
  2443  			ms.StoreMessageInfo(mi)
  2444  		}
  2445  		return ms
  2446  	}
  2447  	return mi.MessageOf(x)
  2448  }
  2449  
  2450  // Deprecated: Use OccupancyCountingPredictionResult_IdentifiedBox.ProtoReflect.Descriptor instead.
  2451  func (*OccupancyCountingPredictionResult_IdentifiedBox) Descriptor() ([]byte, []int) {
  2452  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 1}
  2453  }
  2454  
  2455  func (x *OccupancyCountingPredictionResult_IdentifiedBox) GetBoxId() int64 {
  2456  	if x != nil {
  2457  		return x.BoxId
  2458  	}
  2459  	return 0
  2460  }
  2461  
  2462  func (x *OccupancyCountingPredictionResult_IdentifiedBox) GetNormalizedBoundingBox() *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox {
  2463  	if x != nil {
  2464  		return x.NormalizedBoundingBox
  2465  	}
  2466  	return nil
  2467  }
  2468  
  2469  func (x *OccupancyCountingPredictionResult_IdentifiedBox) GetScore() float32 {
  2470  	if x != nil {
  2471  		return x.Score
  2472  	}
  2473  	return 0
  2474  }
  2475  
  2476  func (x *OccupancyCountingPredictionResult_IdentifiedBox) GetEntity() *OccupancyCountingPredictionResult_Entity {
  2477  	if x != nil {
  2478  		return x.Entity
  2479  	}
  2480  	return nil
  2481  }
  2482  
  2483  func (x *OccupancyCountingPredictionResult_IdentifiedBox) GetTrackId() int64 {
  2484  	if x != nil {
  2485  		return x.TrackId
  2486  	}
  2487  	return 0
  2488  }
  2489  
  2490  // The statistics info for annotations from occupancy counting operator.
  2491  type OccupancyCountingPredictionResult_Stats struct {
  2492  	state         protoimpl.MessageState
  2493  	sizeCache     protoimpl.SizeCache
  2494  	unknownFields protoimpl.UnknownFields
  2495  
  2496  	// Counts of the full frame.
  2497  	FullFrameCount []*OccupancyCountingPredictionResult_Stats_ObjectCount `protobuf:"bytes,1,rep,name=full_frame_count,json=fullFrameCount,proto3" json:"full_frame_count,omitempty"`
  2498  	// Crossing line counts.
  2499  	CrossingLineCounts []*OccupancyCountingPredictionResult_Stats_CrossingLineCount `protobuf:"bytes,2,rep,name=crossing_line_counts,json=crossingLineCounts,proto3" json:"crossing_line_counts,omitempty"`
  2500  	// Active zone counts.
  2501  	ActiveZoneCounts []*OccupancyCountingPredictionResult_Stats_ActiveZoneCount `protobuf:"bytes,3,rep,name=active_zone_counts,json=activeZoneCounts,proto3" json:"active_zone_counts,omitempty"`
  2502  }
  2503  
  2504  func (x *OccupancyCountingPredictionResult_Stats) Reset() {
  2505  	*x = OccupancyCountingPredictionResult_Stats{}
  2506  	if protoimpl.UnsafeEnabled {
  2507  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[33]
  2508  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2509  		ms.StoreMessageInfo(mi)
  2510  	}
  2511  }
  2512  
  2513  func (x *OccupancyCountingPredictionResult_Stats) String() string {
  2514  	return protoimpl.X.MessageStringOf(x)
  2515  }
  2516  
  2517  func (*OccupancyCountingPredictionResult_Stats) ProtoMessage() {}
  2518  
  2519  func (x *OccupancyCountingPredictionResult_Stats) ProtoReflect() protoreflect.Message {
  2520  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[33]
  2521  	if protoimpl.UnsafeEnabled && x != nil {
  2522  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2523  		if ms.LoadMessageInfo() == nil {
  2524  			ms.StoreMessageInfo(mi)
  2525  		}
  2526  		return ms
  2527  	}
  2528  	return mi.MessageOf(x)
  2529  }
  2530  
  2531  // Deprecated: Use OccupancyCountingPredictionResult_Stats.ProtoReflect.Descriptor instead.
  2532  func (*OccupancyCountingPredictionResult_Stats) Descriptor() ([]byte, []int) {
  2533  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 2}
  2534  }
  2535  
  2536  func (x *OccupancyCountingPredictionResult_Stats) GetFullFrameCount() []*OccupancyCountingPredictionResult_Stats_ObjectCount {
  2537  	if x != nil {
  2538  		return x.FullFrameCount
  2539  	}
  2540  	return nil
  2541  }
  2542  
  2543  func (x *OccupancyCountingPredictionResult_Stats) GetCrossingLineCounts() []*OccupancyCountingPredictionResult_Stats_CrossingLineCount {
  2544  	if x != nil {
  2545  		return x.CrossingLineCounts
  2546  	}
  2547  	return nil
  2548  }
  2549  
  2550  func (x *OccupancyCountingPredictionResult_Stats) GetActiveZoneCounts() []*OccupancyCountingPredictionResult_Stats_ActiveZoneCount {
  2551  	if x != nil {
  2552  		return x.ActiveZoneCounts
  2553  	}
  2554  	return nil
  2555  }
  2556  
  2557  // The track info for annotations from occupancy counting operator.
  2558  type OccupancyCountingPredictionResult_TrackInfo struct {
  2559  	state         protoimpl.MessageState
  2560  	sizeCache     protoimpl.SizeCache
  2561  	unknownFields protoimpl.UnknownFields
  2562  
  2563  	// An unique id to identify a track. It should be consistent across frames.
  2564  	TrackId string `protobuf:"bytes,1,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
  2565  	// Start timestamp of this track.
  2566  	StartTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  2567  }
  2568  
  2569  func (x *OccupancyCountingPredictionResult_TrackInfo) Reset() {
  2570  	*x = OccupancyCountingPredictionResult_TrackInfo{}
  2571  	if protoimpl.UnsafeEnabled {
  2572  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[34]
  2573  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2574  		ms.StoreMessageInfo(mi)
  2575  	}
  2576  }
  2577  
  2578  func (x *OccupancyCountingPredictionResult_TrackInfo) String() string {
  2579  	return protoimpl.X.MessageStringOf(x)
  2580  }
  2581  
  2582  func (*OccupancyCountingPredictionResult_TrackInfo) ProtoMessage() {}
  2583  
  2584  func (x *OccupancyCountingPredictionResult_TrackInfo) ProtoReflect() protoreflect.Message {
  2585  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[34]
  2586  	if protoimpl.UnsafeEnabled && x != nil {
  2587  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2588  		if ms.LoadMessageInfo() == nil {
  2589  			ms.StoreMessageInfo(mi)
  2590  		}
  2591  		return ms
  2592  	}
  2593  	return mi.MessageOf(x)
  2594  }
  2595  
  2596  // Deprecated: Use OccupancyCountingPredictionResult_TrackInfo.ProtoReflect.Descriptor instead.
  2597  func (*OccupancyCountingPredictionResult_TrackInfo) Descriptor() ([]byte, []int) {
  2598  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 3}
  2599  }
  2600  
  2601  func (x *OccupancyCountingPredictionResult_TrackInfo) GetTrackId() string {
  2602  	if x != nil {
  2603  		return x.TrackId
  2604  	}
  2605  	return ""
  2606  }
  2607  
  2608  func (x *OccupancyCountingPredictionResult_TrackInfo) GetStartTime() *timestamppb.Timestamp {
  2609  	if x != nil {
  2610  		return x.StartTime
  2611  	}
  2612  	return nil
  2613  }
  2614  
  2615  // The dwell time info for annotations from occupancy counting operator.
  2616  type OccupancyCountingPredictionResult_DwellTimeInfo struct {
  2617  	state         protoimpl.MessageState
  2618  	sizeCache     protoimpl.SizeCache
  2619  	unknownFields protoimpl.UnknownFields
  2620  
  2621  	// An unique id to identify a track. It should be consistent across frames.
  2622  	TrackId string `protobuf:"bytes,1,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
  2623  	// The unique id for the zone in which the object is dwelling/waiting.
  2624  	ZoneId string `protobuf:"bytes,2,opt,name=zone_id,json=zoneId,proto3" json:"zone_id,omitempty"`
  2625  	// The beginning time when a dwelling object has been identified in a zone.
  2626  	DwellStartTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=dwell_start_time,json=dwellStartTime,proto3" json:"dwell_start_time,omitempty"`
  2627  	// The end time when a dwelling object has exited in a zone.
  2628  	DwellEndTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=dwell_end_time,json=dwellEndTime,proto3" json:"dwell_end_time,omitempty"`
  2629  }
  2630  
  2631  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) Reset() {
  2632  	*x = OccupancyCountingPredictionResult_DwellTimeInfo{}
  2633  	if protoimpl.UnsafeEnabled {
  2634  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[35]
  2635  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2636  		ms.StoreMessageInfo(mi)
  2637  	}
  2638  }
  2639  
  2640  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) String() string {
  2641  	return protoimpl.X.MessageStringOf(x)
  2642  }
  2643  
  2644  func (*OccupancyCountingPredictionResult_DwellTimeInfo) ProtoMessage() {}
  2645  
  2646  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) ProtoReflect() protoreflect.Message {
  2647  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[35]
  2648  	if protoimpl.UnsafeEnabled && x != nil {
  2649  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2650  		if ms.LoadMessageInfo() == nil {
  2651  			ms.StoreMessageInfo(mi)
  2652  		}
  2653  		return ms
  2654  	}
  2655  	return mi.MessageOf(x)
  2656  }
  2657  
  2658  // Deprecated: Use OccupancyCountingPredictionResult_DwellTimeInfo.ProtoReflect.Descriptor instead.
  2659  func (*OccupancyCountingPredictionResult_DwellTimeInfo) Descriptor() ([]byte, []int) {
  2660  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 4}
  2661  }
  2662  
  2663  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) GetTrackId() string {
  2664  	if x != nil {
  2665  		return x.TrackId
  2666  	}
  2667  	return ""
  2668  }
  2669  
  2670  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) GetZoneId() string {
  2671  	if x != nil {
  2672  		return x.ZoneId
  2673  	}
  2674  	return ""
  2675  }
  2676  
  2677  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) GetDwellStartTime() *timestamppb.Timestamp {
  2678  	if x != nil {
  2679  		return x.DwellStartTime
  2680  	}
  2681  	return nil
  2682  }
  2683  
  2684  func (x *OccupancyCountingPredictionResult_DwellTimeInfo) GetDwellEndTime() *timestamppb.Timestamp {
  2685  	if x != nil {
  2686  		return x.DwellEndTime
  2687  	}
  2688  	return nil
  2689  }
  2690  
  2691  // Bounding Box in the normalized coordinates.
  2692  type OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox struct {
  2693  	state         protoimpl.MessageState
  2694  	sizeCache     protoimpl.SizeCache
  2695  	unknownFields protoimpl.UnknownFields
  2696  
  2697  	// Min in x coordinate.
  2698  	Xmin float32 `protobuf:"fixed32,1,opt,name=xmin,proto3" json:"xmin,omitempty"`
  2699  	// Min in y coordinate.
  2700  	Ymin float32 `protobuf:"fixed32,2,opt,name=ymin,proto3" json:"ymin,omitempty"`
  2701  	// Width of the bounding box.
  2702  	Width float32 `protobuf:"fixed32,3,opt,name=width,proto3" json:"width,omitempty"`
  2703  	// Height of the bounding box.
  2704  	Height float32 `protobuf:"fixed32,4,opt,name=height,proto3" json:"height,omitempty"`
  2705  }
  2706  
  2707  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) Reset() {
  2708  	*x = OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox{}
  2709  	if protoimpl.UnsafeEnabled {
  2710  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[36]
  2711  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2712  		ms.StoreMessageInfo(mi)
  2713  	}
  2714  }
  2715  
  2716  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) String() string {
  2717  	return protoimpl.X.MessageStringOf(x)
  2718  }
  2719  
  2720  func (*OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) ProtoMessage() {}
  2721  
  2722  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) ProtoReflect() protoreflect.Message {
  2723  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[36]
  2724  	if protoimpl.UnsafeEnabled && x != nil {
  2725  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2726  		if ms.LoadMessageInfo() == nil {
  2727  			ms.StoreMessageInfo(mi)
  2728  		}
  2729  		return ms
  2730  	}
  2731  	return mi.MessageOf(x)
  2732  }
  2733  
  2734  // Deprecated: Use OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox.ProtoReflect.Descriptor instead.
  2735  func (*OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) Descriptor() ([]byte, []int) {
  2736  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 1, 0}
  2737  }
  2738  
  2739  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetXmin() float32 {
  2740  	if x != nil {
  2741  		return x.Xmin
  2742  	}
  2743  	return 0
  2744  }
  2745  
  2746  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetYmin() float32 {
  2747  	if x != nil {
  2748  		return x.Ymin
  2749  	}
  2750  	return 0
  2751  }
  2752  
  2753  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetWidth() float32 {
  2754  	if x != nil {
  2755  		return x.Width
  2756  	}
  2757  	return 0
  2758  }
  2759  
  2760  func (x *OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox) GetHeight() float32 {
  2761  	if x != nil {
  2762  		return x.Height
  2763  	}
  2764  	return 0
  2765  }
  2766  
  2767  // The object info and instant count for annotations from occupancy counting
  2768  // operator.
  2769  type OccupancyCountingPredictionResult_Stats_ObjectCount struct {
  2770  	state         protoimpl.MessageState
  2771  	sizeCache     protoimpl.SizeCache
  2772  	unknownFields protoimpl.UnknownFields
  2773  
  2774  	// Entity of this object.
  2775  	Entity *OccupancyCountingPredictionResult_Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
  2776  	// Count of the object.
  2777  	Count int32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
  2778  }
  2779  
  2780  func (x *OccupancyCountingPredictionResult_Stats_ObjectCount) Reset() {
  2781  	*x = OccupancyCountingPredictionResult_Stats_ObjectCount{}
  2782  	if protoimpl.UnsafeEnabled {
  2783  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[37]
  2784  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2785  		ms.StoreMessageInfo(mi)
  2786  	}
  2787  }
  2788  
  2789  func (x *OccupancyCountingPredictionResult_Stats_ObjectCount) String() string {
  2790  	return protoimpl.X.MessageStringOf(x)
  2791  }
  2792  
  2793  func (*OccupancyCountingPredictionResult_Stats_ObjectCount) ProtoMessage() {}
  2794  
  2795  func (x *OccupancyCountingPredictionResult_Stats_ObjectCount) ProtoReflect() protoreflect.Message {
  2796  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[37]
  2797  	if protoimpl.UnsafeEnabled && x != nil {
  2798  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2799  		if ms.LoadMessageInfo() == nil {
  2800  			ms.StoreMessageInfo(mi)
  2801  		}
  2802  		return ms
  2803  	}
  2804  	return mi.MessageOf(x)
  2805  }
  2806  
  2807  // Deprecated: Use OccupancyCountingPredictionResult_Stats_ObjectCount.ProtoReflect.Descriptor instead.
  2808  func (*OccupancyCountingPredictionResult_Stats_ObjectCount) Descriptor() ([]byte, []int) {
  2809  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 2, 0}
  2810  }
  2811  
  2812  func (x *OccupancyCountingPredictionResult_Stats_ObjectCount) GetEntity() *OccupancyCountingPredictionResult_Entity {
  2813  	if x != nil {
  2814  		return x.Entity
  2815  	}
  2816  	return nil
  2817  }
  2818  
  2819  func (x *OccupancyCountingPredictionResult_Stats_ObjectCount) GetCount() int32 {
  2820  	if x != nil {
  2821  		return x.Count
  2822  	}
  2823  	return 0
  2824  }
  2825  
  2826  // The object info and accumulated count for annotations from occupancy
  2827  // counting operator.
  2828  type OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount struct {
  2829  	state         protoimpl.MessageState
  2830  	sizeCache     protoimpl.SizeCache
  2831  	unknownFields protoimpl.UnknownFields
  2832  
  2833  	// The start time of the accumulated count.
  2834  	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  2835  	// The object count for the accumulated count.
  2836  	ObjectCount *OccupancyCountingPredictionResult_Stats_ObjectCount `protobuf:"bytes,2,opt,name=object_count,json=objectCount,proto3" json:"object_count,omitempty"`
  2837  }
  2838  
  2839  func (x *OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) Reset() {
  2840  	*x = OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount{}
  2841  	if protoimpl.UnsafeEnabled {
  2842  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[38]
  2843  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2844  		ms.StoreMessageInfo(mi)
  2845  	}
  2846  }
  2847  
  2848  func (x *OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) String() string {
  2849  	return protoimpl.X.MessageStringOf(x)
  2850  }
  2851  
  2852  func (*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) ProtoMessage() {}
  2853  
  2854  func (x *OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) ProtoReflect() protoreflect.Message {
  2855  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[38]
  2856  	if protoimpl.UnsafeEnabled && x != nil {
  2857  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2858  		if ms.LoadMessageInfo() == nil {
  2859  			ms.StoreMessageInfo(mi)
  2860  		}
  2861  		return ms
  2862  	}
  2863  	return mi.MessageOf(x)
  2864  }
  2865  
  2866  // Deprecated: Use OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount.ProtoReflect.Descriptor instead.
  2867  func (*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) Descriptor() ([]byte, []int) {
  2868  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 2, 1}
  2869  }
  2870  
  2871  func (x *OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) GetStartTime() *timestamppb.Timestamp {
  2872  	if x != nil {
  2873  		return x.StartTime
  2874  	}
  2875  	return nil
  2876  }
  2877  
  2878  func (x *OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount) GetObjectCount() *OccupancyCountingPredictionResult_Stats_ObjectCount {
  2879  	if x != nil {
  2880  		return x.ObjectCount
  2881  	}
  2882  	return nil
  2883  }
  2884  
  2885  // Message for Crossing line count.
  2886  type OccupancyCountingPredictionResult_Stats_CrossingLineCount struct {
  2887  	state         protoimpl.MessageState
  2888  	sizeCache     protoimpl.SizeCache
  2889  	unknownFields protoimpl.UnknownFields
  2890  
  2891  	// Line annotation from the user.
  2892  	Annotation *StreamAnnotation `protobuf:"bytes,1,opt,name=annotation,proto3" json:"annotation,omitempty"`
  2893  	// The direction that follows the right hand rule.
  2894  	PositiveDirectionCounts []*OccupancyCountingPredictionResult_Stats_ObjectCount `protobuf:"bytes,2,rep,name=positive_direction_counts,json=positiveDirectionCounts,proto3" json:"positive_direction_counts,omitempty"`
  2895  	// The direction that is opposite to the right hand rule.
  2896  	NegativeDirectionCounts []*OccupancyCountingPredictionResult_Stats_ObjectCount `protobuf:"bytes,3,rep,name=negative_direction_counts,json=negativeDirectionCounts,proto3" json:"negative_direction_counts,omitempty"`
  2897  	// The accumulated positive count.
  2898  	AccumulatedPositiveDirectionCounts []*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount `protobuf:"bytes,4,rep,name=accumulated_positive_direction_counts,json=accumulatedPositiveDirectionCounts,proto3" json:"accumulated_positive_direction_counts,omitempty"`
  2899  	// The accumulated negative count.
  2900  	AccumulatedNegativeDirectionCounts []*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount `protobuf:"bytes,5,rep,name=accumulated_negative_direction_counts,json=accumulatedNegativeDirectionCounts,proto3" json:"accumulated_negative_direction_counts,omitempty"`
  2901  }
  2902  
  2903  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) Reset() {
  2904  	*x = OccupancyCountingPredictionResult_Stats_CrossingLineCount{}
  2905  	if protoimpl.UnsafeEnabled {
  2906  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[39]
  2907  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2908  		ms.StoreMessageInfo(mi)
  2909  	}
  2910  }
  2911  
  2912  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) String() string {
  2913  	return protoimpl.X.MessageStringOf(x)
  2914  }
  2915  
  2916  func (*OccupancyCountingPredictionResult_Stats_CrossingLineCount) ProtoMessage() {}
  2917  
  2918  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) ProtoReflect() protoreflect.Message {
  2919  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[39]
  2920  	if protoimpl.UnsafeEnabled && x != nil {
  2921  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2922  		if ms.LoadMessageInfo() == nil {
  2923  			ms.StoreMessageInfo(mi)
  2924  		}
  2925  		return ms
  2926  	}
  2927  	return mi.MessageOf(x)
  2928  }
  2929  
  2930  // Deprecated: Use OccupancyCountingPredictionResult_Stats_CrossingLineCount.ProtoReflect.Descriptor instead.
  2931  func (*OccupancyCountingPredictionResult_Stats_CrossingLineCount) Descriptor() ([]byte, []int) {
  2932  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 2, 2}
  2933  }
  2934  
  2935  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) GetAnnotation() *StreamAnnotation {
  2936  	if x != nil {
  2937  		return x.Annotation
  2938  	}
  2939  	return nil
  2940  }
  2941  
  2942  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) GetPositiveDirectionCounts() []*OccupancyCountingPredictionResult_Stats_ObjectCount {
  2943  	if x != nil {
  2944  		return x.PositiveDirectionCounts
  2945  	}
  2946  	return nil
  2947  }
  2948  
  2949  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) GetNegativeDirectionCounts() []*OccupancyCountingPredictionResult_Stats_ObjectCount {
  2950  	if x != nil {
  2951  		return x.NegativeDirectionCounts
  2952  	}
  2953  	return nil
  2954  }
  2955  
  2956  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) GetAccumulatedPositiveDirectionCounts() []*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount {
  2957  	if x != nil {
  2958  		return x.AccumulatedPositiveDirectionCounts
  2959  	}
  2960  	return nil
  2961  }
  2962  
  2963  func (x *OccupancyCountingPredictionResult_Stats_CrossingLineCount) GetAccumulatedNegativeDirectionCounts() []*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount {
  2964  	if x != nil {
  2965  		return x.AccumulatedNegativeDirectionCounts
  2966  	}
  2967  	return nil
  2968  }
  2969  
  2970  // Message for the active zone count.
  2971  type OccupancyCountingPredictionResult_Stats_ActiveZoneCount struct {
  2972  	state         protoimpl.MessageState
  2973  	sizeCache     protoimpl.SizeCache
  2974  	unknownFields protoimpl.UnknownFields
  2975  
  2976  	// Active zone annotation from the user.
  2977  	Annotation *StreamAnnotation `protobuf:"bytes,1,opt,name=annotation,proto3" json:"annotation,omitempty"`
  2978  	// Counts in the zone.
  2979  	Counts []*OccupancyCountingPredictionResult_Stats_ObjectCount `protobuf:"bytes,2,rep,name=counts,proto3" json:"counts,omitempty"`
  2980  }
  2981  
  2982  func (x *OccupancyCountingPredictionResult_Stats_ActiveZoneCount) Reset() {
  2983  	*x = OccupancyCountingPredictionResult_Stats_ActiveZoneCount{}
  2984  	if protoimpl.UnsafeEnabled {
  2985  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[40]
  2986  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2987  		ms.StoreMessageInfo(mi)
  2988  	}
  2989  }
  2990  
  2991  func (x *OccupancyCountingPredictionResult_Stats_ActiveZoneCount) String() string {
  2992  	return protoimpl.X.MessageStringOf(x)
  2993  }
  2994  
  2995  func (*OccupancyCountingPredictionResult_Stats_ActiveZoneCount) ProtoMessage() {}
  2996  
  2997  func (x *OccupancyCountingPredictionResult_Stats_ActiveZoneCount) ProtoReflect() protoreflect.Message {
  2998  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[40]
  2999  	if protoimpl.UnsafeEnabled && x != nil {
  3000  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3001  		if ms.LoadMessageInfo() == nil {
  3002  			ms.StoreMessageInfo(mi)
  3003  		}
  3004  		return ms
  3005  	}
  3006  	return mi.MessageOf(x)
  3007  }
  3008  
  3009  // Deprecated: Use OccupancyCountingPredictionResult_Stats_ActiveZoneCount.ProtoReflect.Descriptor instead.
  3010  func (*OccupancyCountingPredictionResult_Stats_ActiveZoneCount) Descriptor() ([]byte, []int) {
  3011  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{8, 2, 3}
  3012  }
  3013  
  3014  func (x *OccupancyCountingPredictionResult_Stats_ActiveZoneCount) GetAnnotation() *StreamAnnotation {
  3015  	if x != nil {
  3016  		return x.Annotation
  3017  	}
  3018  	return nil
  3019  }
  3020  
  3021  func (x *OccupancyCountingPredictionResult_Stats_ActiveZoneCount) GetCounts() []*OccupancyCountingPredictionResult_Stats_ObjectCount {
  3022  	if x != nil {
  3023  		return x.Counts
  3024  	}
  3025  	return nil
  3026  }
  3027  
  3028  // A general annotation message that uses struct format to represent different
  3029  // concrete annotation protobufs.
  3030  type AppPlatformCloudFunctionRequest_StructedInputAnnotation struct {
  3031  	state         protoimpl.MessageState
  3032  	sizeCache     protoimpl.SizeCache
  3033  	unknownFields protoimpl.UnknownFields
  3034  
  3035  	// The ingestion time of the current annotation.
  3036  	IngestionTimeMicros int64 `protobuf:"varint,1,opt,name=ingestion_time_micros,json=ingestionTimeMicros,proto3" json:"ingestion_time_micros,omitempty"`
  3037  	// The struct format of the actual annotation.
  3038  	Annotation *structpb.Struct `protobuf:"bytes,2,opt,name=annotation,proto3" json:"annotation,omitempty"`
  3039  }
  3040  
  3041  func (x *AppPlatformCloudFunctionRequest_StructedInputAnnotation) Reset() {
  3042  	*x = AppPlatformCloudFunctionRequest_StructedInputAnnotation{}
  3043  	if protoimpl.UnsafeEnabled {
  3044  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[41]
  3045  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3046  		ms.StoreMessageInfo(mi)
  3047  	}
  3048  }
  3049  
  3050  func (x *AppPlatformCloudFunctionRequest_StructedInputAnnotation) String() string {
  3051  	return protoimpl.X.MessageStringOf(x)
  3052  }
  3053  
  3054  func (*AppPlatformCloudFunctionRequest_StructedInputAnnotation) ProtoMessage() {}
  3055  
  3056  func (x *AppPlatformCloudFunctionRequest_StructedInputAnnotation) ProtoReflect() protoreflect.Message {
  3057  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[41]
  3058  	if protoimpl.UnsafeEnabled && x != nil {
  3059  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3060  		if ms.LoadMessageInfo() == nil {
  3061  			ms.StoreMessageInfo(mi)
  3062  		}
  3063  		return ms
  3064  	}
  3065  	return mi.MessageOf(x)
  3066  }
  3067  
  3068  // Deprecated: Use AppPlatformCloudFunctionRequest_StructedInputAnnotation.ProtoReflect.Descriptor instead.
  3069  func (*AppPlatformCloudFunctionRequest_StructedInputAnnotation) Descriptor() ([]byte, []int) {
  3070  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{15, 0}
  3071  }
  3072  
  3073  func (x *AppPlatformCloudFunctionRequest_StructedInputAnnotation) GetIngestionTimeMicros() int64 {
  3074  	if x != nil {
  3075  		return x.IngestionTimeMicros
  3076  	}
  3077  	return 0
  3078  }
  3079  
  3080  func (x *AppPlatformCloudFunctionRequest_StructedInputAnnotation) GetAnnotation() *structpb.Struct {
  3081  	if x != nil {
  3082  		return x.Annotation
  3083  	}
  3084  	return nil
  3085  }
  3086  
  3087  // A general annotation message that uses struct format to represent different
  3088  // concrete annotation protobufs.
  3089  type AppPlatformCloudFunctionResponse_StructedOutputAnnotation struct {
  3090  	state         protoimpl.MessageState
  3091  	sizeCache     protoimpl.SizeCache
  3092  	unknownFields protoimpl.UnknownFields
  3093  
  3094  	// The struct format of the actual annotation.
  3095  	Annotation *structpb.Struct `protobuf:"bytes,1,opt,name=annotation,proto3" json:"annotation,omitempty"`
  3096  }
  3097  
  3098  func (x *AppPlatformCloudFunctionResponse_StructedOutputAnnotation) Reset() {
  3099  	*x = AppPlatformCloudFunctionResponse_StructedOutputAnnotation{}
  3100  	if protoimpl.UnsafeEnabled {
  3101  		mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[42]
  3102  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3103  		ms.StoreMessageInfo(mi)
  3104  	}
  3105  }
  3106  
  3107  func (x *AppPlatformCloudFunctionResponse_StructedOutputAnnotation) String() string {
  3108  	return protoimpl.X.MessageStringOf(x)
  3109  }
  3110  
  3111  func (*AppPlatformCloudFunctionResponse_StructedOutputAnnotation) ProtoMessage() {}
  3112  
  3113  func (x *AppPlatformCloudFunctionResponse_StructedOutputAnnotation) ProtoReflect() protoreflect.Message {
  3114  	mi := &file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[42]
  3115  	if protoimpl.UnsafeEnabled && x != nil {
  3116  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3117  		if ms.LoadMessageInfo() == nil {
  3118  			ms.StoreMessageInfo(mi)
  3119  		}
  3120  		return ms
  3121  	}
  3122  	return mi.MessageOf(x)
  3123  }
  3124  
  3125  // Deprecated: Use AppPlatformCloudFunctionResponse_StructedOutputAnnotation.ProtoReflect.Descriptor instead.
  3126  func (*AppPlatformCloudFunctionResponse_StructedOutputAnnotation) Descriptor() ([]byte, []int) {
  3127  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP(), []int{16, 0}
  3128  }
  3129  
  3130  func (x *AppPlatformCloudFunctionResponse_StructedOutputAnnotation) GetAnnotation() *structpb.Struct {
  3131  	if x != nil {
  3132  		return x.Annotation
  3133  	}
  3134  	return nil
  3135  }
  3136  
  3137  var File_google_cloud_visionai_v1alpha1_annotations_proto protoreflect.FileDescriptor
  3138  
  3139  var file_google_cloud_visionai_v1alpha1_annotations_proto_rawDesc = []byte{
  3140  	0x0a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
  3141  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
  3142  	0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
  3143  	0x74, 0x6f, 0x12, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3144  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  3145  	0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3146  	0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3147  	0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  3148  	0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  3149  	0x6f, 0x22, 0x80, 0x11, 0x0a, 0x2a, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72,
  3150  	0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e,
  3151  	0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
  3152  	0x12, 0x3d, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65,
  3153  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3154  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  3155  	0x6d, 0x70, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12,
  3156  	0x84, 0x01, 0x0a, 0x10, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72,
  3157  	0x73, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f,
  3158  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3159  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73,
  3160  	0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71,
  3161  	0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3162  	0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50,
  3163  	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x52, 0x0f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50,
  3164  	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x73, 0x1a, 0x38, 0x0a, 0x0c, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,
  3165  	0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
  3166  	0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
  3167  	0x52, 0x0e, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64,
  3168  	0x1a, 0xc0, 0x01, 0x0a, 0x09, 0x50, 0x50, 0x45, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x20,
  3169  	0x0a, 0x0c, 0x70, 0x70, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01,
  3170  	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x70, 0x70, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x64,
  3171  	0x12, 0x28, 0x0a, 0x10, 0x70, 0x70, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x73, 0x74,
  3172  	0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x70, 0x65, 0x4c,
  3173  	0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x43, 0x0a, 0x1e, 0x70, 0x70,
  3174  	0x65, 0x5f, 0x73, 0x75, 0x70, 0x65, 0x72, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f,
  3175  	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01,
  3176  	0x28, 0x09, 0x52, 0x1b, 0x70, 0x70, 0x65, 0x53, 0x75, 0x70, 0x65, 0x72, 0x63, 0x61, 0x74, 0x65,
  3177  	0x67, 0x6f, 0x72, 0x79, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12,
  3178  	0x22, 0x0a, 0x0d, 0x70, 0x70, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64,
  3179  	0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x70, 0x70, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74,
  3180  	0x79, 0x49, 0x64, 0x1a, 0x6d, 0x0a, 0x15, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65,
  3181  	0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x12, 0x0a, 0x04,
  3182  	0x78, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x78, 0x6d, 0x69, 0x6e,
  3183  	0x12, 0x12, 0x0a, 0x04, 0x79, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04,
  3184  	0x79, 0x6d, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20,
  3185  	0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65,
  3186  	0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67,
  3187  	0x68, 0x74, 0x1a, 0xf0, 0x02, 0x0a, 0x13, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65,
  3188  	0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x6f,
  3189  	0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x6f, 0x78, 0x49,
  3190  	0x64, 0x12, 0x98, 0x01, 0x0a, 0x17, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64,
  3191  	0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02, 0x20,
  3192  	0x01, 0x28, 0x0b, 0x32, 0x60, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3193  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c,
  3194  	0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f,
  3195  	0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74,
  3196  	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e,
  3197  	0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69,
  3198  	0x6e, 0x67, 0x42, 0x6f, 0x78, 0x52, 0x15, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65,
  3199  	0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x29, 0x0a, 0x10,
  3200  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65,
  3201  	0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e,
  3202  	0x63, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x7c, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f,
  3203  	0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x57,
  3204  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  3205  	0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
  3206  	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69,
  3207  	0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
  3208  	0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f,
  3209  	0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x45,
  3210  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x1a, 0xe4, 0x02, 0x0a, 0x10, 0x50, 0x50, 0x45, 0x49, 0x64, 0x65,
  3211  	0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x6f,
  3212  	0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x6f, 0x78, 0x49,
  3213  	0x64, 0x12, 0x98, 0x01, 0x0a, 0x17, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64,
  3214  	0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02, 0x20,
  3215  	0x01, 0x28, 0x0b, 0x32, 0x60, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3216  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c,
  3217  	0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f,
  3218  	0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74,
  3219  	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e,
  3220  	0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69,
  3221  	0x6e, 0x67, 0x42, 0x6f, 0x78, 0x52, 0x15, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65,
  3222  	0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x29, 0x0a, 0x10,
  3223  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65,
  3224  	0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e,
  3225  	0x63, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x73, 0x0a, 0x0a, 0x70, 0x70, 0x65, 0x5f, 0x65,
  3226  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x54, 0x2e, 0x67, 0x6f,
  3227  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
  3228  	0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72,
  3229  	0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45,
  3230  	0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
  3231  	0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x50, 0x50, 0x45, 0x45, 0x6e, 0x74, 0x69, 0x74,
  3232  	0x79, 0x52, 0x09, 0x70, 0x70, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x1a, 0xc5, 0x06, 0x0a,
  3233  	0x0e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12,
  3234  	0x1b, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
  3235  	0x28, 0x03, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0xa3, 0x01, 0x0a,
  3236  	0x1e, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
  3237  	0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x78, 0x18,
  3238  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3239  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
  3240  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x50,
  3241  	0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65,
  3242  	0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75,
  3243  	0x74, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
  3244  	0x65, 0x64, 0x42, 0x6f, 0x78, 0x52, 0x1b, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50,
  3245  	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42,
  3246  	0x6f, 0x78, 0x12, 0x9e, 0x01, 0x0a, 0x1d, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f,
  3247  	0x70, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x62,
  3248  	0x6f, 0x78, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5b, 0x2e, 0x67, 0x6f, 0x6f,
  3249  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3250  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x73,
  3251  	0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x71,
  3252  	0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3253  	0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x50, 0x50, 0x45, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
  3254  	0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x52, 0x1a, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65,
  3255  	0x64, 0x50, 0x70, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f,
  3256  	0x78, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x66, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x76, 0x65,
  3257  	0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02,
  3258  	0x48, 0x00, 0x52, 0x11, 0x66, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65,
  3259  	0x53, 0x63, 0x6f, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x65, 0x79, 0x65, 0x73,
  3260  	0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18,
  3261  	0x05, 0x20, 0x01, 0x28, 0x02, 0x48, 0x01, 0x52, 0x11, 0x65, 0x79, 0x65, 0x73, 0x43, 0x6f, 0x76,
  3262  	0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a,
  3263  	0x13, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73,
  3264  	0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x48, 0x02, 0x52, 0x11, 0x68, 0x65,
  3265  	0x61, 0x64, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x88,
  3266  	0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x68, 0x61, 0x6e, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x76, 0x65,
  3267  	0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02,
  3268  	0x48, 0x03, 0x52, 0x12, 0x68, 0x61, 0x6e, 0x64, 0x73, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67,
  3269  	0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x62, 0x6f, 0x64,
  3270  	0x79, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65,
  3271  	0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x48, 0x04, 0x52, 0x11, 0x62, 0x6f, 0x64, 0x79, 0x43, 0x6f,
  3272  	0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x33,
  3273  	0x0a, 0x13, 0x66, 0x65, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f,
  3274  	0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x48, 0x05, 0x52, 0x11, 0x66,
  3275  	0x65, 0x65, 0x74, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65,
  3276  	0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x66, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x76,
  3277  	0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x5f,
  3278  	0x65, 0x79, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63,
  3279  	0x6f, 0x72, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x76,
  3280  	0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x17, 0x0a, 0x15, 0x5f,
  3281  	0x68, 0x61, 0x6e, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73,
  3282  	0x63, 0x6f, 0x72, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x5f, 0x63, 0x6f,
  3283  	0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x16, 0x0a, 0x14,
  3284  	0x5f, 0x66, 0x65, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73,
  3285  	0x63, 0x6f, 0x72, 0x65, 0x22, 0xe3, 0x05, 0x0a, 0x1f, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44,
  3286  	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69,
  3287  	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x72,
  3288  	0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
  3289  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3290  	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x72,
  3291  	0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x78, 0x0a, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74,
  3292  	0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
  3293  	0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3294  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  3295  	0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
  3296  	0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75,
  3297  	0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78,
  3298  	0x52, 0x0f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x65,
  3299  	0x73, 0x1a, 0x46, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6c,
  3300  	0x61, 0x62, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c,
  3301  	0x61, 0x62, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f,
  3302  	0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61,
  3303  	0x62, 0x65, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x1a, 0xbe, 0x03, 0x0a, 0x0d, 0x49, 0x64,
  3304  	0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x12, 0x15, 0x0a, 0x06, 0x62,
  3305  	0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x6f, 0x78,
  3306  	0x49, 0x64, 0x12, 0x9b, 0x01, 0x0a, 0x17, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65,
  3307  	0x64, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02,
  3308  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x63, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  3309  	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61,
  3310  	0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65,
  3311  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
  3312  	0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64,
  3313  	0x42, 0x6f, 0x78, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f,
  3314  	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x52, 0x15, 0x6e, 0x6f, 0x72, 0x6d, 0x61,
  3315  	0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78,
  3316  	0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73,
  3317  	0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66,
  3318  	0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x5e, 0x0a, 0x06, 0x65,
  3319  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67, 0x6f,
  3320  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
  3321  	0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a,
  3322  	0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64,
  3323  	0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x45, 0x6e, 0x74,
  3324  	0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x1a, 0x6d, 0x0a, 0x15, 0x4e,
  3325  	0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e,
  3326  	0x67, 0x42, 0x6f, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01,
  3327  	0x28, 0x02, 0x52, 0x04, 0x78, 0x6d, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x79, 0x6d, 0x69, 0x6e,
  3328  	0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x79, 0x6d, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05,
  3329  	0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x69, 0x64,
  3330  	0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01,
  3331  	0x28, 0x02, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xb3, 0x01, 0x0a, 0x24, 0x49,
  3332  	0x6d, 0x61, 0x67, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74,
  3333  	0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
  3334  	0x75, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03,
  3335  	0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
  3336  	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69,
  3337  	0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f,
  3338  	0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x02, 0x52,
  3339  	0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x06,
  3340  	0x62, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  3341  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4c,
  3342  	0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x62, 0x62, 0x6f, 0x78, 0x65, 0x73,
  3343  	0x22, 0x79, 0x0a, 0x1e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
  3344  	0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75,
  3345  	0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52,
  3346  	0x03, 0x69, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f,
  3347  	0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x73,
  3348  	0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e,
  3349  	0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b,
  3350  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x22, 0x71, 0x0a, 0x21, 0x49,
  3351  	0x6d, 0x61, 0x67, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  3352  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  3353  	0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x6d, 0x61, 0x73,
  3354  	0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72,
  3355  	0x79, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
  3356  	0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
  3357  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x92,
  3358  	0x03, 0x0a, 0x26, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
  3359  	0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  3360  	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x73, 0x65, 0x67,
  3361  	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
  3362  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
  3363  	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
  3364  	0x70, 0x52, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54,
  3365  	0x69, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65,
  3366  	0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
  3367  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  3368  	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x73, 0x65, 0x67, 0x6d, 0x65,
  3369  	0x6e, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x71, 0x0a, 0x07, 0x61, 0x63, 0x74,
  3370  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x67, 0x6f, 0x6f,
  3371  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3372  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65,
  3373  	0x6f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69,
  3374  	0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75,
  3375  	0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x41, 0x63, 0x74,
  3376  	0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x65, 0x0a, 0x10,
  3377  	0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3378  	0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
  3379  	0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
  3380  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e,
  3381  	0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
  3382  	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
  3383  	0x6e, 0x63, 0x65, 0x22, 0xfb, 0x04, 0x0a, 0x23, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4f, 0x62, 0x6a,
  3384  	0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69,
  3385  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x73,
  3386  	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d,
  3387  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3388  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  3389  	0x61, 0x6d, 0x70, 0x52, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72,
  3390  	0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
  3391  	0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3392  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  3393  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x73, 0x65, 0x67,
  3394  	0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x07, 0x6f,
  3395  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67,
  3396  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3397  	0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x69,
  3398  	0x64, 0x65, 0x6f, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
  3399  	0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
  3400  	0x74, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
  3401  	0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x1a, 0x61, 0x0a, 0x0b, 0x42, 0x6f, 0x75,
  3402  	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x13, 0x0a, 0x05, 0x78, 0x5f, 0x6d, 0x69,
  3403  	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x78, 0x4d, 0x69, 0x6e, 0x12, 0x13, 0x0a,
  3404  	0x05, 0x78, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x78, 0x4d,
  3405  	0x61, 0x78, 0x12, 0x13, 0x0a, 0x05, 0x79, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
  3406  	0x02, 0x52, 0x04, 0x79, 0x4d, 0x69, 0x6e, 0x12, 0x13, 0x0a, 0x05, 0x79, 0x5f, 0x6d, 0x61, 0x78,
  3407  	0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x79, 0x4d, 0x61, 0x78, 0x1a, 0xf2, 0x01, 0x0a,
  3408  	0x0e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12,
  3409  	0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
  3410  	0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  3411  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61,
  3412  	0x6d, 0x65, 0x12, 0x72, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62,
  3413  	0x6f, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3414  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
  3415  	0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4f,
  3416  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65,
  3417  	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x42, 0x6f,
  3418  	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x64,
  3419  	0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64,
  3420  	0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
  3421  	0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f,
  3422  	0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49,
  3423  	0x64, 0x22, 0xad, 0x03, 0x0a, 0x23, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6c, 0x61, 0x73, 0x73,
  3424  	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  3425  	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x73, 0x65, 0x67,
  3426  	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
  3427  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
  3428  	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
  3429  	0x70, 0x52, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54,
  3430  	0x69, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65,
  3431  	0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
  3432  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  3433  	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x73, 0x65, 0x67, 0x6d, 0x65,
  3434  	0x6e, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x63, 0x6c,
  3435  	0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20,
  3436  	0x03, 0x28, 0x0b, 0x32, 0x5c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3437  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c,
  3438  	0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69,
  3439  	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69,
  3440  	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
  3441  	0x69, 0x65, 0x64, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  3442  	0x6e, 0x52, 0x0f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  3443  	0x6e, 0x73, 0x1a, 0x6d, 0x0a, 0x18, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64,
  3444  	0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e,
  3445  	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21,
  3446  	0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
  3447  	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d,
  3448  	0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18,
  3449  	0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
  3450  	0x65, 0x22, 0xa2, 0x18, 0x0a, 0x21, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43,
  3451  	0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f,
  3452  	0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65,
  3453  	0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
  3454  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  3455  	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65,
  3456  	0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x7a, 0x0a, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69,
  3457  	0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  3458  	0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3459  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
  3460  	0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74,
  3461  	0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
  3462  	0x75, 0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f,
  3463  	0x78, 0x52, 0x0f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78,
  3464  	0x65, 0x73, 0x12, 0x5d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
  3465  	0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3466  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  3467  	0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e,
  3468  	0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
  3469  	0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74,
  3470  	0x73, 0x12, 0x6a, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
  3471  	0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3472  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
  3473  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79,
  3474  	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69,
  3475  	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e,
  3476  	0x66, 0x6f, 0x52, 0x09, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x77, 0x0a,
  3477  	0x0f, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
  3478  	0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3479  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76,
  3480  	0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63,
  3481  	0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  3482  	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x44, 0x77, 0x65, 0x6c, 0x6c, 0x54,
  3483  	0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x54, 0x69,
  3484  	0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x46, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
  3485  	0x12, 0x19, 0x0a, 0x08, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
  3486  	0x28, 0x03, 0x52, 0x07, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c,
  3487  	0x61, 0x62, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
  3488  	0x09, 0x52, 0x0b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x1a, 0xc8,
  3489  	0x03, 0x0a, 0x0d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78,
  3490  	0x12, 0x15, 0x0a, 0x06, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
  3491  	0x52, 0x05, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x12, 0x9d, 0x01, 0x0a, 0x17, 0x6e, 0x6f, 0x72, 0x6d,
  3492  	0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
  3493  	0x62, 0x6f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3494  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61,
  3495  	0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70,
  3496  	0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64,
  3497  	0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x49, 0x64, 0x65,
  3498  	0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6f, 0x78, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61,
  3499  	0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78,
  3500  	0x52, 0x15, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e,
  3501  	0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65,
  3502  	0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x60, 0x0a,
  3503  	0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e,
  3504  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3505  	0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f,
  3506  	0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67,
  3507  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  3508  	0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12,
  3509  	0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
  3510  	0x03, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x1a, 0x6d, 0x0a, 0x15, 0x4e, 0x6f,
  3511  	0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
  3512  	0x42, 0x6f, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
  3513  	0x02, 0x52, 0x04, 0x78, 0x6d, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x79, 0x6d, 0x69, 0x6e, 0x18,
  3514  	0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x79, 0x6d, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x77,
  3515  	0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74,
  3516  	0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
  3517  	0x02, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x1a, 0xb9, 0x0d, 0x0a, 0x05, 0x53, 0x74,
  3518  	0x61, 0x74, 0x73, 0x12, 0x7d, 0x0a, 0x10, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x66, 0x72, 0x61, 0x6d,
  3519  	0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e,
  3520  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3521  	0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f,
  3522  	0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67,
  3523  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  3524  	0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75,
  3525  	0x6e, 0x74, 0x52, 0x0e, 0x66, 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75,
  3526  	0x6e, 0x74, 0x12, 0x8b, 0x01, 0x0a, 0x14, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f,
  3527  	0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
  3528  	0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3529  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  3530  	0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e,
  3531  	0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
  3532  	0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73,
  3533  	0x69, 0x6e, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x12, 0x63, 0x72,
  3534  	0x6f, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73,
  3535  	0x12, 0x85, 0x01, 0x0a, 0x12, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65,
  3536  	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e,
  3537  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3538  	0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f,
  3539  	0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67,
  3540  	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  3541  	0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5a, 0x6f, 0x6e,
  3542  	0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5a, 0x6f,
  3543  	0x6e, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x85, 0x01, 0x0a, 0x0b, 0x4f, 0x62, 0x6a,
  3544  	0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x60, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69,
  3545  	0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3546  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
  3547  	0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61,
  3548  	0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69,
  3549  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x45, 0x6e, 0x74, 0x69,
  3550  	0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f,
  3551  	0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74,
  3552  	0x1a, 0xcb, 0x01, 0x0a, 0x16, 0x41, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64,
  3553  	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x73,
  3554  	0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3555  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  3556  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61,
  3557  	0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x76, 0x0a, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74,
  3558  	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67,
  3559  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3560  	0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63,
  3561  	0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50,
  3562  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e,
  3563  	0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e,
  3564  	0x74, 0x52, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xf1,
  3565  	0x05, 0x0a, 0x11, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x43,
  3566  	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
  3567  	0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3568  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
  3569  	0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
  3570  	0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f,
  3571  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8f, 0x01, 0x0a, 0x19, 0x70, 0x6f, 0x73, 0x69, 0x74,
  3572  	0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
  3573  	0x75, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67, 0x6f, 0x6f,
  3574  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3575  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75,
  3576  	0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65,
  3577  	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74,
  3578  	0x61, 0x74, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
  3579  	0x17, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
  3580  	0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x8f, 0x01, 0x0a, 0x19, 0x6e, 0x65, 0x67,
  3581  	0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
  3582  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67,
  3583  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3584  	0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63,
  3585  	0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50,
  3586  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e,
  3587  	0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e,
  3588  	0x74, 0x52, 0x17, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63,
  3589  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0xb1, 0x01, 0x0a, 0x25, 0x61,
  3590  	0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74,
  3591  	0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
  3592  	0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5e, 0x2e, 0x67, 0x6f, 0x6f,
  3593  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3594  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75,
  3595  	0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65,
  3596  	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74,
  3597  	0x61, 0x74, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x4f,
  3598  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x22, 0x61, 0x63, 0x63, 0x75,
  3599  	0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x44,
  3600  	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0xb1,
  3601  	0x01, 0x0a, 0x25, 0x61, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6e,
  3602  	0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
  3603  	0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5e,
  3604  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  3605  	0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
  3606  	0x4f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e,
  3607  	0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
  3608  	0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61,
  3609  	0x74, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x22,
  3610  	0x61, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x4e, 0x65, 0x67, 0x61, 0x74,
  3611  	0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e,
  3612  	0x74, 0x73, 0x1a, 0xd0, 0x01, 0x0a, 0x0f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5a, 0x6f, 0x6e,
  3613  	0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3614  	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f,
  3615  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3616  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
  3617  	0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x6e,
  3618  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6b, 0x0a, 0x06, 0x63, 0x6f, 0x75, 0x6e,
  3619  	0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3620  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
  3621  	0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x63, 0x63, 0x75, 0x70, 0x61,
  3622  	0x6e, 0x63, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69,
  3623  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74,
  3624  	0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x63,
  3625  	0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x61, 0x0a, 0x09, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e,
  3626  	0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01,
  3627  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x39, 0x0a,
  3628  	0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  3629  	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3630  	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73,
  3631  	0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0xcb, 0x01, 0x0a, 0x0d, 0x44, 0x77, 0x65,
  3632  	0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72,
  3633  	0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72,
  3634  	0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x64,
  3635  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x7a, 0x6f, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x44,
  3636  	0x0a, 0x10, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69,
  3637  	0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3638  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
  3639  	0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74,
  3640  	0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x65, 0x6e,
  3641  	0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  3642  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  3643  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x64, 0x77, 0x65, 0x6c, 0x6c, 0x45,
  3644  	0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xfb, 0x02, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, 0x61,
  3645  	0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x0b, 0x61,
  3646  	0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
  3647  	0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3648  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
  3649  	0x31, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x6f, 0x6c, 0x79,
  3650  	0x67, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5a, 0x6f, 0x6e,
  3651  	0x65, 0x12, 0x59, 0x0a, 0x0d, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69,
  3652  	0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3653  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69,
  3654  	0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
  3655  	0x69, 0x7a, 0x65, 0x64, 0x50, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x48, 0x00, 0x52, 0x0c,
  3656  	0x63, 0x72, 0x6f, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x0e, 0x0a, 0x02,
  3657  	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c,
  3658  	0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
  3659  	0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12,
  3660  	0x23, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
  3661  	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x74,
  3662  	0x72, 0x65, 0x61, 0x6d, 0x12, 0x48, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01,
  3663  	0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  3664  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
  3665  	0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3666  	0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x42, 0x14,
  3667  	0x0a, 0x12, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x79,
  3668  	0x6c, 0x6f, 0x61, 0x64, 0x22, 0x74, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e,
  3669  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5f, 0x0a, 0x12, 0x73, 0x74, 0x72,
  3670  	0x65, 0x61, 0x6d, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
  3671  	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3672  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
  3673  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e,
  3674  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41,
  3675  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x76, 0x0a, 0x11, 0x4e, 0x6f,
  3676  	0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x12,
  3677  	0x61, 0x0a, 0x13, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x76, 0x65,
  3678  	0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67,
  3679  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3680  	0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f,
  3681  	0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x52, 0x12,
  3682  	0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63,
  3683  	0x65, 0x73, 0x22, 0x77, 0x0a, 0x12, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64,
  3684  	0x50, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x61, 0x0a, 0x13, 0x6e, 0x6f, 0x72, 0x6d,
  3685  	0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x18,
  3686  	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3687  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31,
  3688  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65,
  3689  	0x64, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x52, 0x12, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69,
  3690  	0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x22, 0x2e, 0x0a, 0x10, 0x4e,
  3691  	0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x12,
  3692  	0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a,
  3693  	0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x8a, 0x01, 0x0a, 0x13,
  3694  	0x41, 0x70, 0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x64,
  3695  	0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
  3696  	0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
  3697  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
  3698  	0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74,
  3699  	0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x03,
  3700  	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72,
  3701  	0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70,
  3702  	0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x22, 0x8e, 0x03, 0x0a, 0x1f, 0x41, 0x70, 0x70,
  3703  	0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e,
  3704  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x67, 0x0a, 0x15,
  3705  	0x61, 0x70, 0x70, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6d, 0x65, 0x74,
  3706  	0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f,
  3707  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
  3708  	0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70,
  3709  	0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
  3710  	0x52, 0x13, 0x61, 0x70, 0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x74,
  3711  	0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x79, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
  3712  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x67, 0x6f, 0x6f,
  3713  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3714  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x50,
  3715  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63,
  3716  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x74, 0x72, 0x75,
  3717  	0x63, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
  3718  	0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  3719  	0x1a, 0x86, 0x01, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x70,
  3720  	0x75, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15,
  3721  	0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d,
  3722  	0x69, 0x63, 0x72, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x69, 0x6e, 0x67,
  3723  	0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73,
  3724  	0x12, 0x37, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
  3725  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3726  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x61,
  3727  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf9, 0x02, 0x0a, 0x20, 0x41, 0x70,
  3728  	0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75,
  3729  	0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b,
  3730  	0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20,
  3731  	0x03, 0x28, 0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3732  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c,
  3733  	0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  3734  	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
  3735  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x65, 0x64, 0x4f, 0x75,
  3736  	0x74, 0x70, 0x75, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
  3737  	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x0a, 0x16, 0x61,
  3738  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x74, 0x68,
  3739  	0x72, 0x6f, 0x75, 0x67, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x61, 0x6e, 0x6e,
  3740  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, 0x75,
  3741  	0x67, 0x68, 0x12, 0x4c, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03,
  3742  	0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  3743  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
  3744  	0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45,
  3745  	0x76, 0x65, 0x6e, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73,
  3746  	0x1a, 0x53, 0x0a, 0x18, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x70,
  3747  	0x75, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0a,
  3748  	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
  3749  	0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  3750  	0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
  3751  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x89, 0x01, 0x0a, 0x14, 0x41, 0x70, 0x70, 0x50, 0x6c, 0x61,
  3752  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x23,
  3753  	0x0a, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
  3754  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73,
  3755  	0x61, 0x67, 0x65, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02,
  3756  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3757  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x07, 0x70,
  3758  	0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f,
  3759  	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49,
  3760  	0x64, 0x2a, 0x90, 0x01, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x6e, 0x6e, 0x6f,
  3761  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x54,
  3762  	0x52, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x4e, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
  3763  	0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
  3764  	0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x4e, 0x4e,
  3765  	0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x43, 0x54,
  3766  	0x49, 0x56, 0x45, 0x5f, 0x5a, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x54,
  3767  	0x52, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x4e, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
  3768  	0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x49,
  3769  	0x4e, 0x45, 0x10, 0x02, 0x42, 0xe6, 0x01, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
  3770  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3771  	0x61, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x41, 0x6e, 0x6e,
  3772  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
  3773  	0x46, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f,
  3774  	0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67,
  3775  	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73,
  3776  	0x69, 0x6f, 0x6e, 0x61, 0x69, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x76,
  3777  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x69, 0xaa, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3778  	0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x49, 0x2e,
  3779  	0x56, 0x31, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
  3780  	0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x49,
  3781  	0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xea, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67,
  3782  	0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x56, 0x69, 0x73, 0x69, 0x6f,
  3783  	0x6e, 0x41, 0x49, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70,
  3784  	0x72, 0x6f, 0x74, 0x6f, 0x33,
  3785  }
  3786  
  3787  var (
  3788  	file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescOnce sync.Once
  3789  	file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescData = file_google_cloud_visionai_v1alpha1_annotations_proto_rawDesc
  3790  )
  3791  
  3792  func file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescGZIP() []byte {
  3793  	file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescOnce.Do(func() {
  3794  		file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescData)
  3795  	})
  3796  	return file_google_cloud_visionai_v1alpha1_annotations_proto_rawDescData
  3797  }
  3798  
  3799  var file_google_cloud_visionai_v1alpha1_annotations_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  3800  var file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes = make([]protoimpl.MessageInfo, 43)
  3801  var file_google_cloud_visionai_v1alpha1_annotations_proto_goTypes = []interface{}{
  3802  	(StreamAnnotationType)(0),                                                     // 0: google.cloud.visionai.v1alpha1.StreamAnnotationType
  3803  	(*PersonalProtectiveEquipmentDetectionOutput)(nil),                            // 1: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput
  3804  	(*ObjectDetectionPredictionResult)(nil),                                       // 2: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult
  3805  	(*ImageObjectDetectionPredictionResult)(nil),                                  // 3: google.cloud.visionai.v1alpha1.ImageObjectDetectionPredictionResult
  3806  	(*ClassificationPredictionResult)(nil),                                        // 4: google.cloud.visionai.v1alpha1.ClassificationPredictionResult
  3807  	(*ImageSegmentationPredictionResult)(nil),                                     // 5: google.cloud.visionai.v1alpha1.ImageSegmentationPredictionResult
  3808  	(*VideoActionRecognitionPredictionResult)(nil),                                // 6: google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult
  3809  	(*VideoObjectTrackingPredictionResult)(nil),                                   // 7: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult
  3810  	(*VideoClassificationPredictionResult)(nil),                                   // 8: google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult
  3811  	(*OccupancyCountingPredictionResult)(nil),                                     // 9: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult
  3812  	(*StreamAnnotation)(nil),                                                      // 10: google.cloud.visionai.v1alpha1.StreamAnnotation
  3813  	(*StreamAnnotations)(nil),                                                     // 11: google.cloud.visionai.v1alpha1.StreamAnnotations
  3814  	(*NormalizedPolygon)(nil),                                                     // 12: google.cloud.visionai.v1alpha1.NormalizedPolygon
  3815  	(*NormalizedPolyline)(nil),                                                    // 13: google.cloud.visionai.v1alpha1.NormalizedPolyline
  3816  	(*NormalizedVertex)(nil),                                                      // 14: google.cloud.visionai.v1alpha1.NormalizedVertex
  3817  	(*AppPlatformMetadata)(nil),                                                   // 15: google.cloud.visionai.v1alpha1.AppPlatformMetadata
  3818  	(*AppPlatformCloudFunctionRequest)(nil),                                       // 16: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest
  3819  	(*AppPlatformCloudFunctionResponse)(nil),                                      // 17: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse
  3820  	(*AppPlatformEventBody)(nil),                                                  // 18: google.cloud.visionai.v1alpha1.AppPlatformEventBody
  3821  	(*PersonalProtectiveEquipmentDetectionOutput_PersonEntity)(nil),               // 19: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonEntity
  3822  	(*PersonalProtectiveEquipmentDetectionOutput_PPEEntity)(nil),                  // 20: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEEntity
  3823  	(*PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox)(nil),      // 21: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.NormalizedBoundingBox
  3824  	(*PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox)(nil),        // 22: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonIdentifiedBox
  3825  	(*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox)(nil),           // 23: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEIdentifiedBox
  3826  	(*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson)(nil),             // 24: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.DetectedPerson
  3827  	(*ObjectDetectionPredictionResult_Entity)(nil),                                // 25: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.Entity
  3828  	(*ObjectDetectionPredictionResult_IdentifiedBox)(nil),                         // 26: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox
  3829  	(*ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox)(nil),   // 27: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox.NormalizedBoundingBox
  3830  	(*VideoActionRecognitionPredictionResult_IdentifiedAction)(nil),               // 28: google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult.IdentifiedAction
  3831  	(*VideoObjectTrackingPredictionResult_BoundingBox)(nil),                       // 29: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.BoundingBox
  3832  	(*VideoObjectTrackingPredictionResult_DetectedObject)(nil),                    // 30: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.DetectedObject
  3833  	(*VideoClassificationPredictionResult_IdentifiedClassification)(nil),          // 31: google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult.IdentifiedClassification
  3834  	(*OccupancyCountingPredictionResult_Entity)(nil),                              // 32: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Entity
  3835  	(*OccupancyCountingPredictionResult_IdentifiedBox)(nil),                       // 33: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox
  3836  	(*OccupancyCountingPredictionResult_Stats)(nil),                               // 34: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats
  3837  	(*OccupancyCountingPredictionResult_TrackInfo)(nil),                           // 35: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.TrackInfo
  3838  	(*OccupancyCountingPredictionResult_DwellTimeInfo)(nil),                       // 36: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.DwellTimeInfo
  3839  	(*OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox)(nil), // 37: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox.NormalizedBoundingBox
  3840  	(*OccupancyCountingPredictionResult_Stats_ObjectCount)(nil),                   // 38: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3841  	(*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount)(nil),        // 39: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.AccumulatedObjectCount
  3842  	(*OccupancyCountingPredictionResult_Stats_CrossingLineCount)(nil),             // 40: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount
  3843  	(*OccupancyCountingPredictionResult_Stats_ActiveZoneCount)(nil),               // 41: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ActiveZoneCount
  3844  	(*AppPlatformCloudFunctionRequest_StructedInputAnnotation)(nil),               // 42: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest.StructedInputAnnotation
  3845  	(*AppPlatformCloudFunctionResponse_StructedOutputAnnotation)(nil),             // 43: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse.StructedOutputAnnotation
  3846  	(*timestamppb.Timestamp)(nil),                                                 // 44: google.protobuf.Timestamp
  3847  	(*structpb.ListValue)(nil),                                                    // 45: google.protobuf.ListValue
  3848  	(*structpb.Struct)(nil),                                                       // 46: google.protobuf.Struct
  3849  }
  3850  var file_google_cloud_visionai_v1alpha1_annotations_proto_depIdxs = []int32{
  3851  	44, // 0: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.current_time:type_name -> google.protobuf.Timestamp
  3852  	24, // 1: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.detected_persons:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.DetectedPerson
  3853  	44, // 2: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.current_time:type_name -> google.protobuf.Timestamp
  3854  	26, // 3: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.identified_boxes:type_name -> google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox
  3855  	45, // 4: google.cloud.visionai.v1alpha1.ImageObjectDetectionPredictionResult.bboxes:type_name -> google.protobuf.ListValue
  3856  	44, // 5: google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult.segment_start_time:type_name -> google.protobuf.Timestamp
  3857  	44, // 6: google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult.segment_end_time:type_name -> google.protobuf.Timestamp
  3858  	28, // 7: google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult.actions:type_name -> google.cloud.visionai.v1alpha1.VideoActionRecognitionPredictionResult.IdentifiedAction
  3859  	44, // 8: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.segment_start_time:type_name -> google.protobuf.Timestamp
  3860  	44, // 9: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.segment_end_time:type_name -> google.protobuf.Timestamp
  3861  	30, // 10: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.objects:type_name -> google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.DetectedObject
  3862  	44, // 11: google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult.segment_start_time:type_name -> google.protobuf.Timestamp
  3863  	44, // 12: google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult.segment_end_time:type_name -> google.protobuf.Timestamp
  3864  	31, // 13: google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult.classifications:type_name -> google.cloud.visionai.v1alpha1.VideoClassificationPredictionResult.IdentifiedClassification
  3865  	44, // 14: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.current_time:type_name -> google.protobuf.Timestamp
  3866  	33, // 15: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.identified_boxes:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox
  3867  	34, // 16: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.stats:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats
  3868  	35, // 17: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.track_info:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.TrackInfo
  3869  	36, // 18: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.dwell_time_info:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.DwellTimeInfo
  3870  	12, // 19: google.cloud.visionai.v1alpha1.StreamAnnotation.active_zone:type_name -> google.cloud.visionai.v1alpha1.NormalizedPolygon
  3871  	13, // 20: google.cloud.visionai.v1alpha1.StreamAnnotation.crossing_line:type_name -> google.cloud.visionai.v1alpha1.NormalizedPolyline
  3872  	0,  // 21: google.cloud.visionai.v1alpha1.StreamAnnotation.type:type_name -> google.cloud.visionai.v1alpha1.StreamAnnotationType
  3873  	10, // 22: google.cloud.visionai.v1alpha1.StreamAnnotations.stream_annotations:type_name -> google.cloud.visionai.v1alpha1.StreamAnnotation
  3874  	14, // 23: google.cloud.visionai.v1alpha1.NormalizedPolygon.normalized_vertices:type_name -> google.cloud.visionai.v1alpha1.NormalizedVertex
  3875  	14, // 24: google.cloud.visionai.v1alpha1.NormalizedPolyline.normalized_vertices:type_name -> google.cloud.visionai.v1alpha1.NormalizedVertex
  3876  	15, // 25: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest.app_platform_metadata:type_name -> google.cloud.visionai.v1alpha1.AppPlatformMetadata
  3877  	42, // 26: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest.annotations:type_name -> google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest.StructedInputAnnotation
  3878  	43, // 27: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse.annotations:type_name -> google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse.StructedOutputAnnotation
  3879  	18, // 28: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse.events:type_name -> google.cloud.visionai.v1alpha1.AppPlatformEventBody
  3880  	46, // 29: google.cloud.visionai.v1alpha1.AppPlatformEventBody.payload:type_name -> google.protobuf.Struct
  3881  	21, // 30: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonIdentifiedBox.normalized_bounding_box:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.NormalizedBoundingBox
  3882  	19, // 31: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonIdentifiedBox.person_entity:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonEntity
  3883  	21, // 32: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEIdentifiedBox.normalized_bounding_box:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.NormalizedBoundingBox
  3884  	20, // 33: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEIdentifiedBox.ppe_entity:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEEntity
  3885  	22, // 34: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.DetectedPerson.detected_person_identified_box:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PersonIdentifiedBox
  3886  	23, // 35: google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.DetectedPerson.detected_ppe_identified_boxes:type_name -> google.cloud.visionai.v1alpha1.PersonalProtectiveEquipmentDetectionOutput.PPEIdentifiedBox
  3887  	27, // 36: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox.normalized_bounding_box:type_name -> google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox.NormalizedBoundingBox
  3888  	25, // 37: google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.IdentifiedBox.entity:type_name -> google.cloud.visionai.v1alpha1.ObjectDetectionPredictionResult.Entity
  3889  	29, // 38: google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.DetectedObject.bounding_box:type_name -> google.cloud.visionai.v1alpha1.VideoObjectTrackingPredictionResult.BoundingBox
  3890  	37, // 39: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox.normalized_bounding_box:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox.NormalizedBoundingBox
  3891  	32, // 40: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.IdentifiedBox.entity:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Entity
  3892  	38, // 41: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.full_frame_count:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3893  	40, // 42: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.crossing_line_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount
  3894  	41, // 43: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.active_zone_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ActiveZoneCount
  3895  	44, // 44: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.TrackInfo.start_time:type_name -> google.protobuf.Timestamp
  3896  	44, // 45: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.DwellTimeInfo.dwell_start_time:type_name -> google.protobuf.Timestamp
  3897  	44, // 46: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.DwellTimeInfo.dwell_end_time:type_name -> google.protobuf.Timestamp
  3898  	32, // 47: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount.entity:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Entity
  3899  	44, // 48: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.AccumulatedObjectCount.start_time:type_name -> google.protobuf.Timestamp
  3900  	38, // 49: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.AccumulatedObjectCount.object_count:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3901  	10, // 50: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount.annotation:type_name -> google.cloud.visionai.v1alpha1.StreamAnnotation
  3902  	38, // 51: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount.positive_direction_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3903  	38, // 52: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount.negative_direction_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3904  	39, // 53: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount.accumulated_positive_direction_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.AccumulatedObjectCount
  3905  	39, // 54: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.CrossingLineCount.accumulated_negative_direction_counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.AccumulatedObjectCount
  3906  	10, // 55: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ActiveZoneCount.annotation:type_name -> google.cloud.visionai.v1alpha1.StreamAnnotation
  3907  	38, // 56: google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ActiveZoneCount.counts:type_name -> google.cloud.visionai.v1alpha1.OccupancyCountingPredictionResult.Stats.ObjectCount
  3908  	46, // 57: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionRequest.StructedInputAnnotation.annotation:type_name -> google.protobuf.Struct
  3909  	46, // 58: google.cloud.visionai.v1alpha1.AppPlatformCloudFunctionResponse.StructedOutputAnnotation.annotation:type_name -> google.protobuf.Struct
  3910  	59, // [59:59] is the sub-list for method output_type
  3911  	59, // [59:59] is the sub-list for method input_type
  3912  	59, // [59:59] is the sub-list for extension type_name
  3913  	59, // [59:59] is the sub-list for extension extendee
  3914  	0,  // [0:59] is the sub-list for field type_name
  3915  }
  3916  
  3917  func init() { file_google_cloud_visionai_v1alpha1_annotations_proto_init() }
  3918  func file_google_cloud_visionai_v1alpha1_annotations_proto_init() {
  3919  	if File_google_cloud_visionai_v1alpha1_annotations_proto != nil {
  3920  		return
  3921  	}
  3922  	if !protoimpl.UnsafeEnabled {
  3923  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3924  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput); i {
  3925  			case 0:
  3926  				return &v.state
  3927  			case 1:
  3928  				return &v.sizeCache
  3929  			case 2:
  3930  				return &v.unknownFields
  3931  			default:
  3932  				return nil
  3933  			}
  3934  		}
  3935  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3936  			switch v := v.(*ObjectDetectionPredictionResult); i {
  3937  			case 0:
  3938  				return &v.state
  3939  			case 1:
  3940  				return &v.sizeCache
  3941  			case 2:
  3942  				return &v.unknownFields
  3943  			default:
  3944  				return nil
  3945  			}
  3946  		}
  3947  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3948  			switch v := v.(*ImageObjectDetectionPredictionResult); i {
  3949  			case 0:
  3950  				return &v.state
  3951  			case 1:
  3952  				return &v.sizeCache
  3953  			case 2:
  3954  				return &v.unknownFields
  3955  			default:
  3956  				return nil
  3957  			}
  3958  		}
  3959  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3960  			switch v := v.(*ClassificationPredictionResult); i {
  3961  			case 0:
  3962  				return &v.state
  3963  			case 1:
  3964  				return &v.sizeCache
  3965  			case 2:
  3966  				return &v.unknownFields
  3967  			default:
  3968  				return nil
  3969  			}
  3970  		}
  3971  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3972  			switch v := v.(*ImageSegmentationPredictionResult); i {
  3973  			case 0:
  3974  				return &v.state
  3975  			case 1:
  3976  				return &v.sizeCache
  3977  			case 2:
  3978  				return &v.unknownFields
  3979  			default:
  3980  				return nil
  3981  			}
  3982  		}
  3983  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3984  			switch v := v.(*VideoActionRecognitionPredictionResult); i {
  3985  			case 0:
  3986  				return &v.state
  3987  			case 1:
  3988  				return &v.sizeCache
  3989  			case 2:
  3990  				return &v.unknownFields
  3991  			default:
  3992  				return nil
  3993  			}
  3994  		}
  3995  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3996  			switch v := v.(*VideoObjectTrackingPredictionResult); i {
  3997  			case 0:
  3998  				return &v.state
  3999  			case 1:
  4000  				return &v.sizeCache
  4001  			case 2:
  4002  				return &v.unknownFields
  4003  			default:
  4004  				return nil
  4005  			}
  4006  		}
  4007  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  4008  			switch v := v.(*VideoClassificationPredictionResult); i {
  4009  			case 0:
  4010  				return &v.state
  4011  			case 1:
  4012  				return &v.sizeCache
  4013  			case 2:
  4014  				return &v.unknownFields
  4015  			default:
  4016  				return nil
  4017  			}
  4018  		}
  4019  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  4020  			switch v := v.(*OccupancyCountingPredictionResult); i {
  4021  			case 0:
  4022  				return &v.state
  4023  			case 1:
  4024  				return &v.sizeCache
  4025  			case 2:
  4026  				return &v.unknownFields
  4027  			default:
  4028  				return nil
  4029  			}
  4030  		}
  4031  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  4032  			switch v := v.(*StreamAnnotation); i {
  4033  			case 0:
  4034  				return &v.state
  4035  			case 1:
  4036  				return &v.sizeCache
  4037  			case 2:
  4038  				return &v.unknownFields
  4039  			default:
  4040  				return nil
  4041  			}
  4042  		}
  4043  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  4044  			switch v := v.(*StreamAnnotations); i {
  4045  			case 0:
  4046  				return &v.state
  4047  			case 1:
  4048  				return &v.sizeCache
  4049  			case 2:
  4050  				return &v.unknownFields
  4051  			default:
  4052  				return nil
  4053  			}
  4054  		}
  4055  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  4056  			switch v := v.(*NormalizedPolygon); i {
  4057  			case 0:
  4058  				return &v.state
  4059  			case 1:
  4060  				return &v.sizeCache
  4061  			case 2:
  4062  				return &v.unknownFields
  4063  			default:
  4064  				return nil
  4065  			}
  4066  		}
  4067  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  4068  			switch v := v.(*NormalizedPolyline); i {
  4069  			case 0:
  4070  				return &v.state
  4071  			case 1:
  4072  				return &v.sizeCache
  4073  			case 2:
  4074  				return &v.unknownFields
  4075  			default:
  4076  				return nil
  4077  			}
  4078  		}
  4079  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  4080  			switch v := v.(*NormalizedVertex); i {
  4081  			case 0:
  4082  				return &v.state
  4083  			case 1:
  4084  				return &v.sizeCache
  4085  			case 2:
  4086  				return &v.unknownFields
  4087  			default:
  4088  				return nil
  4089  			}
  4090  		}
  4091  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  4092  			switch v := v.(*AppPlatformMetadata); i {
  4093  			case 0:
  4094  				return &v.state
  4095  			case 1:
  4096  				return &v.sizeCache
  4097  			case 2:
  4098  				return &v.unknownFields
  4099  			default:
  4100  				return nil
  4101  			}
  4102  		}
  4103  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  4104  			switch v := v.(*AppPlatformCloudFunctionRequest); i {
  4105  			case 0:
  4106  				return &v.state
  4107  			case 1:
  4108  				return &v.sizeCache
  4109  			case 2:
  4110  				return &v.unknownFields
  4111  			default:
  4112  				return nil
  4113  			}
  4114  		}
  4115  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  4116  			switch v := v.(*AppPlatformCloudFunctionResponse); i {
  4117  			case 0:
  4118  				return &v.state
  4119  			case 1:
  4120  				return &v.sizeCache
  4121  			case 2:
  4122  				return &v.unknownFields
  4123  			default:
  4124  				return nil
  4125  			}
  4126  		}
  4127  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  4128  			switch v := v.(*AppPlatformEventBody); i {
  4129  			case 0:
  4130  				return &v.state
  4131  			case 1:
  4132  				return &v.sizeCache
  4133  			case 2:
  4134  				return &v.unknownFields
  4135  			default:
  4136  				return nil
  4137  			}
  4138  		}
  4139  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  4140  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_PersonEntity); i {
  4141  			case 0:
  4142  				return &v.state
  4143  			case 1:
  4144  				return &v.sizeCache
  4145  			case 2:
  4146  				return &v.unknownFields
  4147  			default:
  4148  				return nil
  4149  			}
  4150  		}
  4151  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  4152  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_PPEEntity); i {
  4153  			case 0:
  4154  				return &v.state
  4155  			case 1:
  4156  				return &v.sizeCache
  4157  			case 2:
  4158  				return &v.unknownFields
  4159  			default:
  4160  				return nil
  4161  			}
  4162  		}
  4163  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  4164  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_NormalizedBoundingBox); i {
  4165  			case 0:
  4166  				return &v.state
  4167  			case 1:
  4168  				return &v.sizeCache
  4169  			case 2:
  4170  				return &v.unknownFields
  4171  			default:
  4172  				return nil
  4173  			}
  4174  		}
  4175  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  4176  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_PersonIdentifiedBox); i {
  4177  			case 0:
  4178  				return &v.state
  4179  			case 1:
  4180  				return &v.sizeCache
  4181  			case 2:
  4182  				return &v.unknownFields
  4183  			default:
  4184  				return nil
  4185  			}
  4186  		}
  4187  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  4188  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_PPEIdentifiedBox); i {
  4189  			case 0:
  4190  				return &v.state
  4191  			case 1:
  4192  				return &v.sizeCache
  4193  			case 2:
  4194  				return &v.unknownFields
  4195  			default:
  4196  				return nil
  4197  			}
  4198  		}
  4199  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  4200  			switch v := v.(*PersonalProtectiveEquipmentDetectionOutput_DetectedPerson); i {
  4201  			case 0:
  4202  				return &v.state
  4203  			case 1:
  4204  				return &v.sizeCache
  4205  			case 2:
  4206  				return &v.unknownFields
  4207  			default:
  4208  				return nil
  4209  			}
  4210  		}
  4211  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  4212  			switch v := v.(*ObjectDetectionPredictionResult_Entity); i {
  4213  			case 0:
  4214  				return &v.state
  4215  			case 1:
  4216  				return &v.sizeCache
  4217  			case 2:
  4218  				return &v.unknownFields
  4219  			default:
  4220  				return nil
  4221  			}
  4222  		}
  4223  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  4224  			switch v := v.(*ObjectDetectionPredictionResult_IdentifiedBox); i {
  4225  			case 0:
  4226  				return &v.state
  4227  			case 1:
  4228  				return &v.sizeCache
  4229  			case 2:
  4230  				return &v.unknownFields
  4231  			default:
  4232  				return nil
  4233  			}
  4234  		}
  4235  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  4236  			switch v := v.(*ObjectDetectionPredictionResult_IdentifiedBox_NormalizedBoundingBox); i {
  4237  			case 0:
  4238  				return &v.state
  4239  			case 1:
  4240  				return &v.sizeCache
  4241  			case 2:
  4242  				return &v.unknownFields
  4243  			default:
  4244  				return nil
  4245  			}
  4246  		}
  4247  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
  4248  			switch v := v.(*VideoActionRecognitionPredictionResult_IdentifiedAction); i {
  4249  			case 0:
  4250  				return &v.state
  4251  			case 1:
  4252  				return &v.sizeCache
  4253  			case 2:
  4254  				return &v.unknownFields
  4255  			default:
  4256  				return nil
  4257  			}
  4258  		}
  4259  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
  4260  			switch v := v.(*VideoObjectTrackingPredictionResult_BoundingBox); i {
  4261  			case 0:
  4262  				return &v.state
  4263  			case 1:
  4264  				return &v.sizeCache
  4265  			case 2:
  4266  				return &v.unknownFields
  4267  			default:
  4268  				return nil
  4269  			}
  4270  		}
  4271  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
  4272  			switch v := v.(*VideoObjectTrackingPredictionResult_DetectedObject); i {
  4273  			case 0:
  4274  				return &v.state
  4275  			case 1:
  4276  				return &v.sizeCache
  4277  			case 2:
  4278  				return &v.unknownFields
  4279  			default:
  4280  				return nil
  4281  			}
  4282  		}
  4283  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  4284  			switch v := v.(*VideoClassificationPredictionResult_IdentifiedClassification); i {
  4285  			case 0:
  4286  				return &v.state
  4287  			case 1:
  4288  				return &v.sizeCache
  4289  			case 2:
  4290  				return &v.unknownFields
  4291  			default:
  4292  				return nil
  4293  			}
  4294  		}
  4295  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
  4296  			switch v := v.(*OccupancyCountingPredictionResult_Entity); i {
  4297  			case 0:
  4298  				return &v.state
  4299  			case 1:
  4300  				return &v.sizeCache
  4301  			case 2:
  4302  				return &v.unknownFields
  4303  			default:
  4304  				return nil
  4305  			}
  4306  		}
  4307  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
  4308  			switch v := v.(*OccupancyCountingPredictionResult_IdentifiedBox); i {
  4309  			case 0:
  4310  				return &v.state
  4311  			case 1:
  4312  				return &v.sizeCache
  4313  			case 2:
  4314  				return &v.unknownFields
  4315  			default:
  4316  				return nil
  4317  			}
  4318  		}
  4319  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
  4320  			switch v := v.(*OccupancyCountingPredictionResult_Stats); i {
  4321  			case 0:
  4322  				return &v.state
  4323  			case 1:
  4324  				return &v.sizeCache
  4325  			case 2:
  4326  				return &v.unknownFields
  4327  			default:
  4328  				return nil
  4329  			}
  4330  		}
  4331  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
  4332  			switch v := v.(*OccupancyCountingPredictionResult_TrackInfo); i {
  4333  			case 0:
  4334  				return &v.state
  4335  			case 1:
  4336  				return &v.sizeCache
  4337  			case 2:
  4338  				return &v.unknownFields
  4339  			default:
  4340  				return nil
  4341  			}
  4342  		}
  4343  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
  4344  			switch v := v.(*OccupancyCountingPredictionResult_DwellTimeInfo); i {
  4345  			case 0:
  4346  				return &v.state
  4347  			case 1:
  4348  				return &v.sizeCache
  4349  			case 2:
  4350  				return &v.unknownFields
  4351  			default:
  4352  				return nil
  4353  			}
  4354  		}
  4355  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
  4356  			switch v := v.(*OccupancyCountingPredictionResult_IdentifiedBox_NormalizedBoundingBox); i {
  4357  			case 0:
  4358  				return &v.state
  4359  			case 1:
  4360  				return &v.sizeCache
  4361  			case 2:
  4362  				return &v.unknownFields
  4363  			default:
  4364  				return nil
  4365  			}
  4366  		}
  4367  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
  4368  			switch v := v.(*OccupancyCountingPredictionResult_Stats_ObjectCount); i {
  4369  			case 0:
  4370  				return &v.state
  4371  			case 1:
  4372  				return &v.sizeCache
  4373  			case 2:
  4374  				return &v.unknownFields
  4375  			default:
  4376  				return nil
  4377  			}
  4378  		}
  4379  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
  4380  			switch v := v.(*OccupancyCountingPredictionResult_Stats_AccumulatedObjectCount); i {
  4381  			case 0:
  4382  				return &v.state
  4383  			case 1:
  4384  				return &v.sizeCache
  4385  			case 2:
  4386  				return &v.unknownFields
  4387  			default:
  4388  				return nil
  4389  			}
  4390  		}
  4391  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
  4392  			switch v := v.(*OccupancyCountingPredictionResult_Stats_CrossingLineCount); i {
  4393  			case 0:
  4394  				return &v.state
  4395  			case 1:
  4396  				return &v.sizeCache
  4397  			case 2:
  4398  				return &v.unknownFields
  4399  			default:
  4400  				return nil
  4401  			}
  4402  		}
  4403  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
  4404  			switch v := v.(*OccupancyCountingPredictionResult_Stats_ActiveZoneCount); i {
  4405  			case 0:
  4406  				return &v.state
  4407  			case 1:
  4408  				return &v.sizeCache
  4409  			case 2:
  4410  				return &v.unknownFields
  4411  			default:
  4412  				return nil
  4413  			}
  4414  		}
  4415  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
  4416  			switch v := v.(*AppPlatformCloudFunctionRequest_StructedInputAnnotation); i {
  4417  			case 0:
  4418  				return &v.state
  4419  			case 1:
  4420  				return &v.sizeCache
  4421  			case 2:
  4422  				return &v.unknownFields
  4423  			default:
  4424  				return nil
  4425  			}
  4426  		}
  4427  		file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
  4428  			switch v := v.(*AppPlatformCloudFunctionResponse_StructedOutputAnnotation); i {
  4429  			case 0:
  4430  				return &v.state
  4431  			case 1:
  4432  				return &v.sizeCache
  4433  			case 2:
  4434  				return &v.unknownFields
  4435  			default:
  4436  				return nil
  4437  			}
  4438  		}
  4439  	}
  4440  	file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[9].OneofWrappers = []interface{}{
  4441  		(*StreamAnnotation_ActiveZone)(nil),
  4442  		(*StreamAnnotation_CrossingLine)(nil),
  4443  	}
  4444  	file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes[23].OneofWrappers = []interface{}{}
  4445  	type x struct{}
  4446  	out := protoimpl.TypeBuilder{
  4447  		File: protoimpl.DescBuilder{
  4448  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  4449  			RawDescriptor: file_google_cloud_visionai_v1alpha1_annotations_proto_rawDesc,
  4450  			NumEnums:      1,
  4451  			NumMessages:   43,
  4452  			NumExtensions: 0,
  4453  			NumServices:   0,
  4454  		},
  4455  		GoTypes:           file_google_cloud_visionai_v1alpha1_annotations_proto_goTypes,
  4456  		DependencyIndexes: file_google_cloud_visionai_v1alpha1_annotations_proto_depIdxs,
  4457  		EnumInfos:         file_google_cloud_visionai_v1alpha1_annotations_proto_enumTypes,
  4458  		MessageInfos:      file_google_cloud_visionai_v1alpha1_annotations_proto_msgTypes,
  4459  	}.Build()
  4460  	File_google_cloud_visionai_v1alpha1_annotations_proto = out.File
  4461  	file_google_cloud_visionai_v1alpha1_annotations_proto_rawDesc = nil
  4462  	file_google_cloud_visionai_v1alpha1_annotations_proto_goTypes = nil
  4463  	file_google_cloud_visionai_v1alpha1_annotations_proto_depIdxs = nil
  4464  }
  4465  

View as plain text