...

Source file src/google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1/image_annotator.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1

     1  // Copyright 2019 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  
    16  // Code generated by protoc-gen-go. DO NOT EDIT.
    17  // versions:
    18  // 	protoc-gen-go v1.26.0
    19  // 	protoc        v3.12.2
    20  // source: google/cloud/vision/v1p2beta1/image_annotator.proto
    21  
    22  package vision
    23  
    24  import (
    25  	context "context"
    26  	reflect "reflect"
    27  	sync "sync"
    28  
    29  	_ "google.golang.org/genproto/googleapis/api/annotations"
    30  	longrunning "google.golang.org/genproto/googleapis/longrunning"
    31  	status "google.golang.org/genproto/googleapis/rpc/status"
    32  	color "google.golang.org/genproto/googleapis/type/color"
    33  	latlng "google.golang.org/genproto/googleapis/type/latlng"
    34  	grpc "google.golang.org/grpc"
    35  	codes "google.golang.org/grpc/codes"
    36  	status1 "google.golang.org/grpc/status"
    37  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    38  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    39  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    40  )
    41  
    42  const (
    43  	// Verify that this generated code is sufficiently up-to-date.
    44  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    45  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    46  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    47  )
    48  
    49  // A bucketized representation of likelihood, which is intended to give clients
    50  // highly stable results across model upgrades.
    51  type Likelihood int32
    52  
    53  const (
    54  	// Unknown likelihood.
    55  	Likelihood_UNKNOWN Likelihood = 0
    56  	// It is very unlikely that the image belongs to the specified vertical.
    57  	Likelihood_VERY_UNLIKELY Likelihood = 1
    58  	// It is unlikely that the image belongs to the specified vertical.
    59  	Likelihood_UNLIKELY Likelihood = 2
    60  	// It is possible that the image belongs to the specified vertical.
    61  	Likelihood_POSSIBLE Likelihood = 3
    62  	// It is likely that the image belongs to the specified vertical.
    63  	Likelihood_LIKELY Likelihood = 4
    64  	// It is very likely that the image belongs to the specified vertical.
    65  	Likelihood_VERY_LIKELY Likelihood = 5
    66  )
    67  
    68  // Enum value maps for Likelihood.
    69  var (
    70  	Likelihood_name = map[int32]string{
    71  		0: "UNKNOWN",
    72  		1: "VERY_UNLIKELY",
    73  		2: "UNLIKELY",
    74  		3: "POSSIBLE",
    75  		4: "LIKELY",
    76  		5: "VERY_LIKELY",
    77  	}
    78  	Likelihood_value = map[string]int32{
    79  		"UNKNOWN":       0,
    80  		"VERY_UNLIKELY": 1,
    81  		"UNLIKELY":      2,
    82  		"POSSIBLE":      3,
    83  		"LIKELY":        4,
    84  		"VERY_LIKELY":   5,
    85  	}
    86  )
    87  
    88  func (x Likelihood) Enum() *Likelihood {
    89  	p := new(Likelihood)
    90  	*p = x
    91  	return p
    92  }
    93  
    94  func (x Likelihood) String() string {
    95  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    96  }
    97  
    98  func (Likelihood) Descriptor() protoreflect.EnumDescriptor {
    99  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[0].Descriptor()
   100  }
   101  
   102  func (Likelihood) Type() protoreflect.EnumType {
   103  	return &file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[0]
   104  }
   105  
   106  func (x Likelihood) Number() protoreflect.EnumNumber {
   107  	return protoreflect.EnumNumber(x)
   108  }
   109  
   110  // Deprecated: Use Likelihood.Descriptor instead.
   111  func (Likelihood) EnumDescriptor() ([]byte, []int) {
   112  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{0}
   113  }
   114  
   115  // Type of Google Cloud Vision API feature to be extracted.
   116  type Feature_Type int32
   117  
   118  const (
   119  	// Unspecified feature type.
   120  	Feature_TYPE_UNSPECIFIED Feature_Type = 0
   121  	// Run face detection.
   122  	Feature_FACE_DETECTION Feature_Type = 1
   123  	// Run landmark detection.
   124  	Feature_LANDMARK_DETECTION Feature_Type = 2
   125  	// Run logo detection.
   126  	Feature_LOGO_DETECTION Feature_Type = 3
   127  	// Run label detection.
   128  	Feature_LABEL_DETECTION Feature_Type = 4
   129  	// Run text detection / optical character recognition (OCR). Text detection
   130  	// is optimized for areas of text within a larger image; if the image is
   131  	// a document, use `DOCUMENT_TEXT_DETECTION` instead.
   132  	Feature_TEXT_DETECTION Feature_Type = 5
   133  	// Run dense text document OCR. Takes precedence when both
   134  	// `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.
   135  	Feature_DOCUMENT_TEXT_DETECTION Feature_Type = 11
   136  	// Run Safe Search to detect potentially unsafe
   137  	// or undesirable content.
   138  	Feature_SAFE_SEARCH_DETECTION Feature_Type = 6
   139  	// Compute a set of image properties, such as the
   140  	// image's dominant colors.
   141  	Feature_IMAGE_PROPERTIES Feature_Type = 7
   142  	// Run crop hints.
   143  	Feature_CROP_HINTS Feature_Type = 9
   144  	// Run web detection.
   145  	Feature_WEB_DETECTION Feature_Type = 10
   146  )
   147  
   148  // Enum value maps for Feature_Type.
   149  var (
   150  	Feature_Type_name = map[int32]string{
   151  		0:  "TYPE_UNSPECIFIED",
   152  		1:  "FACE_DETECTION",
   153  		2:  "LANDMARK_DETECTION",
   154  		3:  "LOGO_DETECTION",
   155  		4:  "LABEL_DETECTION",
   156  		5:  "TEXT_DETECTION",
   157  		11: "DOCUMENT_TEXT_DETECTION",
   158  		6:  "SAFE_SEARCH_DETECTION",
   159  		7:  "IMAGE_PROPERTIES",
   160  		9:  "CROP_HINTS",
   161  		10: "WEB_DETECTION",
   162  	}
   163  	Feature_Type_value = map[string]int32{
   164  		"TYPE_UNSPECIFIED":        0,
   165  		"FACE_DETECTION":          1,
   166  		"LANDMARK_DETECTION":      2,
   167  		"LOGO_DETECTION":          3,
   168  		"LABEL_DETECTION":         4,
   169  		"TEXT_DETECTION":          5,
   170  		"DOCUMENT_TEXT_DETECTION": 11,
   171  		"SAFE_SEARCH_DETECTION":   6,
   172  		"IMAGE_PROPERTIES":        7,
   173  		"CROP_HINTS":              9,
   174  		"WEB_DETECTION":           10,
   175  	}
   176  )
   177  
   178  func (x Feature_Type) Enum() *Feature_Type {
   179  	p := new(Feature_Type)
   180  	*p = x
   181  	return p
   182  }
   183  
   184  func (x Feature_Type) String() string {
   185  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   186  }
   187  
   188  func (Feature_Type) Descriptor() protoreflect.EnumDescriptor {
   189  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[1].Descriptor()
   190  }
   191  
   192  func (Feature_Type) Type() protoreflect.EnumType {
   193  	return &file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[1]
   194  }
   195  
   196  func (x Feature_Type) Number() protoreflect.EnumNumber {
   197  	return protoreflect.EnumNumber(x)
   198  }
   199  
   200  // Deprecated: Use Feature_Type.Descriptor instead.
   201  func (Feature_Type) EnumDescriptor() ([]byte, []int) {
   202  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{0, 0}
   203  }
   204  
   205  // Face landmark (feature) type.
   206  // Left and right are defined from the vantage of the viewer of the image
   207  // without considering mirror projections typical of photos. So, `LEFT_EYE`,
   208  // typically, is the person's right eye.
   209  type FaceAnnotation_Landmark_Type int32
   210  
   211  const (
   212  	// Unknown face landmark detected. Should not be filled.
   213  	FaceAnnotation_Landmark_UNKNOWN_LANDMARK FaceAnnotation_Landmark_Type = 0
   214  	// Left eye.
   215  	FaceAnnotation_Landmark_LEFT_EYE FaceAnnotation_Landmark_Type = 1
   216  	// Right eye.
   217  	FaceAnnotation_Landmark_RIGHT_EYE FaceAnnotation_Landmark_Type = 2
   218  	// Left of left eyebrow.
   219  	FaceAnnotation_Landmark_LEFT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 3
   220  	// Right of left eyebrow.
   221  	FaceAnnotation_Landmark_RIGHT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 4
   222  	// Left of right eyebrow.
   223  	FaceAnnotation_Landmark_LEFT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 5
   224  	// Right of right eyebrow.
   225  	FaceAnnotation_Landmark_RIGHT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 6
   226  	// Midpoint between eyes.
   227  	FaceAnnotation_Landmark_MIDPOINT_BETWEEN_EYES FaceAnnotation_Landmark_Type = 7
   228  	// Nose tip.
   229  	FaceAnnotation_Landmark_NOSE_TIP FaceAnnotation_Landmark_Type = 8
   230  	// Upper lip.
   231  	FaceAnnotation_Landmark_UPPER_LIP FaceAnnotation_Landmark_Type = 9
   232  	// Lower lip.
   233  	FaceAnnotation_Landmark_LOWER_LIP FaceAnnotation_Landmark_Type = 10
   234  	// Mouth left.
   235  	FaceAnnotation_Landmark_MOUTH_LEFT FaceAnnotation_Landmark_Type = 11
   236  	// Mouth right.
   237  	FaceAnnotation_Landmark_MOUTH_RIGHT FaceAnnotation_Landmark_Type = 12
   238  	// Mouth center.
   239  	FaceAnnotation_Landmark_MOUTH_CENTER FaceAnnotation_Landmark_Type = 13
   240  	// Nose, bottom right.
   241  	FaceAnnotation_Landmark_NOSE_BOTTOM_RIGHT FaceAnnotation_Landmark_Type = 14
   242  	// Nose, bottom left.
   243  	FaceAnnotation_Landmark_NOSE_BOTTOM_LEFT FaceAnnotation_Landmark_Type = 15
   244  	// Nose, bottom center.
   245  	FaceAnnotation_Landmark_NOSE_BOTTOM_CENTER FaceAnnotation_Landmark_Type = 16
   246  	// Left eye, top boundary.
   247  	FaceAnnotation_Landmark_LEFT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 17
   248  	// Left eye, right corner.
   249  	FaceAnnotation_Landmark_LEFT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 18
   250  	// Left eye, bottom boundary.
   251  	FaceAnnotation_Landmark_LEFT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 19
   252  	// Left eye, left corner.
   253  	FaceAnnotation_Landmark_LEFT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 20
   254  	// Right eye, top boundary.
   255  	FaceAnnotation_Landmark_RIGHT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 21
   256  	// Right eye, right corner.
   257  	FaceAnnotation_Landmark_RIGHT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 22
   258  	// Right eye, bottom boundary.
   259  	FaceAnnotation_Landmark_RIGHT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 23
   260  	// Right eye, left corner.
   261  	FaceAnnotation_Landmark_RIGHT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 24
   262  	// Left eyebrow, upper midpoint.
   263  	FaceAnnotation_Landmark_LEFT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 25
   264  	// Right eyebrow, upper midpoint.
   265  	FaceAnnotation_Landmark_RIGHT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 26
   266  	// Left ear tragion.
   267  	FaceAnnotation_Landmark_LEFT_EAR_TRAGION FaceAnnotation_Landmark_Type = 27
   268  	// Right ear tragion.
   269  	FaceAnnotation_Landmark_RIGHT_EAR_TRAGION FaceAnnotation_Landmark_Type = 28
   270  	// Left eye pupil.
   271  	FaceAnnotation_Landmark_LEFT_EYE_PUPIL FaceAnnotation_Landmark_Type = 29
   272  	// Right eye pupil.
   273  	FaceAnnotation_Landmark_RIGHT_EYE_PUPIL FaceAnnotation_Landmark_Type = 30
   274  	// Forehead glabella.
   275  	FaceAnnotation_Landmark_FOREHEAD_GLABELLA FaceAnnotation_Landmark_Type = 31
   276  	// Chin gnathion.
   277  	FaceAnnotation_Landmark_CHIN_GNATHION FaceAnnotation_Landmark_Type = 32
   278  	// Chin left gonion.
   279  	FaceAnnotation_Landmark_CHIN_LEFT_GONION FaceAnnotation_Landmark_Type = 33
   280  	// Chin right gonion.
   281  	FaceAnnotation_Landmark_CHIN_RIGHT_GONION FaceAnnotation_Landmark_Type = 34
   282  )
   283  
   284  // Enum value maps for FaceAnnotation_Landmark_Type.
   285  var (
   286  	FaceAnnotation_Landmark_Type_name = map[int32]string{
   287  		0:  "UNKNOWN_LANDMARK",
   288  		1:  "LEFT_EYE",
   289  		2:  "RIGHT_EYE",
   290  		3:  "LEFT_OF_LEFT_EYEBROW",
   291  		4:  "RIGHT_OF_LEFT_EYEBROW",
   292  		5:  "LEFT_OF_RIGHT_EYEBROW",
   293  		6:  "RIGHT_OF_RIGHT_EYEBROW",
   294  		7:  "MIDPOINT_BETWEEN_EYES",
   295  		8:  "NOSE_TIP",
   296  		9:  "UPPER_LIP",
   297  		10: "LOWER_LIP",
   298  		11: "MOUTH_LEFT",
   299  		12: "MOUTH_RIGHT",
   300  		13: "MOUTH_CENTER",
   301  		14: "NOSE_BOTTOM_RIGHT",
   302  		15: "NOSE_BOTTOM_LEFT",
   303  		16: "NOSE_BOTTOM_CENTER",
   304  		17: "LEFT_EYE_TOP_BOUNDARY",
   305  		18: "LEFT_EYE_RIGHT_CORNER",
   306  		19: "LEFT_EYE_BOTTOM_BOUNDARY",
   307  		20: "LEFT_EYE_LEFT_CORNER",
   308  		21: "RIGHT_EYE_TOP_BOUNDARY",
   309  		22: "RIGHT_EYE_RIGHT_CORNER",
   310  		23: "RIGHT_EYE_BOTTOM_BOUNDARY",
   311  		24: "RIGHT_EYE_LEFT_CORNER",
   312  		25: "LEFT_EYEBROW_UPPER_MIDPOINT",
   313  		26: "RIGHT_EYEBROW_UPPER_MIDPOINT",
   314  		27: "LEFT_EAR_TRAGION",
   315  		28: "RIGHT_EAR_TRAGION",
   316  		29: "LEFT_EYE_PUPIL",
   317  		30: "RIGHT_EYE_PUPIL",
   318  		31: "FOREHEAD_GLABELLA",
   319  		32: "CHIN_GNATHION",
   320  		33: "CHIN_LEFT_GONION",
   321  		34: "CHIN_RIGHT_GONION",
   322  	}
   323  	FaceAnnotation_Landmark_Type_value = map[string]int32{
   324  		"UNKNOWN_LANDMARK":             0,
   325  		"LEFT_EYE":                     1,
   326  		"RIGHT_EYE":                    2,
   327  		"LEFT_OF_LEFT_EYEBROW":         3,
   328  		"RIGHT_OF_LEFT_EYEBROW":        4,
   329  		"LEFT_OF_RIGHT_EYEBROW":        5,
   330  		"RIGHT_OF_RIGHT_EYEBROW":       6,
   331  		"MIDPOINT_BETWEEN_EYES":        7,
   332  		"NOSE_TIP":                     8,
   333  		"UPPER_LIP":                    9,
   334  		"LOWER_LIP":                    10,
   335  		"MOUTH_LEFT":                   11,
   336  		"MOUTH_RIGHT":                  12,
   337  		"MOUTH_CENTER":                 13,
   338  		"NOSE_BOTTOM_RIGHT":            14,
   339  		"NOSE_BOTTOM_LEFT":             15,
   340  		"NOSE_BOTTOM_CENTER":           16,
   341  		"LEFT_EYE_TOP_BOUNDARY":        17,
   342  		"LEFT_EYE_RIGHT_CORNER":        18,
   343  		"LEFT_EYE_BOTTOM_BOUNDARY":     19,
   344  		"LEFT_EYE_LEFT_CORNER":         20,
   345  		"RIGHT_EYE_TOP_BOUNDARY":       21,
   346  		"RIGHT_EYE_RIGHT_CORNER":       22,
   347  		"RIGHT_EYE_BOTTOM_BOUNDARY":    23,
   348  		"RIGHT_EYE_LEFT_CORNER":        24,
   349  		"LEFT_EYEBROW_UPPER_MIDPOINT":  25,
   350  		"RIGHT_EYEBROW_UPPER_MIDPOINT": 26,
   351  		"LEFT_EAR_TRAGION":             27,
   352  		"RIGHT_EAR_TRAGION":            28,
   353  		"LEFT_EYE_PUPIL":               29,
   354  		"RIGHT_EYE_PUPIL":              30,
   355  		"FOREHEAD_GLABELLA":            31,
   356  		"CHIN_GNATHION":                32,
   357  		"CHIN_LEFT_GONION":             33,
   358  		"CHIN_RIGHT_GONION":            34,
   359  	}
   360  )
   361  
   362  func (x FaceAnnotation_Landmark_Type) Enum() *FaceAnnotation_Landmark_Type {
   363  	p := new(FaceAnnotation_Landmark_Type)
   364  	*p = x
   365  	return p
   366  }
   367  
   368  func (x FaceAnnotation_Landmark_Type) String() string {
   369  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   370  }
   371  
   372  func (FaceAnnotation_Landmark_Type) Descriptor() protoreflect.EnumDescriptor {
   373  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[2].Descriptor()
   374  }
   375  
   376  func (FaceAnnotation_Landmark_Type) Type() protoreflect.EnumType {
   377  	return &file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[2]
   378  }
   379  
   380  func (x FaceAnnotation_Landmark_Type) Number() protoreflect.EnumNumber {
   381  	return protoreflect.EnumNumber(x)
   382  }
   383  
   384  // Deprecated: Use FaceAnnotation_Landmark_Type.Descriptor instead.
   385  func (FaceAnnotation_Landmark_Type) EnumDescriptor() ([]byte, []int) {
   386  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{3, 0, 0}
   387  }
   388  
   389  // Batch operation states.
   390  type OperationMetadata_State int32
   391  
   392  const (
   393  	// Invalid.
   394  	OperationMetadata_STATE_UNSPECIFIED OperationMetadata_State = 0
   395  	// Request is received.
   396  	OperationMetadata_CREATED OperationMetadata_State = 1
   397  	// Request is actively being processed.
   398  	OperationMetadata_RUNNING OperationMetadata_State = 2
   399  	// The batch processing is done.
   400  	OperationMetadata_DONE OperationMetadata_State = 3
   401  	// The batch processing was cancelled.
   402  	OperationMetadata_CANCELLED OperationMetadata_State = 4
   403  )
   404  
   405  // Enum value maps for OperationMetadata_State.
   406  var (
   407  	OperationMetadata_State_name = map[int32]string{
   408  		0: "STATE_UNSPECIFIED",
   409  		1: "CREATED",
   410  		2: "RUNNING",
   411  		3: "DONE",
   412  		4: "CANCELLED",
   413  	}
   414  	OperationMetadata_State_value = map[string]int32{
   415  		"STATE_UNSPECIFIED": 0,
   416  		"CREATED":           1,
   417  		"RUNNING":           2,
   418  		"DONE":              3,
   419  		"CANCELLED":         4,
   420  	}
   421  )
   422  
   423  func (x OperationMetadata_State) Enum() *OperationMetadata_State {
   424  	p := new(OperationMetadata_State)
   425  	*p = x
   426  	return p
   427  }
   428  
   429  func (x OperationMetadata_State) String() string {
   430  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   431  }
   432  
   433  func (OperationMetadata_State) Descriptor() protoreflect.EnumDescriptor {
   434  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[3].Descriptor()
   435  }
   436  
   437  func (OperationMetadata_State) Type() protoreflect.EnumType {
   438  	return &file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes[3]
   439  }
   440  
   441  func (x OperationMetadata_State) Number() protoreflect.EnumNumber {
   442  	return protoreflect.EnumNumber(x)
   443  }
   444  
   445  // Deprecated: Use OperationMetadata_State.Descriptor instead.
   446  func (OperationMetadata_State) EnumDescriptor() ([]byte, []int) {
   447  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{32, 0}
   448  }
   449  
   450  // The type of Google Cloud Vision API detection to perform, and the maximum
   451  // number of results to return for that type. Multiple `Feature` objects can
   452  // be specified in the `features` list.
   453  type Feature struct {
   454  	state         protoimpl.MessageState
   455  	sizeCache     protoimpl.SizeCache
   456  	unknownFields protoimpl.UnknownFields
   457  
   458  	// The feature type.
   459  	Type Feature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.vision.v1p2beta1.Feature_Type" json:"type,omitempty"`
   460  	// Maximum number of results of this type. Does not apply to
   461  	// `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.
   462  	MaxResults int32 `protobuf:"varint,2,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"`
   463  	// Model to use for the feature.
   464  	// Supported values: "builtin/stable" (the default if unset) and
   465  	// "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
   466  	// support "builtin/weekly" for the bleeding edge release updated weekly.
   467  	Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"`
   468  }
   469  
   470  func (x *Feature) Reset() {
   471  	*x = Feature{}
   472  	if protoimpl.UnsafeEnabled {
   473  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[0]
   474  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   475  		ms.StoreMessageInfo(mi)
   476  	}
   477  }
   478  
   479  func (x *Feature) String() string {
   480  	return protoimpl.X.MessageStringOf(x)
   481  }
   482  
   483  func (*Feature) ProtoMessage() {}
   484  
   485  func (x *Feature) ProtoReflect() protoreflect.Message {
   486  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[0]
   487  	if protoimpl.UnsafeEnabled && x != nil {
   488  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   489  		if ms.LoadMessageInfo() == nil {
   490  			ms.StoreMessageInfo(mi)
   491  		}
   492  		return ms
   493  	}
   494  	return mi.MessageOf(x)
   495  }
   496  
   497  // Deprecated: Use Feature.ProtoReflect.Descriptor instead.
   498  func (*Feature) Descriptor() ([]byte, []int) {
   499  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{0}
   500  }
   501  
   502  func (x *Feature) GetType() Feature_Type {
   503  	if x != nil {
   504  		return x.Type
   505  	}
   506  	return Feature_TYPE_UNSPECIFIED
   507  }
   508  
   509  func (x *Feature) GetMaxResults() int32 {
   510  	if x != nil {
   511  		return x.MaxResults
   512  	}
   513  	return 0
   514  }
   515  
   516  func (x *Feature) GetModel() string {
   517  	if x != nil {
   518  		return x.Model
   519  	}
   520  	return ""
   521  }
   522  
   523  // External image source (Google Cloud Storage or web URL image location).
   524  type ImageSource struct {
   525  	state         protoimpl.MessageState
   526  	sizeCache     protoimpl.SizeCache
   527  	unknownFields protoimpl.UnknownFields
   528  
   529  	// **Use `image_uri` instead.**
   530  	//
   531  	// The Google Cloud Storage  URI of the form
   532  	// `gs://bucket_name/object_name`. Object versioning is not supported. See
   533  	// [Google Cloud Storage Request
   534  	// URIs](https://cloud.google.com/storage/docs/reference-uris) for more info.
   535  	GcsImageUri string `protobuf:"bytes,1,opt,name=gcs_image_uri,json=gcsImageUri,proto3" json:"gcs_image_uri,omitempty"`
   536  	// The URI of the source image. Can be either:
   537  	//
   538  	//  1. A Google Cloud Storage URI of the form
   539  	//     `gs://bucket_name/object_name`. Object versioning is not supported. See
   540  	//     [Google Cloud Storage Request
   541  	//     URIs](https://cloud.google.com/storage/docs/reference-uris) for more
   542  	//     info.
   543  	//
   544  	//  2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from
   545  	//     HTTP/HTTPS URLs, Google cannot guarantee that the request will be
   546  	//     completed. Your request may fail if the specified host denies the
   547  	//     request (e.g. due to request throttling or DOS prevention), or if Google
   548  	//     throttles requests to the site for abuse prevention. You should not
   549  	//     depend on externally-hosted images for production applications.
   550  	//
   551  	// When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
   552  	// precedence.
   553  	ImageUri string `protobuf:"bytes,2,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
   554  }
   555  
   556  func (x *ImageSource) Reset() {
   557  	*x = ImageSource{}
   558  	if protoimpl.UnsafeEnabled {
   559  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[1]
   560  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   561  		ms.StoreMessageInfo(mi)
   562  	}
   563  }
   564  
   565  func (x *ImageSource) String() string {
   566  	return protoimpl.X.MessageStringOf(x)
   567  }
   568  
   569  func (*ImageSource) ProtoMessage() {}
   570  
   571  func (x *ImageSource) ProtoReflect() protoreflect.Message {
   572  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[1]
   573  	if protoimpl.UnsafeEnabled && x != nil {
   574  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   575  		if ms.LoadMessageInfo() == nil {
   576  			ms.StoreMessageInfo(mi)
   577  		}
   578  		return ms
   579  	}
   580  	return mi.MessageOf(x)
   581  }
   582  
   583  // Deprecated: Use ImageSource.ProtoReflect.Descriptor instead.
   584  func (*ImageSource) Descriptor() ([]byte, []int) {
   585  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{1}
   586  }
   587  
   588  func (x *ImageSource) GetGcsImageUri() string {
   589  	if x != nil {
   590  		return x.GcsImageUri
   591  	}
   592  	return ""
   593  }
   594  
   595  func (x *ImageSource) GetImageUri() string {
   596  	if x != nil {
   597  		return x.ImageUri
   598  	}
   599  	return ""
   600  }
   601  
   602  // Client image to perform Google Cloud Vision API tasks over.
   603  type Image struct {
   604  	state         protoimpl.MessageState
   605  	sizeCache     protoimpl.SizeCache
   606  	unknownFields protoimpl.UnknownFields
   607  
   608  	// Image content, represented as a stream of bytes.
   609  	// Note: As with all `bytes` fields, protobuffers use a pure binary
   610  	// representation, whereas JSON representations use base64.
   611  	Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
   612  	// Google Cloud Storage image location, or publicly-accessible image
   613  	// URL. If both `content` and `source` are provided for an image, `content`
   614  	// takes precedence and is used to perform the image annotation request.
   615  	Source *ImageSource `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
   616  }
   617  
   618  func (x *Image) Reset() {
   619  	*x = Image{}
   620  	if protoimpl.UnsafeEnabled {
   621  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[2]
   622  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   623  		ms.StoreMessageInfo(mi)
   624  	}
   625  }
   626  
   627  func (x *Image) String() string {
   628  	return protoimpl.X.MessageStringOf(x)
   629  }
   630  
   631  func (*Image) ProtoMessage() {}
   632  
   633  func (x *Image) ProtoReflect() protoreflect.Message {
   634  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[2]
   635  	if protoimpl.UnsafeEnabled && x != nil {
   636  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   637  		if ms.LoadMessageInfo() == nil {
   638  			ms.StoreMessageInfo(mi)
   639  		}
   640  		return ms
   641  	}
   642  	return mi.MessageOf(x)
   643  }
   644  
   645  // Deprecated: Use Image.ProtoReflect.Descriptor instead.
   646  func (*Image) Descriptor() ([]byte, []int) {
   647  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{2}
   648  }
   649  
   650  func (x *Image) GetContent() []byte {
   651  	if x != nil {
   652  		return x.Content
   653  	}
   654  	return nil
   655  }
   656  
   657  func (x *Image) GetSource() *ImageSource {
   658  	if x != nil {
   659  		return x.Source
   660  	}
   661  	return nil
   662  }
   663  
   664  // A face annotation object contains the results of face detection.
   665  type FaceAnnotation struct {
   666  	state         protoimpl.MessageState
   667  	sizeCache     protoimpl.SizeCache
   668  	unknownFields protoimpl.UnknownFields
   669  
   670  	// The bounding polygon around the face. The coordinates of the bounding box
   671  	// are in the original image's scale, as returned in `ImageParams`.
   672  	// The bounding box is computed to "frame" the face in accordance with human
   673  	// expectations. It is based on the landmarker results.
   674  	// Note that one or more x and/or y coordinates may not be generated in the
   675  	// `BoundingPoly` (the polygon will be unbounded) if only a partial face
   676  	// appears in the image to be annotated.
   677  	BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
   678  	// The `fd_bounding_poly` bounding polygon is tighter than the
   679  	// `boundingPoly`, and encloses only the skin part of the face. Typically, it
   680  	// is used to eliminate the face from any image analysis that detects the
   681  	// "amount of skin" visible in an image. It is not based on the
   682  	// landmarker results, only on the initial face detection, hence
   683  	// the <code>fd</code> (face detection) prefix.
   684  	FdBoundingPoly *BoundingPoly `protobuf:"bytes,2,opt,name=fd_bounding_poly,json=fdBoundingPoly,proto3" json:"fd_bounding_poly,omitempty"`
   685  	// Detected face landmarks.
   686  	Landmarks []*FaceAnnotation_Landmark `protobuf:"bytes,3,rep,name=landmarks,proto3" json:"landmarks,omitempty"`
   687  	// Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
   688  	// of the face relative to the image vertical about the axis perpendicular to
   689  	// the face. Range [-180,180].
   690  	RollAngle float32 `protobuf:"fixed32,4,opt,name=roll_angle,json=rollAngle,proto3" json:"roll_angle,omitempty"`
   691  	// Yaw angle, which indicates the leftward/rightward angle that the face is
   692  	// pointing relative to the vertical plane perpendicular to the image. Range
   693  	// [-180,180].
   694  	PanAngle float32 `protobuf:"fixed32,5,opt,name=pan_angle,json=panAngle,proto3" json:"pan_angle,omitempty"`
   695  	// Pitch angle, which indicates the upwards/downwards angle that the face is
   696  	// pointing relative to the image's horizontal plane. Range [-180,180].
   697  	TiltAngle float32 `protobuf:"fixed32,6,opt,name=tilt_angle,json=tiltAngle,proto3" json:"tilt_angle,omitempty"`
   698  	// Detection confidence. Range [0, 1].
   699  	DetectionConfidence float32 `protobuf:"fixed32,7,opt,name=detection_confidence,json=detectionConfidence,proto3" json:"detection_confidence,omitempty"`
   700  	// Face landmarking confidence. Range [0, 1].
   701  	LandmarkingConfidence float32 `protobuf:"fixed32,8,opt,name=landmarking_confidence,json=landmarkingConfidence,proto3" json:"landmarking_confidence,omitempty"`
   702  	// Joy likelihood.
   703  	JoyLikelihood Likelihood `protobuf:"varint,9,opt,name=joy_likelihood,json=joyLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"joy_likelihood,omitempty"`
   704  	// Sorrow likelihood.
   705  	SorrowLikelihood Likelihood `protobuf:"varint,10,opt,name=sorrow_likelihood,json=sorrowLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"sorrow_likelihood,omitempty"`
   706  	// Anger likelihood.
   707  	AngerLikelihood Likelihood `protobuf:"varint,11,opt,name=anger_likelihood,json=angerLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"anger_likelihood,omitempty"`
   708  	// Surprise likelihood.
   709  	SurpriseLikelihood Likelihood `protobuf:"varint,12,opt,name=surprise_likelihood,json=surpriseLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"surprise_likelihood,omitempty"`
   710  	// Under-exposed likelihood.
   711  	UnderExposedLikelihood Likelihood `protobuf:"varint,13,opt,name=under_exposed_likelihood,json=underExposedLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"under_exposed_likelihood,omitempty"`
   712  	// Blurred likelihood.
   713  	BlurredLikelihood Likelihood `protobuf:"varint,14,opt,name=blurred_likelihood,json=blurredLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"blurred_likelihood,omitempty"`
   714  	// Headwear likelihood.
   715  	HeadwearLikelihood Likelihood `protobuf:"varint,15,opt,name=headwear_likelihood,json=headwearLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"headwear_likelihood,omitempty"`
   716  }
   717  
   718  func (x *FaceAnnotation) Reset() {
   719  	*x = FaceAnnotation{}
   720  	if protoimpl.UnsafeEnabled {
   721  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[3]
   722  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   723  		ms.StoreMessageInfo(mi)
   724  	}
   725  }
   726  
   727  func (x *FaceAnnotation) String() string {
   728  	return protoimpl.X.MessageStringOf(x)
   729  }
   730  
   731  func (*FaceAnnotation) ProtoMessage() {}
   732  
   733  func (x *FaceAnnotation) ProtoReflect() protoreflect.Message {
   734  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[3]
   735  	if protoimpl.UnsafeEnabled && x != nil {
   736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   737  		if ms.LoadMessageInfo() == nil {
   738  			ms.StoreMessageInfo(mi)
   739  		}
   740  		return ms
   741  	}
   742  	return mi.MessageOf(x)
   743  }
   744  
   745  // Deprecated: Use FaceAnnotation.ProtoReflect.Descriptor instead.
   746  func (*FaceAnnotation) Descriptor() ([]byte, []int) {
   747  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{3}
   748  }
   749  
   750  func (x *FaceAnnotation) GetBoundingPoly() *BoundingPoly {
   751  	if x != nil {
   752  		return x.BoundingPoly
   753  	}
   754  	return nil
   755  }
   756  
   757  func (x *FaceAnnotation) GetFdBoundingPoly() *BoundingPoly {
   758  	if x != nil {
   759  		return x.FdBoundingPoly
   760  	}
   761  	return nil
   762  }
   763  
   764  func (x *FaceAnnotation) GetLandmarks() []*FaceAnnotation_Landmark {
   765  	if x != nil {
   766  		return x.Landmarks
   767  	}
   768  	return nil
   769  }
   770  
   771  func (x *FaceAnnotation) GetRollAngle() float32 {
   772  	if x != nil {
   773  		return x.RollAngle
   774  	}
   775  	return 0
   776  }
   777  
   778  func (x *FaceAnnotation) GetPanAngle() float32 {
   779  	if x != nil {
   780  		return x.PanAngle
   781  	}
   782  	return 0
   783  }
   784  
   785  func (x *FaceAnnotation) GetTiltAngle() float32 {
   786  	if x != nil {
   787  		return x.TiltAngle
   788  	}
   789  	return 0
   790  }
   791  
   792  func (x *FaceAnnotation) GetDetectionConfidence() float32 {
   793  	if x != nil {
   794  		return x.DetectionConfidence
   795  	}
   796  	return 0
   797  }
   798  
   799  func (x *FaceAnnotation) GetLandmarkingConfidence() float32 {
   800  	if x != nil {
   801  		return x.LandmarkingConfidence
   802  	}
   803  	return 0
   804  }
   805  
   806  func (x *FaceAnnotation) GetJoyLikelihood() Likelihood {
   807  	if x != nil {
   808  		return x.JoyLikelihood
   809  	}
   810  	return Likelihood_UNKNOWN
   811  }
   812  
   813  func (x *FaceAnnotation) GetSorrowLikelihood() Likelihood {
   814  	if x != nil {
   815  		return x.SorrowLikelihood
   816  	}
   817  	return Likelihood_UNKNOWN
   818  }
   819  
   820  func (x *FaceAnnotation) GetAngerLikelihood() Likelihood {
   821  	if x != nil {
   822  		return x.AngerLikelihood
   823  	}
   824  	return Likelihood_UNKNOWN
   825  }
   826  
   827  func (x *FaceAnnotation) GetSurpriseLikelihood() Likelihood {
   828  	if x != nil {
   829  		return x.SurpriseLikelihood
   830  	}
   831  	return Likelihood_UNKNOWN
   832  }
   833  
   834  func (x *FaceAnnotation) GetUnderExposedLikelihood() Likelihood {
   835  	if x != nil {
   836  		return x.UnderExposedLikelihood
   837  	}
   838  	return Likelihood_UNKNOWN
   839  }
   840  
   841  func (x *FaceAnnotation) GetBlurredLikelihood() Likelihood {
   842  	if x != nil {
   843  		return x.BlurredLikelihood
   844  	}
   845  	return Likelihood_UNKNOWN
   846  }
   847  
   848  func (x *FaceAnnotation) GetHeadwearLikelihood() Likelihood {
   849  	if x != nil {
   850  		return x.HeadwearLikelihood
   851  	}
   852  	return Likelihood_UNKNOWN
   853  }
   854  
   855  // Detected entity location information.
   856  type LocationInfo struct {
   857  	state         protoimpl.MessageState
   858  	sizeCache     protoimpl.SizeCache
   859  	unknownFields protoimpl.UnknownFields
   860  
   861  	// lat/long location coordinates.
   862  	LatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=lat_lng,json=latLng,proto3" json:"lat_lng,omitempty"`
   863  }
   864  
   865  func (x *LocationInfo) Reset() {
   866  	*x = LocationInfo{}
   867  	if protoimpl.UnsafeEnabled {
   868  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[4]
   869  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   870  		ms.StoreMessageInfo(mi)
   871  	}
   872  }
   873  
   874  func (x *LocationInfo) String() string {
   875  	return protoimpl.X.MessageStringOf(x)
   876  }
   877  
   878  func (*LocationInfo) ProtoMessage() {}
   879  
   880  func (x *LocationInfo) ProtoReflect() protoreflect.Message {
   881  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[4]
   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 LocationInfo.ProtoReflect.Descriptor instead.
   893  func (*LocationInfo) Descriptor() ([]byte, []int) {
   894  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{4}
   895  }
   896  
   897  func (x *LocationInfo) GetLatLng() *latlng.LatLng {
   898  	if x != nil {
   899  		return x.LatLng
   900  	}
   901  	return nil
   902  }
   903  
   904  // A `Property` consists of a user-supplied name/value pair.
   905  type Property struct {
   906  	state         protoimpl.MessageState
   907  	sizeCache     protoimpl.SizeCache
   908  	unknownFields protoimpl.UnknownFields
   909  
   910  	// Name of the property.
   911  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   912  	// Value of the property.
   913  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   914  	// Value of numeric properties.
   915  	Uint64Value uint64 `protobuf:"varint,3,opt,name=uint64_value,json=uint64Value,proto3" json:"uint64_value,omitempty"`
   916  }
   917  
   918  func (x *Property) Reset() {
   919  	*x = Property{}
   920  	if protoimpl.UnsafeEnabled {
   921  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[5]
   922  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   923  		ms.StoreMessageInfo(mi)
   924  	}
   925  }
   926  
   927  func (x *Property) String() string {
   928  	return protoimpl.X.MessageStringOf(x)
   929  }
   930  
   931  func (*Property) ProtoMessage() {}
   932  
   933  func (x *Property) ProtoReflect() protoreflect.Message {
   934  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[5]
   935  	if protoimpl.UnsafeEnabled && x != nil {
   936  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   937  		if ms.LoadMessageInfo() == nil {
   938  			ms.StoreMessageInfo(mi)
   939  		}
   940  		return ms
   941  	}
   942  	return mi.MessageOf(x)
   943  }
   944  
   945  // Deprecated: Use Property.ProtoReflect.Descriptor instead.
   946  func (*Property) Descriptor() ([]byte, []int) {
   947  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{5}
   948  }
   949  
   950  func (x *Property) GetName() string {
   951  	if x != nil {
   952  		return x.Name
   953  	}
   954  	return ""
   955  }
   956  
   957  func (x *Property) GetValue() string {
   958  	if x != nil {
   959  		return x.Value
   960  	}
   961  	return ""
   962  }
   963  
   964  func (x *Property) GetUint64Value() uint64 {
   965  	if x != nil {
   966  		return x.Uint64Value
   967  	}
   968  	return 0
   969  }
   970  
   971  // Set of detected entity features.
   972  type EntityAnnotation struct {
   973  	state         protoimpl.MessageState
   974  	sizeCache     protoimpl.SizeCache
   975  	unknownFields protoimpl.UnknownFields
   976  
   977  	// Opaque entity ID. Some IDs may be available in
   978  	// [Google Knowledge Graph Search
   979  	// API](https://developers.google.com/knowledge-graph/).
   980  	Mid string `protobuf:"bytes,1,opt,name=mid,proto3" json:"mid,omitempty"`
   981  	// The language code for the locale in which the entity textual
   982  	// `description` is expressed.
   983  	Locale string `protobuf:"bytes,2,opt,name=locale,proto3" json:"locale,omitempty"`
   984  	// Entity textual description, expressed in its `locale` language.
   985  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   986  	// Overall score of the result. Range [0, 1].
   987  	Score float32 `protobuf:"fixed32,4,opt,name=score,proto3" json:"score,omitempty"`
   988  	// **Deprecated. Use `score` instead.**
   989  	// The accuracy of the entity detection in an image.
   990  	// For example, for an image in which the "Eiffel Tower" entity is detected,
   991  	// this field represents the confidence that there is a tower in the query
   992  	// image. Range [0, 1].
   993  	Confidence float32 `protobuf:"fixed32,5,opt,name=confidence,proto3" json:"confidence,omitempty"`
   994  	// The relevancy of the ICA (Image Content Annotation) label to the
   995  	// image. For example, the relevancy of "tower" is likely higher to an image
   996  	// containing the detected "Eiffel Tower" than to an image containing a
   997  	// detected distant towering building, even though the confidence that
   998  	// there is a tower in each image may be the same. Range [0, 1].
   999  	Topicality float32 `protobuf:"fixed32,6,opt,name=topicality,proto3" json:"topicality,omitempty"`
  1000  	// Image region to which this entity belongs. Not produced
  1001  	// for `LABEL_DETECTION` features.
  1002  	BoundingPoly *BoundingPoly `protobuf:"bytes,7,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
  1003  	// The location information for the detected entity. Multiple
  1004  	// `LocationInfo` elements can be present because one location may
  1005  	// indicate the location of the scene in the image, and another location
  1006  	// may indicate the location of the place where the image was taken.
  1007  	// Location information is usually present for landmarks.
  1008  	Locations []*LocationInfo `protobuf:"bytes,8,rep,name=locations,proto3" json:"locations,omitempty"`
  1009  	// Some entities may have optional user-supplied `Property` (name/value)
  1010  	// fields, such a score or string that qualifies the entity.
  1011  	Properties []*Property `protobuf:"bytes,9,rep,name=properties,proto3" json:"properties,omitempty"`
  1012  }
  1013  
  1014  func (x *EntityAnnotation) Reset() {
  1015  	*x = EntityAnnotation{}
  1016  	if protoimpl.UnsafeEnabled {
  1017  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[6]
  1018  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1019  		ms.StoreMessageInfo(mi)
  1020  	}
  1021  }
  1022  
  1023  func (x *EntityAnnotation) String() string {
  1024  	return protoimpl.X.MessageStringOf(x)
  1025  }
  1026  
  1027  func (*EntityAnnotation) ProtoMessage() {}
  1028  
  1029  func (x *EntityAnnotation) ProtoReflect() protoreflect.Message {
  1030  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[6]
  1031  	if protoimpl.UnsafeEnabled && x != nil {
  1032  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1033  		if ms.LoadMessageInfo() == nil {
  1034  			ms.StoreMessageInfo(mi)
  1035  		}
  1036  		return ms
  1037  	}
  1038  	return mi.MessageOf(x)
  1039  }
  1040  
  1041  // Deprecated: Use EntityAnnotation.ProtoReflect.Descriptor instead.
  1042  func (*EntityAnnotation) Descriptor() ([]byte, []int) {
  1043  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{6}
  1044  }
  1045  
  1046  func (x *EntityAnnotation) GetMid() string {
  1047  	if x != nil {
  1048  		return x.Mid
  1049  	}
  1050  	return ""
  1051  }
  1052  
  1053  func (x *EntityAnnotation) GetLocale() string {
  1054  	if x != nil {
  1055  		return x.Locale
  1056  	}
  1057  	return ""
  1058  }
  1059  
  1060  func (x *EntityAnnotation) GetDescription() string {
  1061  	if x != nil {
  1062  		return x.Description
  1063  	}
  1064  	return ""
  1065  }
  1066  
  1067  func (x *EntityAnnotation) GetScore() float32 {
  1068  	if x != nil {
  1069  		return x.Score
  1070  	}
  1071  	return 0
  1072  }
  1073  
  1074  func (x *EntityAnnotation) GetConfidence() float32 {
  1075  	if x != nil {
  1076  		return x.Confidence
  1077  	}
  1078  	return 0
  1079  }
  1080  
  1081  func (x *EntityAnnotation) GetTopicality() float32 {
  1082  	if x != nil {
  1083  		return x.Topicality
  1084  	}
  1085  	return 0
  1086  }
  1087  
  1088  func (x *EntityAnnotation) GetBoundingPoly() *BoundingPoly {
  1089  	if x != nil {
  1090  		return x.BoundingPoly
  1091  	}
  1092  	return nil
  1093  }
  1094  
  1095  func (x *EntityAnnotation) GetLocations() []*LocationInfo {
  1096  	if x != nil {
  1097  		return x.Locations
  1098  	}
  1099  	return nil
  1100  }
  1101  
  1102  func (x *EntityAnnotation) GetProperties() []*Property {
  1103  	if x != nil {
  1104  		return x.Properties
  1105  	}
  1106  	return nil
  1107  }
  1108  
  1109  // Set of features pertaining to the image, computed by computer vision
  1110  // methods over safe-search verticals (for example, adult, spoof, medical,
  1111  // violence).
  1112  type SafeSearchAnnotation struct {
  1113  	state         protoimpl.MessageState
  1114  	sizeCache     protoimpl.SizeCache
  1115  	unknownFields protoimpl.UnknownFields
  1116  
  1117  	// Represents the adult content likelihood for the image. Adult content may
  1118  	// contain elements such as nudity, pornographic images or cartoons, or
  1119  	// sexual activities.
  1120  	Adult Likelihood `protobuf:"varint,1,opt,name=adult,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"adult,omitempty"`
  1121  	// Spoof likelihood. The likelihood that an modification
  1122  	// was made to the image's canonical version to make it appear
  1123  	// funny or offensive.
  1124  	Spoof Likelihood `protobuf:"varint,2,opt,name=spoof,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"spoof,omitempty"`
  1125  	// Likelihood that this is a medical image.
  1126  	Medical Likelihood `protobuf:"varint,3,opt,name=medical,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"medical,omitempty"`
  1127  	// Likelihood that this image contains violent content.
  1128  	Violence Likelihood `protobuf:"varint,4,opt,name=violence,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"violence,omitempty"`
  1129  	// Likelihood that the request image contains racy content. Racy content may
  1130  	// include (but is not limited to) skimpy or sheer clothing, strategically
  1131  	// covered nudity, lewd or provocative poses, or close-ups of sensitive
  1132  	// body areas.
  1133  	Racy Likelihood `protobuf:"varint,9,opt,name=racy,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"racy,omitempty"`
  1134  }
  1135  
  1136  func (x *SafeSearchAnnotation) Reset() {
  1137  	*x = SafeSearchAnnotation{}
  1138  	if protoimpl.UnsafeEnabled {
  1139  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[7]
  1140  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1141  		ms.StoreMessageInfo(mi)
  1142  	}
  1143  }
  1144  
  1145  func (x *SafeSearchAnnotation) String() string {
  1146  	return protoimpl.X.MessageStringOf(x)
  1147  }
  1148  
  1149  func (*SafeSearchAnnotation) ProtoMessage() {}
  1150  
  1151  func (x *SafeSearchAnnotation) ProtoReflect() protoreflect.Message {
  1152  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[7]
  1153  	if protoimpl.UnsafeEnabled && x != nil {
  1154  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1155  		if ms.LoadMessageInfo() == nil {
  1156  			ms.StoreMessageInfo(mi)
  1157  		}
  1158  		return ms
  1159  	}
  1160  	return mi.MessageOf(x)
  1161  }
  1162  
  1163  // Deprecated: Use SafeSearchAnnotation.ProtoReflect.Descriptor instead.
  1164  func (*SafeSearchAnnotation) Descriptor() ([]byte, []int) {
  1165  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{7}
  1166  }
  1167  
  1168  func (x *SafeSearchAnnotation) GetAdult() Likelihood {
  1169  	if x != nil {
  1170  		return x.Adult
  1171  	}
  1172  	return Likelihood_UNKNOWN
  1173  }
  1174  
  1175  func (x *SafeSearchAnnotation) GetSpoof() Likelihood {
  1176  	if x != nil {
  1177  		return x.Spoof
  1178  	}
  1179  	return Likelihood_UNKNOWN
  1180  }
  1181  
  1182  func (x *SafeSearchAnnotation) GetMedical() Likelihood {
  1183  	if x != nil {
  1184  		return x.Medical
  1185  	}
  1186  	return Likelihood_UNKNOWN
  1187  }
  1188  
  1189  func (x *SafeSearchAnnotation) GetViolence() Likelihood {
  1190  	if x != nil {
  1191  		return x.Violence
  1192  	}
  1193  	return Likelihood_UNKNOWN
  1194  }
  1195  
  1196  func (x *SafeSearchAnnotation) GetRacy() Likelihood {
  1197  	if x != nil {
  1198  		return x.Racy
  1199  	}
  1200  	return Likelihood_UNKNOWN
  1201  }
  1202  
  1203  // Rectangle determined by min and max `LatLng` pairs.
  1204  type LatLongRect struct {
  1205  	state         protoimpl.MessageState
  1206  	sizeCache     protoimpl.SizeCache
  1207  	unknownFields protoimpl.UnknownFields
  1208  
  1209  	// Min lat/long pair.
  1210  	MinLatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=min_lat_lng,json=minLatLng,proto3" json:"min_lat_lng,omitempty"`
  1211  	// Max lat/long pair.
  1212  	MaxLatLng *latlng.LatLng `protobuf:"bytes,2,opt,name=max_lat_lng,json=maxLatLng,proto3" json:"max_lat_lng,omitempty"`
  1213  }
  1214  
  1215  func (x *LatLongRect) Reset() {
  1216  	*x = LatLongRect{}
  1217  	if protoimpl.UnsafeEnabled {
  1218  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[8]
  1219  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1220  		ms.StoreMessageInfo(mi)
  1221  	}
  1222  }
  1223  
  1224  func (x *LatLongRect) String() string {
  1225  	return protoimpl.X.MessageStringOf(x)
  1226  }
  1227  
  1228  func (*LatLongRect) ProtoMessage() {}
  1229  
  1230  func (x *LatLongRect) ProtoReflect() protoreflect.Message {
  1231  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[8]
  1232  	if protoimpl.UnsafeEnabled && x != nil {
  1233  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1234  		if ms.LoadMessageInfo() == nil {
  1235  			ms.StoreMessageInfo(mi)
  1236  		}
  1237  		return ms
  1238  	}
  1239  	return mi.MessageOf(x)
  1240  }
  1241  
  1242  // Deprecated: Use LatLongRect.ProtoReflect.Descriptor instead.
  1243  func (*LatLongRect) Descriptor() ([]byte, []int) {
  1244  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{8}
  1245  }
  1246  
  1247  func (x *LatLongRect) GetMinLatLng() *latlng.LatLng {
  1248  	if x != nil {
  1249  		return x.MinLatLng
  1250  	}
  1251  	return nil
  1252  }
  1253  
  1254  func (x *LatLongRect) GetMaxLatLng() *latlng.LatLng {
  1255  	if x != nil {
  1256  		return x.MaxLatLng
  1257  	}
  1258  	return nil
  1259  }
  1260  
  1261  // Color information consists of RGB channels, score, and the fraction of
  1262  // the image that the color occupies in the image.
  1263  type ColorInfo struct {
  1264  	state         protoimpl.MessageState
  1265  	sizeCache     protoimpl.SizeCache
  1266  	unknownFields protoimpl.UnknownFields
  1267  
  1268  	// RGB components of the color.
  1269  	Color *color.Color `protobuf:"bytes,1,opt,name=color,proto3" json:"color,omitempty"`
  1270  	// Image-specific score for this color. Value in range [0, 1].
  1271  	Score float32 `protobuf:"fixed32,2,opt,name=score,proto3" json:"score,omitempty"`
  1272  	// The fraction of pixels the color occupies in the image.
  1273  	// Value in range [0, 1].
  1274  	PixelFraction float32 `protobuf:"fixed32,3,opt,name=pixel_fraction,json=pixelFraction,proto3" json:"pixel_fraction,omitempty"`
  1275  }
  1276  
  1277  func (x *ColorInfo) Reset() {
  1278  	*x = ColorInfo{}
  1279  	if protoimpl.UnsafeEnabled {
  1280  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[9]
  1281  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1282  		ms.StoreMessageInfo(mi)
  1283  	}
  1284  }
  1285  
  1286  func (x *ColorInfo) String() string {
  1287  	return protoimpl.X.MessageStringOf(x)
  1288  }
  1289  
  1290  func (*ColorInfo) ProtoMessage() {}
  1291  
  1292  func (x *ColorInfo) ProtoReflect() protoreflect.Message {
  1293  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[9]
  1294  	if protoimpl.UnsafeEnabled && x != nil {
  1295  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1296  		if ms.LoadMessageInfo() == nil {
  1297  			ms.StoreMessageInfo(mi)
  1298  		}
  1299  		return ms
  1300  	}
  1301  	return mi.MessageOf(x)
  1302  }
  1303  
  1304  // Deprecated: Use ColorInfo.ProtoReflect.Descriptor instead.
  1305  func (*ColorInfo) Descriptor() ([]byte, []int) {
  1306  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{9}
  1307  }
  1308  
  1309  func (x *ColorInfo) GetColor() *color.Color {
  1310  	if x != nil {
  1311  		return x.Color
  1312  	}
  1313  	return nil
  1314  }
  1315  
  1316  func (x *ColorInfo) GetScore() float32 {
  1317  	if x != nil {
  1318  		return x.Score
  1319  	}
  1320  	return 0
  1321  }
  1322  
  1323  func (x *ColorInfo) GetPixelFraction() float32 {
  1324  	if x != nil {
  1325  		return x.PixelFraction
  1326  	}
  1327  	return 0
  1328  }
  1329  
  1330  // Set of dominant colors and their corresponding scores.
  1331  type DominantColorsAnnotation struct {
  1332  	state         protoimpl.MessageState
  1333  	sizeCache     protoimpl.SizeCache
  1334  	unknownFields protoimpl.UnknownFields
  1335  
  1336  	// RGB color values with their score and pixel fraction.
  1337  	Colors []*ColorInfo `protobuf:"bytes,1,rep,name=colors,proto3" json:"colors,omitempty"`
  1338  }
  1339  
  1340  func (x *DominantColorsAnnotation) Reset() {
  1341  	*x = DominantColorsAnnotation{}
  1342  	if protoimpl.UnsafeEnabled {
  1343  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[10]
  1344  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1345  		ms.StoreMessageInfo(mi)
  1346  	}
  1347  }
  1348  
  1349  func (x *DominantColorsAnnotation) String() string {
  1350  	return protoimpl.X.MessageStringOf(x)
  1351  }
  1352  
  1353  func (*DominantColorsAnnotation) ProtoMessage() {}
  1354  
  1355  func (x *DominantColorsAnnotation) ProtoReflect() protoreflect.Message {
  1356  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[10]
  1357  	if protoimpl.UnsafeEnabled && x != nil {
  1358  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1359  		if ms.LoadMessageInfo() == nil {
  1360  			ms.StoreMessageInfo(mi)
  1361  		}
  1362  		return ms
  1363  	}
  1364  	return mi.MessageOf(x)
  1365  }
  1366  
  1367  // Deprecated: Use DominantColorsAnnotation.ProtoReflect.Descriptor instead.
  1368  func (*DominantColorsAnnotation) Descriptor() ([]byte, []int) {
  1369  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{10}
  1370  }
  1371  
  1372  func (x *DominantColorsAnnotation) GetColors() []*ColorInfo {
  1373  	if x != nil {
  1374  		return x.Colors
  1375  	}
  1376  	return nil
  1377  }
  1378  
  1379  // Stores image properties, such as dominant colors.
  1380  type ImageProperties struct {
  1381  	state         protoimpl.MessageState
  1382  	sizeCache     protoimpl.SizeCache
  1383  	unknownFields protoimpl.UnknownFields
  1384  
  1385  	// If present, dominant colors completed successfully.
  1386  	DominantColors *DominantColorsAnnotation `protobuf:"bytes,1,opt,name=dominant_colors,json=dominantColors,proto3" json:"dominant_colors,omitempty"`
  1387  }
  1388  
  1389  func (x *ImageProperties) Reset() {
  1390  	*x = ImageProperties{}
  1391  	if protoimpl.UnsafeEnabled {
  1392  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[11]
  1393  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1394  		ms.StoreMessageInfo(mi)
  1395  	}
  1396  }
  1397  
  1398  func (x *ImageProperties) String() string {
  1399  	return protoimpl.X.MessageStringOf(x)
  1400  }
  1401  
  1402  func (*ImageProperties) ProtoMessage() {}
  1403  
  1404  func (x *ImageProperties) ProtoReflect() protoreflect.Message {
  1405  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[11]
  1406  	if protoimpl.UnsafeEnabled && x != nil {
  1407  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1408  		if ms.LoadMessageInfo() == nil {
  1409  			ms.StoreMessageInfo(mi)
  1410  		}
  1411  		return ms
  1412  	}
  1413  	return mi.MessageOf(x)
  1414  }
  1415  
  1416  // Deprecated: Use ImageProperties.ProtoReflect.Descriptor instead.
  1417  func (*ImageProperties) Descriptor() ([]byte, []int) {
  1418  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{11}
  1419  }
  1420  
  1421  func (x *ImageProperties) GetDominantColors() *DominantColorsAnnotation {
  1422  	if x != nil {
  1423  		return x.DominantColors
  1424  	}
  1425  	return nil
  1426  }
  1427  
  1428  // Single crop hint that is used to generate a new crop when serving an image.
  1429  type CropHint struct {
  1430  	state         protoimpl.MessageState
  1431  	sizeCache     protoimpl.SizeCache
  1432  	unknownFields protoimpl.UnknownFields
  1433  
  1434  	// The bounding polygon for the crop region. The coordinates of the bounding
  1435  	// box are in the original image's scale, as returned in `ImageParams`.
  1436  	BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
  1437  	// Confidence of this being a salient region.  Range [0, 1].
  1438  	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
  1439  	// Fraction of importance of this salient region with respect to the original
  1440  	// image.
  1441  	ImportanceFraction float32 `protobuf:"fixed32,3,opt,name=importance_fraction,json=importanceFraction,proto3" json:"importance_fraction,omitempty"`
  1442  }
  1443  
  1444  func (x *CropHint) Reset() {
  1445  	*x = CropHint{}
  1446  	if protoimpl.UnsafeEnabled {
  1447  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[12]
  1448  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1449  		ms.StoreMessageInfo(mi)
  1450  	}
  1451  }
  1452  
  1453  func (x *CropHint) String() string {
  1454  	return protoimpl.X.MessageStringOf(x)
  1455  }
  1456  
  1457  func (*CropHint) ProtoMessage() {}
  1458  
  1459  func (x *CropHint) ProtoReflect() protoreflect.Message {
  1460  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[12]
  1461  	if protoimpl.UnsafeEnabled && x != nil {
  1462  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1463  		if ms.LoadMessageInfo() == nil {
  1464  			ms.StoreMessageInfo(mi)
  1465  		}
  1466  		return ms
  1467  	}
  1468  	return mi.MessageOf(x)
  1469  }
  1470  
  1471  // Deprecated: Use CropHint.ProtoReflect.Descriptor instead.
  1472  func (*CropHint) Descriptor() ([]byte, []int) {
  1473  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{12}
  1474  }
  1475  
  1476  func (x *CropHint) GetBoundingPoly() *BoundingPoly {
  1477  	if x != nil {
  1478  		return x.BoundingPoly
  1479  	}
  1480  	return nil
  1481  }
  1482  
  1483  func (x *CropHint) GetConfidence() float32 {
  1484  	if x != nil {
  1485  		return x.Confidence
  1486  	}
  1487  	return 0
  1488  }
  1489  
  1490  func (x *CropHint) GetImportanceFraction() float32 {
  1491  	if x != nil {
  1492  		return x.ImportanceFraction
  1493  	}
  1494  	return 0
  1495  }
  1496  
  1497  // Set of crop hints that are used to generate new crops when serving images.
  1498  type CropHintsAnnotation struct {
  1499  	state         protoimpl.MessageState
  1500  	sizeCache     protoimpl.SizeCache
  1501  	unknownFields protoimpl.UnknownFields
  1502  
  1503  	// Crop hint results.
  1504  	CropHints []*CropHint `protobuf:"bytes,1,rep,name=crop_hints,json=cropHints,proto3" json:"crop_hints,omitempty"`
  1505  }
  1506  
  1507  func (x *CropHintsAnnotation) Reset() {
  1508  	*x = CropHintsAnnotation{}
  1509  	if protoimpl.UnsafeEnabled {
  1510  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[13]
  1511  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1512  		ms.StoreMessageInfo(mi)
  1513  	}
  1514  }
  1515  
  1516  func (x *CropHintsAnnotation) String() string {
  1517  	return protoimpl.X.MessageStringOf(x)
  1518  }
  1519  
  1520  func (*CropHintsAnnotation) ProtoMessage() {}
  1521  
  1522  func (x *CropHintsAnnotation) ProtoReflect() protoreflect.Message {
  1523  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[13]
  1524  	if protoimpl.UnsafeEnabled && x != nil {
  1525  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1526  		if ms.LoadMessageInfo() == nil {
  1527  			ms.StoreMessageInfo(mi)
  1528  		}
  1529  		return ms
  1530  	}
  1531  	return mi.MessageOf(x)
  1532  }
  1533  
  1534  // Deprecated: Use CropHintsAnnotation.ProtoReflect.Descriptor instead.
  1535  func (*CropHintsAnnotation) Descriptor() ([]byte, []int) {
  1536  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{13}
  1537  }
  1538  
  1539  func (x *CropHintsAnnotation) GetCropHints() []*CropHint {
  1540  	if x != nil {
  1541  		return x.CropHints
  1542  	}
  1543  	return nil
  1544  }
  1545  
  1546  // Parameters for crop hints annotation request.
  1547  type CropHintsParams struct {
  1548  	state         protoimpl.MessageState
  1549  	sizeCache     protoimpl.SizeCache
  1550  	unknownFields protoimpl.UnknownFields
  1551  
  1552  	// Aspect ratios in floats, representing the ratio of the width to the height
  1553  	// of the image. For example, if the desired aspect ratio is 4/3, the
  1554  	// corresponding float value should be 1.33333.  If not specified, the
  1555  	// best possible crop is returned. The number of provided aspect ratios is
  1556  	// limited to a maximum of 16; any aspect ratios provided after the 16th are
  1557  	// ignored.
  1558  	AspectRatios []float32 `protobuf:"fixed32,1,rep,packed,name=aspect_ratios,json=aspectRatios,proto3" json:"aspect_ratios,omitempty"`
  1559  }
  1560  
  1561  func (x *CropHintsParams) Reset() {
  1562  	*x = CropHintsParams{}
  1563  	if protoimpl.UnsafeEnabled {
  1564  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[14]
  1565  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1566  		ms.StoreMessageInfo(mi)
  1567  	}
  1568  }
  1569  
  1570  func (x *CropHintsParams) String() string {
  1571  	return protoimpl.X.MessageStringOf(x)
  1572  }
  1573  
  1574  func (*CropHintsParams) ProtoMessage() {}
  1575  
  1576  func (x *CropHintsParams) ProtoReflect() protoreflect.Message {
  1577  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[14]
  1578  	if protoimpl.UnsafeEnabled && x != nil {
  1579  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1580  		if ms.LoadMessageInfo() == nil {
  1581  			ms.StoreMessageInfo(mi)
  1582  		}
  1583  		return ms
  1584  	}
  1585  	return mi.MessageOf(x)
  1586  }
  1587  
  1588  // Deprecated: Use CropHintsParams.ProtoReflect.Descriptor instead.
  1589  func (*CropHintsParams) Descriptor() ([]byte, []int) {
  1590  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{14}
  1591  }
  1592  
  1593  func (x *CropHintsParams) GetAspectRatios() []float32 {
  1594  	if x != nil {
  1595  		return x.AspectRatios
  1596  	}
  1597  	return nil
  1598  }
  1599  
  1600  // Parameters for web detection request.
  1601  type WebDetectionParams struct {
  1602  	state         protoimpl.MessageState
  1603  	sizeCache     protoimpl.SizeCache
  1604  	unknownFields protoimpl.UnknownFields
  1605  
  1606  	// Whether to include results derived from the geo information in the image.
  1607  	IncludeGeoResults bool `protobuf:"varint,2,opt,name=include_geo_results,json=includeGeoResults,proto3" json:"include_geo_results,omitempty"`
  1608  }
  1609  
  1610  func (x *WebDetectionParams) Reset() {
  1611  	*x = WebDetectionParams{}
  1612  	if protoimpl.UnsafeEnabled {
  1613  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[15]
  1614  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1615  		ms.StoreMessageInfo(mi)
  1616  	}
  1617  }
  1618  
  1619  func (x *WebDetectionParams) String() string {
  1620  	return protoimpl.X.MessageStringOf(x)
  1621  }
  1622  
  1623  func (*WebDetectionParams) ProtoMessage() {}
  1624  
  1625  func (x *WebDetectionParams) ProtoReflect() protoreflect.Message {
  1626  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[15]
  1627  	if protoimpl.UnsafeEnabled && x != nil {
  1628  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1629  		if ms.LoadMessageInfo() == nil {
  1630  			ms.StoreMessageInfo(mi)
  1631  		}
  1632  		return ms
  1633  	}
  1634  	return mi.MessageOf(x)
  1635  }
  1636  
  1637  // Deprecated: Use WebDetectionParams.ProtoReflect.Descriptor instead.
  1638  func (*WebDetectionParams) Descriptor() ([]byte, []int) {
  1639  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{15}
  1640  }
  1641  
  1642  func (x *WebDetectionParams) GetIncludeGeoResults() bool {
  1643  	if x != nil {
  1644  		return x.IncludeGeoResults
  1645  	}
  1646  	return false
  1647  }
  1648  
  1649  // Parameters for text detections. This is used to control TEXT_DETECTION and
  1650  // DOCUMENT_TEXT_DETECTION features.
  1651  type TextDetectionParams struct {
  1652  	state         protoimpl.MessageState
  1653  	sizeCache     protoimpl.SizeCache
  1654  	unknownFields protoimpl.UnknownFields
  1655  
  1656  	// By default, Cloud Vision API only includes confidence score for
  1657  	// DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
  1658  	// score for TEXT_DETECTION as well.
  1659  	EnableTextDetectionConfidenceScore bool `protobuf:"varint,9,opt,name=enable_text_detection_confidence_score,json=enableTextDetectionConfidenceScore,proto3" json:"enable_text_detection_confidence_score,omitempty"`
  1660  	// A list of advanced OCR options to fine-tune OCR behavior.
  1661  	AdvancedOcrOptions []string `protobuf:"bytes,11,rep,name=advanced_ocr_options,json=advancedOcrOptions,proto3" json:"advanced_ocr_options,omitempty"`
  1662  }
  1663  
  1664  func (x *TextDetectionParams) Reset() {
  1665  	*x = TextDetectionParams{}
  1666  	if protoimpl.UnsafeEnabled {
  1667  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[16]
  1668  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1669  		ms.StoreMessageInfo(mi)
  1670  	}
  1671  }
  1672  
  1673  func (x *TextDetectionParams) String() string {
  1674  	return protoimpl.X.MessageStringOf(x)
  1675  }
  1676  
  1677  func (*TextDetectionParams) ProtoMessage() {}
  1678  
  1679  func (x *TextDetectionParams) ProtoReflect() protoreflect.Message {
  1680  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[16]
  1681  	if protoimpl.UnsafeEnabled && x != nil {
  1682  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1683  		if ms.LoadMessageInfo() == nil {
  1684  			ms.StoreMessageInfo(mi)
  1685  		}
  1686  		return ms
  1687  	}
  1688  	return mi.MessageOf(x)
  1689  }
  1690  
  1691  // Deprecated: Use TextDetectionParams.ProtoReflect.Descriptor instead.
  1692  func (*TextDetectionParams) Descriptor() ([]byte, []int) {
  1693  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{16}
  1694  }
  1695  
  1696  func (x *TextDetectionParams) GetEnableTextDetectionConfidenceScore() bool {
  1697  	if x != nil {
  1698  		return x.EnableTextDetectionConfidenceScore
  1699  	}
  1700  	return false
  1701  }
  1702  
  1703  func (x *TextDetectionParams) GetAdvancedOcrOptions() []string {
  1704  	if x != nil {
  1705  		return x.AdvancedOcrOptions
  1706  	}
  1707  	return nil
  1708  }
  1709  
  1710  // Image context and/or feature-specific parameters.
  1711  type ImageContext struct {
  1712  	state         protoimpl.MessageState
  1713  	sizeCache     protoimpl.SizeCache
  1714  	unknownFields protoimpl.UnknownFields
  1715  
  1716  	// Not used.
  1717  	LatLongRect *LatLongRect `protobuf:"bytes,1,opt,name=lat_long_rect,json=latLongRect,proto3" json:"lat_long_rect,omitempty"`
  1718  	// List of languages to use for TEXT_DETECTION. In most cases, an empty value
  1719  	// yields the best results since it enables automatic language detection. For
  1720  	// languages based on the Latin alphabet, setting `language_hints` is not
  1721  	// needed. In rare cases, when the language of the text in the image is known,
  1722  	// setting a hint will help get better results (although it will be a
  1723  	// significant hindrance if the hint is wrong). Text detection returns an
  1724  	// error if one or more of the specified languages is not one of the
  1725  	// [supported languages](https://cloud.google.com/vision/docs/languages).
  1726  	LanguageHints []string `protobuf:"bytes,2,rep,name=language_hints,json=languageHints,proto3" json:"language_hints,omitempty"`
  1727  	// Parameters for crop hints annotation request.
  1728  	CropHintsParams *CropHintsParams `protobuf:"bytes,4,opt,name=crop_hints_params,json=cropHintsParams,proto3" json:"crop_hints_params,omitempty"`
  1729  	// Parameters for web detection.
  1730  	WebDetectionParams *WebDetectionParams `protobuf:"bytes,6,opt,name=web_detection_params,json=webDetectionParams,proto3" json:"web_detection_params,omitempty"`
  1731  	// Parameters for text detection and document text detection.
  1732  	TextDetectionParams *TextDetectionParams `protobuf:"bytes,12,opt,name=text_detection_params,json=textDetectionParams,proto3" json:"text_detection_params,omitempty"`
  1733  }
  1734  
  1735  func (x *ImageContext) Reset() {
  1736  	*x = ImageContext{}
  1737  	if protoimpl.UnsafeEnabled {
  1738  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[17]
  1739  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1740  		ms.StoreMessageInfo(mi)
  1741  	}
  1742  }
  1743  
  1744  func (x *ImageContext) String() string {
  1745  	return protoimpl.X.MessageStringOf(x)
  1746  }
  1747  
  1748  func (*ImageContext) ProtoMessage() {}
  1749  
  1750  func (x *ImageContext) ProtoReflect() protoreflect.Message {
  1751  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[17]
  1752  	if protoimpl.UnsafeEnabled && x != nil {
  1753  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1754  		if ms.LoadMessageInfo() == nil {
  1755  			ms.StoreMessageInfo(mi)
  1756  		}
  1757  		return ms
  1758  	}
  1759  	return mi.MessageOf(x)
  1760  }
  1761  
  1762  // Deprecated: Use ImageContext.ProtoReflect.Descriptor instead.
  1763  func (*ImageContext) Descriptor() ([]byte, []int) {
  1764  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{17}
  1765  }
  1766  
  1767  func (x *ImageContext) GetLatLongRect() *LatLongRect {
  1768  	if x != nil {
  1769  		return x.LatLongRect
  1770  	}
  1771  	return nil
  1772  }
  1773  
  1774  func (x *ImageContext) GetLanguageHints() []string {
  1775  	if x != nil {
  1776  		return x.LanguageHints
  1777  	}
  1778  	return nil
  1779  }
  1780  
  1781  func (x *ImageContext) GetCropHintsParams() *CropHintsParams {
  1782  	if x != nil {
  1783  		return x.CropHintsParams
  1784  	}
  1785  	return nil
  1786  }
  1787  
  1788  func (x *ImageContext) GetWebDetectionParams() *WebDetectionParams {
  1789  	if x != nil {
  1790  		return x.WebDetectionParams
  1791  	}
  1792  	return nil
  1793  }
  1794  
  1795  func (x *ImageContext) GetTextDetectionParams() *TextDetectionParams {
  1796  	if x != nil {
  1797  		return x.TextDetectionParams
  1798  	}
  1799  	return nil
  1800  }
  1801  
  1802  // Request for performing Google Cloud Vision API tasks over a user-provided
  1803  // image, with user-requested features.
  1804  type AnnotateImageRequest struct {
  1805  	state         protoimpl.MessageState
  1806  	sizeCache     protoimpl.SizeCache
  1807  	unknownFields protoimpl.UnknownFields
  1808  
  1809  	// The image to be processed.
  1810  	Image *Image `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"`
  1811  	// Requested features.
  1812  	Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"`
  1813  	// Additional context that may accompany the image.
  1814  	ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"`
  1815  }
  1816  
  1817  func (x *AnnotateImageRequest) Reset() {
  1818  	*x = AnnotateImageRequest{}
  1819  	if protoimpl.UnsafeEnabled {
  1820  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[18]
  1821  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1822  		ms.StoreMessageInfo(mi)
  1823  	}
  1824  }
  1825  
  1826  func (x *AnnotateImageRequest) String() string {
  1827  	return protoimpl.X.MessageStringOf(x)
  1828  }
  1829  
  1830  func (*AnnotateImageRequest) ProtoMessage() {}
  1831  
  1832  func (x *AnnotateImageRequest) ProtoReflect() protoreflect.Message {
  1833  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[18]
  1834  	if protoimpl.UnsafeEnabled && x != nil {
  1835  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1836  		if ms.LoadMessageInfo() == nil {
  1837  			ms.StoreMessageInfo(mi)
  1838  		}
  1839  		return ms
  1840  	}
  1841  	return mi.MessageOf(x)
  1842  }
  1843  
  1844  // Deprecated: Use AnnotateImageRequest.ProtoReflect.Descriptor instead.
  1845  func (*AnnotateImageRequest) Descriptor() ([]byte, []int) {
  1846  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{18}
  1847  }
  1848  
  1849  func (x *AnnotateImageRequest) GetImage() *Image {
  1850  	if x != nil {
  1851  		return x.Image
  1852  	}
  1853  	return nil
  1854  }
  1855  
  1856  func (x *AnnotateImageRequest) GetFeatures() []*Feature {
  1857  	if x != nil {
  1858  		return x.Features
  1859  	}
  1860  	return nil
  1861  }
  1862  
  1863  func (x *AnnotateImageRequest) GetImageContext() *ImageContext {
  1864  	if x != nil {
  1865  		return x.ImageContext
  1866  	}
  1867  	return nil
  1868  }
  1869  
  1870  // If an image was produced from a file (e.g. a PDF), this message gives
  1871  // information about the source of that image.
  1872  type ImageAnnotationContext struct {
  1873  	state         protoimpl.MessageState
  1874  	sizeCache     protoimpl.SizeCache
  1875  	unknownFields protoimpl.UnknownFields
  1876  
  1877  	// The URI of the file used to produce the image.
  1878  	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
  1879  	// If the file was a PDF or TIFF, this field gives the page number within
  1880  	// the file used to produce the image.
  1881  	PageNumber int32 `protobuf:"varint,2,opt,name=page_number,json=pageNumber,proto3" json:"page_number,omitempty"`
  1882  }
  1883  
  1884  func (x *ImageAnnotationContext) Reset() {
  1885  	*x = ImageAnnotationContext{}
  1886  	if protoimpl.UnsafeEnabled {
  1887  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[19]
  1888  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1889  		ms.StoreMessageInfo(mi)
  1890  	}
  1891  }
  1892  
  1893  func (x *ImageAnnotationContext) String() string {
  1894  	return protoimpl.X.MessageStringOf(x)
  1895  }
  1896  
  1897  func (*ImageAnnotationContext) ProtoMessage() {}
  1898  
  1899  func (x *ImageAnnotationContext) ProtoReflect() protoreflect.Message {
  1900  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[19]
  1901  	if protoimpl.UnsafeEnabled && x != nil {
  1902  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1903  		if ms.LoadMessageInfo() == nil {
  1904  			ms.StoreMessageInfo(mi)
  1905  		}
  1906  		return ms
  1907  	}
  1908  	return mi.MessageOf(x)
  1909  }
  1910  
  1911  // Deprecated: Use ImageAnnotationContext.ProtoReflect.Descriptor instead.
  1912  func (*ImageAnnotationContext) Descriptor() ([]byte, []int) {
  1913  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{19}
  1914  }
  1915  
  1916  func (x *ImageAnnotationContext) GetUri() string {
  1917  	if x != nil {
  1918  		return x.Uri
  1919  	}
  1920  	return ""
  1921  }
  1922  
  1923  func (x *ImageAnnotationContext) GetPageNumber() int32 {
  1924  	if x != nil {
  1925  		return x.PageNumber
  1926  	}
  1927  	return 0
  1928  }
  1929  
  1930  // Response to an image annotation request.
  1931  type AnnotateImageResponse struct {
  1932  	state         protoimpl.MessageState
  1933  	sizeCache     protoimpl.SizeCache
  1934  	unknownFields protoimpl.UnknownFields
  1935  
  1936  	// If present, face detection has completed successfully.
  1937  	FaceAnnotations []*FaceAnnotation `protobuf:"bytes,1,rep,name=face_annotations,json=faceAnnotations,proto3" json:"face_annotations,omitempty"`
  1938  	// If present, landmark detection has completed successfully.
  1939  	LandmarkAnnotations []*EntityAnnotation `protobuf:"bytes,2,rep,name=landmark_annotations,json=landmarkAnnotations,proto3" json:"landmark_annotations,omitempty"`
  1940  	// If present, logo detection has completed successfully.
  1941  	LogoAnnotations []*EntityAnnotation `protobuf:"bytes,3,rep,name=logo_annotations,json=logoAnnotations,proto3" json:"logo_annotations,omitempty"`
  1942  	// If present, label detection has completed successfully.
  1943  	LabelAnnotations []*EntityAnnotation `protobuf:"bytes,4,rep,name=label_annotations,json=labelAnnotations,proto3" json:"label_annotations,omitempty"`
  1944  	// If present, text (OCR) detection has completed successfully.
  1945  	TextAnnotations []*EntityAnnotation `protobuf:"bytes,5,rep,name=text_annotations,json=textAnnotations,proto3" json:"text_annotations,omitempty"`
  1946  	// If present, text (OCR) detection or document (OCR) text detection has
  1947  	// completed successfully.
  1948  	// This annotation provides the structural hierarchy for the OCR detected
  1949  	// text.
  1950  	FullTextAnnotation *TextAnnotation `protobuf:"bytes,12,opt,name=full_text_annotation,json=fullTextAnnotation,proto3" json:"full_text_annotation,omitempty"`
  1951  	// If present, safe-search annotation has completed successfully.
  1952  	SafeSearchAnnotation *SafeSearchAnnotation `protobuf:"bytes,6,opt,name=safe_search_annotation,json=safeSearchAnnotation,proto3" json:"safe_search_annotation,omitempty"`
  1953  	// If present, image properties were extracted successfully.
  1954  	ImagePropertiesAnnotation *ImageProperties `protobuf:"bytes,8,opt,name=image_properties_annotation,json=imagePropertiesAnnotation,proto3" json:"image_properties_annotation,omitempty"`
  1955  	// If present, crop hints have completed successfully.
  1956  	CropHintsAnnotation *CropHintsAnnotation `protobuf:"bytes,11,opt,name=crop_hints_annotation,json=cropHintsAnnotation,proto3" json:"crop_hints_annotation,omitempty"`
  1957  	// If present, web detection has completed successfully.
  1958  	WebDetection *WebDetection `protobuf:"bytes,13,opt,name=web_detection,json=webDetection,proto3" json:"web_detection,omitempty"`
  1959  	// If set, represents the error message for the operation.
  1960  	// Note that filled-in image annotations are guaranteed to be
  1961  	// correct, even when `error` is set.
  1962  	Error *status.Status `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"`
  1963  	// If present, contextual information is needed to understand where this image
  1964  	// comes from.
  1965  	Context *ImageAnnotationContext `protobuf:"bytes,21,opt,name=context,proto3" json:"context,omitempty"`
  1966  }
  1967  
  1968  func (x *AnnotateImageResponse) Reset() {
  1969  	*x = AnnotateImageResponse{}
  1970  	if protoimpl.UnsafeEnabled {
  1971  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[20]
  1972  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1973  		ms.StoreMessageInfo(mi)
  1974  	}
  1975  }
  1976  
  1977  func (x *AnnotateImageResponse) String() string {
  1978  	return protoimpl.X.MessageStringOf(x)
  1979  }
  1980  
  1981  func (*AnnotateImageResponse) ProtoMessage() {}
  1982  
  1983  func (x *AnnotateImageResponse) ProtoReflect() protoreflect.Message {
  1984  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[20]
  1985  	if protoimpl.UnsafeEnabled && x != nil {
  1986  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1987  		if ms.LoadMessageInfo() == nil {
  1988  			ms.StoreMessageInfo(mi)
  1989  		}
  1990  		return ms
  1991  	}
  1992  	return mi.MessageOf(x)
  1993  }
  1994  
  1995  // Deprecated: Use AnnotateImageResponse.ProtoReflect.Descriptor instead.
  1996  func (*AnnotateImageResponse) Descriptor() ([]byte, []int) {
  1997  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{20}
  1998  }
  1999  
  2000  func (x *AnnotateImageResponse) GetFaceAnnotations() []*FaceAnnotation {
  2001  	if x != nil {
  2002  		return x.FaceAnnotations
  2003  	}
  2004  	return nil
  2005  }
  2006  
  2007  func (x *AnnotateImageResponse) GetLandmarkAnnotations() []*EntityAnnotation {
  2008  	if x != nil {
  2009  		return x.LandmarkAnnotations
  2010  	}
  2011  	return nil
  2012  }
  2013  
  2014  func (x *AnnotateImageResponse) GetLogoAnnotations() []*EntityAnnotation {
  2015  	if x != nil {
  2016  		return x.LogoAnnotations
  2017  	}
  2018  	return nil
  2019  }
  2020  
  2021  func (x *AnnotateImageResponse) GetLabelAnnotations() []*EntityAnnotation {
  2022  	if x != nil {
  2023  		return x.LabelAnnotations
  2024  	}
  2025  	return nil
  2026  }
  2027  
  2028  func (x *AnnotateImageResponse) GetTextAnnotations() []*EntityAnnotation {
  2029  	if x != nil {
  2030  		return x.TextAnnotations
  2031  	}
  2032  	return nil
  2033  }
  2034  
  2035  func (x *AnnotateImageResponse) GetFullTextAnnotation() *TextAnnotation {
  2036  	if x != nil {
  2037  		return x.FullTextAnnotation
  2038  	}
  2039  	return nil
  2040  }
  2041  
  2042  func (x *AnnotateImageResponse) GetSafeSearchAnnotation() *SafeSearchAnnotation {
  2043  	if x != nil {
  2044  		return x.SafeSearchAnnotation
  2045  	}
  2046  	return nil
  2047  }
  2048  
  2049  func (x *AnnotateImageResponse) GetImagePropertiesAnnotation() *ImageProperties {
  2050  	if x != nil {
  2051  		return x.ImagePropertiesAnnotation
  2052  	}
  2053  	return nil
  2054  }
  2055  
  2056  func (x *AnnotateImageResponse) GetCropHintsAnnotation() *CropHintsAnnotation {
  2057  	if x != nil {
  2058  		return x.CropHintsAnnotation
  2059  	}
  2060  	return nil
  2061  }
  2062  
  2063  func (x *AnnotateImageResponse) GetWebDetection() *WebDetection {
  2064  	if x != nil {
  2065  		return x.WebDetection
  2066  	}
  2067  	return nil
  2068  }
  2069  
  2070  func (x *AnnotateImageResponse) GetError() *status.Status {
  2071  	if x != nil {
  2072  		return x.Error
  2073  	}
  2074  	return nil
  2075  }
  2076  
  2077  func (x *AnnotateImageResponse) GetContext() *ImageAnnotationContext {
  2078  	if x != nil {
  2079  		return x.Context
  2080  	}
  2081  	return nil
  2082  }
  2083  
  2084  // Response to a single file annotation request. A file may contain one or more
  2085  // images, which individually have their own responses.
  2086  type AnnotateFileResponse struct {
  2087  	state         protoimpl.MessageState
  2088  	sizeCache     protoimpl.SizeCache
  2089  	unknownFields protoimpl.UnknownFields
  2090  
  2091  	// Information about the file for which this response is generated.
  2092  	InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"`
  2093  	// Individual responses to images found within the file.
  2094  	Responses []*AnnotateImageResponse `protobuf:"bytes,2,rep,name=responses,proto3" json:"responses,omitempty"`
  2095  }
  2096  
  2097  func (x *AnnotateFileResponse) Reset() {
  2098  	*x = AnnotateFileResponse{}
  2099  	if protoimpl.UnsafeEnabled {
  2100  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[21]
  2101  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2102  		ms.StoreMessageInfo(mi)
  2103  	}
  2104  }
  2105  
  2106  func (x *AnnotateFileResponse) String() string {
  2107  	return protoimpl.X.MessageStringOf(x)
  2108  }
  2109  
  2110  func (*AnnotateFileResponse) ProtoMessage() {}
  2111  
  2112  func (x *AnnotateFileResponse) ProtoReflect() protoreflect.Message {
  2113  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[21]
  2114  	if protoimpl.UnsafeEnabled && x != nil {
  2115  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2116  		if ms.LoadMessageInfo() == nil {
  2117  			ms.StoreMessageInfo(mi)
  2118  		}
  2119  		return ms
  2120  	}
  2121  	return mi.MessageOf(x)
  2122  }
  2123  
  2124  // Deprecated: Use AnnotateFileResponse.ProtoReflect.Descriptor instead.
  2125  func (*AnnotateFileResponse) Descriptor() ([]byte, []int) {
  2126  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{21}
  2127  }
  2128  
  2129  func (x *AnnotateFileResponse) GetInputConfig() *InputConfig {
  2130  	if x != nil {
  2131  		return x.InputConfig
  2132  	}
  2133  	return nil
  2134  }
  2135  
  2136  func (x *AnnotateFileResponse) GetResponses() []*AnnotateImageResponse {
  2137  	if x != nil {
  2138  		return x.Responses
  2139  	}
  2140  	return nil
  2141  }
  2142  
  2143  // Multiple image annotation requests are batched into a single service call.
  2144  type BatchAnnotateImagesRequest struct {
  2145  	state         protoimpl.MessageState
  2146  	sizeCache     protoimpl.SizeCache
  2147  	unknownFields protoimpl.UnknownFields
  2148  
  2149  	// Required. Individual image annotation requests for this batch.
  2150  	Requests []*AnnotateImageRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"`
  2151  }
  2152  
  2153  func (x *BatchAnnotateImagesRequest) Reset() {
  2154  	*x = BatchAnnotateImagesRequest{}
  2155  	if protoimpl.UnsafeEnabled {
  2156  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[22]
  2157  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2158  		ms.StoreMessageInfo(mi)
  2159  	}
  2160  }
  2161  
  2162  func (x *BatchAnnotateImagesRequest) String() string {
  2163  	return protoimpl.X.MessageStringOf(x)
  2164  }
  2165  
  2166  func (*BatchAnnotateImagesRequest) ProtoMessage() {}
  2167  
  2168  func (x *BatchAnnotateImagesRequest) ProtoReflect() protoreflect.Message {
  2169  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[22]
  2170  	if protoimpl.UnsafeEnabled && x != nil {
  2171  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2172  		if ms.LoadMessageInfo() == nil {
  2173  			ms.StoreMessageInfo(mi)
  2174  		}
  2175  		return ms
  2176  	}
  2177  	return mi.MessageOf(x)
  2178  }
  2179  
  2180  // Deprecated: Use BatchAnnotateImagesRequest.ProtoReflect.Descriptor instead.
  2181  func (*BatchAnnotateImagesRequest) Descriptor() ([]byte, []int) {
  2182  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{22}
  2183  }
  2184  
  2185  func (x *BatchAnnotateImagesRequest) GetRequests() []*AnnotateImageRequest {
  2186  	if x != nil {
  2187  		return x.Requests
  2188  	}
  2189  	return nil
  2190  }
  2191  
  2192  // Response to a batch image annotation request.
  2193  type BatchAnnotateImagesResponse struct {
  2194  	state         protoimpl.MessageState
  2195  	sizeCache     protoimpl.SizeCache
  2196  	unknownFields protoimpl.UnknownFields
  2197  
  2198  	// Individual responses to image annotation requests within the batch.
  2199  	Responses []*AnnotateImageResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"`
  2200  }
  2201  
  2202  func (x *BatchAnnotateImagesResponse) Reset() {
  2203  	*x = BatchAnnotateImagesResponse{}
  2204  	if protoimpl.UnsafeEnabled {
  2205  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[23]
  2206  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2207  		ms.StoreMessageInfo(mi)
  2208  	}
  2209  }
  2210  
  2211  func (x *BatchAnnotateImagesResponse) String() string {
  2212  	return protoimpl.X.MessageStringOf(x)
  2213  }
  2214  
  2215  func (*BatchAnnotateImagesResponse) ProtoMessage() {}
  2216  
  2217  func (x *BatchAnnotateImagesResponse) ProtoReflect() protoreflect.Message {
  2218  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[23]
  2219  	if protoimpl.UnsafeEnabled && x != nil {
  2220  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2221  		if ms.LoadMessageInfo() == nil {
  2222  			ms.StoreMessageInfo(mi)
  2223  		}
  2224  		return ms
  2225  	}
  2226  	return mi.MessageOf(x)
  2227  }
  2228  
  2229  // Deprecated: Use BatchAnnotateImagesResponse.ProtoReflect.Descriptor instead.
  2230  func (*BatchAnnotateImagesResponse) Descriptor() ([]byte, []int) {
  2231  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{23}
  2232  }
  2233  
  2234  func (x *BatchAnnotateImagesResponse) GetResponses() []*AnnotateImageResponse {
  2235  	if x != nil {
  2236  		return x.Responses
  2237  	}
  2238  	return nil
  2239  }
  2240  
  2241  // An offline file annotation request.
  2242  type AsyncAnnotateFileRequest struct {
  2243  	state         protoimpl.MessageState
  2244  	sizeCache     protoimpl.SizeCache
  2245  	unknownFields protoimpl.UnknownFields
  2246  
  2247  	// Required. Information about the input file.
  2248  	InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"`
  2249  	// Required. Requested features.
  2250  	Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"`
  2251  	// Additional context that may accompany the image(s) in the file.
  2252  	ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"`
  2253  	// Required. The desired output location and metadata (e.g. format).
  2254  	OutputConfig *OutputConfig `protobuf:"bytes,4,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"`
  2255  }
  2256  
  2257  func (x *AsyncAnnotateFileRequest) Reset() {
  2258  	*x = AsyncAnnotateFileRequest{}
  2259  	if protoimpl.UnsafeEnabled {
  2260  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[24]
  2261  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2262  		ms.StoreMessageInfo(mi)
  2263  	}
  2264  }
  2265  
  2266  func (x *AsyncAnnotateFileRequest) String() string {
  2267  	return protoimpl.X.MessageStringOf(x)
  2268  }
  2269  
  2270  func (*AsyncAnnotateFileRequest) ProtoMessage() {}
  2271  
  2272  func (x *AsyncAnnotateFileRequest) ProtoReflect() protoreflect.Message {
  2273  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[24]
  2274  	if protoimpl.UnsafeEnabled && x != nil {
  2275  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2276  		if ms.LoadMessageInfo() == nil {
  2277  			ms.StoreMessageInfo(mi)
  2278  		}
  2279  		return ms
  2280  	}
  2281  	return mi.MessageOf(x)
  2282  }
  2283  
  2284  // Deprecated: Use AsyncAnnotateFileRequest.ProtoReflect.Descriptor instead.
  2285  func (*AsyncAnnotateFileRequest) Descriptor() ([]byte, []int) {
  2286  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{24}
  2287  }
  2288  
  2289  func (x *AsyncAnnotateFileRequest) GetInputConfig() *InputConfig {
  2290  	if x != nil {
  2291  		return x.InputConfig
  2292  	}
  2293  	return nil
  2294  }
  2295  
  2296  func (x *AsyncAnnotateFileRequest) GetFeatures() []*Feature {
  2297  	if x != nil {
  2298  		return x.Features
  2299  	}
  2300  	return nil
  2301  }
  2302  
  2303  func (x *AsyncAnnotateFileRequest) GetImageContext() *ImageContext {
  2304  	if x != nil {
  2305  		return x.ImageContext
  2306  	}
  2307  	return nil
  2308  }
  2309  
  2310  func (x *AsyncAnnotateFileRequest) GetOutputConfig() *OutputConfig {
  2311  	if x != nil {
  2312  		return x.OutputConfig
  2313  	}
  2314  	return nil
  2315  }
  2316  
  2317  // The response for a single offline file annotation request.
  2318  type AsyncAnnotateFileResponse struct {
  2319  	state         protoimpl.MessageState
  2320  	sizeCache     protoimpl.SizeCache
  2321  	unknownFields protoimpl.UnknownFields
  2322  
  2323  	// The output location and metadata from AsyncAnnotateFileRequest.
  2324  	OutputConfig *OutputConfig `protobuf:"bytes,1,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"`
  2325  }
  2326  
  2327  func (x *AsyncAnnotateFileResponse) Reset() {
  2328  	*x = AsyncAnnotateFileResponse{}
  2329  	if protoimpl.UnsafeEnabled {
  2330  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[25]
  2331  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2332  		ms.StoreMessageInfo(mi)
  2333  	}
  2334  }
  2335  
  2336  func (x *AsyncAnnotateFileResponse) String() string {
  2337  	return protoimpl.X.MessageStringOf(x)
  2338  }
  2339  
  2340  func (*AsyncAnnotateFileResponse) ProtoMessage() {}
  2341  
  2342  func (x *AsyncAnnotateFileResponse) ProtoReflect() protoreflect.Message {
  2343  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[25]
  2344  	if protoimpl.UnsafeEnabled && x != nil {
  2345  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2346  		if ms.LoadMessageInfo() == nil {
  2347  			ms.StoreMessageInfo(mi)
  2348  		}
  2349  		return ms
  2350  	}
  2351  	return mi.MessageOf(x)
  2352  }
  2353  
  2354  // Deprecated: Use AsyncAnnotateFileResponse.ProtoReflect.Descriptor instead.
  2355  func (*AsyncAnnotateFileResponse) Descriptor() ([]byte, []int) {
  2356  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{25}
  2357  }
  2358  
  2359  func (x *AsyncAnnotateFileResponse) GetOutputConfig() *OutputConfig {
  2360  	if x != nil {
  2361  		return x.OutputConfig
  2362  	}
  2363  	return nil
  2364  }
  2365  
  2366  // Multiple async file annotation requests are batched into a single service
  2367  // call.
  2368  type AsyncBatchAnnotateFilesRequest struct {
  2369  	state         protoimpl.MessageState
  2370  	sizeCache     protoimpl.SizeCache
  2371  	unknownFields protoimpl.UnknownFields
  2372  
  2373  	// Required. Individual async file annotation requests for this batch.
  2374  	Requests []*AsyncAnnotateFileRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"`
  2375  }
  2376  
  2377  func (x *AsyncBatchAnnotateFilesRequest) Reset() {
  2378  	*x = AsyncBatchAnnotateFilesRequest{}
  2379  	if protoimpl.UnsafeEnabled {
  2380  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[26]
  2381  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2382  		ms.StoreMessageInfo(mi)
  2383  	}
  2384  }
  2385  
  2386  func (x *AsyncBatchAnnotateFilesRequest) String() string {
  2387  	return protoimpl.X.MessageStringOf(x)
  2388  }
  2389  
  2390  func (*AsyncBatchAnnotateFilesRequest) ProtoMessage() {}
  2391  
  2392  func (x *AsyncBatchAnnotateFilesRequest) ProtoReflect() protoreflect.Message {
  2393  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[26]
  2394  	if protoimpl.UnsafeEnabled && x != nil {
  2395  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2396  		if ms.LoadMessageInfo() == nil {
  2397  			ms.StoreMessageInfo(mi)
  2398  		}
  2399  		return ms
  2400  	}
  2401  	return mi.MessageOf(x)
  2402  }
  2403  
  2404  // Deprecated: Use AsyncBatchAnnotateFilesRequest.ProtoReflect.Descriptor instead.
  2405  func (*AsyncBatchAnnotateFilesRequest) Descriptor() ([]byte, []int) {
  2406  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{26}
  2407  }
  2408  
  2409  func (x *AsyncBatchAnnotateFilesRequest) GetRequests() []*AsyncAnnotateFileRequest {
  2410  	if x != nil {
  2411  		return x.Requests
  2412  	}
  2413  	return nil
  2414  }
  2415  
  2416  // Response to an async batch file annotation request.
  2417  type AsyncBatchAnnotateFilesResponse struct {
  2418  	state         protoimpl.MessageState
  2419  	sizeCache     protoimpl.SizeCache
  2420  	unknownFields protoimpl.UnknownFields
  2421  
  2422  	// The list of file annotation responses, one for each request in
  2423  	// AsyncBatchAnnotateFilesRequest.
  2424  	Responses []*AsyncAnnotateFileResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"`
  2425  }
  2426  
  2427  func (x *AsyncBatchAnnotateFilesResponse) Reset() {
  2428  	*x = AsyncBatchAnnotateFilesResponse{}
  2429  	if protoimpl.UnsafeEnabled {
  2430  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[27]
  2431  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2432  		ms.StoreMessageInfo(mi)
  2433  	}
  2434  }
  2435  
  2436  func (x *AsyncBatchAnnotateFilesResponse) String() string {
  2437  	return protoimpl.X.MessageStringOf(x)
  2438  }
  2439  
  2440  func (*AsyncBatchAnnotateFilesResponse) ProtoMessage() {}
  2441  
  2442  func (x *AsyncBatchAnnotateFilesResponse) ProtoReflect() protoreflect.Message {
  2443  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[27]
  2444  	if protoimpl.UnsafeEnabled && x != nil {
  2445  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2446  		if ms.LoadMessageInfo() == nil {
  2447  			ms.StoreMessageInfo(mi)
  2448  		}
  2449  		return ms
  2450  	}
  2451  	return mi.MessageOf(x)
  2452  }
  2453  
  2454  // Deprecated: Use AsyncBatchAnnotateFilesResponse.ProtoReflect.Descriptor instead.
  2455  func (*AsyncBatchAnnotateFilesResponse) Descriptor() ([]byte, []int) {
  2456  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{27}
  2457  }
  2458  
  2459  func (x *AsyncBatchAnnotateFilesResponse) GetResponses() []*AsyncAnnotateFileResponse {
  2460  	if x != nil {
  2461  		return x.Responses
  2462  	}
  2463  	return nil
  2464  }
  2465  
  2466  // The desired input location and metadata.
  2467  type InputConfig struct {
  2468  	state         protoimpl.MessageState
  2469  	sizeCache     protoimpl.SizeCache
  2470  	unknownFields protoimpl.UnknownFields
  2471  
  2472  	// The Google Cloud Storage location to read the input from.
  2473  	GcsSource *GcsSource `protobuf:"bytes,1,opt,name=gcs_source,json=gcsSource,proto3" json:"gcs_source,omitempty"`
  2474  	// The type of the file. Currently only "application/pdf" and "image/tiff"
  2475  	// are supported. Wildcards are not supported.
  2476  	MimeType string `protobuf:"bytes,2,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
  2477  }
  2478  
  2479  func (x *InputConfig) Reset() {
  2480  	*x = InputConfig{}
  2481  	if protoimpl.UnsafeEnabled {
  2482  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[28]
  2483  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2484  		ms.StoreMessageInfo(mi)
  2485  	}
  2486  }
  2487  
  2488  func (x *InputConfig) String() string {
  2489  	return protoimpl.X.MessageStringOf(x)
  2490  }
  2491  
  2492  func (*InputConfig) ProtoMessage() {}
  2493  
  2494  func (x *InputConfig) ProtoReflect() protoreflect.Message {
  2495  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[28]
  2496  	if protoimpl.UnsafeEnabled && x != nil {
  2497  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2498  		if ms.LoadMessageInfo() == nil {
  2499  			ms.StoreMessageInfo(mi)
  2500  		}
  2501  		return ms
  2502  	}
  2503  	return mi.MessageOf(x)
  2504  }
  2505  
  2506  // Deprecated: Use InputConfig.ProtoReflect.Descriptor instead.
  2507  func (*InputConfig) Descriptor() ([]byte, []int) {
  2508  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{28}
  2509  }
  2510  
  2511  func (x *InputConfig) GetGcsSource() *GcsSource {
  2512  	if x != nil {
  2513  		return x.GcsSource
  2514  	}
  2515  	return nil
  2516  }
  2517  
  2518  func (x *InputConfig) GetMimeType() string {
  2519  	if x != nil {
  2520  		return x.MimeType
  2521  	}
  2522  	return ""
  2523  }
  2524  
  2525  // The desired output location and metadata.
  2526  type OutputConfig struct {
  2527  	state         protoimpl.MessageState
  2528  	sizeCache     protoimpl.SizeCache
  2529  	unknownFields protoimpl.UnknownFields
  2530  
  2531  	// The Google Cloud Storage location to write the output(s) to.
  2532  	GcsDestination *GcsDestination `protobuf:"bytes,1,opt,name=gcs_destination,json=gcsDestination,proto3" json:"gcs_destination,omitempty"`
  2533  	// The max number of response protos to put into each output JSON file on GCS.
  2534  	// The valid range is [1, 100]. If not specified, the default value is 20.
  2535  	//
  2536  	// For example, for one pdf file with 100 pages, 100 response protos will
  2537  	// be generated. If `batch_size` = 20, then 5 json files each
  2538  	// containing 20 response protos will be written under the prefix
  2539  	// `gcs_destination`.`uri`.
  2540  	//
  2541  	// Currently, batch_size only applies to GcsDestination, with potential future
  2542  	// support for other output configurations.
  2543  	BatchSize int32 `protobuf:"varint,2,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"`
  2544  }
  2545  
  2546  func (x *OutputConfig) Reset() {
  2547  	*x = OutputConfig{}
  2548  	if protoimpl.UnsafeEnabled {
  2549  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[29]
  2550  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2551  		ms.StoreMessageInfo(mi)
  2552  	}
  2553  }
  2554  
  2555  func (x *OutputConfig) String() string {
  2556  	return protoimpl.X.MessageStringOf(x)
  2557  }
  2558  
  2559  func (*OutputConfig) ProtoMessage() {}
  2560  
  2561  func (x *OutputConfig) ProtoReflect() protoreflect.Message {
  2562  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[29]
  2563  	if protoimpl.UnsafeEnabled && x != nil {
  2564  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2565  		if ms.LoadMessageInfo() == nil {
  2566  			ms.StoreMessageInfo(mi)
  2567  		}
  2568  		return ms
  2569  	}
  2570  	return mi.MessageOf(x)
  2571  }
  2572  
  2573  // Deprecated: Use OutputConfig.ProtoReflect.Descriptor instead.
  2574  func (*OutputConfig) Descriptor() ([]byte, []int) {
  2575  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{29}
  2576  }
  2577  
  2578  func (x *OutputConfig) GetGcsDestination() *GcsDestination {
  2579  	if x != nil {
  2580  		return x.GcsDestination
  2581  	}
  2582  	return nil
  2583  }
  2584  
  2585  func (x *OutputConfig) GetBatchSize() int32 {
  2586  	if x != nil {
  2587  		return x.BatchSize
  2588  	}
  2589  	return 0
  2590  }
  2591  
  2592  // The Google Cloud Storage location where the input will be read from.
  2593  type GcsSource struct {
  2594  	state         protoimpl.MessageState
  2595  	sizeCache     protoimpl.SizeCache
  2596  	unknownFields protoimpl.UnknownFields
  2597  
  2598  	// Google Cloud Storage URI for the input file. This must only be a GCS
  2599  	// object. Wildcards are not currently supported.
  2600  	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
  2601  }
  2602  
  2603  func (x *GcsSource) Reset() {
  2604  	*x = GcsSource{}
  2605  	if protoimpl.UnsafeEnabled {
  2606  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[30]
  2607  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2608  		ms.StoreMessageInfo(mi)
  2609  	}
  2610  }
  2611  
  2612  func (x *GcsSource) String() string {
  2613  	return protoimpl.X.MessageStringOf(x)
  2614  }
  2615  
  2616  func (*GcsSource) ProtoMessage() {}
  2617  
  2618  func (x *GcsSource) ProtoReflect() protoreflect.Message {
  2619  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[30]
  2620  	if protoimpl.UnsafeEnabled && x != nil {
  2621  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2622  		if ms.LoadMessageInfo() == nil {
  2623  			ms.StoreMessageInfo(mi)
  2624  		}
  2625  		return ms
  2626  	}
  2627  	return mi.MessageOf(x)
  2628  }
  2629  
  2630  // Deprecated: Use GcsSource.ProtoReflect.Descriptor instead.
  2631  func (*GcsSource) Descriptor() ([]byte, []int) {
  2632  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{30}
  2633  }
  2634  
  2635  func (x *GcsSource) GetUri() string {
  2636  	if x != nil {
  2637  		return x.Uri
  2638  	}
  2639  	return ""
  2640  }
  2641  
  2642  // The Google Cloud Storage location where the output will be written to.
  2643  type GcsDestination struct {
  2644  	state         protoimpl.MessageState
  2645  	sizeCache     protoimpl.SizeCache
  2646  	unknownFields protoimpl.UnknownFields
  2647  
  2648  	// Google Cloud Storage URI where the results will be stored. Results will
  2649  	// be in JSON format and preceded by its corresponding input URI. This field
  2650  	// can either represent a single file, or a prefix for multiple outputs.
  2651  	// Prefixes must end in a `/`.
  2652  	//
  2653  	// Examples:
  2654  	//
  2655  	// *    File: gs://bucket-name/filename.json
  2656  	// *    Prefix: gs://bucket-name/prefix/here/
  2657  	// *    File: gs://bucket-name/prefix/here
  2658  	//
  2659  	// If multiple outputs, each response is still AnnotateFileResponse, each of
  2660  	// which contains some subset of the full list of AnnotateImageResponse.
  2661  	// Multiple outputs can happen if, for example, the output JSON is too large
  2662  	// and overflows into multiple sharded files.
  2663  	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
  2664  }
  2665  
  2666  func (x *GcsDestination) Reset() {
  2667  	*x = GcsDestination{}
  2668  	if protoimpl.UnsafeEnabled {
  2669  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[31]
  2670  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2671  		ms.StoreMessageInfo(mi)
  2672  	}
  2673  }
  2674  
  2675  func (x *GcsDestination) String() string {
  2676  	return protoimpl.X.MessageStringOf(x)
  2677  }
  2678  
  2679  func (*GcsDestination) ProtoMessage() {}
  2680  
  2681  func (x *GcsDestination) ProtoReflect() protoreflect.Message {
  2682  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[31]
  2683  	if protoimpl.UnsafeEnabled && x != nil {
  2684  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2685  		if ms.LoadMessageInfo() == nil {
  2686  			ms.StoreMessageInfo(mi)
  2687  		}
  2688  		return ms
  2689  	}
  2690  	return mi.MessageOf(x)
  2691  }
  2692  
  2693  // Deprecated: Use GcsDestination.ProtoReflect.Descriptor instead.
  2694  func (*GcsDestination) Descriptor() ([]byte, []int) {
  2695  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{31}
  2696  }
  2697  
  2698  func (x *GcsDestination) GetUri() string {
  2699  	if x != nil {
  2700  		return x.Uri
  2701  	}
  2702  	return ""
  2703  }
  2704  
  2705  // Contains metadata for the BatchAnnotateImages operation.
  2706  type OperationMetadata struct {
  2707  	state         protoimpl.MessageState
  2708  	sizeCache     protoimpl.SizeCache
  2709  	unknownFields protoimpl.UnknownFields
  2710  
  2711  	// Current state of the batch operation.
  2712  	State OperationMetadata_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.vision.v1p2beta1.OperationMetadata_State" json:"state,omitempty"`
  2713  	// The time when the batch request was received.
  2714  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
  2715  	// The time when the operation result was last updated.
  2716  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
  2717  }
  2718  
  2719  func (x *OperationMetadata) Reset() {
  2720  	*x = OperationMetadata{}
  2721  	if protoimpl.UnsafeEnabled {
  2722  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[32]
  2723  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2724  		ms.StoreMessageInfo(mi)
  2725  	}
  2726  }
  2727  
  2728  func (x *OperationMetadata) String() string {
  2729  	return protoimpl.X.MessageStringOf(x)
  2730  }
  2731  
  2732  func (*OperationMetadata) ProtoMessage() {}
  2733  
  2734  func (x *OperationMetadata) ProtoReflect() protoreflect.Message {
  2735  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[32]
  2736  	if protoimpl.UnsafeEnabled && x != nil {
  2737  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2738  		if ms.LoadMessageInfo() == nil {
  2739  			ms.StoreMessageInfo(mi)
  2740  		}
  2741  		return ms
  2742  	}
  2743  	return mi.MessageOf(x)
  2744  }
  2745  
  2746  // Deprecated: Use OperationMetadata.ProtoReflect.Descriptor instead.
  2747  func (*OperationMetadata) Descriptor() ([]byte, []int) {
  2748  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{32}
  2749  }
  2750  
  2751  func (x *OperationMetadata) GetState() OperationMetadata_State {
  2752  	if x != nil {
  2753  		return x.State
  2754  	}
  2755  	return OperationMetadata_STATE_UNSPECIFIED
  2756  }
  2757  
  2758  func (x *OperationMetadata) GetCreateTime() *timestamppb.Timestamp {
  2759  	if x != nil {
  2760  		return x.CreateTime
  2761  	}
  2762  	return nil
  2763  }
  2764  
  2765  func (x *OperationMetadata) GetUpdateTime() *timestamppb.Timestamp {
  2766  	if x != nil {
  2767  		return x.UpdateTime
  2768  	}
  2769  	return nil
  2770  }
  2771  
  2772  // A face-specific landmark (for example, a face feature).
  2773  type FaceAnnotation_Landmark struct {
  2774  	state         protoimpl.MessageState
  2775  	sizeCache     protoimpl.SizeCache
  2776  	unknownFields protoimpl.UnknownFields
  2777  
  2778  	// Face landmark type.
  2779  	Type FaceAnnotation_Landmark_Type `protobuf:"varint,3,opt,name=type,proto3,enum=google.cloud.vision.v1p2beta1.FaceAnnotation_Landmark_Type" json:"type,omitempty"`
  2780  	// Face landmark position.
  2781  	Position *Position `protobuf:"bytes,4,opt,name=position,proto3" json:"position,omitempty"`
  2782  }
  2783  
  2784  func (x *FaceAnnotation_Landmark) Reset() {
  2785  	*x = FaceAnnotation_Landmark{}
  2786  	if protoimpl.UnsafeEnabled {
  2787  		mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[33]
  2788  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2789  		ms.StoreMessageInfo(mi)
  2790  	}
  2791  }
  2792  
  2793  func (x *FaceAnnotation_Landmark) String() string {
  2794  	return protoimpl.X.MessageStringOf(x)
  2795  }
  2796  
  2797  func (*FaceAnnotation_Landmark) ProtoMessage() {}
  2798  
  2799  func (x *FaceAnnotation_Landmark) ProtoReflect() protoreflect.Message {
  2800  	mi := &file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[33]
  2801  	if protoimpl.UnsafeEnabled && x != nil {
  2802  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2803  		if ms.LoadMessageInfo() == nil {
  2804  			ms.StoreMessageInfo(mi)
  2805  		}
  2806  		return ms
  2807  	}
  2808  	return mi.MessageOf(x)
  2809  }
  2810  
  2811  // Deprecated: Use FaceAnnotation_Landmark.ProtoReflect.Descriptor instead.
  2812  func (*FaceAnnotation_Landmark) Descriptor() ([]byte, []int) {
  2813  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP(), []int{3, 0}
  2814  }
  2815  
  2816  func (x *FaceAnnotation_Landmark) GetType() FaceAnnotation_Landmark_Type {
  2817  	if x != nil {
  2818  		return x.Type
  2819  	}
  2820  	return FaceAnnotation_Landmark_UNKNOWN_LANDMARK
  2821  }
  2822  
  2823  func (x *FaceAnnotation_Landmark) GetPosition() *Position {
  2824  	if x != nil {
  2825  		return x.Position
  2826  	}
  2827  	return nil
  2828  }
  2829  
  2830  var File_google_cloud_vision_v1p2beta1_image_annotator_proto protoreflect.FileDescriptor
  2831  
  2832  var file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDesc = []byte{
  2833  	0x0a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
  2834  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
  2835  	0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x2e,
  2836  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2837  	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
  2838  	0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
  2839  	0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
  2840  	0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
  2841  	0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
  2842  	0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
  2843  	0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x67, 0x6f,
  2844  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f,
  2845  	0x6e, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6f, 0x6d,
  2846  	0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x33, 0x67, 0x6f, 0x6f, 0x67,
  2847  	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f,
  2848  	0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61,
  2849  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2850  	0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69,
  2851  	0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x77,
  2852  	0x65, 0x62, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
  2853  	0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
  2854  	0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2855  	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
  2856  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  2857  	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2858  	0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2859  	0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x63,
  2860  	0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67,
  2861  	0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6c, 0x61, 0x74, 0x6c, 0x6e, 0x67, 0x2e, 0x70,
  2862  	0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfa, 0x02, 0x0a, 0x07, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  2863  	0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b,
  2864  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  2865  	0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46,
  2866  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
  2867  	0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
  2868  	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c,
  2869  	0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28,
  2870  	0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0xf6, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70,
  2871  	0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
  2872  	0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x41, 0x43, 0x45, 0x5f,
  2873  	0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4c,
  2874  	0x41, 0x4e, 0x44, 0x4d, 0x41, 0x52, 0x4b, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f,
  2875  	0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x47, 0x4f, 0x5f, 0x44, 0x45, 0x54, 0x45,
  2876  	0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x41, 0x42, 0x45, 0x4c,
  2877  	0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e,
  2878  	0x54, 0x45, 0x58, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05,
  2879  	0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x45, 0x58,
  2880  	0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0b, 0x12, 0x19, 0x0a,
  2881  	0x15, 0x53, 0x41, 0x46, 0x45, 0x5f, 0x53, 0x45, 0x41, 0x52, 0x43, 0x48, 0x5f, 0x44, 0x45, 0x54,
  2882  	0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4d, 0x41, 0x47,
  2883  	0x45, 0x5f, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x54, 0x49, 0x45, 0x53, 0x10, 0x07, 0x12, 0x0e,
  2884  	0x0a, 0x0a, 0x43, 0x52, 0x4f, 0x50, 0x5f, 0x48, 0x49, 0x4e, 0x54, 0x53, 0x10, 0x09, 0x12, 0x11,
  2885  	0x0a, 0x0d, 0x57, 0x45, 0x42, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10,
  2886  	0x0a, 0x22, 0x4e, 0x0a, 0x0b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2887  	0x12, 0x22, 0x0a, 0x0d, 0x67, 0x63, 0x73, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72,
  2888  	0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x67, 0x63, 0x73, 0x49, 0x6d, 0x61, 0x67,
  2889  	0x65, 0x55, 0x72, 0x69, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72,
  2890  	0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72,
  2891  	0x69, 0x22, 0x65, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
  2892  	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e,
  2893  	0x74, 0x65, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
  2894  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2895  	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
  2896  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2897  	0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xa5, 0x10, 0x0a, 0x0e, 0x46, 0x61, 0x63,
  2898  	0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x0d, 0x62,
  2899  	0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01,
  2900  	0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2901  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
  2902  	0x61, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52,
  2903  	0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x12, 0x55, 0x0a,
  2904  	0x10, 0x66, 0x64, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c,
  2905  	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2906  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  2907  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
  2908  	0x50, 0x6f, 0x6c, 0x79, 0x52, 0x0e, 0x66, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
  2909  	0x50, 0x6f, 0x6c, 0x79, 0x12, 0x54, 0x0a, 0x09, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b,
  2910  	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2911  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  2912  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
  2913  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x52,
  2914  	0x09, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f,
  2915  	0x6c, 0x6c, 0x5f, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09,
  2916  	0x72, 0x6f, 0x6c, 0x6c, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x6e,
  2917  	0x5f, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x70, 0x61,
  2918  	0x6e, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x6c, 0x74, 0x5f, 0x61,
  2919  	0x6e, 0x67, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x74, 0x69, 0x6c, 0x74,
  2920  	0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
  2921  	0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20,
  2922  	0x01, 0x28, 0x02, 0x52, 0x13, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f,
  2923  	0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x35, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x64,
  2924  	0x6d, 0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e,
  2925  	0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61,
  2926  	0x72, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12,
  2927  	0x50, 0x0a, 0x0e, 0x6a, 0x6f, 0x79, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f,
  2928  	0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2929  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  2930  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f,
  2931  	0x6f, 0x64, 0x52, 0x0d, 0x6a, 0x6f, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f,
  2932  	0x64, 0x12, 0x56, 0x0a, 0x11, 0x73, 0x6f, 0x72, 0x72, 0x6f, 0x77, 0x5f, 0x6c, 0x69, 0x6b, 0x65,
  2933  	0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67,
  2934  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  2935  	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b,
  2936  	0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x10, 0x73, 0x6f, 0x72, 0x72, 0x6f, 0x77, 0x4c,
  2937  	0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x54, 0x0a, 0x10, 0x61, 0x6e, 0x67,
  2938  	0x65, 0x72, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x0b, 0x20,
  2939  	0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2940  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65,
  2941  	0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x0f,
  2942  	0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12,
  2943  	0x5a, 0x0a, 0x13, 0x73, 0x75, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x5f, 0x6c, 0x69, 0x6b, 0x65,
  2944  	0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67,
  2945  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  2946  	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b,
  2947  	0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x12, 0x73, 0x75, 0x72, 0x70, 0x72, 0x69, 0x73,
  2948  	0x65, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x63, 0x0a, 0x18, 0x75,
  2949  	0x6e, 0x64, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x5f, 0x6c, 0x69, 0x6b,
  2950  	0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e,
  2951  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  2952  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69,
  2953  	0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x16, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x45,
  2954  	0x78, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64,
  2955  	0x12, 0x58, 0x0a, 0x12, 0x62, 0x6c, 0x75, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6c, 0x69, 0x6b, 0x65,
  2956  	0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67,
  2957  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  2958  	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b,
  2959  	0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x11, 0x62, 0x6c, 0x75, 0x72, 0x72, 0x65, 0x64,
  2960  	0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x5a, 0x0a, 0x13, 0x68, 0x65,
  2961  	0x61, 0x64, 0x77, 0x65, 0x61, 0x72, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f,
  2962  	0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2963  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  2964  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f,
  2965  	0x6f, 0x64, 0x52, 0x12, 0x68, 0x65, 0x61, 0x64, 0x77, 0x65, 0x61, 0x72, 0x4c, 0x69, 0x6b, 0x65,
  2966  	0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x1a, 0xd7, 0x07, 0x0a, 0x08, 0x4c, 0x61, 0x6e, 0x64, 0x6d,
  2967  	0x61, 0x72, 0x6b, 0x12, 0x4f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
  2968  	0x0e, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2969  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61,
  2970  	0x31, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2971  	0x2e, 0x4c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04,
  2972  	0x74, 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
  2973  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2974  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70,
  2975  	0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52,
  2976  	0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb4, 0x06, 0x0a, 0x04, 0x54, 0x79,
  2977  	0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x4c, 0x41,
  2978  	0x4e, 0x44, 0x4d, 0x41, 0x52, 0x4b, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x45, 0x46, 0x54,
  2979  	0x5f, 0x45, 0x59, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f,
  2980  	0x45, 0x59, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x4f, 0x46,
  2981  	0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x42, 0x52, 0x4f, 0x57, 0x10, 0x03, 0x12,
  2982  	0x19, 0x0a, 0x15, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x4c, 0x45, 0x46, 0x54,
  2983  	0x5f, 0x45, 0x59, 0x45, 0x42, 0x52, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x4c, 0x45,
  2984  	0x46, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x42,
  2985  	0x52, 0x4f, 0x57, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x4f,
  2986  	0x46, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x42, 0x52, 0x4f, 0x57, 0x10,
  2987  	0x06, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x49, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x42, 0x45,
  2988  	0x54, 0x57, 0x45, 0x45, 0x4e, 0x5f, 0x45, 0x59, 0x45, 0x53, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08,
  2989  	0x4e, 0x4f, 0x53, 0x45, 0x5f, 0x54, 0x49, 0x50, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x50,
  2990  	0x50, 0x45, 0x52, 0x5f, 0x4c, 0x49, 0x50, 0x10, 0x09, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x4f, 0x57,
  2991  	0x45, 0x52, 0x5f, 0x4c, 0x49, 0x50, 0x10, 0x0a, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x4f, 0x55, 0x54,
  2992  	0x48, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x4f, 0x55, 0x54,
  2993  	0x48, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x0c, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x55,
  2994  	0x54, 0x48, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x15, 0x0a, 0x11, 0x4e,
  2995  	0x4f, 0x53, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54,
  2996  	0x10, 0x0e, 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x4f, 0x53, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f,
  2997  	0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x0f, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x4f, 0x53, 0x45,
  2998  	0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, 0x10,
  2999  	0x12, 0x19, 0x0a, 0x15, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x5f, 0x54, 0x4f, 0x50,
  3000  	0x5f, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, 0x4c,
  3001  	0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x43, 0x4f,
  3002  	0x52, 0x4e, 0x45, 0x52, 0x10, 0x12, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45,
  3003  	0x59, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x41,
  3004  	0x52, 0x59, 0x10, 0x13, 0x12, 0x18, 0x0a, 0x14, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45,
  3005  	0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x43, 0x4f, 0x52, 0x4e, 0x45, 0x52, 0x10, 0x14, 0x12, 0x1a,
  3006  	0x0a, 0x16, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x5f, 0x54, 0x4f, 0x50, 0x5f,
  3007  	0x42, 0x4f, 0x55, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x49,
  3008  	0x47, 0x48, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x43, 0x4f,
  3009  	0x52, 0x4e, 0x45, 0x52, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f,
  3010  	0x45, 0x59, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x42, 0x4f, 0x55, 0x4e, 0x44,
  3011  	0x41, 0x52, 0x59, 0x10, 0x17, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45,
  3012  	0x59, 0x45, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x43, 0x4f, 0x52, 0x4e, 0x45, 0x52, 0x10, 0x18,
  3013  	0x12, 0x1f, 0x0a, 0x1b, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x42, 0x52, 0x4f, 0x57,
  3014  	0x5f, 0x55, 0x50, 0x50, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10,
  3015  	0x19, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x42, 0x52,
  3016  	0x4f, 0x57, 0x5f, 0x55, 0x50, 0x50, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x44, 0x50, 0x4f, 0x49, 0x4e,
  3017  	0x54, 0x10, 0x1a, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x41, 0x52, 0x5f,
  3018  	0x54, 0x52, 0x41, 0x47, 0x49, 0x4f, 0x4e, 0x10, 0x1b, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x49, 0x47,
  3019  	0x48, 0x54, 0x5f, 0x45, 0x41, 0x52, 0x5f, 0x54, 0x52, 0x41, 0x47, 0x49, 0x4f, 0x4e, 0x10, 0x1c,
  3020  	0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x45, 0x59, 0x45, 0x5f, 0x50, 0x55, 0x50,
  3021  	0x49, 0x4c, 0x10, 0x1d, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x45, 0x59,
  3022  	0x45, 0x5f, 0x50, 0x55, 0x50, 0x49, 0x4c, 0x10, 0x1e, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x4f, 0x52,
  3023  	0x45, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x47, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x4c, 0x41, 0x10, 0x1f,
  3024  	0x12, 0x11, 0x0a, 0x0d, 0x43, 0x48, 0x49, 0x4e, 0x5f, 0x47, 0x4e, 0x41, 0x54, 0x48, 0x49, 0x4f,
  3025  	0x4e, 0x10, 0x20, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x48, 0x49, 0x4e, 0x5f, 0x4c, 0x45, 0x46, 0x54,
  3026  	0x5f, 0x47, 0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x21, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x48, 0x49,
  3027  	0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x47, 0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x22,
  3028  	0x22, 0x3c, 0x0a, 0x0c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
  3029  	0x12, 0x2c, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x5f, 0x6c, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28,
  3030  	0x0b, 0x32, 0x13, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e,
  3031  	0x4c, 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x52, 0x06, 0x6c, 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x22, 0x57,
  3032  	0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
  3033  	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14,
  3034  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
  3035  	0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x76,
  3036  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x75, 0x69, 0x6e, 0x74,
  3037  	0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9a, 0x03, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x69,
  3038  	0x74, 0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03,
  3039  	0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x69, 0x64, 0x12, 0x16,
  3040  	0x0a, 0x06, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
  3041  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
  3042  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
  3043  	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72,
  3044  	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e,
  3045  	0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01,
  3046  	0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1e,
  3047  	0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01,
  3048  	0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x50,
  3049  	0x0a, 0x0d, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x79, 0x18,
  3050  	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3051  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32,
  3052  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f,
  3053  	0x6c, 0x79, 0x52, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79,
  3054  	0x12, 0x49, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20,
  3055  	0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3056  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65,
  3057  	0x74, 0x61, 0x31, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
  3058  	0x52, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70,
  3059  	0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
  3060  	0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
  3061  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  3062  	0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
  3063  	0x74, 0x69, 0x65, 0x73, 0x22, 0xe3, 0x02, 0x0a, 0x14, 0x53, 0x61, 0x66, 0x65, 0x53, 0x65, 0x61,
  3064  	0x72, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a,
  3065  	0x05, 0x61, 0x64, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67,
  3066  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3067  	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b,
  3068  	0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x05, 0x61, 0x64, 0x75, 0x6c, 0x74, 0x12, 0x3f,
  3069  	0x0a, 0x05, 0x73, 0x70, 0x6f, 0x6f, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e,
  3070  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3071  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69,
  3072  	0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x05, 0x73, 0x70, 0x6f, 0x6f, 0x66, 0x12,
  3073  	0x43, 0x0a, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
  3074  	0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3075  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
  3076  	0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x07, 0x6d, 0x65, 0x64,
  3077  	0x69, 0x63, 0x61, 0x6c, 0x12, 0x45, 0x0a, 0x08, 0x76, 0x69, 0x6f, 0x6c, 0x65, 0x6e, 0x63, 0x65,
  3078  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3079  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70,
  3080  	0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f,
  3081  	0x64, 0x52, 0x08, 0x76, 0x69, 0x6f, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x04, 0x72,
  3082  	0x61, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3083  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
  3084  	0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69,
  3085  	0x68, 0x6f, 0x6f, 0x64, 0x52, 0x04, 0x72, 0x61, 0x63, 0x79, 0x22, 0x77, 0x0a, 0x0b, 0x4c, 0x61,
  3086  	0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x74, 0x12, 0x33, 0x0a, 0x0b, 0x6d, 0x69, 0x6e,
  3087  	0x5f, 0x6c, 0x61, 0x74, 0x5f, 0x6c, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
  3088  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4c, 0x61, 0x74,
  3089  	0x4c, 0x6e, 0x67, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x4c, 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x12, 0x33,
  3090  	0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x61, 0x74, 0x5f, 0x6c, 0x6e, 0x67, 0x18, 0x02, 0x20,
  3091  	0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70,
  3092  	0x65, 0x2e, 0x4c, 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x4c, 0x61, 0x74,
  3093  	0x4c, 0x6e, 0x67, 0x22, 0x72, 0x0a, 0x09, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f,
  3094  	0x12, 0x28, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3095  	0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x6f,
  3096  	0x6c, 0x6f, 0x72, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63,
  3097  	0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65,
  3098  	0x12, 0x25, 0x0a, 0x0e, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x66, 0x72, 0x61, 0x63, 0x74, 0x69,
  3099  	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x46,
  3100  	0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5c, 0x0a, 0x18, 0x44, 0x6f, 0x6d, 0x69, 0x6e,
  3101  	0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
  3102  	0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20,
  3103  	0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3104  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65,
  3105  	0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x63,
  3106  	0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x22, 0x73, 0x0a, 0x0f, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x72,
  3107  	0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x60, 0x0a, 0x0f, 0x64, 0x6f, 0x6d, 0x69,
  3108  	0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
  3109  	0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3110  	0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61,
  3111  	0x31, 0x2e, 0x44, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x73,
  3112  	0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x64, 0x6f, 0x6d, 0x69,
  3113  	0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x08, 0x43,
  3114  	0x72, 0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0d, 0x62, 0x6f, 0x75, 0x6e, 0x64,
  3115  	0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b,
  3116  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  3117  	0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42,
  3118  	0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52, 0x0c, 0x62, 0x6f, 0x75,
  3119  	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e,
  3120  	0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63,
  3121  	0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x69, 0x6d, 0x70,
  3122  	0x6f, 0x72, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3123  	0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e,
  3124  	0x63, 0x65, 0x46, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5d, 0x0a, 0x13, 0x43, 0x72,
  3125  	0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3126  	0x6e, 0x12, 0x46, 0x0a, 0x0a, 0x63, 0x72, 0x6f, 0x70, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18,
  3127  	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3128  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32,
  3129  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x09,
  3130  	0x63, 0x72, 0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x36, 0x0a, 0x0f, 0x43, 0x72, 0x6f,
  3131  	0x70, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x23, 0x0a, 0x0d,
  3132  	0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x73, 0x18, 0x01, 0x20,
  3133  	0x03, 0x28, 0x02, 0x52, 0x0c, 0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f,
  3134  	0x73, 0x22, 0x44, 0x0a, 0x12, 0x57, 0x65, 0x62, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
  3135  	0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75,
  3136  	0x64, 0x65, 0x5f, 0x67, 0x65, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02,
  3137  	0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x47, 0x65, 0x6f,
  3138  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x9b, 0x01, 0x0a, 0x13, 0x54, 0x65, 0x78, 0x74,
  3139  	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12,
  3140  	0x52, 0x0a, 0x26, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x64,
  3141  	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
  3142  	0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52,
  3143  	0x22, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x78, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
  3144  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x63,
  3145  	0x6f, 0x72, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f,
  3146  	0x6f, 0x63, 0x72, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28,
  3147  	0x09, 0x52, 0x12, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4f, 0x63, 0x72, 0x4f, 0x70,
  3148  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xae, 0x03, 0x0a, 0x0c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43,
  3149  	0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4e, 0x0a, 0x0d, 0x6c, 0x61, 0x74, 0x5f, 0x6c, 0x6f,
  3150  	0x6e, 0x67, 0x5f, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
  3151  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3152  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61,
  3153  	0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x74, 0x52, 0x0b, 0x6c, 0x61, 0x74, 0x4c, 0x6f,
  3154  	0x6e, 0x67, 0x52, 0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61,
  3155  	0x67, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d,
  3156  	0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x5a, 0x0a,
  3157  	0x11, 0x63, 0x72, 0x6f, 0x70, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x61,
  3158  	0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3159  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
  3160  	0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x70, 0x48, 0x69, 0x6e,
  3161  	0x74, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x0f, 0x63, 0x72, 0x6f, 0x70, 0x48, 0x69,
  3162  	0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x63, 0x0a, 0x14, 0x77, 0x65, 0x62,
  3163  	0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d,
  3164  	0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3165  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  3166  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x44, 0x65, 0x74, 0x65, 0x63,
  3167  	0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x12, 0x77, 0x65, 0x62, 0x44,
  3168  	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x66,
  3169  	0x0a, 0x15, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3170  	0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e,
  3171  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3172  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65,
  3173  	0x78, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d,
  3174  	0x73, 0x52, 0x13, 0x74, 0x65, 0x78, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  3175  	0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xe8, 0x01, 0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
  3176  	0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
  3177  	0x3a, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
  3178  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  3179  	0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
  3180  	0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x42, 0x0a, 0x08, 0x66,
  3181  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e,
  3182  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3183  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x65,
  3184  	0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12,
  3185  	0x50, 0x0a, 0x0d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
  3186  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3187  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70,
  3188  	0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74,
  3189  	0x65, 0x78, 0x74, 0x52, 0x0c, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
  3190  	0x74, 0x22, 0x4b, 0x0a, 0x16, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3191  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75,
  3192  	0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x1f, 0x0a,
  3193  	0x0b, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
  3194  	0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xdc,
  3195  	0x08, 0x0a, 0x15, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65,
  3196  	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x65,
  3197  	0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03,
  3198  	0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  3199  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
  3200  	0x61, 0x31, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3201  	0x6e, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3202  	0x6e, 0x73, 0x12, 0x62, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x61,
  3203  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  3204  	0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3205  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
  3206  	0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3207  	0x6e, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
  3208  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5a, 0x0a, 0x10, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x61,
  3209  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
  3210  	0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3211  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
  3212  	0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3213  	0x6e, 0x52, 0x0f, 0x6c, 0x6f, 0x67, 0x6f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3214  	0x6e, 0x73, 0x12, 0x5c, 0x0a, 0x11, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x61, 0x6e, 0x6e, 0x6f,
  3215  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e,
  3216  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3217  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e,
  3218  	0x74, 0x69, 0x74, 0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10,
  3219  	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  3220  	0x12, 0x5a, 0x0a, 0x10, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
  3221  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f,
  3222  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3223  	0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74,
  3224  	0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x74, 0x65, 0x78,
  3225  	0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5f, 0x0a, 0x14,
  3226  	0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3227  	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f,
  3228  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
  3229  	0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41,
  3230  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x66, 0x75, 0x6c, 0x6c, 0x54,
  3231  	0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x69, 0x0a,
  3232  	0x16, 0x73, 0x61, 0x66, 0x65, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x61, 0x6e, 0x6e,
  3233  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
  3234  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3235  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x61,
  3236  	0x66, 0x65, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
  3237  	0x6f, 0x6e, 0x52, 0x14, 0x73, 0x61, 0x66, 0x65, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6e,
  3238  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6e, 0x0a, 0x1b, 0x69, 0x6d, 0x61, 0x67,
  3239  	0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x61, 0x6e, 0x6e,
  3240  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
  3241  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3242  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d,
  3243  	0x61, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, 0x19, 0x69,
  3244  	0x6d, 0x61, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x41, 0x6e,
  3245  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x15, 0x63, 0x72, 0x6f, 0x70,
  3246  	0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3247  	0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3248  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  3249  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74,
  3250  	0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x63, 0x72, 0x6f,
  3251  	0x70, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  3252  	0x12, 0x50, 0x0a, 0x0d, 0x77, 0x65, 0x62, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
  3253  	0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3254  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  3255  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x44, 0x65, 0x74, 0x65, 0x63,
  3256  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x77, 0x65, 0x62, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
  3257  	0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28,
  3258  	0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53,
  3259  	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x4f, 0x0a, 0x07,
  3260  	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e,
  3261  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3262  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d,
  3263  	0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
  3264  	0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0xb9, 0x01,
  3265  	0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65,
  3266  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,
  3267  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67,
  3268  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69,
  3269  	0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70,
  3270  	0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43,
  3271  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x52, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3272  	0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3273  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
  3274  	0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
  3275  	0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09,
  3276  	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x22, 0x72, 0x0a, 0x1a, 0x42, 0x61, 0x74,
  3277  	0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73,
  3278  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65,
  3279  	0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3280  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
  3281  	0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3282  	0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03,
  3283  	0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x71, 0x0a,
  3284  	0x1b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d,
  3285  	0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x09,
  3286  	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  3287  	0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
  3288  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  3289  	0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73,
  3290  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73,
  3291  	0x22, 0xd1, 0x02, 0x0a, 0x18, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3292  	0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a,
  3293  	0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20,
  3294  	0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  3295  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65,
  3296  	0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
  3297  	0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x42, 0x0a, 0x08,
  3298  	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26,
  3299  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
  3300  	0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46,
  3301  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
  3302  	0x12, 0x50, 0x0a, 0x0d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
  3303  	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3304  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  3305  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e,
  3306  	0x74, 0x65, 0x78, 0x74, 0x52, 0x0c, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
  3307  	0x78, 0x74, 0x12, 0x50, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e,
  3308  	0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3309  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
  3310  	0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
  3311  	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f,
  3312  	0x6e, 0x66, 0x69, 0x67, 0x22, 0x6d, 0x0a, 0x19, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x41, 0x6e, 0x6e,
  3313  	0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3314  	0x65, 0x12, 0x50, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
  3315  	0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3316  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
  3317  	0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43,
  3318  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e,
  3319  	0x66, 0x69, 0x67, 0x22, 0x7a, 0x0a, 0x1e, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x42, 0x61, 0x74, 0x63,
  3320  	0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65,
  3321  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x58, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3322  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3323  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
  3324  	0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x41, 0x6e, 0x6e,
  3325  	0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3326  	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22,
  3327  	0x79, 0x0a, 0x1f, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e,
  3328  	0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
  3329  	0x73, 0x65, 0x12, 0x56, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18,
  3330  	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  3331  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32,
  3332  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
  3333  	0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52,
  3334  	0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x22, 0x73, 0x0a, 0x0b, 0x49, 0x6e,
  3335  	0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x0a, 0x67, 0x63, 0x73,
  3336  	0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
  3337  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3338  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63,
  3339  	0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x67, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72,
  3340  	0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
  3341  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22,
  3342  	0x85, 0x01, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
  3343  	0x12, 0x56, 0x0a, 0x0f, 0x67, 0x63, 0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
  3344  	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3345  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
  3346  	0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73,
  3347  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x67, 0x63, 0x73, 0x44, 0x65, 0x73,
  3348  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x63,
  3349  	0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x62, 0x61,
  3350  	0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x1d, 0x0a, 0x09, 0x47, 0x63, 0x73, 0x53, 0x6f,
  3351  	0x75, 0x72, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
  3352  	0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x22, 0x22, 0x0a, 0x0e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73,
  3353  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18,
  3354  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x22, 0xae, 0x02, 0x0a, 0x11, 0x4f,
  3355  	0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
  3356  	0x12, 0x4c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
  3357  	0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
  3358  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  3359  	0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
  3360  	0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3b,
  3361  	0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20,
  3362  	0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  3363  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
  3364  	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75,
  3365  	0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
  3366  	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  3367  	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70,
  3368  	0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74,
  3369  	0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
  3370  	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41,
  3371  	0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47,
  3372  	0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09,
  3373  	0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x2a, 0x65, 0x0a, 0x0a, 0x4c,
  3374  	0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b,
  3375  	0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x55,
  3376  	0x4e, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4c,
  3377  	0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4f, 0x53, 0x53, 0x49,
  3378  	0x42, 0x4c, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10,
  3379  	0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59,
  3380  	0x10, 0x05, 0x32, 0xb5, 0x04, 0x0a, 0x0e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
  3381  	0x74, 0x61, 0x74, 0x6f, 0x72, 0x12, 0xbe, 0x01, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41,
  3382  	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x39, 0x2e,
  3383  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
  3384  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61,
  3385  	0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65,
  3386  	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3387  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
  3388  	0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e,
  3389  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
  3390  	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 0x76,
  3391  	0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x3a,
  3392  	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x08, 0x72, 0x65,
  3393  	0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0xe9, 0x01, 0x0a, 0x17, 0x41, 0x73, 0x79, 0x6e, 0x63,
  3394  	0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c,
  3395  	0x65, 0x73, 0x12, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  3396  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
  3397  	0x61, 0x31, 0x2e, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e,
  3398  	0x6f, 0x74, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  3399  	0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
  3400  	0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  3401  	0x22, 0x70, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x22, 0x23, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62,
  3402  	0x65, 0x74, 0x61, 0x31, 0x2f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x3a, 0x61, 0x73, 0x79, 0x6e, 0x63,
  3403  	0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a,
  3404  	0xda, 0x41, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0xca, 0x41, 0x34, 0x0a, 0x1f,
  3405  	0x41, 0x73, 0x79, 0x6e, 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
  3406  	0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
  3407  	0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
  3408  	0x74, 0x61, 0x1a, 0x76, 0xca, 0x41, 0x15, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x67, 0x6f,
  3409  	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5b, 0x68,
  3410  	0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3411  	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63,
  3412  	0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74,
  3413  	0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3414  	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c,
  3415  	0x6f, 0x75, 0x64, 0x2d, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x82, 0x01, 0x0a, 0x21, 0x63,
  3416  	0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  3417  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
  3418  	0x42, 0x13, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x6f, 0x72,
  3419  	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3420  	0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72,
  3421  	0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63,
  3422  	0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x32,
  3423  	0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0xf8, 0x01, 0x01, 0x62,
  3424  	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  3425  }
  3426  
  3427  var (
  3428  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescOnce sync.Once
  3429  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescData = file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDesc
  3430  )
  3431  
  3432  func file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescGZIP() []byte {
  3433  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescOnce.Do(func() {
  3434  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescData)
  3435  	})
  3436  	return file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDescData
  3437  }
  3438  
  3439  var file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
  3440  var file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes = make([]protoimpl.MessageInfo, 34)
  3441  var file_google_cloud_vision_v1p2beta1_image_annotator_proto_goTypes = []interface{}{
  3442  	(Likelihood)(0),                         // 0: google.cloud.vision.v1p2beta1.Likelihood
  3443  	(Feature_Type)(0),                       // 1: google.cloud.vision.v1p2beta1.Feature.Type
  3444  	(FaceAnnotation_Landmark_Type)(0),       // 2: google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type
  3445  	(OperationMetadata_State)(0),            // 3: google.cloud.vision.v1p2beta1.OperationMetadata.State
  3446  	(*Feature)(nil),                         // 4: google.cloud.vision.v1p2beta1.Feature
  3447  	(*ImageSource)(nil),                     // 5: google.cloud.vision.v1p2beta1.ImageSource
  3448  	(*Image)(nil),                           // 6: google.cloud.vision.v1p2beta1.Image
  3449  	(*FaceAnnotation)(nil),                  // 7: google.cloud.vision.v1p2beta1.FaceAnnotation
  3450  	(*LocationInfo)(nil),                    // 8: google.cloud.vision.v1p2beta1.LocationInfo
  3451  	(*Property)(nil),                        // 9: google.cloud.vision.v1p2beta1.Property
  3452  	(*EntityAnnotation)(nil),                // 10: google.cloud.vision.v1p2beta1.EntityAnnotation
  3453  	(*SafeSearchAnnotation)(nil),            // 11: google.cloud.vision.v1p2beta1.SafeSearchAnnotation
  3454  	(*LatLongRect)(nil),                     // 12: google.cloud.vision.v1p2beta1.LatLongRect
  3455  	(*ColorInfo)(nil),                       // 13: google.cloud.vision.v1p2beta1.ColorInfo
  3456  	(*DominantColorsAnnotation)(nil),        // 14: google.cloud.vision.v1p2beta1.DominantColorsAnnotation
  3457  	(*ImageProperties)(nil),                 // 15: google.cloud.vision.v1p2beta1.ImageProperties
  3458  	(*CropHint)(nil),                        // 16: google.cloud.vision.v1p2beta1.CropHint
  3459  	(*CropHintsAnnotation)(nil),             // 17: google.cloud.vision.v1p2beta1.CropHintsAnnotation
  3460  	(*CropHintsParams)(nil),                 // 18: google.cloud.vision.v1p2beta1.CropHintsParams
  3461  	(*WebDetectionParams)(nil),              // 19: google.cloud.vision.v1p2beta1.WebDetectionParams
  3462  	(*TextDetectionParams)(nil),             // 20: google.cloud.vision.v1p2beta1.TextDetectionParams
  3463  	(*ImageContext)(nil),                    // 21: google.cloud.vision.v1p2beta1.ImageContext
  3464  	(*AnnotateImageRequest)(nil),            // 22: google.cloud.vision.v1p2beta1.AnnotateImageRequest
  3465  	(*ImageAnnotationContext)(nil),          // 23: google.cloud.vision.v1p2beta1.ImageAnnotationContext
  3466  	(*AnnotateImageResponse)(nil),           // 24: google.cloud.vision.v1p2beta1.AnnotateImageResponse
  3467  	(*AnnotateFileResponse)(nil),            // 25: google.cloud.vision.v1p2beta1.AnnotateFileResponse
  3468  	(*BatchAnnotateImagesRequest)(nil),      // 26: google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest
  3469  	(*BatchAnnotateImagesResponse)(nil),     // 27: google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse
  3470  	(*AsyncAnnotateFileRequest)(nil),        // 28: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest
  3471  	(*AsyncAnnotateFileResponse)(nil),       // 29: google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse
  3472  	(*AsyncBatchAnnotateFilesRequest)(nil),  // 30: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest
  3473  	(*AsyncBatchAnnotateFilesResponse)(nil), // 31: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse
  3474  	(*InputConfig)(nil),                     // 32: google.cloud.vision.v1p2beta1.InputConfig
  3475  	(*OutputConfig)(nil),                    // 33: google.cloud.vision.v1p2beta1.OutputConfig
  3476  	(*GcsSource)(nil),                       // 34: google.cloud.vision.v1p2beta1.GcsSource
  3477  	(*GcsDestination)(nil),                  // 35: google.cloud.vision.v1p2beta1.GcsDestination
  3478  	(*OperationMetadata)(nil),               // 36: google.cloud.vision.v1p2beta1.OperationMetadata
  3479  	(*FaceAnnotation_Landmark)(nil),         // 37: google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark
  3480  	(*BoundingPoly)(nil),                    // 38: google.cloud.vision.v1p2beta1.BoundingPoly
  3481  	(*latlng.LatLng)(nil),                   // 39: google.type.LatLng
  3482  	(*color.Color)(nil),                     // 40: google.type.Color
  3483  	(*TextAnnotation)(nil),                  // 41: google.cloud.vision.v1p2beta1.TextAnnotation
  3484  	(*WebDetection)(nil),                    // 42: google.cloud.vision.v1p2beta1.WebDetection
  3485  	(*status.Status)(nil),                   // 43: google.rpc.Status
  3486  	(*timestamppb.Timestamp)(nil),           // 44: google.protobuf.Timestamp
  3487  	(*Position)(nil),                        // 45: google.cloud.vision.v1p2beta1.Position
  3488  	(*longrunning.Operation)(nil),           // 46: google.longrunning.Operation
  3489  }
  3490  var file_google_cloud_vision_v1p2beta1_image_annotator_proto_depIdxs = []int32{
  3491  	1,  // 0: google.cloud.vision.v1p2beta1.Feature.type:type_name -> google.cloud.vision.v1p2beta1.Feature.Type
  3492  	5,  // 1: google.cloud.vision.v1p2beta1.Image.source:type_name -> google.cloud.vision.v1p2beta1.ImageSource
  3493  	38, // 2: google.cloud.vision.v1p2beta1.FaceAnnotation.bounding_poly:type_name -> google.cloud.vision.v1p2beta1.BoundingPoly
  3494  	38, // 3: google.cloud.vision.v1p2beta1.FaceAnnotation.fd_bounding_poly:type_name -> google.cloud.vision.v1p2beta1.BoundingPoly
  3495  	37, // 4: google.cloud.vision.v1p2beta1.FaceAnnotation.landmarks:type_name -> google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark
  3496  	0,  // 5: google.cloud.vision.v1p2beta1.FaceAnnotation.joy_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3497  	0,  // 6: google.cloud.vision.v1p2beta1.FaceAnnotation.sorrow_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3498  	0,  // 7: google.cloud.vision.v1p2beta1.FaceAnnotation.anger_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3499  	0,  // 8: google.cloud.vision.v1p2beta1.FaceAnnotation.surprise_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3500  	0,  // 9: google.cloud.vision.v1p2beta1.FaceAnnotation.under_exposed_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3501  	0,  // 10: google.cloud.vision.v1p2beta1.FaceAnnotation.blurred_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3502  	0,  // 11: google.cloud.vision.v1p2beta1.FaceAnnotation.headwear_likelihood:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3503  	39, // 12: google.cloud.vision.v1p2beta1.LocationInfo.lat_lng:type_name -> google.type.LatLng
  3504  	38, // 13: google.cloud.vision.v1p2beta1.EntityAnnotation.bounding_poly:type_name -> google.cloud.vision.v1p2beta1.BoundingPoly
  3505  	8,  // 14: google.cloud.vision.v1p2beta1.EntityAnnotation.locations:type_name -> google.cloud.vision.v1p2beta1.LocationInfo
  3506  	9,  // 15: google.cloud.vision.v1p2beta1.EntityAnnotation.properties:type_name -> google.cloud.vision.v1p2beta1.Property
  3507  	0,  // 16: google.cloud.vision.v1p2beta1.SafeSearchAnnotation.adult:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3508  	0,  // 17: google.cloud.vision.v1p2beta1.SafeSearchAnnotation.spoof:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3509  	0,  // 18: google.cloud.vision.v1p2beta1.SafeSearchAnnotation.medical:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3510  	0,  // 19: google.cloud.vision.v1p2beta1.SafeSearchAnnotation.violence:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3511  	0,  // 20: google.cloud.vision.v1p2beta1.SafeSearchAnnotation.racy:type_name -> google.cloud.vision.v1p2beta1.Likelihood
  3512  	39, // 21: google.cloud.vision.v1p2beta1.LatLongRect.min_lat_lng:type_name -> google.type.LatLng
  3513  	39, // 22: google.cloud.vision.v1p2beta1.LatLongRect.max_lat_lng:type_name -> google.type.LatLng
  3514  	40, // 23: google.cloud.vision.v1p2beta1.ColorInfo.color:type_name -> google.type.Color
  3515  	13, // 24: google.cloud.vision.v1p2beta1.DominantColorsAnnotation.colors:type_name -> google.cloud.vision.v1p2beta1.ColorInfo
  3516  	14, // 25: google.cloud.vision.v1p2beta1.ImageProperties.dominant_colors:type_name -> google.cloud.vision.v1p2beta1.DominantColorsAnnotation
  3517  	38, // 26: google.cloud.vision.v1p2beta1.CropHint.bounding_poly:type_name -> google.cloud.vision.v1p2beta1.BoundingPoly
  3518  	16, // 27: google.cloud.vision.v1p2beta1.CropHintsAnnotation.crop_hints:type_name -> google.cloud.vision.v1p2beta1.CropHint
  3519  	12, // 28: google.cloud.vision.v1p2beta1.ImageContext.lat_long_rect:type_name -> google.cloud.vision.v1p2beta1.LatLongRect
  3520  	18, // 29: google.cloud.vision.v1p2beta1.ImageContext.crop_hints_params:type_name -> google.cloud.vision.v1p2beta1.CropHintsParams
  3521  	19, // 30: google.cloud.vision.v1p2beta1.ImageContext.web_detection_params:type_name -> google.cloud.vision.v1p2beta1.WebDetectionParams
  3522  	20, // 31: google.cloud.vision.v1p2beta1.ImageContext.text_detection_params:type_name -> google.cloud.vision.v1p2beta1.TextDetectionParams
  3523  	6,  // 32: google.cloud.vision.v1p2beta1.AnnotateImageRequest.image:type_name -> google.cloud.vision.v1p2beta1.Image
  3524  	4,  // 33: google.cloud.vision.v1p2beta1.AnnotateImageRequest.features:type_name -> google.cloud.vision.v1p2beta1.Feature
  3525  	21, // 34: google.cloud.vision.v1p2beta1.AnnotateImageRequest.image_context:type_name -> google.cloud.vision.v1p2beta1.ImageContext
  3526  	7,  // 35: google.cloud.vision.v1p2beta1.AnnotateImageResponse.face_annotations:type_name -> google.cloud.vision.v1p2beta1.FaceAnnotation
  3527  	10, // 36: google.cloud.vision.v1p2beta1.AnnotateImageResponse.landmark_annotations:type_name -> google.cloud.vision.v1p2beta1.EntityAnnotation
  3528  	10, // 37: google.cloud.vision.v1p2beta1.AnnotateImageResponse.logo_annotations:type_name -> google.cloud.vision.v1p2beta1.EntityAnnotation
  3529  	10, // 38: google.cloud.vision.v1p2beta1.AnnotateImageResponse.label_annotations:type_name -> google.cloud.vision.v1p2beta1.EntityAnnotation
  3530  	10, // 39: google.cloud.vision.v1p2beta1.AnnotateImageResponse.text_annotations:type_name -> google.cloud.vision.v1p2beta1.EntityAnnotation
  3531  	41, // 40: google.cloud.vision.v1p2beta1.AnnotateImageResponse.full_text_annotation:type_name -> google.cloud.vision.v1p2beta1.TextAnnotation
  3532  	11, // 41: google.cloud.vision.v1p2beta1.AnnotateImageResponse.safe_search_annotation:type_name -> google.cloud.vision.v1p2beta1.SafeSearchAnnotation
  3533  	15, // 42: google.cloud.vision.v1p2beta1.AnnotateImageResponse.image_properties_annotation:type_name -> google.cloud.vision.v1p2beta1.ImageProperties
  3534  	17, // 43: google.cloud.vision.v1p2beta1.AnnotateImageResponse.crop_hints_annotation:type_name -> google.cloud.vision.v1p2beta1.CropHintsAnnotation
  3535  	42, // 44: google.cloud.vision.v1p2beta1.AnnotateImageResponse.web_detection:type_name -> google.cloud.vision.v1p2beta1.WebDetection
  3536  	43, // 45: google.cloud.vision.v1p2beta1.AnnotateImageResponse.error:type_name -> google.rpc.Status
  3537  	23, // 46: google.cloud.vision.v1p2beta1.AnnotateImageResponse.context:type_name -> google.cloud.vision.v1p2beta1.ImageAnnotationContext
  3538  	32, // 47: google.cloud.vision.v1p2beta1.AnnotateFileResponse.input_config:type_name -> google.cloud.vision.v1p2beta1.InputConfig
  3539  	24, // 48: google.cloud.vision.v1p2beta1.AnnotateFileResponse.responses:type_name -> google.cloud.vision.v1p2beta1.AnnotateImageResponse
  3540  	22, // 49: google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest.requests:type_name -> google.cloud.vision.v1p2beta1.AnnotateImageRequest
  3541  	24, // 50: google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse.responses:type_name -> google.cloud.vision.v1p2beta1.AnnotateImageResponse
  3542  	32, // 51: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.input_config:type_name -> google.cloud.vision.v1p2beta1.InputConfig
  3543  	4,  // 52: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.features:type_name -> google.cloud.vision.v1p2beta1.Feature
  3544  	21, // 53: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.image_context:type_name -> google.cloud.vision.v1p2beta1.ImageContext
  3545  	33, // 54: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.output_config:type_name -> google.cloud.vision.v1p2beta1.OutputConfig
  3546  	33, // 55: google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse.output_config:type_name -> google.cloud.vision.v1p2beta1.OutputConfig
  3547  	28, // 56: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest.requests:type_name -> google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest
  3548  	29, // 57: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse.responses:type_name -> google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse
  3549  	34, // 58: google.cloud.vision.v1p2beta1.InputConfig.gcs_source:type_name -> google.cloud.vision.v1p2beta1.GcsSource
  3550  	35, // 59: google.cloud.vision.v1p2beta1.OutputConfig.gcs_destination:type_name -> google.cloud.vision.v1p2beta1.GcsDestination
  3551  	3,  // 60: google.cloud.vision.v1p2beta1.OperationMetadata.state:type_name -> google.cloud.vision.v1p2beta1.OperationMetadata.State
  3552  	44, // 61: google.cloud.vision.v1p2beta1.OperationMetadata.create_time:type_name -> google.protobuf.Timestamp
  3553  	44, // 62: google.cloud.vision.v1p2beta1.OperationMetadata.update_time:type_name -> google.protobuf.Timestamp
  3554  	2,  // 63: google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.type:type_name -> google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type
  3555  	45, // 64: google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.position:type_name -> google.cloud.vision.v1p2beta1.Position
  3556  	26, // 65: google.cloud.vision.v1p2beta1.ImageAnnotator.BatchAnnotateImages:input_type -> google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest
  3557  	30, // 66: google.cloud.vision.v1p2beta1.ImageAnnotator.AsyncBatchAnnotateFiles:input_type -> google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest
  3558  	27, // 67: google.cloud.vision.v1p2beta1.ImageAnnotator.BatchAnnotateImages:output_type -> google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse
  3559  	46, // 68: google.cloud.vision.v1p2beta1.ImageAnnotator.AsyncBatchAnnotateFiles:output_type -> google.longrunning.Operation
  3560  	67, // [67:69] is the sub-list for method output_type
  3561  	65, // [65:67] is the sub-list for method input_type
  3562  	65, // [65:65] is the sub-list for extension type_name
  3563  	65, // [65:65] is the sub-list for extension extendee
  3564  	0,  // [0:65] is the sub-list for field type_name
  3565  }
  3566  
  3567  func init() { file_google_cloud_vision_v1p2beta1_image_annotator_proto_init() }
  3568  func file_google_cloud_vision_v1p2beta1_image_annotator_proto_init() {
  3569  	if File_google_cloud_vision_v1p2beta1_image_annotator_proto != nil {
  3570  		return
  3571  	}
  3572  	file_google_cloud_vision_v1p2beta1_geometry_proto_init()
  3573  	file_google_cloud_vision_v1p2beta1_text_annotation_proto_init()
  3574  	file_google_cloud_vision_v1p2beta1_web_detection_proto_init()
  3575  	if !protoimpl.UnsafeEnabled {
  3576  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3577  			switch v := v.(*Feature); i {
  3578  			case 0:
  3579  				return &v.state
  3580  			case 1:
  3581  				return &v.sizeCache
  3582  			case 2:
  3583  				return &v.unknownFields
  3584  			default:
  3585  				return nil
  3586  			}
  3587  		}
  3588  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3589  			switch v := v.(*ImageSource); i {
  3590  			case 0:
  3591  				return &v.state
  3592  			case 1:
  3593  				return &v.sizeCache
  3594  			case 2:
  3595  				return &v.unknownFields
  3596  			default:
  3597  				return nil
  3598  			}
  3599  		}
  3600  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3601  			switch v := v.(*Image); i {
  3602  			case 0:
  3603  				return &v.state
  3604  			case 1:
  3605  				return &v.sizeCache
  3606  			case 2:
  3607  				return &v.unknownFields
  3608  			default:
  3609  				return nil
  3610  			}
  3611  		}
  3612  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3613  			switch v := v.(*FaceAnnotation); i {
  3614  			case 0:
  3615  				return &v.state
  3616  			case 1:
  3617  				return &v.sizeCache
  3618  			case 2:
  3619  				return &v.unknownFields
  3620  			default:
  3621  				return nil
  3622  			}
  3623  		}
  3624  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3625  			switch v := v.(*LocationInfo); i {
  3626  			case 0:
  3627  				return &v.state
  3628  			case 1:
  3629  				return &v.sizeCache
  3630  			case 2:
  3631  				return &v.unknownFields
  3632  			default:
  3633  				return nil
  3634  			}
  3635  		}
  3636  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3637  			switch v := v.(*Property); i {
  3638  			case 0:
  3639  				return &v.state
  3640  			case 1:
  3641  				return &v.sizeCache
  3642  			case 2:
  3643  				return &v.unknownFields
  3644  			default:
  3645  				return nil
  3646  			}
  3647  		}
  3648  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3649  			switch v := v.(*EntityAnnotation); i {
  3650  			case 0:
  3651  				return &v.state
  3652  			case 1:
  3653  				return &v.sizeCache
  3654  			case 2:
  3655  				return &v.unknownFields
  3656  			default:
  3657  				return nil
  3658  			}
  3659  		}
  3660  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3661  			switch v := v.(*SafeSearchAnnotation); i {
  3662  			case 0:
  3663  				return &v.state
  3664  			case 1:
  3665  				return &v.sizeCache
  3666  			case 2:
  3667  				return &v.unknownFields
  3668  			default:
  3669  				return nil
  3670  			}
  3671  		}
  3672  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3673  			switch v := v.(*LatLongRect); i {
  3674  			case 0:
  3675  				return &v.state
  3676  			case 1:
  3677  				return &v.sizeCache
  3678  			case 2:
  3679  				return &v.unknownFields
  3680  			default:
  3681  				return nil
  3682  			}
  3683  		}
  3684  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3685  			switch v := v.(*ColorInfo); i {
  3686  			case 0:
  3687  				return &v.state
  3688  			case 1:
  3689  				return &v.sizeCache
  3690  			case 2:
  3691  				return &v.unknownFields
  3692  			default:
  3693  				return nil
  3694  			}
  3695  		}
  3696  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3697  			switch v := v.(*DominantColorsAnnotation); i {
  3698  			case 0:
  3699  				return &v.state
  3700  			case 1:
  3701  				return &v.sizeCache
  3702  			case 2:
  3703  				return &v.unknownFields
  3704  			default:
  3705  				return nil
  3706  			}
  3707  		}
  3708  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3709  			switch v := v.(*ImageProperties); i {
  3710  			case 0:
  3711  				return &v.state
  3712  			case 1:
  3713  				return &v.sizeCache
  3714  			case 2:
  3715  				return &v.unknownFields
  3716  			default:
  3717  				return nil
  3718  			}
  3719  		}
  3720  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3721  			switch v := v.(*CropHint); i {
  3722  			case 0:
  3723  				return &v.state
  3724  			case 1:
  3725  				return &v.sizeCache
  3726  			case 2:
  3727  				return &v.unknownFields
  3728  			default:
  3729  				return nil
  3730  			}
  3731  		}
  3732  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3733  			switch v := v.(*CropHintsAnnotation); i {
  3734  			case 0:
  3735  				return &v.state
  3736  			case 1:
  3737  				return &v.sizeCache
  3738  			case 2:
  3739  				return &v.unknownFields
  3740  			default:
  3741  				return nil
  3742  			}
  3743  		}
  3744  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3745  			switch v := v.(*CropHintsParams); i {
  3746  			case 0:
  3747  				return &v.state
  3748  			case 1:
  3749  				return &v.sizeCache
  3750  			case 2:
  3751  				return &v.unknownFields
  3752  			default:
  3753  				return nil
  3754  			}
  3755  		}
  3756  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3757  			switch v := v.(*WebDetectionParams); i {
  3758  			case 0:
  3759  				return &v.state
  3760  			case 1:
  3761  				return &v.sizeCache
  3762  			case 2:
  3763  				return &v.unknownFields
  3764  			default:
  3765  				return nil
  3766  			}
  3767  		}
  3768  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3769  			switch v := v.(*TextDetectionParams); i {
  3770  			case 0:
  3771  				return &v.state
  3772  			case 1:
  3773  				return &v.sizeCache
  3774  			case 2:
  3775  				return &v.unknownFields
  3776  			default:
  3777  				return nil
  3778  			}
  3779  		}
  3780  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3781  			switch v := v.(*ImageContext); i {
  3782  			case 0:
  3783  				return &v.state
  3784  			case 1:
  3785  				return &v.sizeCache
  3786  			case 2:
  3787  				return &v.unknownFields
  3788  			default:
  3789  				return nil
  3790  			}
  3791  		}
  3792  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3793  			switch v := v.(*AnnotateImageRequest); i {
  3794  			case 0:
  3795  				return &v.state
  3796  			case 1:
  3797  				return &v.sizeCache
  3798  			case 2:
  3799  				return &v.unknownFields
  3800  			default:
  3801  				return nil
  3802  			}
  3803  		}
  3804  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3805  			switch v := v.(*ImageAnnotationContext); i {
  3806  			case 0:
  3807  				return &v.state
  3808  			case 1:
  3809  				return &v.sizeCache
  3810  			case 2:
  3811  				return &v.unknownFields
  3812  			default:
  3813  				return nil
  3814  			}
  3815  		}
  3816  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  3817  			switch v := v.(*AnnotateImageResponse); i {
  3818  			case 0:
  3819  				return &v.state
  3820  			case 1:
  3821  				return &v.sizeCache
  3822  			case 2:
  3823  				return &v.unknownFields
  3824  			default:
  3825  				return nil
  3826  			}
  3827  		}
  3828  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  3829  			switch v := v.(*AnnotateFileResponse); i {
  3830  			case 0:
  3831  				return &v.state
  3832  			case 1:
  3833  				return &v.sizeCache
  3834  			case 2:
  3835  				return &v.unknownFields
  3836  			default:
  3837  				return nil
  3838  			}
  3839  		}
  3840  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  3841  			switch v := v.(*BatchAnnotateImagesRequest); i {
  3842  			case 0:
  3843  				return &v.state
  3844  			case 1:
  3845  				return &v.sizeCache
  3846  			case 2:
  3847  				return &v.unknownFields
  3848  			default:
  3849  				return nil
  3850  			}
  3851  		}
  3852  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  3853  			switch v := v.(*BatchAnnotateImagesResponse); i {
  3854  			case 0:
  3855  				return &v.state
  3856  			case 1:
  3857  				return &v.sizeCache
  3858  			case 2:
  3859  				return &v.unknownFields
  3860  			default:
  3861  				return nil
  3862  			}
  3863  		}
  3864  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  3865  			switch v := v.(*AsyncAnnotateFileRequest); i {
  3866  			case 0:
  3867  				return &v.state
  3868  			case 1:
  3869  				return &v.sizeCache
  3870  			case 2:
  3871  				return &v.unknownFields
  3872  			default:
  3873  				return nil
  3874  			}
  3875  		}
  3876  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  3877  			switch v := v.(*AsyncAnnotateFileResponse); i {
  3878  			case 0:
  3879  				return &v.state
  3880  			case 1:
  3881  				return &v.sizeCache
  3882  			case 2:
  3883  				return &v.unknownFields
  3884  			default:
  3885  				return nil
  3886  			}
  3887  		}
  3888  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  3889  			switch v := v.(*AsyncBatchAnnotateFilesRequest); i {
  3890  			case 0:
  3891  				return &v.state
  3892  			case 1:
  3893  				return &v.sizeCache
  3894  			case 2:
  3895  				return &v.unknownFields
  3896  			default:
  3897  				return nil
  3898  			}
  3899  		}
  3900  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
  3901  			switch v := v.(*AsyncBatchAnnotateFilesResponse); i {
  3902  			case 0:
  3903  				return &v.state
  3904  			case 1:
  3905  				return &v.sizeCache
  3906  			case 2:
  3907  				return &v.unknownFields
  3908  			default:
  3909  				return nil
  3910  			}
  3911  		}
  3912  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
  3913  			switch v := v.(*InputConfig); i {
  3914  			case 0:
  3915  				return &v.state
  3916  			case 1:
  3917  				return &v.sizeCache
  3918  			case 2:
  3919  				return &v.unknownFields
  3920  			default:
  3921  				return nil
  3922  			}
  3923  		}
  3924  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
  3925  			switch v := v.(*OutputConfig); i {
  3926  			case 0:
  3927  				return &v.state
  3928  			case 1:
  3929  				return &v.sizeCache
  3930  			case 2:
  3931  				return &v.unknownFields
  3932  			default:
  3933  				return nil
  3934  			}
  3935  		}
  3936  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  3937  			switch v := v.(*GcsSource); i {
  3938  			case 0:
  3939  				return &v.state
  3940  			case 1:
  3941  				return &v.sizeCache
  3942  			case 2:
  3943  				return &v.unknownFields
  3944  			default:
  3945  				return nil
  3946  			}
  3947  		}
  3948  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
  3949  			switch v := v.(*GcsDestination); i {
  3950  			case 0:
  3951  				return &v.state
  3952  			case 1:
  3953  				return &v.sizeCache
  3954  			case 2:
  3955  				return &v.unknownFields
  3956  			default:
  3957  				return nil
  3958  			}
  3959  		}
  3960  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
  3961  			switch v := v.(*OperationMetadata); i {
  3962  			case 0:
  3963  				return &v.state
  3964  			case 1:
  3965  				return &v.sizeCache
  3966  			case 2:
  3967  				return &v.unknownFields
  3968  			default:
  3969  				return nil
  3970  			}
  3971  		}
  3972  		file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
  3973  			switch v := v.(*FaceAnnotation_Landmark); i {
  3974  			case 0:
  3975  				return &v.state
  3976  			case 1:
  3977  				return &v.sizeCache
  3978  			case 2:
  3979  				return &v.unknownFields
  3980  			default:
  3981  				return nil
  3982  			}
  3983  		}
  3984  	}
  3985  	type x struct{}
  3986  	out := protoimpl.TypeBuilder{
  3987  		File: protoimpl.DescBuilder{
  3988  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3989  			RawDescriptor: file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDesc,
  3990  			NumEnums:      4,
  3991  			NumMessages:   34,
  3992  			NumExtensions: 0,
  3993  			NumServices:   1,
  3994  		},
  3995  		GoTypes:           file_google_cloud_vision_v1p2beta1_image_annotator_proto_goTypes,
  3996  		DependencyIndexes: file_google_cloud_vision_v1p2beta1_image_annotator_proto_depIdxs,
  3997  		EnumInfos:         file_google_cloud_vision_v1p2beta1_image_annotator_proto_enumTypes,
  3998  		MessageInfos:      file_google_cloud_vision_v1p2beta1_image_annotator_proto_msgTypes,
  3999  	}.Build()
  4000  	File_google_cloud_vision_v1p2beta1_image_annotator_proto = out.File
  4001  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_rawDesc = nil
  4002  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_goTypes = nil
  4003  	file_google_cloud_vision_v1p2beta1_image_annotator_proto_depIdxs = nil
  4004  }
  4005  
  4006  // Reference imports to suppress errors if they are not otherwise used.
  4007  var _ context.Context
  4008  var _ grpc.ClientConnInterface
  4009  
  4010  // This is a compile-time assertion to ensure that this generated file
  4011  // is compatible with the grpc package it is being compiled against.
  4012  const _ = grpc.SupportPackageIsVersion6
  4013  
  4014  // ImageAnnotatorClient is the client API for ImageAnnotator service.
  4015  //
  4016  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  4017  type ImageAnnotatorClient interface {
  4018  	// Run image detection and annotation for a batch of images.
  4019  	BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error)
  4020  	// Run async image detection and annotation for a list of generic files (e.g.
  4021  	// PDF) which may contain multiple pages and multiple images per page.
  4022  	// Progress and results can be retrieved through the
  4023  	// `google.longrunning.Operations` interface.
  4024  	// `Operation.metadata` contains `OperationMetadata` (metadata).
  4025  	// `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
  4026  	AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
  4027  }
  4028  
  4029  type imageAnnotatorClient struct {
  4030  	cc grpc.ClientConnInterface
  4031  }
  4032  
  4033  func NewImageAnnotatorClient(cc grpc.ClientConnInterface) ImageAnnotatorClient {
  4034  	return &imageAnnotatorClient{cc}
  4035  }
  4036  
  4037  func (c *imageAnnotatorClient) BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error) {
  4038  	out := new(BatchAnnotateImagesResponse)
  4039  	err := c.cc.Invoke(ctx, "/google.cloud.vision.v1p2beta1.ImageAnnotator/BatchAnnotateImages", in, out, opts...)
  4040  	if err != nil {
  4041  		return nil, err
  4042  	}
  4043  	return out, nil
  4044  }
  4045  
  4046  func (c *imageAnnotatorClient) AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
  4047  	out := new(longrunning.Operation)
  4048  	err := c.cc.Invoke(ctx, "/google.cloud.vision.v1p2beta1.ImageAnnotator/AsyncBatchAnnotateFiles", in, out, opts...)
  4049  	if err != nil {
  4050  		return nil, err
  4051  	}
  4052  	return out, nil
  4053  }
  4054  
  4055  // ImageAnnotatorServer is the server API for ImageAnnotator service.
  4056  type ImageAnnotatorServer interface {
  4057  	// Run image detection and annotation for a batch of images.
  4058  	BatchAnnotateImages(context.Context, *BatchAnnotateImagesRequest) (*BatchAnnotateImagesResponse, error)
  4059  	// Run async image detection and annotation for a list of generic files (e.g.
  4060  	// PDF) which may contain multiple pages and multiple images per page.
  4061  	// Progress and results can be retrieved through the
  4062  	// `google.longrunning.Operations` interface.
  4063  	// `Operation.metadata` contains `OperationMetadata` (metadata).
  4064  	// `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
  4065  	AsyncBatchAnnotateFiles(context.Context, *AsyncBatchAnnotateFilesRequest) (*longrunning.Operation, error)
  4066  }
  4067  
  4068  // UnimplementedImageAnnotatorServer can be embedded to have forward compatible implementations.
  4069  type UnimplementedImageAnnotatorServer struct {
  4070  }
  4071  
  4072  func (*UnimplementedImageAnnotatorServer) BatchAnnotateImages(context.Context, *BatchAnnotateImagesRequest) (*BatchAnnotateImagesResponse, error) {
  4073  	return nil, status1.Errorf(codes.Unimplemented, "method BatchAnnotateImages not implemented")
  4074  }
  4075  func (*UnimplementedImageAnnotatorServer) AsyncBatchAnnotateFiles(context.Context, *AsyncBatchAnnotateFilesRequest) (*longrunning.Operation, error) {
  4076  	return nil, status1.Errorf(codes.Unimplemented, "method AsyncBatchAnnotateFiles not implemented")
  4077  }
  4078  
  4079  func RegisterImageAnnotatorServer(s *grpc.Server, srv ImageAnnotatorServer) {
  4080  	s.RegisterService(&_ImageAnnotator_serviceDesc, srv)
  4081  }
  4082  
  4083  func _ImageAnnotator_BatchAnnotateImages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4084  	in := new(BatchAnnotateImagesRequest)
  4085  	if err := dec(in); err != nil {
  4086  		return nil, err
  4087  	}
  4088  	if interceptor == nil {
  4089  		return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, in)
  4090  	}
  4091  	info := &grpc.UnaryServerInfo{
  4092  		Server:     srv,
  4093  		FullMethod: "/google.cloud.vision.v1p2beta1.ImageAnnotator/BatchAnnotateImages",
  4094  	}
  4095  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4096  		return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, req.(*BatchAnnotateImagesRequest))
  4097  	}
  4098  	return interceptor(ctx, in, info, handler)
  4099  }
  4100  
  4101  func _ImageAnnotator_AsyncBatchAnnotateFiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4102  	in := new(AsyncBatchAnnotateFilesRequest)
  4103  	if err := dec(in); err != nil {
  4104  		return nil, err
  4105  	}
  4106  	if interceptor == nil {
  4107  		return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, in)
  4108  	}
  4109  	info := &grpc.UnaryServerInfo{
  4110  		Server:     srv,
  4111  		FullMethod: "/google.cloud.vision.v1p2beta1.ImageAnnotator/AsyncBatchAnnotateFiles",
  4112  	}
  4113  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4114  		return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, req.(*AsyncBatchAnnotateFilesRequest))
  4115  	}
  4116  	return interceptor(ctx, in, info, handler)
  4117  }
  4118  
  4119  var _ImageAnnotator_serviceDesc = grpc.ServiceDesc{
  4120  	ServiceName: "google.cloud.vision.v1p2beta1.ImageAnnotator",
  4121  	HandlerType: (*ImageAnnotatorServer)(nil),
  4122  	Methods: []grpc.MethodDesc{
  4123  		{
  4124  			MethodName: "BatchAnnotateImages",
  4125  			Handler:    _ImageAnnotator_BatchAnnotateImages_Handler,
  4126  		},
  4127  		{
  4128  			MethodName: "AsyncBatchAnnotateFiles",
  4129  			Handler:    _ImageAnnotator_AsyncBatchAnnotateFiles_Handler,
  4130  		},
  4131  	},
  4132  	Streams:  []grpc.StreamDesc{},
  4133  	Metadata: "google/cloud/vision/v1p2beta1/image_annotator.proto",
  4134  }
  4135  

View as plain text