...

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

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

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

View as plain text