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/language/v1/language_service.proto 21 22package language 23 24import ( 25 context "context" 26 reflect "reflect" 27 sync "sync" 28 29 _ "google.golang.org/genproto/googleapis/api/annotations" 30 grpc "google.golang.org/grpc" 31 codes "google.golang.org/grpc/codes" 32 status "google.golang.org/grpc/status" 33 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 34 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 35) 36 37const ( 38 // Verify that this generated code is sufficiently up-to-date. 39 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 40 // Verify that runtime/protoimpl is sufficiently up-to-date. 41 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 42) 43 44// Represents the text encoding that the caller uses to process the output. 45// Providing an `EncodingType` is recommended because the API provides the 46// beginning offsets for various outputs, such as tokens and mentions, and 47// languages that natively use different text encodings may access offsets 48// differently. 49type EncodingType int32 50 51const ( 52 // If `EncodingType` is not specified, encoding-dependent information (such as 53 // `begin_offset`) will be set at `-1`. 54 EncodingType_NONE EncodingType = 0 55 // Encoding-dependent information (such as `begin_offset`) is calculated based 56 // on the UTF-8 encoding of the input. C++ and Go are examples of languages 57 // that use this encoding natively. 58 EncodingType_UTF8 EncodingType = 1 59 // Encoding-dependent information (such as `begin_offset`) is calculated based 60 // on the UTF-16 encoding of the input. Java and JavaScript are examples of 61 // languages that use this encoding natively. 62 EncodingType_UTF16 EncodingType = 2 63 // Encoding-dependent information (such as `begin_offset`) is calculated based 64 // on the UTF-32 encoding of the input. Python is an example of a language 65 // that uses this encoding natively. 66 EncodingType_UTF32 EncodingType = 3 67) 68 69// Enum value maps for EncodingType. 70var ( 71 EncodingType_name = map[int32]string{ 72 0: "NONE", 73 1: "UTF8", 74 2: "UTF16", 75 3: "UTF32", 76 } 77 EncodingType_value = map[string]int32{ 78 "NONE": 0, 79 "UTF8": 1, 80 "UTF16": 2, 81 "UTF32": 3, 82 } 83) 84 85func (x EncodingType) Enum() *EncodingType { 86 p := new(EncodingType) 87 *p = x 88 return p 89} 90 91func (x EncodingType) String() string { 92 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 93} 94 95func (EncodingType) Descriptor() protoreflect.EnumDescriptor { 96 return file_google_cloud_language_v1_language_service_proto_enumTypes[0].Descriptor() 97} 98 99func (EncodingType) Type() protoreflect.EnumType { 100 return &file_google_cloud_language_v1_language_service_proto_enumTypes[0] 101} 102 103func (x EncodingType) Number() protoreflect.EnumNumber { 104 return protoreflect.EnumNumber(x) 105} 106 107// Deprecated: Use EncodingType.Descriptor instead. 108func (EncodingType) EnumDescriptor() ([]byte, []int) { 109 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{0} 110} 111 112// The document types enum. 113type Document_Type int32 114 115const ( 116 // The content type is not specified. 117 Document_TYPE_UNSPECIFIED Document_Type = 0 118 // Plain text 119 Document_PLAIN_TEXT Document_Type = 1 120 // HTML 121 Document_HTML Document_Type = 2 122) 123 124// Enum value maps for Document_Type. 125var ( 126 Document_Type_name = map[int32]string{ 127 0: "TYPE_UNSPECIFIED", 128 1: "PLAIN_TEXT", 129 2: "HTML", 130 } 131 Document_Type_value = map[string]int32{ 132 "TYPE_UNSPECIFIED": 0, 133 "PLAIN_TEXT": 1, 134 "HTML": 2, 135 } 136) 137 138func (x Document_Type) Enum() *Document_Type { 139 p := new(Document_Type) 140 *p = x 141 return p 142} 143 144func (x Document_Type) String() string { 145 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 146} 147 148func (Document_Type) Descriptor() protoreflect.EnumDescriptor { 149 return file_google_cloud_language_v1_language_service_proto_enumTypes[1].Descriptor() 150} 151 152func (Document_Type) Type() protoreflect.EnumType { 153 return &file_google_cloud_language_v1_language_service_proto_enumTypes[1] 154} 155 156func (x Document_Type) Number() protoreflect.EnumNumber { 157 return protoreflect.EnumNumber(x) 158} 159 160// Deprecated: Use Document_Type.Descriptor instead. 161func (Document_Type) EnumDescriptor() ([]byte, []int) { 162 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{0, 0} 163} 164 165// The type of the entity. For most entity types, the associated metadata is a 166// Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`). The table 167// below lists the associated fields for entities that have different 168// metadata. 169type Entity_Type int32 170 171const ( 172 // Unknown 173 Entity_UNKNOWN Entity_Type = 0 174 // Person 175 Entity_PERSON Entity_Type = 1 176 // Location 177 Entity_LOCATION Entity_Type = 2 178 // Organization 179 Entity_ORGANIZATION Entity_Type = 3 180 // Event 181 Entity_EVENT Entity_Type = 4 182 // Artwork 183 Entity_WORK_OF_ART Entity_Type = 5 184 // Consumer product 185 Entity_CONSUMER_GOOD Entity_Type = 6 186 // Other types of entities 187 Entity_OTHER Entity_Type = 7 188 // Phone number<br><br> 189 // The metadata lists the phone number, formatted according to local 190 // convention, plus whichever additional elements appear in the text:<ul> 191 // <li><code>number</code> – the actual number, broken down into 192 // sections as per local convention</li> <li><code>national_prefix</code> 193 // – country code, if detected</li> <li><code>area_code</code> – 194 // region or area code, if detected</li> <li><code>extension</code> – 195 // phone extension (to be dialed after connection), if detected</li></ul> 196 Entity_PHONE_NUMBER Entity_Type = 9 197 // Address<br><br> 198 // The metadata identifies the street number and locality plus whichever 199 // additional elements appear in the text:<ul> 200 // <li><code>street_number</code> – street number</li> 201 // <li><code>locality</code> – city or town</li> 202 // <li><code>street_name</code> – street/route name, if detected</li> 203 // <li><code>postal_code</code> – postal code, if detected</li> 204 // <li><code>country</code> – country, if detected</li> 205 // <li><code>broad_region</code> – administrative area, such as the 206 // state, if detected</li> <li><code>narrow_region</code> – smaller 207 // administrative area, such as county, if detected</li> 208 // <li><code>sublocality</code> – used in Asian addresses to demark a 209 // district within a city, if detected</li></ul> 210 Entity_ADDRESS Entity_Type = 10 211 // Date<br><br> 212 // The metadata identifies the components of the date:<ul> 213 // <li><code>year</code> – four digit year, if detected</li> 214 // <li><code>month</code> – two digit month number, if detected</li> 215 // <li><code>day</code> – two digit day number, if detected</li></ul> 216 Entity_DATE Entity_Type = 11 217 // Number<br><br> 218 // The metadata is the number itself. 219 Entity_NUMBER Entity_Type = 12 220 // Price<br><br> 221 // The metadata identifies the <code>value</code> and <code>currency</code>. 222 Entity_PRICE Entity_Type = 13 223) 224 225// Enum value maps for Entity_Type. 226var ( 227 Entity_Type_name = map[int32]string{ 228 0: "UNKNOWN", 229 1: "PERSON", 230 2: "LOCATION", 231 3: "ORGANIZATION", 232 4: "EVENT", 233 5: "WORK_OF_ART", 234 6: "CONSUMER_GOOD", 235 7: "OTHER", 236 9: "PHONE_NUMBER", 237 10: "ADDRESS", 238 11: "DATE", 239 12: "NUMBER", 240 13: "PRICE", 241 } 242 Entity_Type_value = map[string]int32{ 243 "UNKNOWN": 0, 244 "PERSON": 1, 245 "LOCATION": 2, 246 "ORGANIZATION": 3, 247 "EVENT": 4, 248 "WORK_OF_ART": 5, 249 "CONSUMER_GOOD": 6, 250 "OTHER": 7, 251 "PHONE_NUMBER": 9, 252 "ADDRESS": 10, 253 "DATE": 11, 254 "NUMBER": 12, 255 "PRICE": 13, 256 } 257) 258 259func (x Entity_Type) Enum() *Entity_Type { 260 p := new(Entity_Type) 261 *p = x 262 return p 263} 264 265func (x Entity_Type) String() string { 266 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 267} 268 269func (Entity_Type) Descriptor() protoreflect.EnumDescriptor { 270 return file_google_cloud_language_v1_language_service_proto_enumTypes[2].Descriptor() 271} 272 273func (Entity_Type) Type() protoreflect.EnumType { 274 return &file_google_cloud_language_v1_language_service_proto_enumTypes[2] 275} 276 277func (x Entity_Type) Number() protoreflect.EnumNumber { 278 return protoreflect.EnumNumber(x) 279} 280 281// Deprecated: Use Entity_Type.Descriptor instead. 282func (Entity_Type) EnumDescriptor() ([]byte, []int) { 283 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{2, 0} 284} 285 286// The part of speech tags enum. 287type PartOfSpeech_Tag int32 288 289const ( 290 // Unknown 291 PartOfSpeech_UNKNOWN PartOfSpeech_Tag = 0 292 // Adjective 293 PartOfSpeech_ADJ PartOfSpeech_Tag = 1 294 // Adposition (preposition and postposition) 295 PartOfSpeech_ADP PartOfSpeech_Tag = 2 296 // Adverb 297 PartOfSpeech_ADV PartOfSpeech_Tag = 3 298 // Conjunction 299 PartOfSpeech_CONJ PartOfSpeech_Tag = 4 300 // Determiner 301 PartOfSpeech_DET PartOfSpeech_Tag = 5 302 // Noun (common and proper) 303 PartOfSpeech_NOUN PartOfSpeech_Tag = 6 304 // Cardinal number 305 PartOfSpeech_NUM PartOfSpeech_Tag = 7 306 // Pronoun 307 PartOfSpeech_PRON PartOfSpeech_Tag = 8 308 // Particle or other function word 309 PartOfSpeech_PRT PartOfSpeech_Tag = 9 310 // Punctuation 311 PartOfSpeech_PUNCT PartOfSpeech_Tag = 10 312 // Verb (all tenses and modes) 313 PartOfSpeech_VERB PartOfSpeech_Tag = 11 314 // Other: foreign words, typos, abbreviations 315 PartOfSpeech_X PartOfSpeech_Tag = 12 316 // Affix 317 PartOfSpeech_AFFIX PartOfSpeech_Tag = 13 318) 319 320// Enum value maps for PartOfSpeech_Tag. 321var ( 322 PartOfSpeech_Tag_name = map[int32]string{ 323 0: "UNKNOWN", 324 1: "ADJ", 325 2: "ADP", 326 3: "ADV", 327 4: "CONJ", 328 5: "DET", 329 6: "NOUN", 330 7: "NUM", 331 8: "PRON", 332 9: "PRT", 333 10: "PUNCT", 334 11: "VERB", 335 12: "X", 336 13: "AFFIX", 337 } 338 PartOfSpeech_Tag_value = map[string]int32{ 339 "UNKNOWN": 0, 340 "ADJ": 1, 341 "ADP": 2, 342 "ADV": 3, 343 "CONJ": 4, 344 "DET": 5, 345 "NOUN": 6, 346 "NUM": 7, 347 "PRON": 8, 348 "PRT": 9, 349 "PUNCT": 10, 350 "VERB": 11, 351 "X": 12, 352 "AFFIX": 13, 353 } 354) 355 356func (x PartOfSpeech_Tag) Enum() *PartOfSpeech_Tag { 357 p := new(PartOfSpeech_Tag) 358 *p = x 359 return p 360} 361 362func (x PartOfSpeech_Tag) String() string { 363 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 364} 365 366func (PartOfSpeech_Tag) Descriptor() protoreflect.EnumDescriptor { 367 return file_google_cloud_language_v1_language_service_proto_enumTypes[3].Descriptor() 368} 369 370func (PartOfSpeech_Tag) Type() protoreflect.EnumType { 371 return &file_google_cloud_language_v1_language_service_proto_enumTypes[3] 372} 373 374func (x PartOfSpeech_Tag) Number() protoreflect.EnumNumber { 375 return protoreflect.EnumNumber(x) 376} 377 378// Deprecated: Use PartOfSpeech_Tag.Descriptor instead. 379func (PartOfSpeech_Tag) EnumDescriptor() ([]byte, []int) { 380 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 0} 381} 382 383// The characteristic of a verb that expresses time flow during an event. 384type PartOfSpeech_Aspect int32 385 386const ( 387 // Aspect is not applicable in the analyzed language or is not predicted. 388 PartOfSpeech_ASPECT_UNKNOWN PartOfSpeech_Aspect = 0 389 // Perfective 390 PartOfSpeech_PERFECTIVE PartOfSpeech_Aspect = 1 391 // Imperfective 392 PartOfSpeech_IMPERFECTIVE PartOfSpeech_Aspect = 2 393 // Progressive 394 PartOfSpeech_PROGRESSIVE PartOfSpeech_Aspect = 3 395) 396 397// Enum value maps for PartOfSpeech_Aspect. 398var ( 399 PartOfSpeech_Aspect_name = map[int32]string{ 400 0: "ASPECT_UNKNOWN", 401 1: "PERFECTIVE", 402 2: "IMPERFECTIVE", 403 3: "PROGRESSIVE", 404 } 405 PartOfSpeech_Aspect_value = map[string]int32{ 406 "ASPECT_UNKNOWN": 0, 407 "PERFECTIVE": 1, 408 "IMPERFECTIVE": 2, 409 "PROGRESSIVE": 3, 410 } 411) 412 413func (x PartOfSpeech_Aspect) Enum() *PartOfSpeech_Aspect { 414 p := new(PartOfSpeech_Aspect) 415 *p = x 416 return p 417} 418 419func (x PartOfSpeech_Aspect) String() string { 420 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 421} 422 423func (PartOfSpeech_Aspect) Descriptor() protoreflect.EnumDescriptor { 424 return file_google_cloud_language_v1_language_service_proto_enumTypes[4].Descriptor() 425} 426 427func (PartOfSpeech_Aspect) Type() protoreflect.EnumType { 428 return &file_google_cloud_language_v1_language_service_proto_enumTypes[4] 429} 430 431func (x PartOfSpeech_Aspect) Number() protoreflect.EnumNumber { 432 return protoreflect.EnumNumber(x) 433} 434 435// Deprecated: Use PartOfSpeech_Aspect.Descriptor instead. 436func (PartOfSpeech_Aspect) EnumDescriptor() ([]byte, []int) { 437 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 1} 438} 439 440// The grammatical function performed by a noun or pronoun in a phrase, 441// clause, or sentence. In some languages, other parts of speech, such as 442// adjective and determiner, take case inflection in agreement with the noun. 443type PartOfSpeech_Case int32 444 445const ( 446 // Case is not applicable in the analyzed language or is not predicted. 447 PartOfSpeech_CASE_UNKNOWN PartOfSpeech_Case = 0 448 // Accusative 449 PartOfSpeech_ACCUSATIVE PartOfSpeech_Case = 1 450 // Adverbial 451 PartOfSpeech_ADVERBIAL PartOfSpeech_Case = 2 452 // Complementive 453 PartOfSpeech_COMPLEMENTIVE PartOfSpeech_Case = 3 454 // Dative 455 PartOfSpeech_DATIVE PartOfSpeech_Case = 4 456 // Genitive 457 PartOfSpeech_GENITIVE PartOfSpeech_Case = 5 458 // Instrumental 459 PartOfSpeech_INSTRUMENTAL PartOfSpeech_Case = 6 460 // Locative 461 PartOfSpeech_LOCATIVE PartOfSpeech_Case = 7 462 // Nominative 463 PartOfSpeech_NOMINATIVE PartOfSpeech_Case = 8 464 // Oblique 465 PartOfSpeech_OBLIQUE PartOfSpeech_Case = 9 466 // Partitive 467 PartOfSpeech_PARTITIVE PartOfSpeech_Case = 10 468 // Prepositional 469 PartOfSpeech_PREPOSITIONAL PartOfSpeech_Case = 11 470 // Reflexive 471 PartOfSpeech_REFLEXIVE_CASE PartOfSpeech_Case = 12 472 // Relative 473 PartOfSpeech_RELATIVE_CASE PartOfSpeech_Case = 13 474 // Vocative 475 PartOfSpeech_VOCATIVE PartOfSpeech_Case = 14 476) 477 478// Enum value maps for PartOfSpeech_Case. 479var ( 480 PartOfSpeech_Case_name = map[int32]string{ 481 0: "CASE_UNKNOWN", 482 1: "ACCUSATIVE", 483 2: "ADVERBIAL", 484 3: "COMPLEMENTIVE", 485 4: "DATIVE", 486 5: "GENITIVE", 487 6: "INSTRUMENTAL", 488 7: "LOCATIVE", 489 8: "NOMINATIVE", 490 9: "OBLIQUE", 491 10: "PARTITIVE", 492 11: "PREPOSITIONAL", 493 12: "REFLEXIVE_CASE", 494 13: "RELATIVE_CASE", 495 14: "VOCATIVE", 496 } 497 PartOfSpeech_Case_value = map[string]int32{ 498 "CASE_UNKNOWN": 0, 499 "ACCUSATIVE": 1, 500 "ADVERBIAL": 2, 501 "COMPLEMENTIVE": 3, 502 "DATIVE": 4, 503 "GENITIVE": 5, 504 "INSTRUMENTAL": 6, 505 "LOCATIVE": 7, 506 "NOMINATIVE": 8, 507 "OBLIQUE": 9, 508 "PARTITIVE": 10, 509 "PREPOSITIONAL": 11, 510 "REFLEXIVE_CASE": 12, 511 "RELATIVE_CASE": 13, 512 "VOCATIVE": 14, 513 } 514) 515 516func (x PartOfSpeech_Case) Enum() *PartOfSpeech_Case { 517 p := new(PartOfSpeech_Case) 518 *p = x 519 return p 520} 521 522func (x PartOfSpeech_Case) String() string { 523 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 524} 525 526func (PartOfSpeech_Case) Descriptor() protoreflect.EnumDescriptor { 527 return file_google_cloud_language_v1_language_service_proto_enumTypes[5].Descriptor() 528} 529 530func (PartOfSpeech_Case) Type() protoreflect.EnumType { 531 return &file_google_cloud_language_v1_language_service_proto_enumTypes[5] 532} 533 534func (x PartOfSpeech_Case) Number() protoreflect.EnumNumber { 535 return protoreflect.EnumNumber(x) 536} 537 538// Deprecated: Use PartOfSpeech_Case.Descriptor instead. 539func (PartOfSpeech_Case) EnumDescriptor() ([]byte, []int) { 540 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 2} 541} 542 543// Depending on the language, Form can be categorizing different forms of 544// verbs, adjectives, adverbs, etc. For example, categorizing inflected 545// endings of verbs and adjectives or distinguishing between short and long 546// forms of adjectives and participles 547type PartOfSpeech_Form int32 548 549const ( 550 // Form is not applicable in the analyzed language or is not predicted. 551 PartOfSpeech_FORM_UNKNOWN PartOfSpeech_Form = 0 552 // Adnomial 553 PartOfSpeech_ADNOMIAL PartOfSpeech_Form = 1 554 // Auxiliary 555 PartOfSpeech_AUXILIARY PartOfSpeech_Form = 2 556 // Complementizer 557 PartOfSpeech_COMPLEMENTIZER PartOfSpeech_Form = 3 558 // Final ending 559 PartOfSpeech_FINAL_ENDING PartOfSpeech_Form = 4 560 // Gerund 561 PartOfSpeech_GERUND PartOfSpeech_Form = 5 562 // Realis 563 PartOfSpeech_REALIS PartOfSpeech_Form = 6 564 // Irrealis 565 PartOfSpeech_IRREALIS PartOfSpeech_Form = 7 566 // Short form 567 PartOfSpeech_SHORT PartOfSpeech_Form = 8 568 // Long form 569 PartOfSpeech_LONG PartOfSpeech_Form = 9 570 // Order form 571 PartOfSpeech_ORDER PartOfSpeech_Form = 10 572 // Specific form 573 PartOfSpeech_SPECIFIC PartOfSpeech_Form = 11 574) 575 576// Enum value maps for PartOfSpeech_Form. 577var ( 578 PartOfSpeech_Form_name = map[int32]string{ 579 0: "FORM_UNKNOWN", 580 1: "ADNOMIAL", 581 2: "AUXILIARY", 582 3: "COMPLEMENTIZER", 583 4: "FINAL_ENDING", 584 5: "GERUND", 585 6: "REALIS", 586 7: "IRREALIS", 587 8: "SHORT", 588 9: "LONG", 589 10: "ORDER", 590 11: "SPECIFIC", 591 } 592 PartOfSpeech_Form_value = map[string]int32{ 593 "FORM_UNKNOWN": 0, 594 "ADNOMIAL": 1, 595 "AUXILIARY": 2, 596 "COMPLEMENTIZER": 3, 597 "FINAL_ENDING": 4, 598 "GERUND": 5, 599 "REALIS": 6, 600 "IRREALIS": 7, 601 "SHORT": 8, 602 "LONG": 9, 603 "ORDER": 10, 604 "SPECIFIC": 11, 605 } 606) 607 608func (x PartOfSpeech_Form) Enum() *PartOfSpeech_Form { 609 p := new(PartOfSpeech_Form) 610 *p = x 611 return p 612} 613 614func (x PartOfSpeech_Form) String() string { 615 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 616} 617 618func (PartOfSpeech_Form) Descriptor() protoreflect.EnumDescriptor { 619 return file_google_cloud_language_v1_language_service_proto_enumTypes[6].Descriptor() 620} 621 622func (PartOfSpeech_Form) Type() protoreflect.EnumType { 623 return &file_google_cloud_language_v1_language_service_proto_enumTypes[6] 624} 625 626func (x PartOfSpeech_Form) Number() protoreflect.EnumNumber { 627 return protoreflect.EnumNumber(x) 628} 629 630// Deprecated: Use PartOfSpeech_Form.Descriptor instead. 631func (PartOfSpeech_Form) EnumDescriptor() ([]byte, []int) { 632 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 3} 633} 634 635// Gender classes of nouns reflected in the behaviour of associated words. 636type PartOfSpeech_Gender int32 637 638const ( 639 // Gender is not applicable in the analyzed language or is not predicted. 640 PartOfSpeech_GENDER_UNKNOWN PartOfSpeech_Gender = 0 641 // Feminine 642 PartOfSpeech_FEMININE PartOfSpeech_Gender = 1 643 // Masculine 644 PartOfSpeech_MASCULINE PartOfSpeech_Gender = 2 645 // Neuter 646 PartOfSpeech_NEUTER PartOfSpeech_Gender = 3 647) 648 649// Enum value maps for PartOfSpeech_Gender. 650var ( 651 PartOfSpeech_Gender_name = map[int32]string{ 652 0: "GENDER_UNKNOWN", 653 1: "FEMININE", 654 2: "MASCULINE", 655 3: "NEUTER", 656 } 657 PartOfSpeech_Gender_value = map[string]int32{ 658 "GENDER_UNKNOWN": 0, 659 "FEMININE": 1, 660 "MASCULINE": 2, 661 "NEUTER": 3, 662 } 663) 664 665func (x PartOfSpeech_Gender) Enum() *PartOfSpeech_Gender { 666 p := new(PartOfSpeech_Gender) 667 *p = x 668 return p 669} 670 671func (x PartOfSpeech_Gender) String() string { 672 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 673} 674 675func (PartOfSpeech_Gender) Descriptor() protoreflect.EnumDescriptor { 676 return file_google_cloud_language_v1_language_service_proto_enumTypes[7].Descriptor() 677} 678 679func (PartOfSpeech_Gender) Type() protoreflect.EnumType { 680 return &file_google_cloud_language_v1_language_service_proto_enumTypes[7] 681} 682 683func (x PartOfSpeech_Gender) Number() protoreflect.EnumNumber { 684 return protoreflect.EnumNumber(x) 685} 686 687// Deprecated: Use PartOfSpeech_Gender.Descriptor instead. 688func (PartOfSpeech_Gender) EnumDescriptor() ([]byte, []int) { 689 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 4} 690} 691 692// The grammatical feature of verbs, used for showing modality and attitude. 693type PartOfSpeech_Mood int32 694 695const ( 696 // Mood is not applicable in the analyzed language or is not predicted. 697 PartOfSpeech_MOOD_UNKNOWN PartOfSpeech_Mood = 0 698 // Conditional 699 PartOfSpeech_CONDITIONAL_MOOD PartOfSpeech_Mood = 1 700 // Imperative 701 PartOfSpeech_IMPERATIVE PartOfSpeech_Mood = 2 702 // Indicative 703 PartOfSpeech_INDICATIVE PartOfSpeech_Mood = 3 704 // Interrogative 705 PartOfSpeech_INTERROGATIVE PartOfSpeech_Mood = 4 706 // Jussive 707 PartOfSpeech_JUSSIVE PartOfSpeech_Mood = 5 708 // Subjunctive 709 PartOfSpeech_SUBJUNCTIVE PartOfSpeech_Mood = 6 710) 711 712// Enum value maps for PartOfSpeech_Mood. 713var ( 714 PartOfSpeech_Mood_name = map[int32]string{ 715 0: "MOOD_UNKNOWN", 716 1: "CONDITIONAL_MOOD", 717 2: "IMPERATIVE", 718 3: "INDICATIVE", 719 4: "INTERROGATIVE", 720 5: "JUSSIVE", 721 6: "SUBJUNCTIVE", 722 } 723 PartOfSpeech_Mood_value = map[string]int32{ 724 "MOOD_UNKNOWN": 0, 725 "CONDITIONAL_MOOD": 1, 726 "IMPERATIVE": 2, 727 "INDICATIVE": 3, 728 "INTERROGATIVE": 4, 729 "JUSSIVE": 5, 730 "SUBJUNCTIVE": 6, 731 } 732) 733 734func (x PartOfSpeech_Mood) Enum() *PartOfSpeech_Mood { 735 p := new(PartOfSpeech_Mood) 736 *p = x 737 return p 738} 739 740func (x PartOfSpeech_Mood) String() string { 741 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 742} 743 744func (PartOfSpeech_Mood) Descriptor() protoreflect.EnumDescriptor { 745 return file_google_cloud_language_v1_language_service_proto_enumTypes[8].Descriptor() 746} 747 748func (PartOfSpeech_Mood) Type() protoreflect.EnumType { 749 return &file_google_cloud_language_v1_language_service_proto_enumTypes[8] 750} 751 752func (x PartOfSpeech_Mood) Number() protoreflect.EnumNumber { 753 return protoreflect.EnumNumber(x) 754} 755 756// Deprecated: Use PartOfSpeech_Mood.Descriptor instead. 757func (PartOfSpeech_Mood) EnumDescriptor() ([]byte, []int) { 758 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 5} 759} 760 761// Count distinctions. 762type PartOfSpeech_Number int32 763 764const ( 765 // Number is not applicable in the analyzed language or is not predicted. 766 PartOfSpeech_NUMBER_UNKNOWN PartOfSpeech_Number = 0 767 // Singular 768 PartOfSpeech_SINGULAR PartOfSpeech_Number = 1 769 // Plural 770 PartOfSpeech_PLURAL PartOfSpeech_Number = 2 771 // Dual 772 PartOfSpeech_DUAL PartOfSpeech_Number = 3 773) 774 775// Enum value maps for PartOfSpeech_Number. 776var ( 777 PartOfSpeech_Number_name = map[int32]string{ 778 0: "NUMBER_UNKNOWN", 779 1: "SINGULAR", 780 2: "PLURAL", 781 3: "DUAL", 782 } 783 PartOfSpeech_Number_value = map[string]int32{ 784 "NUMBER_UNKNOWN": 0, 785 "SINGULAR": 1, 786 "PLURAL": 2, 787 "DUAL": 3, 788 } 789) 790 791func (x PartOfSpeech_Number) Enum() *PartOfSpeech_Number { 792 p := new(PartOfSpeech_Number) 793 *p = x 794 return p 795} 796 797func (x PartOfSpeech_Number) String() string { 798 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 799} 800 801func (PartOfSpeech_Number) Descriptor() protoreflect.EnumDescriptor { 802 return file_google_cloud_language_v1_language_service_proto_enumTypes[9].Descriptor() 803} 804 805func (PartOfSpeech_Number) Type() protoreflect.EnumType { 806 return &file_google_cloud_language_v1_language_service_proto_enumTypes[9] 807} 808 809func (x PartOfSpeech_Number) Number() protoreflect.EnumNumber { 810 return protoreflect.EnumNumber(x) 811} 812 813// Deprecated: Use PartOfSpeech_Number.Descriptor instead. 814func (PartOfSpeech_Number) EnumDescriptor() ([]byte, []int) { 815 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 6} 816} 817 818// The distinction between the speaker, second person, third person, etc. 819type PartOfSpeech_Person int32 820 821const ( 822 // Person is not applicable in the analyzed language or is not predicted. 823 PartOfSpeech_PERSON_UNKNOWN PartOfSpeech_Person = 0 824 // First 825 PartOfSpeech_FIRST PartOfSpeech_Person = 1 826 // Second 827 PartOfSpeech_SECOND PartOfSpeech_Person = 2 828 // Third 829 PartOfSpeech_THIRD PartOfSpeech_Person = 3 830 // Reflexive 831 PartOfSpeech_REFLEXIVE_PERSON PartOfSpeech_Person = 4 832) 833 834// Enum value maps for PartOfSpeech_Person. 835var ( 836 PartOfSpeech_Person_name = map[int32]string{ 837 0: "PERSON_UNKNOWN", 838 1: "FIRST", 839 2: "SECOND", 840 3: "THIRD", 841 4: "REFLEXIVE_PERSON", 842 } 843 PartOfSpeech_Person_value = map[string]int32{ 844 "PERSON_UNKNOWN": 0, 845 "FIRST": 1, 846 "SECOND": 2, 847 "THIRD": 3, 848 "REFLEXIVE_PERSON": 4, 849 } 850) 851 852func (x PartOfSpeech_Person) Enum() *PartOfSpeech_Person { 853 p := new(PartOfSpeech_Person) 854 *p = x 855 return p 856} 857 858func (x PartOfSpeech_Person) String() string { 859 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 860} 861 862func (PartOfSpeech_Person) Descriptor() protoreflect.EnumDescriptor { 863 return file_google_cloud_language_v1_language_service_proto_enumTypes[10].Descriptor() 864} 865 866func (PartOfSpeech_Person) Type() protoreflect.EnumType { 867 return &file_google_cloud_language_v1_language_service_proto_enumTypes[10] 868} 869 870func (x PartOfSpeech_Person) Number() protoreflect.EnumNumber { 871 return protoreflect.EnumNumber(x) 872} 873 874// Deprecated: Use PartOfSpeech_Person.Descriptor instead. 875func (PartOfSpeech_Person) EnumDescriptor() ([]byte, []int) { 876 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 7} 877} 878 879// This category shows if the token is part of a proper name. 880type PartOfSpeech_Proper int32 881 882const ( 883 // Proper is not applicable in the analyzed language or is not predicted. 884 PartOfSpeech_PROPER_UNKNOWN PartOfSpeech_Proper = 0 885 // Proper 886 PartOfSpeech_PROPER PartOfSpeech_Proper = 1 887 // Not proper 888 PartOfSpeech_NOT_PROPER PartOfSpeech_Proper = 2 889) 890 891// Enum value maps for PartOfSpeech_Proper. 892var ( 893 PartOfSpeech_Proper_name = map[int32]string{ 894 0: "PROPER_UNKNOWN", 895 1: "PROPER", 896 2: "NOT_PROPER", 897 } 898 PartOfSpeech_Proper_value = map[string]int32{ 899 "PROPER_UNKNOWN": 0, 900 "PROPER": 1, 901 "NOT_PROPER": 2, 902 } 903) 904 905func (x PartOfSpeech_Proper) Enum() *PartOfSpeech_Proper { 906 p := new(PartOfSpeech_Proper) 907 *p = x 908 return p 909} 910 911func (x PartOfSpeech_Proper) String() string { 912 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 913} 914 915func (PartOfSpeech_Proper) Descriptor() protoreflect.EnumDescriptor { 916 return file_google_cloud_language_v1_language_service_proto_enumTypes[11].Descriptor() 917} 918 919func (PartOfSpeech_Proper) Type() protoreflect.EnumType { 920 return &file_google_cloud_language_v1_language_service_proto_enumTypes[11] 921} 922 923func (x PartOfSpeech_Proper) Number() protoreflect.EnumNumber { 924 return protoreflect.EnumNumber(x) 925} 926 927// Deprecated: Use PartOfSpeech_Proper.Descriptor instead. 928func (PartOfSpeech_Proper) EnumDescriptor() ([]byte, []int) { 929 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 8} 930} 931 932// Reciprocal features of a pronoun. 933type PartOfSpeech_Reciprocity int32 934 935const ( 936 // Reciprocity is not applicable in the analyzed language or is not 937 // predicted. 938 PartOfSpeech_RECIPROCITY_UNKNOWN PartOfSpeech_Reciprocity = 0 939 // Reciprocal 940 PartOfSpeech_RECIPROCAL PartOfSpeech_Reciprocity = 1 941 // Non-reciprocal 942 PartOfSpeech_NON_RECIPROCAL PartOfSpeech_Reciprocity = 2 943) 944 945// Enum value maps for PartOfSpeech_Reciprocity. 946var ( 947 PartOfSpeech_Reciprocity_name = map[int32]string{ 948 0: "RECIPROCITY_UNKNOWN", 949 1: "RECIPROCAL", 950 2: "NON_RECIPROCAL", 951 } 952 PartOfSpeech_Reciprocity_value = map[string]int32{ 953 "RECIPROCITY_UNKNOWN": 0, 954 "RECIPROCAL": 1, 955 "NON_RECIPROCAL": 2, 956 } 957) 958 959func (x PartOfSpeech_Reciprocity) Enum() *PartOfSpeech_Reciprocity { 960 p := new(PartOfSpeech_Reciprocity) 961 *p = x 962 return p 963} 964 965func (x PartOfSpeech_Reciprocity) String() string { 966 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 967} 968 969func (PartOfSpeech_Reciprocity) Descriptor() protoreflect.EnumDescriptor { 970 return file_google_cloud_language_v1_language_service_proto_enumTypes[12].Descriptor() 971} 972 973func (PartOfSpeech_Reciprocity) Type() protoreflect.EnumType { 974 return &file_google_cloud_language_v1_language_service_proto_enumTypes[12] 975} 976 977func (x PartOfSpeech_Reciprocity) Number() protoreflect.EnumNumber { 978 return protoreflect.EnumNumber(x) 979} 980 981// Deprecated: Use PartOfSpeech_Reciprocity.Descriptor instead. 982func (PartOfSpeech_Reciprocity) EnumDescriptor() ([]byte, []int) { 983 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 9} 984} 985 986// Time reference. 987type PartOfSpeech_Tense int32 988 989const ( 990 // Tense is not applicable in the analyzed language or is not predicted. 991 PartOfSpeech_TENSE_UNKNOWN PartOfSpeech_Tense = 0 992 // Conditional 993 PartOfSpeech_CONDITIONAL_TENSE PartOfSpeech_Tense = 1 994 // Future 995 PartOfSpeech_FUTURE PartOfSpeech_Tense = 2 996 // Past 997 PartOfSpeech_PAST PartOfSpeech_Tense = 3 998 // Present 999 PartOfSpeech_PRESENT PartOfSpeech_Tense = 4 1000 // Imperfect 1001 PartOfSpeech_IMPERFECT PartOfSpeech_Tense = 5 1002 // Pluperfect 1003 PartOfSpeech_PLUPERFECT PartOfSpeech_Tense = 6 1004) 1005 1006// Enum value maps for PartOfSpeech_Tense. 1007var ( 1008 PartOfSpeech_Tense_name = map[int32]string{ 1009 0: "TENSE_UNKNOWN", 1010 1: "CONDITIONAL_TENSE", 1011 2: "FUTURE", 1012 3: "PAST", 1013 4: "PRESENT", 1014 5: "IMPERFECT", 1015 6: "PLUPERFECT", 1016 } 1017 PartOfSpeech_Tense_value = map[string]int32{ 1018 "TENSE_UNKNOWN": 0, 1019 "CONDITIONAL_TENSE": 1, 1020 "FUTURE": 2, 1021 "PAST": 3, 1022 "PRESENT": 4, 1023 "IMPERFECT": 5, 1024 "PLUPERFECT": 6, 1025 } 1026) 1027 1028func (x PartOfSpeech_Tense) Enum() *PartOfSpeech_Tense { 1029 p := new(PartOfSpeech_Tense) 1030 *p = x 1031 return p 1032} 1033 1034func (x PartOfSpeech_Tense) String() string { 1035 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 1036} 1037 1038func (PartOfSpeech_Tense) Descriptor() protoreflect.EnumDescriptor { 1039 return file_google_cloud_language_v1_language_service_proto_enumTypes[13].Descriptor() 1040} 1041 1042func (PartOfSpeech_Tense) Type() protoreflect.EnumType { 1043 return &file_google_cloud_language_v1_language_service_proto_enumTypes[13] 1044} 1045 1046func (x PartOfSpeech_Tense) Number() protoreflect.EnumNumber { 1047 return protoreflect.EnumNumber(x) 1048} 1049 1050// Deprecated: Use PartOfSpeech_Tense.Descriptor instead. 1051func (PartOfSpeech_Tense) EnumDescriptor() ([]byte, []int) { 1052 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 10} 1053} 1054 1055// The relationship between the action that a verb expresses and the 1056// participants identified by its arguments. 1057type PartOfSpeech_Voice int32 1058 1059const ( 1060 // Voice is not applicable in the analyzed language or is not predicted. 1061 PartOfSpeech_VOICE_UNKNOWN PartOfSpeech_Voice = 0 1062 // Active 1063 PartOfSpeech_ACTIVE PartOfSpeech_Voice = 1 1064 // Causative 1065 PartOfSpeech_CAUSATIVE PartOfSpeech_Voice = 2 1066 // Passive 1067 PartOfSpeech_PASSIVE PartOfSpeech_Voice = 3 1068) 1069 1070// Enum value maps for PartOfSpeech_Voice. 1071var ( 1072 PartOfSpeech_Voice_name = map[int32]string{ 1073 0: "VOICE_UNKNOWN", 1074 1: "ACTIVE", 1075 2: "CAUSATIVE", 1076 3: "PASSIVE", 1077 } 1078 PartOfSpeech_Voice_value = map[string]int32{ 1079 "VOICE_UNKNOWN": 0, 1080 "ACTIVE": 1, 1081 "CAUSATIVE": 2, 1082 "PASSIVE": 3, 1083 } 1084) 1085 1086func (x PartOfSpeech_Voice) Enum() *PartOfSpeech_Voice { 1087 p := new(PartOfSpeech_Voice) 1088 *p = x 1089 return p 1090} 1091 1092func (x PartOfSpeech_Voice) String() string { 1093 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 1094} 1095 1096func (PartOfSpeech_Voice) Descriptor() protoreflect.EnumDescriptor { 1097 return file_google_cloud_language_v1_language_service_proto_enumTypes[14].Descriptor() 1098} 1099 1100func (PartOfSpeech_Voice) Type() protoreflect.EnumType { 1101 return &file_google_cloud_language_v1_language_service_proto_enumTypes[14] 1102} 1103 1104func (x PartOfSpeech_Voice) Number() protoreflect.EnumNumber { 1105 return protoreflect.EnumNumber(x) 1106} 1107 1108// Deprecated: Use PartOfSpeech_Voice.Descriptor instead. 1109func (PartOfSpeech_Voice) EnumDescriptor() ([]byte, []int) { 1110 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5, 11} 1111} 1112 1113// The parse label enum for the token. 1114type DependencyEdge_Label int32 1115 1116const ( 1117 // Unknown 1118 DependencyEdge_UNKNOWN DependencyEdge_Label = 0 1119 // Abbreviation modifier 1120 DependencyEdge_ABBREV DependencyEdge_Label = 1 1121 // Adjectival complement 1122 DependencyEdge_ACOMP DependencyEdge_Label = 2 1123 // Adverbial clause modifier 1124 DependencyEdge_ADVCL DependencyEdge_Label = 3 1125 // Adverbial modifier 1126 DependencyEdge_ADVMOD DependencyEdge_Label = 4 1127 // Adjectival modifier of an NP 1128 DependencyEdge_AMOD DependencyEdge_Label = 5 1129 // Appositional modifier of an NP 1130 DependencyEdge_APPOS DependencyEdge_Label = 6 1131 // Attribute dependent of a copular verb 1132 DependencyEdge_ATTR DependencyEdge_Label = 7 1133 // Auxiliary (non-main) verb 1134 DependencyEdge_AUX DependencyEdge_Label = 8 1135 // Passive auxiliary 1136 DependencyEdge_AUXPASS DependencyEdge_Label = 9 1137 // Coordinating conjunction 1138 DependencyEdge_CC DependencyEdge_Label = 10 1139 // Clausal complement of a verb or adjective 1140 DependencyEdge_CCOMP DependencyEdge_Label = 11 1141 // Conjunct 1142 DependencyEdge_CONJ DependencyEdge_Label = 12 1143 // Clausal subject 1144 DependencyEdge_CSUBJ DependencyEdge_Label = 13 1145 // Clausal passive subject 1146 DependencyEdge_CSUBJPASS DependencyEdge_Label = 14 1147 // Dependency (unable to determine) 1148 DependencyEdge_DEP DependencyEdge_Label = 15 1149 // Determiner 1150 DependencyEdge_DET DependencyEdge_Label = 16 1151 // Discourse 1152 DependencyEdge_DISCOURSE DependencyEdge_Label = 17 1153 // Direct object 1154 DependencyEdge_DOBJ DependencyEdge_Label = 18 1155 // Expletive 1156 DependencyEdge_EXPL DependencyEdge_Label = 19 1157 // Goes with (part of a word in a text not well edited) 1158 DependencyEdge_GOESWITH DependencyEdge_Label = 20 1159 // Indirect object 1160 DependencyEdge_IOBJ DependencyEdge_Label = 21 1161 // Marker (word introducing a subordinate clause) 1162 DependencyEdge_MARK DependencyEdge_Label = 22 1163 // Multi-word expression 1164 DependencyEdge_MWE DependencyEdge_Label = 23 1165 // Multi-word verbal expression 1166 DependencyEdge_MWV DependencyEdge_Label = 24 1167 // Negation modifier 1168 DependencyEdge_NEG DependencyEdge_Label = 25 1169 // Noun compound modifier 1170 DependencyEdge_NN DependencyEdge_Label = 26 1171 // Noun phrase used as an adverbial modifier 1172 DependencyEdge_NPADVMOD DependencyEdge_Label = 27 1173 // Nominal subject 1174 DependencyEdge_NSUBJ DependencyEdge_Label = 28 1175 // Passive nominal subject 1176 DependencyEdge_NSUBJPASS DependencyEdge_Label = 29 1177 // Numeric modifier of a noun 1178 DependencyEdge_NUM DependencyEdge_Label = 30 1179 // Element of compound number 1180 DependencyEdge_NUMBER DependencyEdge_Label = 31 1181 // Punctuation mark 1182 DependencyEdge_P DependencyEdge_Label = 32 1183 // Parataxis relation 1184 DependencyEdge_PARATAXIS DependencyEdge_Label = 33 1185 // Participial modifier 1186 DependencyEdge_PARTMOD DependencyEdge_Label = 34 1187 // The complement of a preposition is a clause 1188 DependencyEdge_PCOMP DependencyEdge_Label = 35 1189 // Object of a preposition 1190 DependencyEdge_POBJ DependencyEdge_Label = 36 1191 // Possession modifier 1192 DependencyEdge_POSS DependencyEdge_Label = 37 1193 // Postverbal negative particle 1194 DependencyEdge_POSTNEG DependencyEdge_Label = 38 1195 // Predicate complement 1196 DependencyEdge_PRECOMP DependencyEdge_Label = 39 1197 // Preconjunt 1198 DependencyEdge_PRECONJ DependencyEdge_Label = 40 1199 // Predeterminer 1200 DependencyEdge_PREDET DependencyEdge_Label = 41 1201 // Prefix 1202 DependencyEdge_PREF DependencyEdge_Label = 42 1203 // Prepositional modifier 1204 DependencyEdge_PREP DependencyEdge_Label = 43 1205 // The relationship between a verb and verbal morpheme 1206 DependencyEdge_PRONL DependencyEdge_Label = 44 1207 // Particle 1208 DependencyEdge_PRT DependencyEdge_Label = 45 1209 // Associative or possessive marker 1210 DependencyEdge_PS DependencyEdge_Label = 46 1211 // Quantifier phrase modifier 1212 DependencyEdge_QUANTMOD DependencyEdge_Label = 47 1213 // Relative clause modifier 1214 DependencyEdge_RCMOD DependencyEdge_Label = 48 1215 // Complementizer in relative clause 1216 DependencyEdge_RCMODREL DependencyEdge_Label = 49 1217 // Ellipsis without a preceding predicate 1218 DependencyEdge_RDROP DependencyEdge_Label = 50 1219 // Referent 1220 DependencyEdge_REF DependencyEdge_Label = 51 1221 // Remnant 1222 DependencyEdge_REMNANT DependencyEdge_Label = 52 1223 // Reparandum 1224 DependencyEdge_REPARANDUM DependencyEdge_Label = 53 1225 // Root 1226 DependencyEdge_ROOT DependencyEdge_Label = 54 1227 // Suffix specifying a unit of number 1228 DependencyEdge_SNUM DependencyEdge_Label = 55 1229 // Suffix 1230 DependencyEdge_SUFF DependencyEdge_Label = 56 1231 // Temporal modifier 1232 DependencyEdge_TMOD DependencyEdge_Label = 57 1233 // Topic marker 1234 DependencyEdge_TOPIC DependencyEdge_Label = 58 1235 // Clause headed by an infinite form of the verb that modifies a noun 1236 DependencyEdge_VMOD DependencyEdge_Label = 59 1237 // Vocative 1238 DependencyEdge_VOCATIVE DependencyEdge_Label = 60 1239 // Open clausal complement 1240 DependencyEdge_XCOMP DependencyEdge_Label = 61 1241 // Name suffix 1242 DependencyEdge_SUFFIX DependencyEdge_Label = 62 1243 // Name title 1244 DependencyEdge_TITLE DependencyEdge_Label = 63 1245 // Adverbial phrase modifier 1246 DependencyEdge_ADVPHMOD DependencyEdge_Label = 64 1247 // Causative auxiliary 1248 DependencyEdge_AUXCAUS DependencyEdge_Label = 65 1249 // Helper auxiliary 1250 DependencyEdge_AUXVV DependencyEdge_Label = 66 1251 // Rentaishi (Prenominal modifier) 1252 DependencyEdge_DTMOD DependencyEdge_Label = 67 1253 // Foreign words 1254 DependencyEdge_FOREIGN DependencyEdge_Label = 68 1255 // Keyword 1256 DependencyEdge_KW DependencyEdge_Label = 69 1257 // List for chains of comparable items 1258 DependencyEdge_LIST DependencyEdge_Label = 70 1259 // Nominalized clause 1260 DependencyEdge_NOMC DependencyEdge_Label = 71 1261 // Nominalized clausal subject 1262 DependencyEdge_NOMCSUBJ DependencyEdge_Label = 72 1263 // Nominalized clausal passive 1264 DependencyEdge_NOMCSUBJPASS DependencyEdge_Label = 73 1265 // Compound of numeric modifier 1266 DependencyEdge_NUMC DependencyEdge_Label = 74 1267 // Copula 1268 DependencyEdge_COP DependencyEdge_Label = 75 1269 // Dislocated relation (for fronted/topicalized elements) 1270 DependencyEdge_DISLOCATED DependencyEdge_Label = 76 1271 // Aspect marker 1272 DependencyEdge_ASP DependencyEdge_Label = 77 1273 // Genitive modifier 1274 DependencyEdge_GMOD DependencyEdge_Label = 78 1275 // Genitive object 1276 DependencyEdge_GOBJ DependencyEdge_Label = 79 1277 // Infinitival modifier 1278 DependencyEdge_INFMOD DependencyEdge_Label = 80 1279 // Measure 1280 DependencyEdge_MES DependencyEdge_Label = 81 1281 // Nominal complement of a noun 1282 DependencyEdge_NCOMP DependencyEdge_Label = 82 1283) 1284 1285// Enum value maps for DependencyEdge_Label. 1286var ( 1287 DependencyEdge_Label_name = map[int32]string{ 1288 0: "UNKNOWN", 1289 1: "ABBREV", 1290 2: "ACOMP", 1291 3: "ADVCL", 1292 4: "ADVMOD", 1293 5: "AMOD", 1294 6: "APPOS", 1295 7: "ATTR", 1296 8: "AUX", 1297 9: "AUXPASS", 1298 10: "CC", 1299 11: "CCOMP", 1300 12: "CONJ", 1301 13: "CSUBJ", 1302 14: "CSUBJPASS", 1303 15: "DEP", 1304 16: "DET", 1305 17: "DISCOURSE", 1306 18: "DOBJ", 1307 19: "EXPL", 1308 20: "GOESWITH", 1309 21: "IOBJ", 1310 22: "MARK", 1311 23: "MWE", 1312 24: "MWV", 1313 25: "NEG", 1314 26: "NN", 1315 27: "NPADVMOD", 1316 28: "NSUBJ", 1317 29: "NSUBJPASS", 1318 30: "NUM", 1319 31: "NUMBER", 1320 32: "P", 1321 33: "PARATAXIS", 1322 34: "PARTMOD", 1323 35: "PCOMP", 1324 36: "POBJ", 1325 37: "POSS", 1326 38: "POSTNEG", 1327 39: "PRECOMP", 1328 40: "PRECONJ", 1329 41: "PREDET", 1330 42: "PREF", 1331 43: "PREP", 1332 44: "PRONL", 1333 45: "PRT", 1334 46: "PS", 1335 47: "QUANTMOD", 1336 48: "RCMOD", 1337 49: "RCMODREL", 1338 50: "RDROP", 1339 51: "REF", 1340 52: "REMNANT", 1341 53: "REPARANDUM", 1342 54: "ROOT", 1343 55: "SNUM", 1344 56: "SUFF", 1345 57: "TMOD", 1346 58: "TOPIC", 1347 59: "VMOD", 1348 60: "VOCATIVE", 1349 61: "XCOMP", 1350 62: "SUFFIX", 1351 63: "TITLE", 1352 64: "ADVPHMOD", 1353 65: "AUXCAUS", 1354 66: "AUXVV", 1355 67: "DTMOD", 1356 68: "FOREIGN", 1357 69: "KW", 1358 70: "LIST", 1359 71: "NOMC", 1360 72: "NOMCSUBJ", 1361 73: "NOMCSUBJPASS", 1362 74: "NUMC", 1363 75: "COP", 1364 76: "DISLOCATED", 1365 77: "ASP", 1366 78: "GMOD", 1367 79: "GOBJ", 1368 80: "INFMOD", 1369 81: "MES", 1370 82: "NCOMP", 1371 } 1372 DependencyEdge_Label_value = map[string]int32{ 1373 "UNKNOWN": 0, 1374 "ABBREV": 1, 1375 "ACOMP": 2, 1376 "ADVCL": 3, 1377 "ADVMOD": 4, 1378 "AMOD": 5, 1379 "APPOS": 6, 1380 "ATTR": 7, 1381 "AUX": 8, 1382 "AUXPASS": 9, 1383 "CC": 10, 1384 "CCOMP": 11, 1385 "CONJ": 12, 1386 "CSUBJ": 13, 1387 "CSUBJPASS": 14, 1388 "DEP": 15, 1389 "DET": 16, 1390 "DISCOURSE": 17, 1391 "DOBJ": 18, 1392 "EXPL": 19, 1393 "GOESWITH": 20, 1394 "IOBJ": 21, 1395 "MARK": 22, 1396 "MWE": 23, 1397 "MWV": 24, 1398 "NEG": 25, 1399 "NN": 26, 1400 "NPADVMOD": 27, 1401 "NSUBJ": 28, 1402 "NSUBJPASS": 29, 1403 "NUM": 30, 1404 "NUMBER": 31, 1405 "P": 32, 1406 "PARATAXIS": 33, 1407 "PARTMOD": 34, 1408 "PCOMP": 35, 1409 "POBJ": 36, 1410 "POSS": 37, 1411 "POSTNEG": 38, 1412 "PRECOMP": 39, 1413 "PRECONJ": 40, 1414 "PREDET": 41, 1415 "PREF": 42, 1416 "PREP": 43, 1417 "PRONL": 44, 1418 "PRT": 45, 1419 "PS": 46, 1420 "QUANTMOD": 47, 1421 "RCMOD": 48, 1422 "RCMODREL": 49, 1423 "RDROP": 50, 1424 "REF": 51, 1425 "REMNANT": 52, 1426 "REPARANDUM": 53, 1427 "ROOT": 54, 1428 "SNUM": 55, 1429 "SUFF": 56, 1430 "TMOD": 57, 1431 "TOPIC": 58, 1432 "VMOD": 59, 1433 "VOCATIVE": 60, 1434 "XCOMP": 61, 1435 "SUFFIX": 62, 1436 "TITLE": 63, 1437 "ADVPHMOD": 64, 1438 "AUXCAUS": 65, 1439 "AUXVV": 66, 1440 "DTMOD": 67, 1441 "FOREIGN": 68, 1442 "KW": 69, 1443 "LIST": 70, 1444 "NOMC": 71, 1445 "NOMCSUBJ": 72, 1446 "NOMCSUBJPASS": 73, 1447 "NUMC": 74, 1448 "COP": 75, 1449 "DISLOCATED": 76, 1450 "ASP": 77, 1451 "GMOD": 78, 1452 "GOBJ": 79, 1453 "INFMOD": 80, 1454 "MES": 81, 1455 "NCOMP": 82, 1456 } 1457) 1458 1459func (x DependencyEdge_Label) Enum() *DependencyEdge_Label { 1460 p := new(DependencyEdge_Label) 1461 *p = x 1462 return p 1463} 1464 1465func (x DependencyEdge_Label) String() string { 1466 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 1467} 1468 1469func (DependencyEdge_Label) Descriptor() protoreflect.EnumDescriptor { 1470 return file_google_cloud_language_v1_language_service_proto_enumTypes[15].Descriptor() 1471} 1472 1473func (DependencyEdge_Label) Type() protoreflect.EnumType { 1474 return &file_google_cloud_language_v1_language_service_proto_enumTypes[15] 1475} 1476 1477func (x DependencyEdge_Label) Number() protoreflect.EnumNumber { 1478 return protoreflect.EnumNumber(x) 1479} 1480 1481// Deprecated: Use DependencyEdge_Label.Descriptor instead. 1482func (DependencyEdge_Label) EnumDescriptor() ([]byte, []int) { 1483 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{6, 0} 1484} 1485 1486// The supported types of mentions. 1487type EntityMention_Type int32 1488 1489const ( 1490 // Unknown 1491 EntityMention_TYPE_UNKNOWN EntityMention_Type = 0 1492 // Proper name 1493 EntityMention_PROPER EntityMention_Type = 1 1494 // Common noun (or noun compound) 1495 EntityMention_COMMON EntityMention_Type = 2 1496) 1497 1498// Enum value maps for EntityMention_Type. 1499var ( 1500 EntityMention_Type_name = map[int32]string{ 1501 0: "TYPE_UNKNOWN", 1502 1: "PROPER", 1503 2: "COMMON", 1504 } 1505 EntityMention_Type_value = map[string]int32{ 1506 "TYPE_UNKNOWN": 0, 1507 "PROPER": 1, 1508 "COMMON": 2, 1509 } 1510) 1511 1512func (x EntityMention_Type) Enum() *EntityMention_Type { 1513 p := new(EntityMention_Type) 1514 *p = x 1515 return p 1516} 1517 1518func (x EntityMention_Type) String() string { 1519 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 1520} 1521 1522func (EntityMention_Type) Descriptor() protoreflect.EnumDescriptor { 1523 return file_google_cloud_language_v1_language_service_proto_enumTypes[16].Descriptor() 1524} 1525 1526func (EntityMention_Type) Type() protoreflect.EnumType { 1527 return &file_google_cloud_language_v1_language_service_proto_enumTypes[16] 1528} 1529 1530func (x EntityMention_Type) Number() protoreflect.EnumNumber { 1531 return protoreflect.EnumNumber(x) 1532} 1533 1534// Deprecated: Use EntityMention_Type.Descriptor instead. 1535func (EntityMention_Type) EnumDescriptor() ([]byte, []int) { 1536 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{7, 0} 1537} 1538 1539// 1540// Represents the input to API methods. 1541type Document struct { 1542 state protoimpl.MessageState 1543 sizeCache protoimpl.SizeCache 1544 unknownFields protoimpl.UnknownFields 1545 1546 // Required. If the type is not set or is `TYPE_UNSPECIFIED`, 1547 // returns an `INVALID_ARGUMENT` error. 1548 Type Document_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.language.v1.Document_Type" json:"type,omitempty"` 1549 // The source of the document: a string containing the content or a 1550 // Google Cloud Storage URI. 1551 // 1552 // Types that are assignable to Source: 1553 // *Document_Content 1554 // *Document_GcsContentUri 1555 Source isDocument_Source `protobuf_oneof:"source"` 1556 // The language of the document (if not specified, the language is 1557 // automatically detected). Both ISO and BCP-47 language codes are 1558 // accepted.<br> 1559 // [Language 1560 // Support](https://cloud.google.com/natural-language/docs/languages) lists 1561 // currently supported languages for each API method. If the language (either 1562 // specified by the caller or automatically detected) is not supported by the 1563 // called API method, an `INVALID_ARGUMENT` error is returned. 1564 Language string `protobuf:"bytes,4,opt,name=language,proto3" json:"language,omitempty"` 1565} 1566 1567func (x *Document) Reset() { 1568 *x = Document{} 1569 if protoimpl.UnsafeEnabled { 1570 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[0] 1571 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1572 ms.StoreMessageInfo(mi) 1573 } 1574} 1575 1576func (x *Document) String() string { 1577 return protoimpl.X.MessageStringOf(x) 1578} 1579 1580func (*Document) ProtoMessage() {} 1581 1582func (x *Document) ProtoReflect() protoreflect.Message { 1583 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[0] 1584 if protoimpl.UnsafeEnabled && x != nil { 1585 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1586 if ms.LoadMessageInfo() == nil { 1587 ms.StoreMessageInfo(mi) 1588 } 1589 return ms 1590 } 1591 return mi.MessageOf(x) 1592} 1593 1594// Deprecated: Use Document.ProtoReflect.Descriptor instead. 1595func (*Document) Descriptor() ([]byte, []int) { 1596 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{0} 1597} 1598 1599func (x *Document) GetType() Document_Type { 1600 if x != nil { 1601 return x.Type 1602 } 1603 return Document_TYPE_UNSPECIFIED 1604} 1605 1606func (m *Document) GetSource() isDocument_Source { 1607 if m != nil { 1608 return m.Source 1609 } 1610 return nil 1611} 1612 1613func (x *Document) GetContent() string { 1614 if x, ok := x.GetSource().(*Document_Content); ok { 1615 return x.Content 1616 } 1617 return "" 1618} 1619 1620func (x *Document) GetGcsContentUri() string { 1621 if x, ok := x.GetSource().(*Document_GcsContentUri); ok { 1622 return x.GcsContentUri 1623 } 1624 return "" 1625} 1626 1627func (x *Document) GetLanguage() string { 1628 if x != nil { 1629 return x.Language 1630 } 1631 return "" 1632} 1633 1634type isDocument_Source interface { 1635 isDocument_Source() 1636} 1637 1638type Document_Content struct { 1639 // The content of the input in string format. 1640 // Cloud audit logging exempt since it is based on user data. 1641 Content string `protobuf:"bytes,2,opt,name=content,proto3,oneof"` 1642} 1643 1644type Document_GcsContentUri struct { 1645 // The Google Cloud Storage URI where the file content is located. 1646 // This URI must be of the form: gs://bucket_name/object_name. For more 1647 // details, see https://cloud.google.com/storage/docs/reference-uris. 1648 // NOTE: Cloud Storage object versioning is not supported. 1649 GcsContentUri string `protobuf:"bytes,3,opt,name=gcs_content_uri,json=gcsContentUri,proto3,oneof"` 1650} 1651 1652func (*Document_Content) isDocument_Source() {} 1653 1654func (*Document_GcsContentUri) isDocument_Source() {} 1655 1656// Represents a sentence in the input document. 1657type Sentence struct { 1658 state protoimpl.MessageState 1659 sizeCache protoimpl.SizeCache 1660 unknownFields protoimpl.UnknownFields 1661 1662 // The sentence text. 1663 Text *TextSpan `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` 1664 // For calls to [AnalyzeSentiment][] or if 1665 // [AnnotateTextRequest.Features.extract_document_sentiment][google.cloud.language.v1.AnnotateTextRequest.Features.extract_document_sentiment] is set to 1666 // true, this field will contain the sentiment for the sentence. 1667 Sentiment *Sentiment `protobuf:"bytes,2,opt,name=sentiment,proto3" json:"sentiment,omitempty"` 1668} 1669 1670func (x *Sentence) Reset() { 1671 *x = Sentence{} 1672 if protoimpl.UnsafeEnabled { 1673 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[1] 1674 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1675 ms.StoreMessageInfo(mi) 1676 } 1677} 1678 1679func (x *Sentence) String() string { 1680 return protoimpl.X.MessageStringOf(x) 1681} 1682 1683func (*Sentence) ProtoMessage() {} 1684 1685func (x *Sentence) ProtoReflect() protoreflect.Message { 1686 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[1] 1687 if protoimpl.UnsafeEnabled && x != nil { 1688 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1689 if ms.LoadMessageInfo() == nil { 1690 ms.StoreMessageInfo(mi) 1691 } 1692 return ms 1693 } 1694 return mi.MessageOf(x) 1695} 1696 1697// Deprecated: Use Sentence.ProtoReflect.Descriptor instead. 1698func (*Sentence) Descriptor() ([]byte, []int) { 1699 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{1} 1700} 1701 1702func (x *Sentence) GetText() *TextSpan { 1703 if x != nil { 1704 return x.Text 1705 } 1706 return nil 1707} 1708 1709func (x *Sentence) GetSentiment() *Sentiment { 1710 if x != nil { 1711 return x.Sentiment 1712 } 1713 return nil 1714} 1715 1716// Represents a phrase in the text that is a known entity, such as 1717// a person, an organization, or location. The API associates information, such 1718// as salience and mentions, with entities. 1719type Entity struct { 1720 state protoimpl.MessageState 1721 sizeCache protoimpl.SizeCache 1722 unknownFields protoimpl.UnknownFields 1723 1724 // The representative name for the entity. 1725 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1726 // The entity type. 1727 Type Entity_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.language.v1.Entity_Type" json:"type,omitempty"` 1728 // Metadata associated with the entity. 1729 // 1730 // For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`) 1731 // and Knowledge Graph MID (`mid`), if they are available. For the metadata 1732 // associated with other entity types, see the Type table below. 1733 Metadata map[string]string `protobuf:"bytes,3,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 1734 // The salience score associated with the entity in the [0, 1.0] range. 1735 // 1736 // The salience score for an entity provides information about the 1737 // importance or centrality of that entity to the entire document text. 1738 // Scores closer to 0 are less salient, while scores closer to 1.0 are highly 1739 // salient. 1740 Salience float32 `protobuf:"fixed32,4,opt,name=salience,proto3" json:"salience,omitempty"` 1741 // The mentions of this entity in the input document. The API currently 1742 // supports proper noun mentions. 1743 Mentions []*EntityMention `protobuf:"bytes,5,rep,name=mentions,proto3" json:"mentions,omitempty"` 1744 // For calls to [AnalyzeEntitySentiment][] or if 1745 // [AnnotateTextRequest.Features.extract_entity_sentiment][google.cloud.language.v1.AnnotateTextRequest.Features.extract_entity_sentiment] is set to 1746 // true, this field will contain the aggregate sentiment expressed for this 1747 // entity in the provided document. 1748 Sentiment *Sentiment `protobuf:"bytes,6,opt,name=sentiment,proto3" json:"sentiment,omitempty"` 1749} 1750 1751func (x *Entity) Reset() { 1752 *x = Entity{} 1753 if protoimpl.UnsafeEnabled { 1754 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[2] 1755 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1756 ms.StoreMessageInfo(mi) 1757 } 1758} 1759 1760func (x *Entity) String() string { 1761 return protoimpl.X.MessageStringOf(x) 1762} 1763 1764func (*Entity) ProtoMessage() {} 1765 1766func (x *Entity) ProtoReflect() protoreflect.Message { 1767 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[2] 1768 if protoimpl.UnsafeEnabled && x != nil { 1769 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1770 if ms.LoadMessageInfo() == nil { 1771 ms.StoreMessageInfo(mi) 1772 } 1773 return ms 1774 } 1775 return mi.MessageOf(x) 1776} 1777 1778// Deprecated: Use Entity.ProtoReflect.Descriptor instead. 1779func (*Entity) Descriptor() ([]byte, []int) { 1780 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{2} 1781} 1782 1783func (x *Entity) GetName() string { 1784 if x != nil { 1785 return x.Name 1786 } 1787 return "" 1788} 1789 1790func (x *Entity) GetType() Entity_Type { 1791 if x != nil { 1792 return x.Type 1793 } 1794 return Entity_UNKNOWN 1795} 1796 1797func (x *Entity) GetMetadata() map[string]string { 1798 if x != nil { 1799 return x.Metadata 1800 } 1801 return nil 1802} 1803 1804func (x *Entity) GetSalience() float32 { 1805 if x != nil { 1806 return x.Salience 1807 } 1808 return 0 1809} 1810 1811func (x *Entity) GetMentions() []*EntityMention { 1812 if x != nil { 1813 return x.Mentions 1814 } 1815 return nil 1816} 1817 1818func (x *Entity) GetSentiment() *Sentiment { 1819 if x != nil { 1820 return x.Sentiment 1821 } 1822 return nil 1823} 1824 1825// Represents the smallest syntactic building block of the text. 1826type Token struct { 1827 state protoimpl.MessageState 1828 sizeCache protoimpl.SizeCache 1829 unknownFields protoimpl.UnknownFields 1830 1831 // The token text. 1832 Text *TextSpan `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` 1833 // Parts of speech tag for this token. 1834 PartOfSpeech *PartOfSpeech `protobuf:"bytes,2,opt,name=part_of_speech,json=partOfSpeech,proto3" json:"part_of_speech,omitempty"` 1835 // Dependency tree parse for this token. 1836 DependencyEdge *DependencyEdge `protobuf:"bytes,3,opt,name=dependency_edge,json=dependencyEdge,proto3" json:"dependency_edge,omitempty"` 1837 // [Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token. 1838 Lemma string `protobuf:"bytes,4,opt,name=lemma,proto3" json:"lemma,omitempty"` 1839} 1840 1841func (x *Token) Reset() { 1842 *x = Token{} 1843 if protoimpl.UnsafeEnabled { 1844 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[3] 1845 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1846 ms.StoreMessageInfo(mi) 1847 } 1848} 1849 1850func (x *Token) String() string { 1851 return protoimpl.X.MessageStringOf(x) 1852} 1853 1854func (*Token) ProtoMessage() {} 1855 1856func (x *Token) ProtoReflect() protoreflect.Message { 1857 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[3] 1858 if protoimpl.UnsafeEnabled && x != nil { 1859 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1860 if ms.LoadMessageInfo() == nil { 1861 ms.StoreMessageInfo(mi) 1862 } 1863 return ms 1864 } 1865 return mi.MessageOf(x) 1866} 1867 1868// Deprecated: Use Token.ProtoReflect.Descriptor instead. 1869func (*Token) Descriptor() ([]byte, []int) { 1870 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{3} 1871} 1872 1873func (x *Token) GetText() *TextSpan { 1874 if x != nil { 1875 return x.Text 1876 } 1877 return nil 1878} 1879 1880func (x *Token) GetPartOfSpeech() *PartOfSpeech { 1881 if x != nil { 1882 return x.PartOfSpeech 1883 } 1884 return nil 1885} 1886 1887func (x *Token) GetDependencyEdge() *DependencyEdge { 1888 if x != nil { 1889 return x.DependencyEdge 1890 } 1891 return nil 1892} 1893 1894func (x *Token) GetLemma() string { 1895 if x != nil { 1896 return x.Lemma 1897 } 1898 return "" 1899} 1900 1901// Represents the feeling associated with the entire text or entities in 1902// the text. 1903type Sentiment struct { 1904 state protoimpl.MessageState 1905 sizeCache protoimpl.SizeCache 1906 unknownFields protoimpl.UnknownFields 1907 1908 // A non-negative number in the [0, +inf) range, which represents 1909 // the absolute magnitude of sentiment regardless of score (positive or 1910 // negative). 1911 Magnitude float32 `protobuf:"fixed32,2,opt,name=magnitude,proto3" json:"magnitude,omitempty"` 1912 // Sentiment score between -1.0 (negative sentiment) and 1.0 1913 // (positive sentiment). 1914 Score float32 `protobuf:"fixed32,3,opt,name=score,proto3" json:"score,omitempty"` 1915} 1916 1917func (x *Sentiment) Reset() { 1918 *x = Sentiment{} 1919 if protoimpl.UnsafeEnabled { 1920 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[4] 1921 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1922 ms.StoreMessageInfo(mi) 1923 } 1924} 1925 1926func (x *Sentiment) String() string { 1927 return protoimpl.X.MessageStringOf(x) 1928} 1929 1930func (*Sentiment) ProtoMessage() {} 1931 1932func (x *Sentiment) ProtoReflect() protoreflect.Message { 1933 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[4] 1934 if protoimpl.UnsafeEnabled && x != nil { 1935 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1936 if ms.LoadMessageInfo() == nil { 1937 ms.StoreMessageInfo(mi) 1938 } 1939 return ms 1940 } 1941 return mi.MessageOf(x) 1942} 1943 1944// Deprecated: Use Sentiment.ProtoReflect.Descriptor instead. 1945func (*Sentiment) Descriptor() ([]byte, []int) { 1946 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{4} 1947} 1948 1949func (x *Sentiment) GetMagnitude() float32 { 1950 if x != nil { 1951 return x.Magnitude 1952 } 1953 return 0 1954} 1955 1956func (x *Sentiment) GetScore() float32 { 1957 if x != nil { 1958 return x.Score 1959 } 1960 return 0 1961} 1962 1963// Represents part of speech information for a token. Parts of speech 1964// are as defined in 1965// http://www.lrec-conf.org/proceedings/lrec2012/pdf/274_Paper.pdf 1966type PartOfSpeech struct { 1967 state protoimpl.MessageState 1968 sizeCache protoimpl.SizeCache 1969 unknownFields protoimpl.UnknownFields 1970 1971 // The part of speech tag. 1972 Tag PartOfSpeech_Tag `protobuf:"varint,1,opt,name=tag,proto3,enum=google.cloud.language.v1.PartOfSpeech_Tag" json:"tag,omitempty"` 1973 // The grammatical aspect. 1974 Aspect PartOfSpeech_Aspect `protobuf:"varint,2,opt,name=aspect,proto3,enum=google.cloud.language.v1.PartOfSpeech_Aspect" json:"aspect,omitempty"` 1975 // The grammatical case. 1976 Case PartOfSpeech_Case `protobuf:"varint,3,opt,name=case,proto3,enum=google.cloud.language.v1.PartOfSpeech_Case" json:"case,omitempty"` 1977 // The grammatical form. 1978 Form PartOfSpeech_Form `protobuf:"varint,4,opt,name=form,proto3,enum=google.cloud.language.v1.PartOfSpeech_Form" json:"form,omitempty"` 1979 // The grammatical gender. 1980 Gender PartOfSpeech_Gender `protobuf:"varint,5,opt,name=gender,proto3,enum=google.cloud.language.v1.PartOfSpeech_Gender" json:"gender,omitempty"` 1981 // The grammatical mood. 1982 Mood PartOfSpeech_Mood `protobuf:"varint,6,opt,name=mood,proto3,enum=google.cloud.language.v1.PartOfSpeech_Mood" json:"mood,omitempty"` 1983 // The grammatical number. 1984 Number PartOfSpeech_Number `protobuf:"varint,7,opt,name=number,proto3,enum=google.cloud.language.v1.PartOfSpeech_Number" json:"number,omitempty"` 1985 // The grammatical person. 1986 Person PartOfSpeech_Person `protobuf:"varint,8,opt,name=person,proto3,enum=google.cloud.language.v1.PartOfSpeech_Person" json:"person,omitempty"` 1987 // The grammatical properness. 1988 Proper PartOfSpeech_Proper `protobuf:"varint,9,opt,name=proper,proto3,enum=google.cloud.language.v1.PartOfSpeech_Proper" json:"proper,omitempty"` 1989 // The grammatical reciprocity. 1990 Reciprocity PartOfSpeech_Reciprocity `protobuf:"varint,10,opt,name=reciprocity,proto3,enum=google.cloud.language.v1.PartOfSpeech_Reciprocity" json:"reciprocity,omitempty"` 1991 // The grammatical tense. 1992 Tense PartOfSpeech_Tense `protobuf:"varint,11,opt,name=tense,proto3,enum=google.cloud.language.v1.PartOfSpeech_Tense" json:"tense,omitempty"` 1993 // The grammatical voice. 1994 Voice PartOfSpeech_Voice `protobuf:"varint,12,opt,name=voice,proto3,enum=google.cloud.language.v1.PartOfSpeech_Voice" json:"voice,omitempty"` 1995} 1996 1997func (x *PartOfSpeech) Reset() { 1998 *x = PartOfSpeech{} 1999 if protoimpl.UnsafeEnabled { 2000 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[5] 2001 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2002 ms.StoreMessageInfo(mi) 2003 } 2004} 2005 2006func (x *PartOfSpeech) String() string { 2007 return protoimpl.X.MessageStringOf(x) 2008} 2009 2010func (*PartOfSpeech) ProtoMessage() {} 2011 2012func (x *PartOfSpeech) ProtoReflect() protoreflect.Message { 2013 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[5] 2014 if protoimpl.UnsafeEnabled && x != nil { 2015 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2016 if ms.LoadMessageInfo() == nil { 2017 ms.StoreMessageInfo(mi) 2018 } 2019 return ms 2020 } 2021 return mi.MessageOf(x) 2022} 2023 2024// Deprecated: Use PartOfSpeech.ProtoReflect.Descriptor instead. 2025func (*PartOfSpeech) Descriptor() ([]byte, []int) { 2026 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{5} 2027} 2028 2029func (x *PartOfSpeech) GetTag() PartOfSpeech_Tag { 2030 if x != nil { 2031 return x.Tag 2032 } 2033 return PartOfSpeech_UNKNOWN 2034} 2035 2036func (x *PartOfSpeech) GetAspect() PartOfSpeech_Aspect { 2037 if x != nil { 2038 return x.Aspect 2039 } 2040 return PartOfSpeech_ASPECT_UNKNOWN 2041} 2042 2043func (x *PartOfSpeech) GetCase() PartOfSpeech_Case { 2044 if x != nil { 2045 return x.Case 2046 } 2047 return PartOfSpeech_CASE_UNKNOWN 2048} 2049 2050func (x *PartOfSpeech) GetForm() PartOfSpeech_Form { 2051 if x != nil { 2052 return x.Form 2053 } 2054 return PartOfSpeech_FORM_UNKNOWN 2055} 2056 2057func (x *PartOfSpeech) GetGender() PartOfSpeech_Gender { 2058 if x != nil { 2059 return x.Gender 2060 } 2061 return PartOfSpeech_GENDER_UNKNOWN 2062} 2063 2064func (x *PartOfSpeech) GetMood() PartOfSpeech_Mood { 2065 if x != nil { 2066 return x.Mood 2067 } 2068 return PartOfSpeech_MOOD_UNKNOWN 2069} 2070 2071func (x *PartOfSpeech) GetNumber() PartOfSpeech_Number { 2072 if x != nil { 2073 return x.Number 2074 } 2075 return PartOfSpeech_NUMBER_UNKNOWN 2076} 2077 2078func (x *PartOfSpeech) GetPerson() PartOfSpeech_Person { 2079 if x != nil { 2080 return x.Person 2081 } 2082 return PartOfSpeech_PERSON_UNKNOWN 2083} 2084 2085func (x *PartOfSpeech) GetProper() PartOfSpeech_Proper { 2086 if x != nil { 2087 return x.Proper 2088 } 2089 return PartOfSpeech_PROPER_UNKNOWN 2090} 2091 2092func (x *PartOfSpeech) GetReciprocity() PartOfSpeech_Reciprocity { 2093 if x != nil { 2094 return x.Reciprocity 2095 } 2096 return PartOfSpeech_RECIPROCITY_UNKNOWN 2097} 2098 2099func (x *PartOfSpeech) GetTense() PartOfSpeech_Tense { 2100 if x != nil { 2101 return x.Tense 2102 } 2103 return PartOfSpeech_TENSE_UNKNOWN 2104} 2105 2106func (x *PartOfSpeech) GetVoice() PartOfSpeech_Voice { 2107 if x != nil { 2108 return x.Voice 2109 } 2110 return PartOfSpeech_VOICE_UNKNOWN 2111} 2112 2113// Represents dependency parse tree information for a token. (For more 2114// information on dependency labels, see 2115// http://www.aclweb.org/anthology/P13-2017 2116type DependencyEdge struct { 2117 state protoimpl.MessageState 2118 sizeCache protoimpl.SizeCache 2119 unknownFields protoimpl.UnknownFields 2120 2121 // Represents the head of this token in the dependency tree. 2122 // This is the index of the token which has an arc going to this token. 2123 // The index is the position of the token in the array of tokens returned 2124 // by the API method. If this token is a root token, then the 2125 // `head_token_index` is its own index. 2126 HeadTokenIndex int32 `protobuf:"varint,1,opt,name=head_token_index,json=headTokenIndex,proto3" json:"head_token_index,omitempty"` 2127 // The parse label for the token. 2128 Label DependencyEdge_Label `protobuf:"varint,2,opt,name=label,proto3,enum=google.cloud.language.v1.DependencyEdge_Label" json:"label,omitempty"` 2129} 2130 2131func (x *DependencyEdge) Reset() { 2132 *x = DependencyEdge{} 2133 if protoimpl.UnsafeEnabled { 2134 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[6] 2135 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2136 ms.StoreMessageInfo(mi) 2137 } 2138} 2139 2140func (x *DependencyEdge) String() string { 2141 return protoimpl.X.MessageStringOf(x) 2142} 2143 2144func (*DependencyEdge) ProtoMessage() {} 2145 2146func (x *DependencyEdge) ProtoReflect() protoreflect.Message { 2147 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[6] 2148 if protoimpl.UnsafeEnabled && x != nil { 2149 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2150 if ms.LoadMessageInfo() == nil { 2151 ms.StoreMessageInfo(mi) 2152 } 2153 return ms 2154 } 2155 return mi.MessageOf(x) 2156} 2157 2158// Deprecated: Use DependencyEdge.ProtoReflect.Descriptor instead. 2159func (*DependencyEdge) Descriptor() ([]byte, []int) { 2160 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{6} 2161} 2162 2163func (x *DependencyEdge) GetHeadTokenIndex() int32 { 2164 if x != nil { 2165 return x.HeadTokenIndex 2166 } 2167 return 0 2168} 2169 2170func (x *DependencyEdge) GetLabel() DependencyEdge_Label { 2171 if x != nil { 2172 return x.Label 2173 } 2174 return DependencyEdge_UNKNOWN 2175} 2176 2177// Represents a mention for an entity in the text. Currently, proper noun 2178// mentions are supported. 2179type EntityMention struct { 2180 state protoimpl.MessageState 2181 sizeCache protoimpl.SizeCache 2182 unknownFields protoimpl.UnknownFields 2183 2184 // The mention text. 2185 Text *TextSpan `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` 2186 // The type of the entity mention. 2187 Type EntityMention_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.language.v1.EntityMention_Type" json:"type,omitempty"` 2188 // For calls to [AnalyzeEntitySentiment][] or if 2189 // [AnnotateTextRequest.Features.extract_entity_sentiment][google.cloud.language.v1.AnnotateTextRequest.Features.extract_entity_sentiment] is set to 2190 // true, this field will contain the sentiment expressed for this mention of 2191 // the entity in the provided document. 2192 Sentiment *Sentiment `protobuf:"bytes,3,opt,name=sentiment,proto3" json:"sentiment,omitempty"` 2193} 2194 2195func (x *EntityMention) Reset() { 2196 *x = EntityMention{} 2197 if protoimpl.UnsafeEnabled { 2198 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[7] 2199 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2200 ms.StoreMessageInfo(mi) 2201 } 2202} 2203 2204func (x *EntityMention) String() string { 2205 return protoimpl.X.MessageStringOf(x) 2206} 2207 2208func (*EntityMention) ProtoMessage() {} 2209 2210func (x *EntityMention) ProtoReflect() protoreflect.Message { 2211 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[7] 2212 if protoimpl.UnsafeEnabled && x != nil { 2213 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2214 if ms.LoadMessageInfo() == nil { 2215 ms.StoreMessageInfo(mi) 2216 } 2217 return ms 2218 } 2219 return mi.MessageOf(x) 2220} 2221 2222// Deprecated: Use EntityMention.ProtoReflect.Descriptor instead. 2223func (*EntityMention) Descriptor() ([]byte, []int) { 2224 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{7} 2225} 2226 2227func (x *EntityMention) GetText() *TextSpan { 2228 if x != nil { 2229 return x.Text 2230 } 2231 return nil 2232} 2233 2234func (x *EntityMention) GetType() EntityMention_Type { 2235 if x != nil { 2236 return x.Type 2237 } 2238 return EntityMention_TYPE_UNKNOWN 2239} 2240 2241func (x *EntityMention) GetSentiment() *Sentiment { 2242 if x != nil { 2243 return x.Sentiment 2244 } 2245 return nil 2246} 2247 2248// Represents an output piece of text. 2249type TextSpan struct { 2250 state protoimpl.MessageState 2251 sizeCache protoimpl.SizeCache 2252 unknownFields protoimpl.UnknownFields 2253 2254 // The content of the output text. 2255 Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` 2256 // The API calculates the beginning offset of the content in the original 2257 // document according to the [EncodingType][google.cloud.language.v1.EncodingType] specified in the API request. 2258 BeginOffset int32 `protobuf:"varint,2,opt,name=begin_offset,json=beginOffset,proto3" json:"begin_offset,omitempty"` 2259} 2260 2261func (x *TextSpan) Reset() { 2262 *x = TextSpan{} 2263 if protoimpl.UnsafeEnabled { 2264 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[8] 2265 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2266 ms.StoreMessageInfo(mi) 2267 } 2268} 2269 2270func (x *TextSpan) String() string { 2271 return protoimpl.X.MessageStringOf(x) 2272} 2273 2274func (*TextSpan) ProtoMessage() {} 2275 2276func (x *TextSpan) ProtoReflect() protoreflect.Message { 2277 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[8] 2278 if protoimpl.UnsafeEnabled && x != nil { 2279 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2280 if ms.LoadMessageInfo() == nil { 2281 ms.StoreMessageInfo(mi) 2282 } 2283 return ms 2284 } 2285 return mi.MessageOf(x) 2286} 2287 2288// Deprecated: Use TextSpan.ProtoReflect.Descriptor instead. 2289func (*TextSpan) Descriptor() ([]byte, []int) { 2290 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{8} 2291} 2292 2293func (x *TextSpan) GetContent() string { 2294 if x != nil { 2295 return x.Content 2296 } 2297 return "" 2298} 2299 2300func (x *TextSpan) GetBeginOffset() int32 { 2301 if x != nil { 2302 return x.BeginOffset 2303 } 2304 return 0 2305} 2306 2307// Represents a category returned from the text classifier. 2308type ClassificationCategory struct { 2309 state protoimpl.MessageState 2310 sizeCache protoimpl.SizeCache 2311 unknownFields protoimpl.UnknownFields 2312 2313 // The name of the category representing the document, from the [predefined 2314 // taxonomy](https://cloud.google.com/natural-language/docs/categories). 2315 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2316 // The classifier's confidence of the category. Number represents how certain 2317 // the classifier is that this category represents the given text. 2318 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"` 2319} 2320 2321func (x *ClassificationCategory) Reset() { 2322 *x = ClassificationCategory{} 2323 if protoimpl.UnsafeEnabled { 2324 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[9] 2325 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2326 ms.StoreMessageInfo(mi) 2327 } 2328} 2329 2330func (x *ClassificationCategory) String() string { 2331 return protoimpl.X.MessageStringOf(x) 2332} 2333 2334func (*ClassificationCategory) ProtoMessage() {} 2335 2336func (x *ClassificationCategory) ProtoReflect() protoreflect.Message { 2337 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[9] 2338 if protoimpl.UnsafeEnabled && x != nil { 2339 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2340 if ms.LoadMessageInfo() == nil { 2341 ms.StoreMessageInfo(mi) 2342 } 2343 return ms 2344 } 2345 return mi.MessageOf(x) 2346} 2347 2348// Deprecated: Use ClassificationCategory.ProtoReflect.Descriptor instead. 2349func (*ClassificationCategory) Descriptor() ([]byte, []int) { 2350 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{9} 2351} 2352 2353func (x *ClassificationCategory) GetName() string { 2354 if x != nil { 2355 return x.Name 2356 } 2357 return "" 2358} 2359 2360func (x *ClassificationCategory) GetConfidence() float32 { 2361 if x != nil { 2362 return x.Confidence 2363 } 2364 return 0 2365} 2366 2367// The sentiment analysis request message. 2368type AnalyzeSentimentRequest struct { 2369 state protoimpl.MessageState 2370 sizeCache protoimpl.SizeCache 2371 unknownFields protoimpl.UnknownFields 2372 2373 // Input document. 2374 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2375 // The encoding type used by the API to calculate sentence offsets. 2376 EncodingType EncodingType `protobuf:"varint,2,opt,name=encoding_type,json=encodingType,proto3,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"` 2377} 2378 2379func (x *AnalyzeSentimentRequest) Reset() { 2380 *x = AnalyzeSentimentRequest{} 2381 if protoimpl.UnsafeEnabled { 2382 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[10] 2383 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2384 ms.StoreMessageInfo(mi) 2385 } 2386} 2387 2388func (x *AnalyzeSentimentRequest) String() string { 2389 return protoimpl.X.MessageStringOf(x) 2390} 2391 2392func (*AnalyzeSentimentRequest) ProtoMessage() {} 2393 2394func (x *AnalyzeSentimentRequest) ProtoReflect() protoreflect.Message { 2395 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[10] 2396 if protoimpl.UnsafeEnabled && x != nil { 2397 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2398 if ms.LoadMessageInfo() == nil { 2399 ms.StoreMessageInfo(mi) 2400 } 2401 return ms 2402 } 2403 return mi.MessageOf(x) 2404} 2405 2406// Deprecated: Use AnalyzeSentimentRequest.ProtoReflect.Descriptor instead. 2407func (*AnalyzeSentimentRequest) Descriptor() ([]byte, []int) { 2408 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{10} 2409} 2410 2411func (x *AnalyzeSentimentRequest) GetDocument() *Document { 2412 if x != nil { 2413 return x.Document 2414 } 2415 return nil 2416} 2417 2418func (x *AnalyzeSentimentRequest) GetEncodingType() EncodingType { 2419 if x != nil { 2420 return x.EncodingType 2421 } 2422 return EncodingType_NONE 2423} 2424 2425// The sentiment analysis response message. 2426type AnalyzeSentimentResponse struct { 2427 state protoimpl.MessageState 2428 sizeCache protoimpl.SizeCache 2429 unknownFields protoimpl.UnknownFields 2430 2431 // The overall sentiment of the input document. 2432 DocumentSentiment *Sentiment `protobuf:"bytes,1,opt,name=document_sentiment,json=documentSentiment,proto3" json:"document_sentiment,omitempty"` 2433 // The language of the text, which will be the same as the language specified 2434 // in the request or, if not specified, the automatically-detected language. 2435 // See [Document.language][google.cloud.language.v1.Document.language] field for more details. 2436 Language string `protobuf:"bytes,2,opt,name=language,proto3" json:"language,omitempty"` 2437 // The sentiment for all the sentences in the document. 2438 Sentences []*Sentence `protobuf:"bytes,3,rep,name=sentences,proto3" json:"sentences,omitempty"` 2439} 2440 2441func (x *AnalyzeSentimentResponse) Reset() { 2442 *x = AnalyzeSentimentResponse{} 2443 if protoimpl.UnsafeEnabled { 2444 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[11] 2445 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2446 ms.StoreMessageInfo(mi) 2447 } 2448} 2449 2450func (x *AnalyzeSentimentResponse) String() string { 2451 return protoimpl.X.MessageStringOf(x) 2452} 2453 2454func (*AnalyzeSentimentResponse) ProtoMessage() {} 2455 2456func (x *AnalyzeSentimentResponse) ProtoReflect() protoreflect.Message { 2457 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[11] 2458 if protoimpl.UnsafeEnabled && x != nil { 2459 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2460 if ms.LoadMessageInfo() == nil { 2461 ms.StoreMessageInfo(mi) 2462 } 2463 return ms 2464 } 2465 return mi.MessageOf(x) 2466} 2467 2468// Deprecated: Use AnalyzeSentimentResponse.ProtoReflect.Descriptor instead. 2469func (*AnalyzeSentimentResponse) Descriptor() ([]byte, []int) { 2470 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{11} 2471} 2472 2473func (x *AnalyzeSentimentResponse) GetDocumentSentiment() *Sentiment { 2474 if x != nil { 2475 return x.DocumentSentiment 2476 } 2477 return nil 2478} 2479 2480func (x *AnalyzeSentimentResponse) GetLanguage() string { 2481 if x != nil { 2482 return x.Language 2483 } 2484 return "" 2485} 2486 2487func (x *AnalyzeSentimentResponse) GetSentences() []*Sentence { 2488 if x != nil { 2489 return x.Sentences 2490 } 2491 return nil 2492} 2493 2494// The entity-level sentiment analysis request message. 2495type AnalyzeEntitySentimentRequest struct { 2496 state protoimpl.MessageState 2497 sizeCache protoimpl.SizeCache 2498 unknownFields protoimpl.UnknownFields 2499 2500 // Input document. 2501 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2502 // The encoding type used by the API to calculate offsets. 2503 EncodingType EncodingType `protobuf:"varint,2,opt,name=encoding_type,json=encodingType,proto3,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"` 2504} 2505 2506func (x *AnalyzeEntitySentimentRequest) Reset() { 2507 *x = AnalyzeEntitySentimentRequest{} 2508 if protoimpl.UnsafeEnabled { 2509 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[12] 2510 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2511 ms.StoreMessageInfo(mi) 2512 } 2513} 2514 2515func (x *AnalyzeEntitySentimentRequest) String() string { 2516 return protoimpl.X.MessageStringOf(x) 2517} 2518 2519func (*AnalyzeEntitySentimentRequest) ProtoMessage() {} 2520 2521func (x *AnalyzeEntitySentimentRequest) ProtoReflect() protoreflect.Message { 2522 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[12] 2523 if protoimpl.UnsafeEnabled && x != nil { 2524 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2525 if ms.LoadMessageInfo() == nil { 2526 ms.StoreMessageInfo(mi) 2527 } 2528 return ms 2529 } 2530 return mi.MessageOf(x) 2531} 2532 2533// Deprecated: Use AnalyzeEntitySentimentRequest.ProtoReflect.Descriptor instead. 2534func (*AnalyzeEntitySentimentRequest) Descriptor() ([]byte, []int) { 2535 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{12} 2536} 2537 2538func (x *AnalyzeEntitySentimentRequest) GetDocument() *Document { 2539 if x != nil { 2540 return x.Document 2541 } 2542 return nil 2543} 2544 2545func (x *AnalyzeEntitySentimentRequest) GetEncodingType() EncodingType { 2546 if x != nil { 2547 return x.EncodingType 2548 } 2549 return EncodingType_NONE 2550} 2551 2552// The entity-level sentiment analysis response message. 2553type AnalyzeEntitySentimentResponse struct { 2554 state protoimpl.MessageState 2555 sizeCache protoimpl.SizeCache 2556 unknownFields protoimpl.UnknownFields 2557 2558 // The recognized entities in the input document with associated sentiments. 2559 Entities []*Entity `protobuf:"bytes,1,rep,name=entities,proto3" json:"entities,omitempty"` 2560 // The language of the text, which will be the same as the language specified 2561 // in the request or, if not specified, the automatically-detected language. 2562 // See [Document.language][google.cloud.language.v1.Document.language] field for more details. 2563 Language string `protobuf:"bytes,2,opt,name=language,proto3" json:"language,omitempty"` 2564} 2565 2566func (x *AnalyzeEntitySentimentResponse) Reset() { 2567 *x = AnalyzeEntitySentimentResponse{} 2568 if protoimpl.UnsafeEnabled { 2569 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[13] 2570 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2571 ms.StoreMessageInfo(mi) 2572 } 2573} 2574 2575func (x *AnalyzeEntitySentimentResponse) String() string { 2576 return protoimpl.X.MessageStringOf(x) 2577} 2578 2579func (*AnalyzeEntitySentimentResponse) ProtoMessage() {} 2580 2581func (x *AnalyzeEntitySentimentResponse) ProtoReflect() protoreflect.Message { 2582 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[13] 2583 if protoimpl.UnsafeEnabled && x != nil { 2584 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2585 if ms.LoadMessageInfo() == nil { 2586 ms.StoreMessageInfo(mi) 2587 } 2588 return ms 2589 } 2590 return mi.MessageOf(x) 2591} 2592 2593// Deprecated: Use AnalyzeEntitySentimentResponse.ProtoReflect.Descriptor instead. 2594func (*AnalyzeEntitySentimentResponse) Descriptor() ([]byte, []int) { 2595 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{13} 2596} 2597 2598func (x *AnalyzeEntitySentimentResponse) GetEntities() []*Entity { 2599 if x != nil { 2600 return x.Entities 2601 } 2602 return nil 2603} 2604 2605func (x *AnalyzeEntitySentimentResponse) GetLanguage() string { 2606 if x != nil { 2607 return x.Language 2608 } 2609 return "" 2610} 2611 2612// The entity analysis request message. 2613type AnalyzeEntitiesRequest struct { 2614 state protoimpl.MessageState 2615 sizeCache protoimpl.SizeCache 2616 unknownFields protoimpl.UnknownFields 2617 2618 // Input document. 2619 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2620 // The encoding type used by the API to calculate offsets. 2621 EncodingType EncodingType `protobuf:"varint,2,opt,name=encoding_type,json=encodingType,proto3,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"` 2622} 2623 2624func (x *AnalyzeEntitiesRequest) Reset() { 2625 *x = AnalyzeEntitiesRequest{} 2626 if protoimpl.UnsafeEnabled { 2627 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[14] 2628 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2629 ms.StoreMessageInfo(mi) 2630 } 2631} 2632 2633func (x *AnalyzeEntitiesRequest) String() string { 2634 return protoimpl.X.MessageStringOf(x) 2635} 2636 2637func (*AnalyzeEntitiesRequest) ProtoMessage() {} 2638 2639func (x *AnalyzeEntitiesRequest) ProtoReflect() protoreflect.Message { 2640 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[14] 2641 if protoimpl.UnsafeEnabled && x != nil { 2642 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2643 if ms.LoadMessageInfo() == nil { 2644 ms.StoreMessageInfo(mi) 2645 } 2646 return ms 2647 } 2648 return mi.MessageOf(x) 2649} 2650 2651// Deprecated: Use AnalyzeEntitiesRequest.ProtoReflect.Descriptor instead. 2652func (*AnalyzeEntitiesRequest) Descriptor() ([]byte, []int) { 2653 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{14} 2654} 2655 2656func (x *AnalyzeEntitiesRequest) GetDocument() *Document { 2657 if x != nil { 2658 return x.Document 2659 } 2660 return nil 2661} 2662 2663func (x *AnalyzeEntitiesRequest) GetEncodingType() EncodingType { 2664 if x != nil { 2665 return x.EncodingType 2666 } 2667 return EncodingType_NONE 2668} 2669 2670// The entity analysis response message. 2671type AnalyzeEntitiesResponse struct { 2672 state protoimpl.MessageState 2673 sizeCache protoimpl.SizeCache 2674 unknownFields protoimpl.UnknownFields 2675 2676 // The recognized entities in the input document. 2677 Entities []*Entity `protobuf:"bytes,1,rep,name=entities,proto3" json:"entities,omitempty"` 2678 // The language of the text, which will be the same as the language specified 2679 // in the request or, if not specified, the automatically-detected language. 2680 // See [Document.language][google.cloud.language.v1.Document.language] field for more details. 2681 Language string `protobuf:"bytes,2,opt,name=language,proto3" json:"language,omitempty"` 2682} 2683 2684func (x *AnalyzeEntitiesResponse) Reset() { 2685 *x = AnalyzeEntitiesResponse{} 2686 if protoimpl.UnsafeEnabled { 2687 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[15] 2688 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2689 ms.StoreMessageInfo(mi) 2690 } 2691} 2692 2693func (x *AnalyzeEntitiesResponse) String() string { 2694 return protoimpl.X.MessageStringOf(x) 2695} 2696 2697func (*AnalyzeEntitiesResponse) ProtoMessage() {} 2698 2699func (x *AnalyzeEntitiesResponse) ProtoReflect() protoreflect.Message { 2700 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[15] 2701 if protoimpl.UnsafeEnabled && x != nil { 2702 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2703 if ms.LoadMessageInfo() == nil { 2704 ms.StoreMessageInfo(mi) 2705 } 2706 return ms 2707 } 2708 return mi.MessageOf(x) 2709} 2710 2711// Deprecated: Use AnalyzeEntitiesResponse.ProtoReflect.Descriptor instead. 2712func (*AnalyzeEntitiesResponse) Descriptor() ([]byte, []int) { 2713 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{15} 2714} 2715 2716func (x *AnalyzeEntitiesResponse) GetEntities() []*Entity { 2717 if x != nil { 2718 return x.Entities 2719 } 2720 return nil 2721} 2722 2723func (x *AnalyzeEntitiesResponse) GetLanguage() string { 2724 if x != nil { 2725 return x.Language 2726 } 2727 return "" 2728} 2729 2730// The syntax analysis request message. 2731type AnalyzeSyntaxRequest struct { 2732 state protoimpl.MessageState 2733 sizeCache protoimpl.SizeCache 2734 unknownFields protoimpl.UnknownFields 2735 2736 // Input document. 2737 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2738 // The encoding type used by the API to calculate offsets. 2739 EncodingType EncodingType `protobuf:"varint,2,opt,name=encoding_type,json=encodingType,proto3,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"` 2740} 2741 2742func (x *AnalyzeSyntaxRequest) Reset() { 2743 *x = AnalyzeSyntaxRequest{} 2744 if protoimpl.UnsafeEnabled { 2745 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[16] 2746 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2747 ms.StoreMessageInfo(mi) 2748 } 2749} 2750 2751func (x *AnalyzeSyntaxRequest) String() string { 2752 return protoimpl.X.MessageStringOf(x) 2753} 2754 2755func (*AnalyzeSyntaxRequest) ProtoMessage() {} 2756 2757func (x *AnalyzeSyntaxRequest) ProtoReflect() protoreflect.Message { 2758 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[16] 2759 if protoimpl.UnsafeEnabled && x != nil { 2760 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2761 if ms.LoadMessageInfo() == nil { 2762 ms.StoreMessageInfo(mi) 2763 } 2764 return ms 2765 } 2766 return mi.MessageOf(x) 2767} 2768 2769// Deprecated: Use AnalyzeSyntaxRequest.ProtoReflect.Descriptor instead. 2770func (*AnalyzeSyntaxRequest) Descriptor() ([]byte, []int) { 2771 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{16} 2772} 2773 2774func (x *AnalyzeSyntaxRequest) GetDocument() *Document { 2775 if x != nil { 2776 return x.Document 2777 } 2778 return nil 2779} 2780 2781func (x *AnalyzeSyntaxRequest) GetEncodingType() EncodingType { 2782 if x != nil { 2783 return x.EncodingType 2784 } 2785 return EncodingType_NONE 2786} 2787 2788// The syntax analysis response message. 2789type AnalyzeSyntaxResponse struct { 2790 state protoimpl.MessageState 2791 sizeCache protoimpl.SizeCache 2792 unknownFields protoimpl.UnknownFields 2793 2794 // Sentences in the input document. 2795 Sentences []*Sentence `protobuf:"bytes,1,rep,name=sentences,proto3" json:"sentences,omitempty"` 2796 // Tokens, along with their syntactic information, in the input document. 2797 Tokens []*Token `protobuf:"bytes,2,rep,name=tokens,proto3" json:"tokens,omitempty"` 2798 // The language of the text, which will be the same as the language specified 2799 // in the request or, if not specified, the automatically-detected language. 2800 // See [Document.language][google.cloud.language.v1.Document.language] field for more details. 2801 Language string `protobuf:"bytes,3,opt,name=language,proto3" json:"language,omitempty"` 2802} 2803 2804func (x *AnalyzeSyntaxResponse) Reset() { 2805 *x = AnalyzeSyntaxResponse{} 2806 if protoimpl.UnsafeEnabled { 2807 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[17] 2808 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2809 ms.StoreMessageInfo(mi) 2810 } 2811} 2812 2813func (x *AnalyzeSyntaxResponse) String() string { 2814 return protoimpl.X.MessageStringOf(x) 2815} 2816 2817func (*AnalyzeSyntaxResponse) ProtoMessage() {} 2818 2819func (x *AnalyzeSyntaxResponse) ProtoReflect() protoreflect.Message { 2820 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[17] 2821 if protoimpl.UnsafeEnabled && x != nil { 2822 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2823 if ms.LoadMessageInfo() == nil { 2824 ms.StoreMessageInfo(mi) 2825 } 2826 return ms 2827 } 2828 return mi.MessageOf(x) 2829} 2830 2831// Deprecated: Use AnalyzeSyntaxResponse.ProtoReflect.Descriptor instead. 2832func (*AnalyzeSyntaxResponse) Descriptor() ([]byte, []int) { 2833 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{17} 2834} 2835 2836func (x *AnalyzeSyntaxResponse) GetSentences() []*Sentence { 2837 if x != nil { 2838 return x.Sentences 2839 } 2840 return nil 2841} 2842 2843func (x *AnalyzeSyntaxResponse) GetTokens() []*Token { 2844 if x != nil { 2845 return x.Tokens 2846 } 2847 return nil 2848} 2849 2850func (x *AnalyzeSyntaxResponse) GetLanguage() string { 2851 if x != nil { 2852 return x.Language 2853 } 2854 return "" 2855} 2856 2857// The document classification request message. 2858type ClassifyTextRequest struct { 2859 state protoimpl.MessageState 2860 sizeCache protoimpl.SizeCache 2861 unknownFields protoimpl.UnknownFields 2862 2863 // Input document. 2864 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2865} 2866 2867func (x *ClassifyTextRequest) Reset() { 2868 *x = ClassifyTextRequest{} 2869 if protoimpl.UnsafeEnabled { 2870 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[18] 2871 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2872 ms.StoreMessageInfo(mi) 2873 } 2874} 2875 2876func (x *ClassifyTextRequest) String() string { 2877 return protoimpl.X.MessageStringOf(x) 2878} 2879 2880func (*ClassifyTextRequest) ProtoMessage() {} 2881 2882func (x *ClassifyTextRequest) ProtoReflect() protoreflect.Message { 2883 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[18] 2884 if protoimpl.UnsafeEnabled && x != nil { 2885 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2886 if ms.LoadMessageInfo() == nil { 2887 ms.StoreMessageInfo(mi) 2888 } 2889 return ms 2890 } 2891 return mi.MessageOf(x) 2892} 2893 2894// Deprecated: Use ClassifyTextRequest.ProtoReflect.Descriptor instead. 2895func (*ClassifyTextRequest) Descriptor() ([]byte, []int) { 2896 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{18} 2897} 2898 2899func (x *ClassifyTextRequest) GetDocument() *Document { 2900 if x != nil { 2901 return x.Document 2902 } 2903 return nil 2904} 2905 2906// The document classification response message. 2907type ClassifyTextResponse struct { 2908 state protoimpl.MessageState 2909 sizeCache protoimpl.SizeCache 2910 unknownFields protoimpl.UnknownFields 2911 2912 // Categories representing the input document. 2913 Categories []*ClassificationCategory `protobuf:"bytes,1,rep,name=categories,proto3" json:"categories,omitempty"` 2914} 2915 2916func (x *ClassifyTextResponse) Reset() { 2917 *x = ClassifyTextResponse{} 2918 if protoimpl.UnsafeEnabled { 2919 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[19] 2920 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2921 ms.StoreMessageInfo(mi) 2922 } 2923} 2924 2925func (x *ClassifyTextResponse) String() string { 2926 return protoimpl.X.MessageStringOf(x) 2927} 2928 2929func (*ClassifyTextResponse) ProtoMessage() {} 2930 2931func (x *ClassifyTextResponse) ProtoReflect() protoreflect.Message { 2932 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[19] 2933 if protoimpl.UnsafeEnabled && x != nil { 2934 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2935 if ms.LoadMessageInfo() == nil { 2936 ms.StoreMessageInfo(mi) 2937 } 2938 return ms 2939 } 2940 return mi.MessageOf(x) 2941} 2942 2943// Deprecated: Use ClassifyTextResponse.ProtoReflect.Descriptor instead. 2944func (*ClassifyTextResponse) Descriptor() ([]byte, []int) { 2945 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{19} 2946} 2947 2948func (x *ClassifyTextResponse) GetCategories() []*ClassificationCategory { 2949 if x != nil { 2950 return x.Categories 2951 } 2952 return nil 2953} 2954 2955// The request message for the text annotation API, which can perform multiple 2956// analysis types (sentiment, entities, and syntax) in one call. 2957type AnnotateTextRequest struct { 2958 state protoimpl.MessageState 2959 sizeCache protoimpl.SizeCache 2960 unknownFields protoimpl.UnknownFields 2961 2962 // Input document. 2963 Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` 2964 // The enabled features. 2965 Features *AnnotateTextRequest_Features `protobuf:"bytes,2,opt,name=features,proto3" json:"features,omitempty"` 2966 // The encoding type used by the API to calculate offsets. 2967 EncodingType EncodingType `protobuf:"varint,3,opt,name=encoding_type,json=encodingType,proto3,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"` 2968} 2969 2970func (x *AnnotateTextRequest) Reset() { 2971 *x = AnnotateTextRequest{} 2972 if protoimpl.UnsafeEnabled { 2973 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[20] 2974 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2975 ms.StoreMessageInfo(mi) 2976 } 2977} 2978 2979func (x *AnnotateTextRequest) String() string { 2980 return protoimpl.X.MessageStringOf(x) 2981} 2982 2983func (*AnnotateTextRequest) ProtoMessage() {} 2984 2985func (x *AnnotateTextRequest) ProtoReflect() protoreflect.Message { 2986 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[20] 2987 if protoimpl.UnsafeEnabled && x != nil { 2988 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2989 if ms.LoadMessageInfo() == nil { 2990 ms.StoreMessageInfo(mi) 2991 } 2992 return ms 2993 } 2994 return mi.MessageOf(x) 2995} 2996 2997// Deprecated: Use AnnotateTextRequest.ProtoReflect.Descriptor instead. 2998func (*AnnotateTextRequest) Descriptor() ([]byte, []int) { 2999 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{20} 3000} 3001 3002func (x *AnnotateTextRequest) GetDocument() *Document { 3003 if x != nil { 3004 return x.Document 3005 } 3006 return nil 3007} 3008 3009func (x *AnnotateTextRequest) GetFeatures() *AnnotateTextRequest_Features { 3010 if x != nil { 3011 return x.Features 3012 } 3013 return nil 3014} 3015 3016func (x *AnnotateTextRequest) GetEncodingType() EncodingType { 3017 if x != nil { 3018 return x.EncodingType 3019 } 3020 return EncodingType_NONE 3021} 3022 3023// The text annotations response message. 3024type AnnotateTextResponse struct { 3025 state protoimpl.MessageState 3026 sizeCache protoimpl.SizeCache 3027 unknownFields protoimpl.UnknownFields 3028 3029 // Sentences in the input document. Populated if the user enables 3030 // [AnnotateTextRequest.Features.extract_syntax][google.cloud.language.v1.AnnotateTextRequest.Features.extract_syntax]. 3031 Sentences []*Sentence `protobuf:"bytes,1,rep,name=sentences,proto3" json:"sentences,omitempty"` 3032 // Tokens, along with their syntactic information, in the input document. 3033 // Populated if the user enables 3034 // [AnnotateTextRequest.Features.extract_syntax][google.cloud.language.v1.AnnotateTextRequest.Features.extract_syntax]. 3035 Tokens []*Token `protobuf:"bytes,2,rep,name=tokens,proto3" json:"tokens,omitempty"` 3036 // Entities, along with their semantic information, in the input document. 3037 // Populated if the user enables 3038 // [AnnotateTextRequest.Features.extract_entities][google.cloud.language.v1.AnnotateTextRequest.Features.extract_entities]. 3039 Entities []*Entity `protobuf:"bytes,3,rep,name=entities,proto3" json:"entities,omitempty"` 3040 // The overall sentiment for the document. Populated if the user enables 3041 // [AnnotateTextRequest.Features.extract_document_sentiment][google.cloud.language.v1.AnnotateTextRequest.Features.extract_document_sentiment]. 3042 DocumentSentiment *Sentiment `protobuf:"bytes,4,opt,name=document_sentiment,json=documentSentiment,proto3" json:"document_sentiment,omitempty"` 3043 // The language of the text, which will be the same as the language specified 3044 // in the request or, if not specified, the automatically-detected language. 3045 // See [Document.language][google.cloud.language.v1.Document.language] field for more details. 3046 Language string `protobuf:"bytes,5,opt,name=language,proto3" json:"language,omitempty"` 3047 // Categories identified in the input document. 3048 Categories []*ClassificationCategory `protobuf:"bytes,6,rep,name=categories,proto3" json:"categories,omitempty"` 3049} 3050 3051func (x *AnnotateTextResponse) Reset() { 3052 *x = AnnotateTextResponse{} 3053 if protoimpl.UnsafeEnabled { 3054 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[21] 3055 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3056 ms.StoreMessageInfo(mi) 3057 } 3058} 3059 3060func (x *AnnotateTextResponse) String() string { 3061 return protoimpl.X.MessageStringOf(x) 3062} 3063 3064func (*AnnotateTextResponse) ProtoMessage() {} 3065 3066func (x *AnnotateTextResponse) ProtoReflect() protoreflect.Message { 3067 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[21] 3068 if protoimpl.UnsafeEnabled && x != nil { 3069 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3070 if ms.LoadMessageInfo() == nil { 3071 ms.StoreMessageInfo(mi) 3072 } 3073 return ms 3074 } 3075 return mi.MessageOf(x) 3076} 3077 3078// Deprecated: Use AnnotateTextResponse.ProtoReflect.Descriptor instead. 3079func (*AnnotateTextResponse) Descriptor() ([]byte, []int) { 3080 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{21} 3081} 3082 3083func (x *AnnotateTextResponse) GetSentences() []*Sentence { 3084 if x != nil { 3085 return x.Sentences 3086 } 3087 return nil 3088} 3089 3090func (x *AnnotateTextResponse) GetTokens() []*Token { 3091 if x != nil { 3092 return x.Tokens 3093 } 3094 return nil 3095} 3096 3097func (x *AnnotateTextResponse) GetEntities() []*Entity { 3098 if x != nil { 3099 return x.Entities 3100 } 3101 return nil 3102} 3103 3104func (x *AnnotateTextResponse) GetDocumentSentiment() *Sentiment { 3105 if x != nil { 3106 return x.DocumentSentiment 3107 } 3108 return nil 3109} 3110 3111func (x *AnnotateTextResponse) GetLanguage() string { 3112 if x != nil { 3113 return x.Language 3114 } 3115 return "" 3116} 3117 3118func (x *AnnotateTextResponse) GetCategories() []*ClassificationCategory { 3119 if x != nil { 3120 return x.Categories 3121 } 3122 return nil 3123} 3124 3125// All available features for sentiment, syntax, and semantic analysis. 3126// Setting each one to true will enable that specific analysis for the input. 3127type AnnotateTextRequest_Features struct { 3128 state protoimpl.MessageState 3129 sizeCache protoimpl.SizeCache 3130 unknownFields protoimpl.UnknownFields 3131 3132 // Extract syntax information. 3133 ExtractSyntax bool `protobuf:"varint,1,opt,name=extract_syntax,json=extractSyntax,proto3" json:"extract_syntax,omitempty"` 3134 // Extract entities. 3135 ExtractEntities bool `protobuf:"varint,2,opt,name=extract_entities,json=extractEntities,proto3" json:"extract_entities,omitempty"` 3136 // Extract document-level sentiment. 3137 ExtractDocumentSentiment bool `protobuf:"varint,3,opt,name=extract_document_sentiment,json=extractDocumentSentiment,proto3" json:"extract_document_sentiment,omitempty"` 3138 // Extract entities and their associated sentiment. 3139 ExtractEntitySentiment bool `protobuf:"varint,4,opt,name=extract_entity_sentiment,json=extractEntitySentiment,proto3" json:"extract_entity_sentiment,omitempty"` 3140 // Classify the full document into categories. 3141 ClassifyText bool `protobuf:"varint,6,opt,name=classify_text,json=classifyText,proto3" json:"classify_text,omitempty"` 3142} 3143 3144func (x *AnnotateTextRequest_Features) Reset() { 3145 *x = AnnotateTextRequest_Features{} 3146 if protoimpl.UnsafeEnabled { 3147 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[23] 3148 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3149 ms.StoreMessageInfo(mi) 3150 } 3151} 3152 3153func (x *AnnotateTextRequest_Features) String() string { 3154 return protoimpl.X.MessageStringOf(x) 3155} 3156 3157func (*AnnotateTextRequest_Features) ProtoMessage() {} 3158 3159func (x *AnnotateTextRequest_Features) ProtoReflect() protoreflect.Message { 3160 mi := &file_google_cloud_language_v1_language_service_proto_msgTypes[23] 3161 if protoimpl.UnsafeEnabled && x != nil { 3162 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3163 if ms.LoadMessageInfo() == nil { 3164 ms.StoreMessageInfo(mi) 3165 } 3166 return ms 3167 } 3168 return mi.MessageOf(x) 3169} 3170 3171// Deprecated: Use AnnotateTextRequest_Features.ProtoReflect.Descriptor instead. 3172func (*AnnotateTextRequest_Features) Descriptor() ([]byte, []int) { 3173 return file_google_cloud_language_v1_language_service_proto_rawDescGZIP(), []int{20, 0} 3174} 3175 3176func (x *AnnotateTextRequest_Features) GetExtractSyntax() bool { 3177 if x != nil { 3178 return x.ExtractSyntax 3179 } 3180 return false 3181} 3182 3183func (x *AnnotateTextRequest_Features) GetExtractEntities() bool { 3184 if x != nil { 3185 return x.ExtractEntities 3186 } 3187 return false 3188} 3189 3190func (x *AnnotateTextRequest_Features) GetExtractDocumentSentiment() bool { 3191 if x != nil { 3192 return x.ExtractDocumentSentiment 3193 } 3194 return false 3195} 3196 3197func (x *AnnotateTextRequest_Features) GetExtractEntitySentiment() bool { 3198 if x != nil { 3199 return x.ExtractEntitySentiment 3200 } 3201 return false 3202} 3203 3204func (x *AnnotateTextRequest_Features) GetClassifyText() bool { 3205 if x != nil { 3206 return x.ClassifyText 3207 } 3208 return false 3209} 3210 3211var File_google_cloud_language_v1_language_service_proto protoreflect.FileDescriptor 3212 3213var file_google_cloud_language_v1_language_service_proto_rawDesc = []byte{ 3214 0x0a, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6c, 3215 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3216 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 3217 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3218 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 3219 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 3220 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3221 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 3222 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 3223 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 3224 0x6f, 0x74, 0x6f, 0x22, 0xeb, 0x01, 0x0a, 0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 3225 0x12, 0x3b, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 3226 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 3227 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 3228 0x6e, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 3229 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 3230 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x63, 0x73, 3231 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 3232 0x28, 0x09, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x63, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 3233 0x55, 0x72, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 3234 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 3235 0x36, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 3236 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 3237 0x0a, 0x50, 0x4c, 0x41, 0x49, 0x4e, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 3238 0x04, 0x48, 0x54, 0x4d, 0x4c, 0x10, 0x02, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 3239 0x65, 0x22, 0x85, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x36, 3240 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 3241 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 3242 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x70, 0x61, 0x6e, 3243 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x41, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 3244 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3245 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 3246 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 3247 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xc0, 0x04, 0x0a, 0x06, 0x45, 0x6e, 3248 0x74, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 3249 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 3250 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3251 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3252 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 3253 0x79, 0x70, 0x65, 0x12, 0x4a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 3254 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3255 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3256 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 3257 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 3258 0x1a, 0x0a, 0x08, 0x73, 0x61, 0x6c, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 3259 0x02, 0x52, 0x08, 0x73, 0x61, 0x6c, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x6d, 3260 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 3261 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 3262 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 3263 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3264 0x12, 0x41, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 3265 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3266 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 3267 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 3268 0x65, 0x6e, 0x74, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 3269 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 3270 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 3271 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 3272 0x22, 0xb9, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 3273 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x45, 0x52, 0x53, 0x4f, 0x4e, 3274 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 3275 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x52, 0x47, 0x41, 0x4e, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 3276 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x04, 0x12, 0x0f, 0x0a, 3277 0x0b, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x4f, 0x46, 0x5f, 0x41, 0x52, 0x54, 0x10, 0x05, 0x12, 0x11, 3278 0x0a, 0x0d, 0x43, 0x4f, 0x4e, 0x53, 0x55, 0x4d, 0x45, 0x52, 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x10, 3279 0x06, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 3280 0x50, 0x48, 0x4f, 0x4e, 0x45, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x09, 0x12, 0x0b, 3281 0x0a, 0x07, 0x41, 0x44, 0x44, 0x52, 0x45, 0x53, 0x53, 0x10, 0x0a, 0x12, 0x08, 0x0a, 0x04, 0x44, 3282 0x41, 0x54, 0x45, 0x10, 0x0b, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x10, 3283 0x0c, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x49, 0x43, 0x45, 0x10, 0x0d, 0x22, 0xf6, 0x01, 0x0a, 3284 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 3285 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3286 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3287 0x54, 0x65, 0x78, 0x74, 0x53, 0x70, 0x61, 0x6e, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4c, 3288 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 3289 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3290 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3291 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x0c, 3292 0x70, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x51, 0x0a, 0x0f, 3293 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x65, 0x64, 0x67, 0x65, 0x18, 3294 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3295 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3296 0x2e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x45, 0x64, 0x67, 0x65, 0x52, 3297 0x0e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x45, 0x64, 0x67, 0x65, 0x12, 3298 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x6d, 0x6d, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 3299 0x6c, 0x65, 0x6d, 0x6d, 0x61, 0x22, 0x3f, 0x0a, 0x09, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 3300 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 3301 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x74, 0x75, 0x64, 0x65, 3302 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 3303 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xfd, 0x10, 0x0a, 0x0c, 0x50, 0x61, 0x72, 0x74, 0x4f, 3304 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x3c, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 3305 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3306 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3307 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x54, 0x61, 0x67, 3308 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x45, 0x0a, 0x06, 0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x18, 3309 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3310 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3311 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x41, 0x73, 3312 0x70, 0x65, 0x63, 0x74, 0x52, 0x06, 0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x12, 0x3f, 0x0a, 0x04, 3313 0x63, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 3314 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 3315 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 3316 0x63, 0x68, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x52, 0x04, 0x63, 0x61, 0x73, 0x65, 0x12, 0x3f, 0x0a, 3317 0x04, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 3318 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3319 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 3320 0x65, 0x63, 0x68, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x04, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x45, 3321 0x0a, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 3322 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 3323 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 3324 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x47, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x06, 0x67, 3325 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x04, 0x6d, 0x6f, 0x6f, 0x64, 0x18, 0x06, 0x20, 3326 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3327 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 3328 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x4d, 0x6f, 0x6f, 0x64, 3329 0x52, 0x04, 0x6d, 0x6f, 0x6f, 0x64, 0x12, 0x45, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 3330 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3331 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3332 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x4e, 3333 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x45, 0x0a, 3334 0x06, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 3335 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 3336 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 3337 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x65, 3338 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x18, 0x09, 3339 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3340 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3341 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x50, 0x72, 0x6f, 3342 0x70, 0x65, 0x72, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x0b, 0x72, 3343 0x65, 0x63, 0x69, 0x70, 0x72, 0x6f, 0x63, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 3344 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3345 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 3346 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x52, 0x65, 0x63, 0x69, 0x70, 0x72, 0x6f, 3347 0x63, 0x69, 0x74, 0x79, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x72, 0x6f, 0x63, 0x69, 0x74, 3348 0x79, 0x12, 0x42, 0x0a, 0x05, 0x74, 0x65, 0x6e, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 3349 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3350 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 3351 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x05, 3352 0x74, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x0c, 3353 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3354 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3355 0x50, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x56, 0x6f, 0x69, 3356 0x63, 0x65, 0x52, 0x05, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x03, 0x54, 0x61, 3357 0x67, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 3358 0x0a, 0x03, 0x41, 0x44, 0x4a, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x50, 0x10, 0x02, 3359 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x56, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x4e, 3360 0x4a, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x45, 0x54, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 3361 0x4e, 0x4f, 0x55, 0x4e, 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x55, 0x4d, 0x10, 0x07, 0x12, 3362 0x08, 0x0a, 0x04, 0x50, 0x52, 0x4f, 0x4e, 0x10, 0x08, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x52, 0x54, 3363 0x10, 0x09, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x55, 0x4e, 0x43, 0x54, 0x10, 0x0a, 0x12, 0x08, 0x0a, 3364 0x04, 0x56, 0x45, 0x52, 0x42, 0x10, 0x0b, 0x12, 0x05, 0x0a, 0x01, 0x58, 0x10, 0x0c, 0x12, 0x09, 3365 0x0a, 0x05, 0x41, 0x46, 0x46, 0x49, 0x58, 0x10, 0x0d, 0x22, 0x4f, 0x0a, 0x06, 0x41, 0x73, 0x70, 3366 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x53, 0x50, 0x45, 0x43, 0x54, 0x5f, 0x55, 0x4e, 3367 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x45, 0x52, 0x46, 0x45, 3368 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x4d, 0x50, 0x45, 0x52, 3369 0x46, 0x45, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x52, 0x4f, 3370 0x47, 0x52, 0x45, 0x53, 0x53, 0x49, 0x56, 0x45, 0x10, 0x03, 0x22, 0xf8, 0x01, 0x0a, 0x04, 0x43, 3371 0x61, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x41, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 3372 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x43, 0x43, 0x55, 0x53, 0x41, 0x54, 3373 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x44, 0x56, 0x45, 0x52, 0x42, 0x49, 3374 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x4d, 0x45, 3375 0x4e, 0x54, 0x49, 0x56, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x41, 0x54, 0x49, 0x56, 3376 0x45, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x47, 0x45, 0x4e, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 3377 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x4e, 0x53, 0x54, 0x52, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x41, 3378 0x4c, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 3379 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x4d, 0x49, 0x4e, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 3380 0x08, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x42, 0x4c, 0x49, 0x51, 0x55, 0x45, 0x10, 0x09, 0x12, 0x0d, 3381 0x0a, 0x09, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x0a, 0x12, 0x11, 0x0a, 3382 0x0d, 0x50, 0x52, 0x45, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x0b, 3383 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x46, 0x4c, 0x45, 0x58, 0x49, 0x56, 0x45, 0x5f, 0x43, 0x41, 3384 0x53, 0x45, 0x10, 0x0c, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 3385 0x5f, 0x43, 0x41, 0x53, 0x45, 0x10, 0x0d, 0x12, 0x0c, 0x0a, 0x08, 0x56, 0x4f, 0x43, 0x41, 0x54, 3386 0x49, 0x56, 0x45, 0x10, 0x0e, 0x22, 0xaf, 0x01, 0x0a, 0x04, 0x46, 0x6f, 0x72, 0x6d, 0x12, 0x10, 3387 0x0a, 0x0c, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 3388 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x44, 0x4e, 0x4f, 0x4d, 0x49, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0d, 3389 0x0a, 0x09, 0x41, 0x55, 0x58, 0x49, 0x4c, 0x49, 0x41, 0x52, 0x59, 0x10, 0x02, 0x12, 0x12, 0x0a, 3390 0x0e, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x49, 0x5a, 0x45, 0x52, 0x10, 3391 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x4e, 0x44, 0x49, 0x4e, 3392 0x47, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x47, 0x45, 0x52, 0x55, 0x4e, 0x44, 0x10, 0x05, 0x12, 3393 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x41, 0x4c, 0x49, 0x53, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x49, 3394 0x52, 0x52, 0x45, 0x41, 0x4c, 0x49, 0x53, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x48, 0x4f, 3395 0x52, 0x54, 0x10, 0x08, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x09, 3396 0x0a, 0x05, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x0a, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x50, 0x45, 3397 0x43, 0x49, 0x46, 0x49, 0x43, 0x10, 0x0b, 0x22, 0x45, 0x0a, 0x06, 0x47, 0x65, 0x6e, 0x64, 0x65, 3398 0x72, 0x12, 0x12, 0x0a, 0x0e, 0x47, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 3399 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x45, 0x4d, 0x49, 0x4e, 0x49, 0x4e, 3400 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x41, 0x53, 0x43, 0x55, 0x4c, 0x49, 0x4e, 0x45, 3401 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x45, 0x55, 0x54, 0x45, 0x52, 0x10, 0x03, 0x22, 0x7f, 3402 0x0a, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x4f, 0x44, 0x5f, 0x55, 3403 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x44, 3404 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x4d, 0x4f, 0x4f, 0x44, 0x10, 0x01, 0x12, 0x0e, 3405 0x0a, 0x0a, 0x49, 0x4d, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0e, 3406 0x0a, 0x0a, 0x49, 0x4e, 0x44, 0x49, 0x43, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x03, 0x12, 0x11, 3407 0x0a, 0x0d, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x52, 0x4f, 0x47, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 3408 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x4a, 0x55, 0x53, 0x53, 0x49, 0x56, 0x45, 0x10, 0x05, 0x12, 0x0f, 3409 0x0a, 0x0b, 0x53, 0x55, 0x42, 0x4a, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x06, 0x22, 3410 0x40, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x55, 0x4d, 3411 0x42, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 3412 0x08, 0x53, 0x49, 0x4e, 0x47, 0x55, 0x4c, 0x41, 0x52, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x50, 3413 0x4c, 0x55, 0x52, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x55, 0x41, 0x4c, 0x10, 3414 0x03, 0x22, 0x54, 0x0a, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x0e, 0x50, 3415 0x45, 0x52, 0x53, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 3416 0x09, 0x0a, 0x05, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x45, 3417 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x48, 0x49, 0x52, 0x44, 0x10, 3418 0x03, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x46, 0x4c, 0x45, 0x58, 0x49, 0x56, 0x45, 0x5f, 0x50, 3419 0x45, 0x52, 0x53, 0x4f, 0x4e, 0x10, 0x04, 0x22, 0x38, 0x0a, 0x06, 0x50, 0x72, 0x6f, 0x70, 0x65, 3420 0x72, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 3421 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x10, 3422 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x10, 3423 0x02, 0x22, 0x4a, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x69, 0x70, 0x72, 0x6f, 0x63, 0x69, 0x74, 0x79, 3424 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, 0x43, 0x49, 0x50, 0x52, 0x4f, 0x43, 0x49, 0x54, 0x59, 0x5f, 3425 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x43, 3426 0x49, 0x50, 0x52, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x4f, 0x4e, 3427 0x5f, 0x52, 0x45, 0x43, 0x49, 0x50, 0x52, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x02, 0x22, 0x73, 0x0a, 3428 0x05, 0x54, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x4e, 0x53, 0x45, 0x5f, 3429 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4e, 3430 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x54, 0x45, 0x4e, 0x53, 0x45, 0x10, 0x01, 3431 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x55, 0x54, 0x55, 0x52, 0x45, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 3432 0x50, 0x41, 0x53, 0x54, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 3433 0x54, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x4d, 0x50, 0x45, 0x52, 0x46, 0x45, 0x43, 0x54, 3434 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x4c, 0x55, 0x50, 0x45, 0x52, 0x46, 0x45, 0x43, 0x54, 3435 0x10, 0x06, 0x22, 0x42, 0x0a, 0x05, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x56, 3436 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 3437 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 3438 0x55, 0x53, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x41, 0x53, 3439 0x53, 0x49, 0x56, 0x45, 0x10, 0x03, 0x22, 0xac, 0x08, 0x0a, 0x0e, 0x44, 0x65, 0x70, 0x65, 0x6e, 3440 0x64, 0x65, 0x6e, 0x63, 0x79, 0x45, 0x64, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x68, 0x65, 0x61, 3441 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 3442 0x01, 0x28, 0x05, 0x52, 0x0e, 0x68, 0x65, 0x61, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 3443 0x64, 0x65, 0x78, 0x12, 0x44, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 3444 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3445 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 3446 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x45, 0x64, 0x67, 0x65, 0x2e, 0x4c, 0x61, 0x62, 3447 0x65, 0x6c, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0xa9, 0x07, 0x0a, 0x05, 0x4c, 0x61, 3448 0x62, 0x65, 0x6c, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 3449 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x42, 0x42, 0x52, 0x45, 0x56, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 3450 0x41, 0x43, 0x4f, 0x4d, 0x50, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x44, 0x56, 0x43, 0x4c, 3451 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x44, 0x56, 0x4d, 0x4f, 0x44, 0x10, 0x04, 0x12, 0x08, 3452 0x0a, 0x04, 0x41, 0x4d, 0x4f, 0x44, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x50, 0x50, 0x4f, 3453 0x53, 0x10, 0x06, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x54, 0x54, 0x52, 0x10, 0x07, 0x12, 0x07, 0x0a, 3454 0x03, 0x41, 0x55, 0x58, 0x10, 0x08, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x55, 0x58, 0x50, 0x41, 0x53, 3455 0x53, 0x10, 0x09, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x43, 0x10, 0x0a, 0x12, 0x09, 0x0a, 0x05, 0x43, 3456 0x43, 0x4f, 0x4d, 0x50, 0x10, 0x0b, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x4e, 0x4a, 0x10, 0x0c, 3457 0x12, 0x09, 0x0a, 0x05, 0x43, 0x53, 0x55, 0x42, 0x4a, 0x10, 0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x43, 3458 0x53, 0x55, 0x42, 0x4a, 0x50, 0x41, 0x53, 0x53, 0x10, 0x0e, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x45, 3459 0x50, 0x10, 0x0f, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x45, 0x54, 0x10, 0x10, 0x12, 0x0d, 0x0a, 0x09, 3460 0x44, 0x49, 0x53, 0x43, 0x4f, 0x55, 0x52, 0x53, 0x45, 0x10, 0x11, 0x12, 0x08, 0x0a, 0x04, 0x44, 3461 0x4f, 0x42, 0x4a, 0x10, 0x12, 0x12, 0x08, 0x0a, 0x04, 0x45, 0x58, 0x50, 0x4c, 0x10, 0x13, 0x12, 3462 0x0c, 0x0a, 0x08, 0x47, 0x4f, 0x45, 0x53, 0x57, 0x49, 0x54, 0x48, 0x10, 0x14, 0x12, 0x08, 0x0a, 3463 0x04, 0x49, 0x4f, 0x42, 0x4a, 0x10, 0x15, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x41, 0x52, 0x4b, 0x10, 3464 0x16, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x57, 0x45, 0x10, 0x17, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x57, 3465 0x56, 0x10, 0x18, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x45, 0x47, 0x10, 0x19, 0x12, 0x06, 0x0a, 0x02, 3466 0x4e, 0x4e, 0x10, 0x1a, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x50, 0x41, 0x44, 0x56, 0x4d, 0x4f, 0x44, 3467 0x10, 0x1b, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x53, 0x55, 0x42, 0x4a, 0x10, 0x1c, 0x12, 0x0d, 0x0a, 3468 0x09, 0x4e, 0x53, 0x55, 0x42, 0x4a, 0x50, 0x41, 0x53, 0x53, 0x10, 0x1d, 0x12, 0x07, 0x0a, 0x03, 3469 0x4e, 0x55, 0x4d, 0x10, 0x1e, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x10, 3470 0x1f, 0x12, 0x05, 0x0a, 0x01, 0x50, 0x10, 0x20, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x41, 0x52, 0x41, 3471 0x54, 0x41, 0x58, 0x49, 0x53, 0x10, 0x21, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x41, 0x52, 0x54, 0x4d, 3472 0x4f, 0x44, 0x10, 0x22, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x43, 0x4f, 0x4d, 0x50, 0x10, 0x23, 0x12, 3473 0x08, 0x0a, 0x04, 0x50, 0x4f, 0x42, 0x4a, 0x10, 0x24, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x4f, 0x53, 3474 0x53, 0x10, 0x25, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x4f, 0x53, 0x54, 0x4e, 0x45, 0x47, 0x10, 0x26, 3475 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52, 0x45, 0x43, 0x4f, 0x4d, 0x50, 0x10, 0x27, 0x12, 0x0b, 0x0a, 3476 0x07, 0x50, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x4a, 0x10, 0x28, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x52, 3477 0x45, 0x44, 0x45, 0x54, 0x10, 0x29, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x52, 0x45, 0x46, 0x10, 0x2a, 3478 0x12, 0x08, 0x0a, 0x04, 0x50, 0x52, 0x45, 0x50, 0x10, 0x2b, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 3479 0x4f, 0x4e, 0x4c, 0x10, 0x2c, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x52, 0x54, 0x10, 0x2d, 0x12, 0x06, 3480 0x0a, 0x02, 0x50, 0x53, 0x10, 0x2e, 0x12, 0x0c, 0x0a, 0x08, 0x51, 0x55, 0x41, 0x4e, 0x54, 0x4d, 3481 0x4f, 0x44, 0x10, 0x2f, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x43, 0x4d, 0x4f, 0x44, 0x10, 0x30, 0x12, 3482 0x0c, 0x0a, 0x08, 0x52, 0x43, 0x4d, 0x4f, 0x44, 0x52, 0x45, 0x4c, 0x10, 0x31, 0x12, 0x09, 0x0a, 3483 0x05, 0x52, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x32, 0x12, 0x07, 0x0a, 0x03, 0x52, 0x45, 0x46, 0x10, 3484 0x33, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x4d, 0x4e, 0x41, 0x4e, 0x54, 0x10, 0x34, 0x12, 0x0e, 3485 0x0a, 0x0a, 0x52, 0x45, 0x50, 0x41, 0x52, 0x41, 0x4e, 0x44, 0x55, 0x4d, 0x10, 0x35, 0x12, 0x08, 3486 0x0a, 0x04, 0x52, 0x4f, 0x4f, 0x54, 0x10, 0x36, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x4e, 0x55, 0x4d, 3487 0x10, 0x37, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x55, 0x46, 0x46, 0x10, 0x38, 0x12, 0x08, 0x0a, 0x04, 3488 0x54, 0x4d, 0x4f, 0x44, 0x10, 0x39, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x50, 0x49, 0x43, 0x10, 3489 0x3a, 0x12, 0x08, 0x0a, 0x04, 0x56, 0x4d, 0x4f, 0x44, 0x10, 0x3b, 0x12, 0x0c, 0x0a, 0x08, 0x56, 3490 0x4f, 0x43, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x3c, 0x12, 0x09, 0x0a, 0x05, 0x58, 0x43, 0x4f, 3491 0x4d, 0x50, 0x10, 0x3d, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x55, 0x46, 0x46, 0x49, 0x58, 0x10, 0x3e, 3492 0x12, 0x09, 0x0a, 0x05, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x3f, 0x12, 0x0c, 0x0a, 0x08, 0x41, 3493 0x44, 0x56, 0x50, 0x48, 0x4d, 0x4f, 0x44, 0x10, 0x40, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x55, 0x58, 3494 0x43, 0x41, 0x55, 0x53, 0x10, 0x41, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x55, 0x58, 0x56, 0x56, 0x10, 3495 0x42, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x54, 0x4d, 0x4f, 0x44, 0x10, 0x43, 0x12, 0x0b, 0x0a, 0x07, 3496 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x10, 0x44, 0x12, 0x06, 0x0a, 0x02, 0x4b, 0x57, 0x10, 3497 0x45, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x46, 0x12, 0x08, 0x0a, 0x04, 0x4e, 3498 0x4f, 0x4d, 0x43, 0x10, 0x47, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x4d, 0x43, 0x53, 0x55, 0x42, 3499 0x4a, 0x10, 0x48, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x4d, 0x43, 0x53, 0x55, 0x42, 0x4a, 0x50, 3500 0x41, 0x53, 0x53, 0x10, 0x49, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x55, 0x4d, 0x43, 0x10, 0x4a, 0x12, 3501 0x07, 0x0a, 0x03, 0x43, 0x4f, 0x50, 0x10, 0x4b, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x49, 0x53, 0x4c, 3502 0x4f, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0x4c, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x53, 0x50, 0x10, 3503 0x4d, 0x12, 0x08, 0x0a, 0x04, 0x47, 0x4d, 0x4f, 0x44, 0x10, 0x4e, 0x12, 0x08, 0x0a, 0x04, 0x47, 3504 0x4f, 0x42, 0x4a, 0x10, 0x4f, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4e, 0x46, 0x4d, 0x4f, 0x44, 0x10, 3505 0x50, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x45, 0x53, 0x10, 0x51, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x43, 3506 0x4f, 0x4d, 0x50, 0x10, 0x52, 0x22, 0xfe, 0x01, 0x0a, 0x0d, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 3507 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 3508 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3509 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3510 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x70, 0x61, 0x6e, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 3511 0x40, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 3512 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 3513 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 3514 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 3515 0x65, 0x12, 0x41, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 3516 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3517 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3518 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x69, 3519 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x30, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 3520 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 3521 0x0a, 0x06, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 3522 0x4d, 0x4d, 0x4f, 0x4e, 0x10, 0x02, 0x22, 0x47, 0x0a, 0x08, 0x54, 0x65, 0x78, 0x74, 0x53, 0x70, 3523 0x61, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 3524 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 3525 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 3526 0x28, 0x05, 0x52, 0x0b, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 3527 0x4c, 0x0a, 0x16, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 3528 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 3529 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 3530 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 3531 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xab, 0x01, 3532 0x0a, 0x17, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 3533 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 3534 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 3535 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3536 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 3537 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x4b, 3538 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 3539 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3540 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3541 0x2e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x65, 3542 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0xcc, 0x01, 0x0a, 0x18, 3543 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3544 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x12, 0x64, 0x6f, 0x63, 0x75, 3545 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 3546 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3547 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3548 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 3549 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 3550 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 3551 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 3552 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 3553 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3554 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x52, 3555 0x09, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x22, 0xb1, 0x01, 0x0a, 0x1d, 0x41, 3556 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6e, 0x74, 3557 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 3558 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 3559 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 3560 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 3561 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3562 0x74, 0x12, 0x4b, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 3563 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3564 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 3565 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 3566 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0x7a, 3567 0x0a, 0x1e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 3568 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 3569 0x12, 0x3c, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 3570 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3571 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 3572 0x74, 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1a, 3573 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 3574 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x41, 3575 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 3576 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3577 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3578 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 3579 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 3580 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x0d, 0x65, 0x6e, 3581 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 3582 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3583 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 3584 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 3585 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0x73, 0x0a, 0x17, 0x41, 0x6e, 0x61, 0x6c, 0x79, 3586 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 3587 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 3588 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3589 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3590 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 3591 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 3592 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0xa8, 0x01, 0x0a, 3593 0x14, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x52, 0x65, 3594 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3595 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3596 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 3597 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 3598 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x0d, 0x65, 0x6e, 3599 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 3600 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3601 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 3602 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 3603 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0xae, 0x01, 0x0a, 0x15, 0x41, 0x6e, 0x61, 0x6c, 3604 0x79, 0x7a, 0x65, 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 3605 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 3606 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3607 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3608 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 3609 0x63, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x02, 0x20, 3610 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3611 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 3612 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 3613 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 3614 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0x5a, 0x0a, 0x13, 0x43, 0x6c, 0x61, 0x73, 3615 0x73, 0x69, 0x66, 0x79, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 3616 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 3617 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3618 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 3619 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 3620 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x68, 0x0a, 0x14, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x79, 3621 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0a, 3622 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 3623 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3624 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, 3625 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 3626 0x72, 0x79, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x22, 0xfc, 3627 0x03, 0x0a, 0x13, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 3628 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 3629 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3630 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 3631 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 3632 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x08, 0x66, 3633 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 3634 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 3635 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 3636 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x65, 0x61, 3637 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 3638 0x75, 0x72, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 3639 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x67, 0x6f, 3640 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3641 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 3642 0x79, 0x70, 0x65, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 3643 0x65, 0x1a, 0xf9, 0x01, 0x0a, 0x08, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x25, 3644 0x0a, 0x0e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 3645 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 3646 0x79, 0x6e, 0x74, 0x61, 0x78, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 3647 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 3648 0x0f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 3649 0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x64, 0x6f, 0x63, 0x75, 3650 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 3651 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x44, 0x6f, 0x63, 3652 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x38, 3653 0x0a, 0x18, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 3654 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 3655 0x52, 0x16, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 3656 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x61, 0x73, 3657 0x73, 0x69, 0x66, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 3658 0x0c, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x79, 0x54, 0x65, 0x78, 0x74, 0x22, 0x91, 0x03, 3659 0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 3660 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 3661 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3662 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 3663 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x09, 0x73, 3664 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 3665 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3666 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 3667 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 3668 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 3669 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3670 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 3671 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 3672 0x52, 0x0a, 0x12, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 3673 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 3674 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 3675 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3676 0x52, 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 3677 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 3678 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 3679 0x50, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 3680 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3681 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 3682 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 3683 0x65, 0x67, 0x6f, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 3684 0x73, 0x2a, 0x38, 0x0a, 0x0c, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 3685 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x55, 3686 0x54, 0x46, 0x38, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x54, 0x46, 0x31, 0x36, 0x10, 0x02, 3687 0x12, 0x09, 0x0a, 0x05, 0x55, 0x54, 0x46, 0x33, 0x32, 0x10, 0x03, 0x32, 0xb0, 0x0a, 0x0a, 0x0f, 3688 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 3689 0xc8, 0x01, 0x0a, 0x10, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 3690 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3691 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3692 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 3693 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3694 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 3695 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 3696 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4d, 0x82, 0xd3, 0xe4, 3697 0x93, 0x02, 0x23, 0x22, 0x1e, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3698 0x74, 0x73, 0x3a, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 3699 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x16, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3700 0x74, 0x2c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 3701 0x41, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0xc4, 0x01, 0x0a, 0x0f, 0x41, 3702 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x30, 3703 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 3704 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 3705 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3706 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3707 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 3708 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 3709 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x22, 0x1d, 0x2f, 0x76, 0x31, 3710 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x61, 0x6e, 0x61, 0x6c, 0x79, 3711 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x16, 3712 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 3713 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 3714 0x74, 0x12, 0xe0, 0x01, 0x0a, 0x16, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 3715 0x69, 0x74, 0x79, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x2e, 0x67, 3716 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 3717 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 3718 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 3719 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3720 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3721 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 3722 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 3723 0x53, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x22, 0x24, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x6f, 0x63, 3724 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x45, 0x6e, 3725 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 3726 0xda, 0x41, 0x16, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x63, 0x6f, 3727 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x08, 0x64, 0x6f, 0x63, 0x75, 3728 0x6d, 0x65, 0x6e, 0x74, 0x12, 0xbc, 0x01, 0x0a, 0x0d, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 3729 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3730 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3731 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x52, 3732 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3733 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3734 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x52, 3735 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 3736 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x61, 3737 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x53, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x3a, 0x01, 0x2a, 0xda, 3738 0x41, 0x16, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 3739 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 3740 0x65, 0x6e, 0x74, 0x12, 0x9f, 0x01, 0x0a, 0x0c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x79, 3741 0x54, 0x65, 0x78, 0x74, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3742 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 3743 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x79, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 3744 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3745 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 3746 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x79, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 3747 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 0x76, 0x31, 3748 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x63, 0x6c, 0x61, 0x73, 0x73, 3749 0x69, 0x66, 0x79, 0x54, 0x65, 0x78, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x08, 0x64, 0x6f, 0x63, 3750 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0xca, 0x01, 0x0a, 0x0c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 3751 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3752 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 3753 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 3754 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3755 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 3756 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x73, 3757 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 3758 0x76, 0x31, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 3759 0x6f, 0x74, 0x61, 0x74, 0x65, 0x54, 0x65, 0x78, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x1f, 0x64, 3760 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 3761 0x2c, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 3762 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 3763 0x65, 0x73, 0x1a, 0x7a, 0xca, 0x41, 0x17, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 3764 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 3765 0x5d, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 3766 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 3767 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2c, 3768 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3769 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 3770 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x78, 3771 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3772 0x75, 0x64, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x14, 3773 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 3774 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 3775 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 3776 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 3777 0x6f, 0x75, 0x64, 0x2f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x3b, 3778 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 3779} 3780 3781var ( 3782 file_google_cloud_language_v1_language_service_proto_rawDescOnce sync.Once 3783 file_google_cloud_language_v1_language_service_proto_rawDescData = file_google_cloud_language_v1_language_service_proto_rawDesc 3784) 3785 3786func file_google_cloud_language_v1_language_service_proto_rawDescGZIP() []byte { 3787 file_google_cloud_language_v1_language_service_proto_rawDescOnce.Do(func() { 3788 file_google_cloud_language_v1_language_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_language_v1_language_service_proto_rawDescData) 3789 }) 3790 return file_google_cloud_language_v1_language_service_proto_rawDescData 3791} 3792 3793var file_google_cloud_language_v1_language_service_proto_enumTypes = make([]protoimpl.EnumInfo, 17) 3794var file_google_cloud_language_v1_language_service_proto_msgTypes = make([]protoimpl.MessageInfo, 24) 3795var file_google_cloud_language_v1_language_service_proto_goTypes = []interface{}{ 3796 (EncodingType)(0), // 0: google.cloud.language.v1.EncodingType 3797 (Document_Type)(0), // 1: google.cloud.language.v1.Document.Type 3798 (Entity_Type)(0), // 2: google.cloud.language.v1.Entity.Type 3799 (PartOfSpeech_Tag)(0), // 3: google.cloud.language.v1.PartOfSpeech.Tag 3800 (PartOfSpeech_Aspect)(0), // 4: google.cloud.language.v1.PartOfSpeech.Aspect 3801 (PartOfSpeech_Case)(0), // 5: google.cloud.language.v1.PartOfSpeech.Case 3802 (PartOfSpeech_Form)(0), // 6: google.cloud.language.v1.PartOfSpeech.Form 3803 (PartOfSpeech_Gender)(0), // 7: google.cloud.language.v1.PartOfSpeech.Gender 3804 (PartOfSpeech_Mood)(0), // 8: google.cloud.language.v1.PartOfSpeech.Mood 3805 (PartOfSpeech_Number)(0), // 9: google.cloud.language.v1.PartOfSpeech.Number 3806 (PartOfSpeech_Person)(0), // 10: google.cloud.language.v1.PartOfSpeech.Person 3807 (PartOfSpeech_Proper)(0), // 11: google.cloud.language.v1.PartOfSpeech.Proper 3808 (PartOfSpeech_Reciprocity)(0), // 12: google.cloud.language.v1.PartOfSpeech.Reciprocity 3809 (PartOfSpeech_Tense)(0), // 13: google.cloud.language.v1.PartOfSpeech.Tense 3810 (PartOfSpeech_Voice)(0), // 14: google.cloud.language.v1.PartOfSpeech.Voice 3811 (DependencyEdge_Label)(0), // 15: google.cloud.language.v1.DependencyEdge.Label 3812 (EntityMention_Type)(0), // 16: google.cloud.language.v1.EntityMention.Type 3813 (*Document)(nil), // 17: google.cloud.language.v1.Document 3814 (*Sentence)(nil), // 18: google.cloud.language.v1.Sentence 3815 (*Entity)(nil), // 19: google.cloud.language.v1.Entity 3816 (*Token)(nil), // 20: google.cloud.language.v1.Token 3817 (*Sentiment)(nil), // 21: google.cloud.language.v1.Sentiment 3818 (*PartOfSpeech)(nil), // 22: google.cloud.language.v1.PartOfSpeech 3819 (*DependencyEdge)(nil), // 23: google.cloud.language.v1.DependencyEdge 3820 (*EntityMention)(nil), // 24: google.cloud.language.v1.EntityMention 3821 (*TextSpan)(nil), // 25: google.cloud.language.v1.TextSpan 3822 (*ClassificationCategory)(nil), // 26: google.cloud.language.v1.ClassificationCategory 3823 (*AnalyzeSentimentRequest)(nil), // 27: google.cloud.language.v1.AnalyzeSentimentRequest 3824 (*AnalyzeSentimentResponse)(nil), // 28: google.cloud.language.v1.AnalyzeSentimentResponse 3825 (*AnalyzeEntitySentimentRequest)(nil), // 29: google.cloud.language.v1.AnalyzeEntitySentimentRequest 3826 (*AnalyzeEntitySentimentResponse)(nil), // 30: google.cloud.language.v1.AnalyzeEntitySentimentResponse 3827 (*AnalyzeEntitiesRequest)(nil), // 31: google.cloud.language.v1.AnalyzeEntitiesRequest 3828 (*AnalyzeEntitiesResponse)(nil), // 32: google.cloud.language.v1.AnalyzeEntitiesResponse 3829 (*AnalyzeSyntaxRequest)(nil), // 33: google.cloud.language.v1.AnalyzeSyntaxRequest 3830 (*AnalyzeSyntaxResponse)(nil), // 34: google.cloud.language.v1.AnalyzeSyntaxResponse 3831 (*ClassifyTextRequest)(nil), // 35: google.cloud.language.v1.ClassifyTextRequest 3832 (*ClassifyTextResponse)(nil), // 36: google.cloud.language.v1.ClassifyTextResponse 3833 (*AnnotateTextRequest)(nil), // 37: google.cloud.language.v1.AnnotateTextRequest 3834 (*AnnotateTextResponse)(nil), // 38: google.cloud.language.v1.AnnotateTextResponse 3835 nil, // 39: google.cloud.language.v1.Entity.MetadataEntry 3836 (*AnnotateTextRequest_Features)(nil), // 40: google.cloud.language.v1.AnnotateTextRequest.Features 3837} 3838var file_google_cloud_language_v1_language_service_proto_depIdxs = []int32{ 3839 1, // 0: google.cloud.language.v1.Document.type:type_name -> google.cloud.language.v1.Document.Type 3840 25, // 1: google.cloud.language.v1.Sentence.text:type_name -> google.cloud.language.v1.TextSpan 3841 21, // 2: google.cloud.language.v1.Sentence.sentiment:type_name -> google.cloud.language.v1.Sentiment 3842 2, // 3: google.cloud.language.v1.Entity.type:type_name -> google.cloud.language.v1.Entity.Type 3843 39, // 4: google.cloud.language.v1.Entity.metadata:type_name -> google.cloud.language.v1.Entity.MetadataEntry 3844 24, // 5: google.cloud.language.v1.Entity.mentions:type_name -> google.cloud.language.v1.EntityMention 3845 21, // 6: google.cloud.language.v1.Entity.sentiment:type_name -> google.cloud.language.v1.Sentiment 3846 25, // 7: google.cloud.language.v1.Token.text:type_name -> google.cloud.language.v1.TextSpan 3847 22, // 8: google.cloud.language.v1.Token.part_of_speech:type_name -> google.cloud.language.v1.PartOfSpeech 3848 23, // 9: google.cloud.language.v1.Token.dependency_edge:type_name -> google.cloud.language.v1.DependencyEdge 3849 3, // 10: google.cloud.language.v1.PartOfSpeech.tag:type_name -> google.cloud.language.v1.PartOfSpeech.Tag 3850 4, // 11: google.cloud.language.v1.PartOfSpeech.aspect:type_name -> google.cloud.language.v1.PartOfSpeech.Aspect 3851 5, // 12: google.cloud.language.v1.PartOfSpeech.case:type_name -> google.cloud.language.v1.PartOfSpeech.Case 3852 6, // 13: google.cloud.language.v1.PartOfSpeech.form:type_name -> google.cloud.language.v1.PartOfSpeech.Form 3853 7, // 14: google.cloud.language.v1.PartOfSpeech.gender:type_name -> google.cloud.language.v1.PartOfSpeech.Gender 3854 8, // 15: google.cloud.language.v1.PartOfSpeech.mood:type_name -> google.cloud.language.v1.PartOfSpeech.Mood 3855 9, // 16: google.cloud.language.v1.PartOfSpeech.number:type_name -> google.cloud.language.v1.PartOfSpeech.Number 3856 10, // 17: google.cloud.language.v1.PartOfSpeech.person:type_name -> google.cloud.language.v1.PartOfSpeech.Person 3857 11, // 18: google.cloud.language.v1.PartOfSpeech.proper:type_name -> google.cloud.language.v1.PartOfSpeech.Proper 3858 12, // 19: google.cloud.language.v1.PartOfSpeech.reciprocity:type_name -> google.cloud.language.v1.PartOfSpeech.Reciprocity 3859 13, // 20: google.cloud.language.v1.PartOfSpeech.tense:type_name -> google.cloud.language.v1.PartOfSpeech.Tense 3860 14, // 21: google.cloud.language.v1.PartOfSpeech.voice:type_name -> google.cloud.language.v1.PartOfSpeech.Voice 3861 15, // 22: google.cloud.language.v1.DependencyEdge.label:type_name -> google.cloud.language.v1.DependencyEdge.Label 3862 25, // 23: google.cloud.language.v1.EntityMention.text:type_name -> google.cloud.language.v1.TextSpan 3863 16, // 24: google.cloud.language.v1.EntityMention.type:type_name -> google.cloud.language.v1.EntityMention.Type 3864 21, // 25: google.cloud.language.v1.EntityMention.sentiment:type_name -> google.cloud.language.v1.Sentiment 3865 17, // 26: google.cloud.language.v1.AnalyzeSentimentRequest.document:type_name -> google.cloud.language.v1.Document 3866 0, // 27: google.cloud.language.v1.AnalyzeSentimentRequest.encoding_type:type_name -> google.cloud.language.v1.EncodingType 3867 21, // 28: google.cloud.language.v1.AnalyzeSentimentResponse.document_sentiment:type_name -> google.cloud.language.v1.Sentiment 3868 18, // 29: google.cloud.language.v1.AnalyzeSentimentResponse.sentences:type_name -> google.cloud.language.v1.Sentence 3869 17, // 30: google.cloud.language.v1.AnalyzeEntitySentimentRequest.document:type_name -> google.cloud.language.v1.Document 3870 0, // 31: google.cloud.language.v1.AnalyzeEntitySentimentRequest.encoding_type:type_name -> google.cloud.language.v1.EncodingType 3871 19, // 32: google.cloud.language.v1.AnalyzeEntitySentimentResponse.entities:type_name -> google.cloud.language.v1.Entity 3872 17, // 33: google.cloud.language.v1.AnalyzeEntitiesRequest.document:type_name -> google.cloud.language.v1.Document 3873 0, // 34: google.cloud.language.v1.AnalyzeEntitiesRequest.encoding_type:type_name -> google.cloud.language.v1.EncodingType 3874 19, // 35: google.cloud.language.v1.AnalyzeEntitiesResponse.entities:type_name -> google.cloud.language.v1.Entity 3875 17, // 36: google.cloud.language.v1.AnalyzeSyntaxRequest.document:type_name -> google.cloud.language.v1.Document 3876 0, // 37: google.cloud.language.v1.AnalyzeSyntaxRequest.encoding_type:type_name -> google.cloud.language.v1.EncodingType 3877 18, // 38: google.cloud.language.v1.AnalyzeSyntaxResponse.sentences:type_name -> google.cloud.language.v1.Sentence 3878 20, // 39: google.cloud.language.v1.AnalyzeSyntaxResponse.tokens:type_name -> google.cloud.language.v1.Token 3879 17, // 40: google.cloud.language.v1.ClassifyTextRequest.document:type_name -> google.cloud.language.v1.Document 3880 26, // 41: google.cloud.language.v1.ClassifyTextResponse.categories:type_name -> google.cloud.language.v1.ClassificationCategory 3881 17, // 42: google.cloud.language.v1.AnnotateTextRequest.document:type_name -> google.cloud.language.v1.Document 3882 40, // 43: google.cloud.language.v1.AnnotateTextRequest.features:type_name -> google.cloud.language.v1.AnnotateTextRequest.Features 3883 0, // 44: google.cloud.language.v1.AnnotateTextRequest.encoding_type:type_name -> google.cloud.language.v1.EncodingType 3884 18, // 45: google.cloud.language.v1.AnnotateTextResponse.sentences:type_name -> google.cloud.language.v1.Sentence 3885 20, // 46: google.cloud.language.v1.AnnotateTextResponse.tokens:type_name -> google.cloud.language.v1.Token 3886 19, // 47: google.cloud.language.v1.AnnotateTextResponse.entities:type_name -> google.cloud.language.v1.Entity 3887 21, // 48: google.cloud.language.v1.AnnotateTextResponse.document_sentiment:type_name -> google.cloud.language.v1.Sentiment 3888 26, // 49: google.cloud.language.v1.AnnotateTextResponse.categories:type_name -> google.cloud.language.v1.ClassificationCategory 3889 27, // 50: google.cloud.language.v1.LanguageService.AnalyzeSentiment:input_type -> google.cloud.language.v1.AnalyzeSentimentRequest 3890 31, // 51: google.cloud.language.v1.LanguageService.AnalyzeEntities:input_type -> google.cloud.language.v1.AnalyzeEntitiesRequest 3891 29, // 52: google.cloud.language.v1.LanguageService.AnalyzeEntitySentiment:input_type -> google.cloud.language.v1.AnalyzeEntitySentimentRequest 3892 33, // 53: google.cloud.language.v1.LanguageService.AnalyzeSyntax:input_type -> google.cloud.language.v1.AnalyzeSyntaxRequest 3893 35, // 54: google.cloud.language.v1.LanguageService.ClassifyText:input_type -> google.cloud.language.v1.ClassifyTextRequest 3894 37, // 55: google.cloud.language.v1.LanguageService.AnnotateText:input_type -> google.cloud.language.v1.AnnotateTextRequest 3895 28, // 56: google.cloud.language.v1.LanguageService.AnalyzeSentiment:output_type -> google.cloud.language.v1.AnalyzeSentimentResponse 3896 32, // 57: google.cloud.language.v1.LanguageService.AnalyzeEntities:output_type -> google.cloud.language.v1.AnalyzeEntitiesResponse 3897 30, // 58: google.cloud.language.v1.LanguageService.AnalyzeEntitySentiment:output_type -> google.cloud.language.v1.AnalyzeEntitySentimentResponse 3898 34, // 59: google.cloud.language.v1.LanguageService.AnalyzeSyntax:output_type -> google.cloud.language.v1.AnalyzeSyntaxResponse 3899 36, // 60: google.cloud.language.v1.LanguageService.ClassifyText:output_type -> google.cloud.language.v1.ClassifyTextResponse 3900 38, // 61: google.cloud.language.v1.LanguageService.AnnotateText:output_type -> google.cloud.language.v1.AnnotateTextResponse 3901 56, // [56:62] is the sub-list for method output_type 3902 50, // [50:56] is the sub-list for method input_type 3903 50, // [50:50] is the sub-list for extension type_name 3904 50, // [50:50] is the sub-list for extension extendee 3905 0, // [0:50] is the sub-list for field type_name 3906} 3907 3908func init() { file_google_cloud_language_v1_language_service_proto_init() } 3909func file_google_cloud_language_v1_language_service_proto_init() { 3910 if File_google_cloud_language_v1_language_service_proto != nil { 3911 return 3912 } 3913 if !protoimpl.UnsafeEnabled { 3914 file_google_cloud_language_v1_language_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 3915 switch v := v.(*Document); i { 3916 case 0: 3917 return &v.state 3918 case 1: 3919 return &v.sizeCache 3920 case 2: 3921 return &v.unknownFields 3922 default: 3923 return nil 3924 } 3925 } 3926 file_google_cloud_language_v1_language_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 3927 switch v := v.(*Sentence); i { 3928 case 0: 3929 return &v.state 3930 case 1: 3931 return &v.sizeCache 3932 case 2: 3933 return &v.unknownFields 3934 default: 3935 return nil 3936 } 3937 } 3938 file_google_cloud_language_v1_language_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 3939 switch v := v.(*Entity); i { 3940 case 0: 3941 return &v.state 3942 case 1: 3943 return &v.sizeCache 3944 case 2: 3945 return &v.unknownFields 3946 default: 3947 return nil 3948 } 3949 } 3950 file_google_cloud_language_v1_language_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 3951 switch v := v.(*Token); i { 3952 case 0: 3953 return &v.state 3954 case 1: 3955 return &v.sizeCache 3956 case 2: 3957 return &v.unknownFields 3958 default: 3959 return nil 3960 } 3961 } 3962 file_google_cloud_language_v1_language_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 3963 switch v := v.(*Sentiment); i { 3964 case 0: 3965 return &v.state 3966 case 1: 3967 return &v.sizeCache 3968 case 2: 3969 return &v.unknownFields 3970 default: 3971 return nil 3972 } 3973 } 3974 file_google_cloud_language_v1_language_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 3975 switch v := v.(*PartOfSpeech); i { 3976 case 0: 3977 return &v.state 3978 case 1: 3979 return &v.sizeCache 3980 case 2: 3981 return &v.unknownFields 3982 default: 3983 return nil 3984 } 3985 } 3986 file_google_cloud_language_v1_language_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 3987 switch v := v.(*DependencyEdge); i { 3988 case 0: 3989 return &v.state 3990 case 1: 3991 return &v.sizeCache 3992 case 2: 3993 return &v.unknownFields 3994 default: 3995 return nil 3996 } 3997 } 3998 file_google_cloud_language_v1_language_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 3999 switch v := v.(*EntityMention); i { 4000 case 0: 4001 return &v.state 4002 case 1: 4003 return &v.sizeCache 4004 case 2: 4005 return &v.unknownFields 4006 default: 4007 return nil 4008 } 4009 } 4010 file_google_cloud_language_v1_language_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 4011 switch v := v.(*TextSpan); i { 4012 case 0: 4013 return &v.state 4014 case 1: 4015 return &v.sizeCache 4016 case 2: 4017 return &v.unknownFields 4018 default: 4019 return nil 4020 } 4021 } 4022 file_google_cloud_language_v1_language_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 4023 switch v := v.(*ClassificationCategory); i { 4024 case 0: 4025 return &v.state 4026 case 1: 4027 return &v.sizeCache 4028 case 2: 4029 return &v.unknownFields 4030 default: 4031 return nil 4032 } 4033 } 4034 file_google_cloud_language_v1_language_service_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 4035 switch v := v.(*AnalyzeSentimentRequest); i { 4036 case 0: 4037 return &v.state 4038 case 1: 4039 return &v.sizeCache 4040 case 2: 4041 return &v.unknownFields 4042 default: 4043 return nil 4044 } 4045 } 4046 file_google_cloud_language_v1_language_service_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 4047 switch v := v.(*AnalyzeSentimentResponse); i { 4048 case 0: 4049 return &v.state 4050 case 1: 4051 return &v.sizeCache 4052 case 2: 4053 return &v.unknownFields 4054 default: 4055 return nil 4056 } 4057 } 4058 file_google_cloud_language_v1_language_service_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 4059 switch v := v.(*AnalyzeEntitySentimentRequest); i { 4060 case 0: 4061 return &v.state 4062 case 1: 4063 return &v.sizeCache 4064 case 2: 4065 return &v.unknownFields 4066 default: 4067 return nil 4068 } 4069 } 4070 file_google_cloud_language_v1_language_service_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 4071 switch v := v.(*AnalyzeEntitySentimentResponse); i { 4072 case 0: 4073 return &v.state 4074 case 1: 4075 return &v.sizeCache 4076 case 2: 4077 return &v.unknownFields 4078 default: 4079 return nil 4080 } 4081 } 4082 file_google_cloud_language_v1_language_service_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 4083 switch v := v.(*AnalyzeEntitiesRequest); i { 4084 case 0: 4085 return &v.state 4086 case 1: 4087 return &v.sizeCache 4088 case 2: 4089 return &v.unknownFields 4090 default: 4091 return nil 4092 } 4093 } 4094 file_google_cloud_language_v1_language_service_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 4095 switch v := v.(*AnalyzeEntitiesResponse); i { 4096 case 0: 4097 return &v.state 4098 case 1: 4099 return &v.sizeCache 4100 case 2: 4101 return &v.unknownFields 4102 default: 4103 return nil 4104 } 4105 } 4106 file_google_cloud_language_v1_language_service_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 4107 switch v := v.(*AnalyzeSyntaxRequest); i { 4108 case 0: 4109 return &v.state 4110 case 1: 4111 return &v.sizeCache 4112 case 2: 4113 return &v.unknownFields 4114 default: 4115 return nil 4116 } 4117 } 4118 file_google_cloud_language_v1_language_service_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 4119 switch v := v.(*AnalyzeSyntaxResponse); i { 4120 case 0: 4121 return &v.state 4122 case 1: 4123 return &v.sizeCache 4124 case 2: 4125 return &v.unknownFields 4126 default: 4127 return nil 4128 } 4129 } 4130 file_google_cloud_language_v1_language_service_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 4131 switch v := v.(*ClassifyTextRequest); i { 4132 case 0: 4133 return &v.state 4134 case 1: 4135 return &v.sizeCache 4136 case 2: 4137 return &v.unknownFields 4138 default: 4139 return nil 4140 } 4141 } 4142 file_google_cloud_language_v1_language_service_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 4143 switch v := v.(*ClassifyTextResponse); i { 4144 case 0: 4145 return &v.state 4146 case 1: 4147 return &v.sizeCache 4148 case 2: 4149 return &v.unknownFields 4150 default: 4151 return nil 4152 } 4153 } 4154 file_google_cloud_language_v1_language_service_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 4155 switch v := v.(*AnnotateTextRequest); i { 4156 case 0: 4157 return &v.state 4158 case 1: 4159 return &v.sizeCache 4160 case 2: 4161 return &v.unknownFields 4162 default: 4163 return nil 4164 } 4165 } 4166 file_google_cloud_language_v1_language_service_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 4167 switch v := v.(*AnnotateTextResponse); i { 4168 case 0: 4169 return &v.state 4170 case 1: 4171 return &v.sizeCache 4172 case 2: 4173 return &v.unknownFields 4174 default: 4175 return nil 4176 } 4177 } 4178 file_google_cloud_language_v1_language_service_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 4179 switch v := v.(*AnnotateTextRequest_Features); i { 4180 case 0: 4181 return &v.state 4182 case 1: 4183 return &v.sizeCache 4184 case 2: 4185 return &v.unknownFields 4186 default: 4187 return nil 4188 } 4189 } 4190 } 4191 file_google_cloud_language_v1_language_service_proto_msgTypes[0].OneofWrappers = []interface{}{ 4192 (*Document_Content)(nil), 4193 (*Document_GcsContentUri)(nil), 4194 } 4195 type x struct{} 4196 out := protoimpl.TypeBuilder{ 4197 File: protoimpl.DescBuilder{ 4198 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 4199 RawDescriptor: file_google_cloud_language_v1_language_service_proto_rawDesc, 4200 NumEnums: 17, 4201 NumMessages: 24, 4202 NumExtensions: 0, 4203 NumServices: 1, 4204 }, 4205 GoTypes: file_google_cloud_language_v1_language_service_proto_goTypes, 4206 DependencyIndexes: file_google_cloud_language_v1_language_service_proto_depIdxs, 4207 EnumInfos: file_google_cloud_language_v1_language_service_proto_enumTypes, 4208 MessageInfos: file_google_cloud_language_v1_language_service_proto_msgTypes, 4209 }.Build() 4210 File_google_cloud_language_v1_language_service_proto = out.File 4211 file_google_cloud_language_v1_language_service_proto_rawDesc = nil 4212 file_google_cloud_language_v1_language_service_proto_goTypes = nil 4213 file_google_cloud_language_v1_language_service_proto_depIdxs = nil 4214} 4215 4216// Reference imports to suppress errors if they are not otherwise used. 4217var _ context.Context 4218var _ grpc.ClientConnInterface 4219 4220// This is a compile-time assertion to ensure that this generated file 4221// is compatible with the grpc package it is being compiled against. 4222const _ = grpc.SupportPackageIsVersion6 4223 4224// LanguageServiceClient is the client API for LanguageService service. 4225// 4226// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 4227type LanguageServiceClient interface { 4228 // Analyzes the sentiment of the provided text. 4229 AnalyzeSentiment(ctx context.Context, in *AnalyzeSentimentRequest, opts ...grpc.CallOption) (*AnalyzeSentimentResponse, error) 4230 // Finds named entities (currently proper names and common nouns) in the text 4231 // along with entity types, salience, mentions for each entity, and 4232 // other properties. 4233 AnalyzeEntities(ctx context.Context, in *AnalyzeEntitiesRequest, opts ...grpc.CallOption) (*AnalyzeEntitiesResponse, error) 4234 // Finds entities, similar to [AnalyzeEntities][google.cloud.language.v1.LanguageService.AnalyzeEntities] in the text and analyzes 4235 // sentiment associated with each entity and its mentions. 4236 AnalyzeEntitySentiment(ctx context.Context, in *AnalyzeEntitySentimentRequest, opts ...grpc.CallOption) (*AnalyzeEntitySentimentResponse, error) 4237 // Analyzes the syntax of the text and provides sentence boundaries and 4238 // tokenization along with part of speech tags, dependency trees, and other 4239 // properties. 4240 AnalyzeSyntax(ctx context.Context, in *AnalyzeSyntaxRequest, opts ...grpc.CallOption) (*AnalyzeSyntaxResponse, error) 4241 // Classifies a document into categories. 4242 ClassifyText(ctx context.Context, in *ClassifyTextRequest, opts ...grpc.CallOption) (*ClassifyTextResponse, error) 4243 // A convenience method that provides all the features that analyzeSentiment, 4244 // analyzeEntities, and analyzeSyntax provide in one call. 4245 AnnotateText(ctx context.Context, in *AnnotateTextRequest, opts ...grpc.CallOption) (*AnnotateTextResponse, error) 4246} 4247 4248type languageServiceClient struct { 4249 cc grpc.ClientConnInterface 4250} 4251 4252func NewLanguageServiceClient(cc grpc.ClientConnInterface) LanguageServiceClient { 4253 return &languageServiceClient{cc} 4254} 4255 4256func (c *languageServiceClient) AnalyzeSentiment(ctx context.Context, in *AnalyzeSentimentRequest, opts ...grpc.CallOption) (*AnalyzeSentimentResponse, error) { 4257 out := new(AnalyzeSentimentResponse) 4258 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/AnalyzeSentiment", in, out, opts...) 4259 if err != nil { 4260 return nil, err 4261 } 4262 return out, nil 4263} 4264 4265func (c *languageServiceClient) AnalyzeEntities(ctx context.Context, in *AnalyzeEntitiesRequest, opts ...grpc.CallOption) (*AnalyzeEntitiesResponse, error) { 4266 out := new(AnalyzeEntitiesResponse) 4267 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/AnalyzeEntities", in, out, opts...) 4268 if err != nil { 4269 return nil, err 4270 } 4271 return out, nil 4272} 4273 4274func (c *languageServiceClient) AnalyzeEntitySentiment(ctx context.Context, in *AnalyzeEntitySentimentRequest, opts ...grpc.CallOption) (*AnalyzeEntitySentimentResponse, error) { 4275 out := new(AnalyzeEntitySentimentResponse) 4276 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/AnalyzeEntitySentiment", in, out, opts...) 4277 if err != nil { 4278 return nil, err 4279 } 4280 return out, nil 4281} 4282 4283func (c *languageServiceClient) AnalyzeSyntax(ctx context.Context, in *AnalyzeSyntaxRequest, opts ...grpc.CallOption) (*AnalyzeSyntaxResponse, error) { 4284 out := new(AnalyzeSyntaxResponse) 4285 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/AnalyzeSyntax", in, out, opts...) 4286 if err != nil { 4287 return nil, err 4288 } 4289 return out, nil 4290} 4291 4292func (c *languageServiceClient) ClassifyText(ctx context.Context, in *ClassifyTextRequest, opts ...grpc.CallOption) (*ClassifyTextResponse, error) { 4293 out := new(ClassifyTextResponse) 4294 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/ClassifyText", in, out, opts...) 4295 if err != nil { 4296 return nil, err 4297 } 4298 return out, nil 4299} 4300 4301func (c *languageServiceClient) AnnotateText(ctx context.Context, in *AnnotateTextRequest, opts ...grpc.CallOption) (*AnnotateTextResponse, error) { 4302 out := new(AnnotateTextResponse) 4303 err := c.cc.Invoke(ctx, "/google.cloud.language.v1.LanguageService/AnnotateText", in, out, opts...) 4304 if err != nil { 4305 return nil, err 4306 } 4307 return out, nil 4308} 4309 4310// LanguageServiceServer is the server API for LanguageService service. 4311type LanguageServiceServer interface { 4312 // Analyzes the sentiment of the provided text. 4313 AnalyzeSentiment(context.Context, *AnalyzeSentimentRequest) (*AnalyzeSentimentResponse, error) 4314 // Finds named entities (currently proper names and common nouns) in the text 4315 // along with entity types, salience, mentions for each entity, and 4316 // other properties. 4317 AnalyzeEntities(context.Context, *AnalyzeEntitiesRequest) (*AnalyzeEntitiesResponse, error) 4318 // Finds entities, similar to [AnalyzeEntities][google.cloud.language.v1.LanguageService.AnalyzeEntities] in the text and analyzes 4319 // sentiment associated with each entity and its mentions. 4320 AnalyzeEntitySentiment(context.Context, *AnalyzeEntitySentimentRequest) (*AnalyzeEntitySentimentResponse, error) 4321 // Analyzes the syntax of the text and provides sentence boundaries and 4322 // tokenization along with part of speech tags, dependency trees, and other 4323 // properties. 4324 AnalyzeSyntax(context.Context, *AnalyzeSyntaxRequest) (*AnalyzeSyntaxResponse, error) 4325 // Classifies a document into categories. 4326 ClassifyText(context.Context, *ClassifyTextRequest) (*ClassifyTextResponse, error) 4327 // A convenience method that provides all the features that analyzeSentiment, 4328 // analyzeEntities, and analyzeSyntax provide in one call. 4329 AnnotateText(context.Context, *AnnotateTextRequest) (*AnnotateTextResponse, error) 4330} 4331 4332// UnimplementedLanguageServiceServer can be embedded to have forward compatible implementations. 4333type UnimplementedLanguageServiceServer struct { 4334} 4335 4336func (*UnimplementedLanguageServiceServer) AnalyzeSentiment(context.Context, *AnalyzeSentimentRequest) (*AnalyzeSentimentResponse, error) { 4337 return nil, status.Errorf(codes.Unimplemented, "method AnalyzeSentiment not implemented") 4338} 4339func (*UnimplementedLanguageServiceServer) AnalyzeEntities(context.Context, *AnalyzeEntitiesRequest) (*AnalyzeEntitiesResponse, error) { 4340 return nil, status.Errorf(codes.Unimplemented, "method AnalyzeEntities not implemented") 4341} 4342func (*UnimplementedLanguageServiceServer) AnalyzeEntitySentiment(context.Context, *AnalyzeEntitySentimentRequest) (*AnalyzeEntitySentimentResponse, error) { 4343 return nil, status.Errorf(codes.Unimplemented, "method AnalyzeEntitySentiment not implemented") 4344} 4345func (*UnimplementedLanguageServiceServer) AnalyzeSyntax(context.Context, *AnalyzeSyntaxRequest) (*AnalyzeSyntaxResponse, error) { 4346 return nil, status.Errorf(codes.Unimplemented, "method AnalyzeSyntax not implemented") 4347} 4348func (*UnimplementedLanguageServiceServer) ClassifyText(context.Context, *ClassifyTextRequest) (*ClassifyTextResponse, error) { 4349 return nil, status.Errorf(codes.Unimplemented, "method ClassifyText not implemented") 4350} 4351func (*UnimplementedLanguageServiceServer) AnnotateText(context.Context, *AnnotateTextRequest) (*AnnotateTextResponse, error) { 4352 return nil, status.Errorf(codes.Unimplemented, "method AnnotateText not implemented") 4353} 4354 4355func RegisterLanguageServiceServer(s *grpc.Server, srv LanguageServiceServer) { 4356 s.RegisterService(&_LanguageService_serviceDesc, srv) 4357} 4358 4359func _LanguageService_AnalyzeSentiment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4360 in := new(AnalyzeSentimentRequest) 4361 if err := dec(in); err != nil { 4362 return nil, err 4363 } 4364 if interceptor == nil { 4365 return srv.(LanguageServiceServer).AnalyzeSentiment(ctx, in) 4366 } 4367 info := &grpc.UnaryServerInfo{ 4368 Server: srv, 4369 FullMethod: "/google.cloud.language.v1.LanguageService/AnalyzeSentiment", 4370 } 4371 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4372 return srv.(LanguageServiceServer).AnalyzeSentiment(ctx, req.(*AnalyzeSentimentRequest)) 4373 } 4374 return interceptor(ctx, in, info, handler) 4375} 4376 4377func _LanguageService_AnalyzeEntities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4378 in := new(AnalyzeEntitiesRequest) 4379 if err := dec(in); err != nil { 4380 return nil, err 4381 } 4382 if interceptor == nil { 4383 return srv.(LanguageServiceServer).AnalyzeEntities(ctx, in) 4384 } 4385 info := &grpc.UnaryServerInfo{ 4386 Server: srv, 4387 FullMethod: "/google.cloud.language.v1.LanguageService/AnalyzeEntities", 4388 } 4389 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4390 return srv.(LanguageServiceServer).AnalyzeEntities(ctx, req.(*AnalyzeEntitiesRequest)) 4391 } 4392 return interceptor(ctx, in, info, handler) 4393} 4394 4395func _LanguageService_AnalyzeEntitySentiment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4396 in := new(AnalyzeEntitySentimentRequest) 4397 if err := dec(in); err != nil { 4398 return nil, err 4399 } 4400 if interceptor == nil { 4401 return srv.(LanguageServiceServer).AnalyzeEntitySentiment(ctx, in) 4402 } 4403 info := &grpc.UnaryServerInfo{ 4404 Server: srv, 4405 FullMethod: "/google.cloud.language.v1.LanguageService/AnalyzeEntitySentiment", 4406 } 4407 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4408 return srv.(LanguageServiceServer).AnalyzeEntitySentiment(ctx, req.(*AnalyzeEntitySentimentRequest)) 4409 } 4410 return interceptor(ctx, in, info, handler) 4411} 4412 4413func _LanguageService_AnalyzeSyntax_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4414 in := new(AnalyzeSyntaxRequest) 4415 if err := dec(in); err != nil { 4416 return nil, err 4417 } 4418 if interceptor == nil { 4419 return srv.(LanguageServiceServer).AnalyzeSyntax(ctx, in) 4420 } 4421 info := &grpc.UnaryServerInfo{ 4422 Server: srv, 4423 FullMethod: "/google.cloud.language.v1.LanguageService/AnalyzeSyntax", 4424 } 4425 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4426 return srv.(LanguageServiceServer).AnalyzeSyntax(ctx, req.(*AnalyzeSyntaxRequest)) 4427 } 4428 return interceptor(ctx, in, info, handler) 4429} 4430 4431func _LanguageService_ClassifyText_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4432 in := new(ClassifyTextRequest) 4433 if err := dec(in); err != nil { 4434 return nil, err 4435 } 4436 if interceptor == nil { 4437 return srv.(LanguageServiceServer).ClassifyText(ctx, in) 4438 } 4439 info := &grpc.UnaryServerInfo{ 4440 Server: srv, 4441 FullMethod: "/google.cloud.language.v1.LanguageService/ClassifyText", 4442 } 4443 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4444 return srv.(LanguageServiceServer).ClassifyText(ctx, req.(*ClassifyTextRequest)) 4445 } 4446 return interceptor(ctx, in, info, handler) 4447} 4448 4449func _LanguageService_AnnotateText_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4450 in := new(AnnotateTextRequest) 4451 if err := dec(in); err != nil { 4452 return nil, err 4453 } 4454 if interceptor == nil { 4455 return srv.(LanguageServiceServer).AnnotateText(ctx, in) 4456 } 4457 info := &grpc.UnaryServerInfo{ 4458 Server: srv, 4459 FullMethod: "/google.cloud.language.v1.LanguageService/AnnotateText", 4460 } 4461 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4462 return srv.(LanguageServiceServer).AnnotateText(ctx, req.(*AnnotateTextRequest)) 4463 } 4464 return interceptor(ctx, in, info, handler) 4465} 4466 4467var _LanguageService_serviceDesc = grpc.ServiceDesc{ 4468 ServiceName: "google.cloud.language.v1.LanguageService", 4469 HandlerType: (*LanguageServiceServer)(nil), 4470 Methods: []grpc.MethodDesc{ 4471 { 4472 MethodName: "AnalyzeSentiment", 4473 Handler: _LanguageService_AnalyzeSentiment_Handler, 4474 }, 4475 { 4476 MethodName: "AnalyzeEntities", 4477 Handler: _LanguageService_AnalyzeEntities_Handler, 4478 }, 4479 { 4480 MethodName: "AnalyzeEntitySentiment", 4481 Handler: _LanguageService_AnalyzeEntitySentiment_Handler, 4482 }, 4483 { 4484 MethodName: "AnalyzeSyntax", 4485 Handler: _LanguageService_AnalyzeSyntax_Handler, 4486 }, 4487 { 4488 MethodName: "ClassifyText", 4489 Handler: _LanguageService_ClassifyText_Handler, 4490 }, 4491 { 4492 MethodName: "AnnotateText", 4493 Handler: _LanguageService_AnnotateText_Handler, 4494 }, 4495 }, 4496 Streams: []grpc.StreamDesc{}, 4497 Metadata: "google/cloud/language/v1/language_service.proto", 4498} 4499