1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.25.0-devel 18// protoc v3.13.0 19// source: google/cloud/dialogflow/v2/participant.proto 20 21package dialogflow 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 proto "github.com/golang/protobuf/proto" 29 _ "google.golang.org/genproto/googleapis/api/annotations" 30 status "google.golang.org/genproto/googleapis/rpc/status" 31 grpc "google.golang.org/grpc" 32 codes "google.golang.org/grpc/codes" 33 status1 "google.golang.org/grpc/status" 34 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 35 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 36 _ "google.golang.org/protobuf/types/known/durationpb" 37 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 38 structpb "google.golang.org/protobuf/types/known/structpb" 39 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 40) 41 42const ( 43 // Verify that this generated code is sufficiently up-to-date. 44 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 45 // Verify that runtime/protoimpl is sufficiently up-to-date. 46 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 47) 48 49// This is a compile-time assertion that a sufficiently up-to-date version 50// of the legacy proto package is being used. 51const _ = proto.ProtoPackageIsVersion4 52 53// Enumeration of the roles a participant can play in a conversation. 54type Participant_Role int32 55 56const ( 57 // Participant role not set. 58 Participant_ROLE_UNSPECIFIED Participant_Role = 0 59 // Participant is a human agent. 60 Participant_HUMAN_AGENT Participant_Role = 1 61 // Participant is an automated agent, such as a Dialogflow agent. 62 Participant_AUTOMATED_AGENT Participant_Role = 2 63 // Participant is an end user that has called or chatted with 64 // Dialogflow services. 65 Participant_END_USER Participant_Role = 3 66) 67 68// Enum value maps for Participant_Role. 69var ( 70 Participant_Role_name = map[int32]string{ 71 0: "ROLE_UNSPECIFIED", 72 1: "HUMAN_AGENT", 73 2: "AUTOMATED_AGENT", 74 3: "END_USER", 75 } 76 Participant_Role_value = map[string]int32{ 77 "ROLE_UNSPECIFIED": 0, 78 "HUMAN_AGENT": 1, 79 "AUTOMATED_AGENT": 2, 80 "END_USER": 3, 81 } 82) 83 84func (x Participant_Role) Enum() *Participant_Role { 85 p := new(Participant_Role) 86 *p = x 87 return p 88} 89 90func (x Participant_Role) String() string { 91 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 92} 93 94func (Participant_Role) Descriptor() protoreflect.EnumDescriptor { 95 return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[0].Descriptor() 96} 97 98func (Participant_Role) Type() protoreflect.EnumType { 99 return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[0] 100} 101 102func (x Participant_Role) Number() protoreflect.EnumNumber { 103 return protoreflect.EnumNumber(x) 104} 105 106// Deprecated: Use Participant_Role.Descriptor instead. 107func (Participant_Role) EnumDescriptor() ([]byte, []int) { 108 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{0, 0} 109} 110 111// Represents a conversation participant (human agent, virtual agent, end-user). 112type Participant struct { 113 state protoimpl.MessageState 114 sizeCache protoimpl.SizeCache 115 unknownFields protoimpl.UnknownFields 116 117 // Optional. The unique identifier of this participant. 118 // Format: `projects/<Project ID>/locations/<Location 119 // ID>/conversations/<Conversation ID>/participants/<Participant ID>`. 120 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 121 // Immutable. The role this participant plays in the conversation. This field must be set 122 // during participant creation and is then immutable. 123 Role Participant_Role `protobuf:"varint,2,opt,name=role,proto3,enum=google.cloud.dialogflow.v2.Participant_Role" json:"role,omitempty"` 124 // Optional. Label applied to streams representing this participant in SIPREC 125 // XML metadata and SDP. This is used to assign transcriptions from that 126 // media stream to this participant. This field can be updated. 127 SipRecordingMediaLabel string `protobuf:"bytes,6,opt,name=sip_recording_media_label,json=sipRecordingMediaLabel,proto3" json:"sip_recording_media_label,omitempty"` 128} 129 130func (x *Participant) Reset() { 131 *x = Participant{} 132 if protoimpl.UnsafeEnabled { 133 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[0] 134 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 135 ms.StoreMessageInfo(mi) 136 } 137} 138 139func (x *Participant) String() string { 140 return protoimpl.X.MessageStringOf(x) 141} 142 143func (*Participant) ProtoMessage() {} 144 145func (x *Participant) ProtoReflect() protoreflect.Message { 146 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[0] 147 if protoimpl.UnsafeEnabled && x != nil { 148 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 149 if ms.LoadMessageInfo() == nil { 150 ms.StoreMessageInfo(mi) 151 } 152 return ms 153 } 154 return mi.MessageOf(x) 155} 156 157// Deprecated: Use Participant.ProtoReflect.Descriptor instead. 158func (*Participant) Descriptor() ([]byte, []int) { 159 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{0} 160} 161 162func (x *Participant) GetName() string { 163 if x != nil { 164 return x.Name 165 } 166 return "" 167} 168 169func (x *Participant) GetRole() Participant_Role { 170 if x != nil { 171 return x.Role 172 } 173 return Participant_ROLE_UNSPECIFIED 174} 175 176func (x *Participant) GetSipRecordingMediaLabel() string { 177 if x != nil { 178 return x.SipRecordingMediaLabel 179 } 180 return "" 181} 182 183// Represents a message posted into a conversation. 184type Message struct { 185 state protoimpl.MessageState 186 sizeCache protoimpl.SizeCache 187 unknownFields protoimpl.UnknownFields 188 189 // The unique identifier of the message. 190 // Format: `projects/<Project ID>/locations/<Location 191 // ID>/conversations/<Conversation ID>/messages/<Message ID>`. 192 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 193 // Required. The message content. 194 Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"` 195 // Optional. The message language. 196 // This should be a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) 197 // language tag. Example: "en-US". 198 LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 199 // Output only. The participant that sends this message. 200 Participant string `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` 201 // Output only. The role of the participant. 202 ParticipantRole Participant_Role `protobuf:"varint,5,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2.Participant_Role" json:"participant_role,omitempty"` 203 // Output only. The time when the message was created. 204 CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 205 // Output only. The annotation for the message. 206 MessageAnnotation *MessageAnnotation `protobuf:"bytes,7,opt,name=message_annotation,json=messageAnnotation,proto3" json:"message_annotation,omitempty"` 207} 208 209func (x *Message) Reset() { 210 *x = Message{} 211 if protoimpl.UnsafeEnabled { 212 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[1] 213 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 214 ms.StoreMessageInfo(mi) 215 } 216} 217 218func (x *Message) String() string { 219 return protoimpl.X.MessageStringOf(x) 220} 221 222func (*Message) ProtoMessage() {} 223 224func (x *Message) ProtoReflect() protoreflect.Message { 225 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[1] 226 if protoimpl.UnsafeEnabled && x != nil { 227 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 228 if ms.LoadMessageInfo() == nil { 229 ms.StoreMessageInfo(mi) 230 } 231 return ms 232 } 233 return mi.MessageOf(x) 234} 235 236// Deprecated: Use Message.ProtoReflect.Descriptor instead. 237func (*Message) Descriptor() ([]byte, []int) { 238 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{1} 239} 240 241func (x *Message) GetName() string { 242 if x != nil { 243 return x.Name 244 } 245 return "" 246} 247 248func (x *Message) GetContent() string { 249 if x != nil { 250 return x.Content 251 } 252 return "" 253} 254 255func (x *Message) GetLanguageCode() string { 256 if x != nil { 257 return x.LanguageCode 258 } 259 return "" 260} 261 262func (x *Message) GetParticipant() string { 263 if x != nil { 264 return x.Participant 265 } 266 return "" 267} 268 269func (x *Message) GetParticipantRole() Participant_Role { 270 if x != nil { 271 return x.ParticipantRole 272 } 273 return Participant_ROLE_UNSPECIFIED 274} 275 276func (x *Message) GetCreateTime() *timestamppb.Timestamp { 277 if x != nil { 278 return x.CreateTime 279 } 280 return nil 281} 282 283func (x *Message) GetMessageAnnotation() *MessageAnnotation { 284 if x != nil { 285 return x.MessageAnnotation 286 } 287 return nil 288} 289 290// The request message for [Participants.CreateParticipant][google.cloud.dialogflow.v2.Participants.CreateParticipant]. 291type CreateParticipantRequest struct { 292 state protoimpl.MessageState 293 sizeCache protoimpl.SizeCache 294 unknownFields protoimpl.UnknownFields 295 296 // Required. Resource identifier of the conversation adding the participant. 297 // Format: `projects/<Project ID>/locations/<Location 298 // ID>/conversations/<Conversation ID>`. 299 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 300 // Required. The participant to create. 301 Participant *Participant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant,omitempty"` 302} 303 304func (x *CreateParticipantRequest) Reset() { 305 *x = CreateParticipantRequest{} 306 if protoimpl.UnsafeEnabled { 307 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[2] 308 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 309 ms.StoreMessageInfo(mi) 310 } 311} 312 313func (x *CreateParticipantRequest) String() string { 314 return protoimpl.X.MessageStringOf(x) 315} 316 317func (*CreateParticipantRequest) ProtoMessage() {} 318 319func (x *CreateParticipantRequest) ProtoReflect() protoreflect.Message { 320 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[2] 321 if protoimpl.UnsafeEnabled && x != nil { 322 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 323 if ms.LoadMessageInfo() == nil { 324 ms.StoreMessageInfo(mi) 325 } 326 return ms 327 } 328 return mi.MessageOf(x) 329} 330 331// Deprecated: Use CreateParticipantRequest.ProtoReflect.Descriptor instead. 332func (*CreateParticipantRequest) Descriptor() ([]byte, []int) { 333 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{2} 334} 335 336func (x *CreateParticipantRequest) GetParent() string { 337 if x != nil { 338 return x.Parent 339 } 340 return "" 341} 342 343func (x *CreateParticipantRequest) GetParticipant() *Participant { 344 if x != nil { 345 return x.Participant 346 } 347 return nil 348} 349 350// The request message for [Participants.GetParticipant][google.cloud.dialogflow.v2.Participants.GetParticipant]. 351type GetParticipantRequest struct { 352 state protoimpl.MessageState 353 sizeCache protoimpl.SizeCache 354 unknownFields protoimpl.UnknownFields 355 356 // Required. The name of the participant. Format: 357 // `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation 358 // ID>/participants/<Participant ID>`. 359 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 360} 361 362func (x *GetParticipantRequest) Reset() { 363 *x = GetParticipantRequest{} 364 if protoimpl.UnsafeEnabled { 365 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[3] 366 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 367 ms.StoreMessageInfo(mi) 368 } 369} 370 371func (x *GetParticipantRequest) String() string { 372 return protoimpl.X.MessageStringOf(x) 373} 374 375func (*GetParticipantRequest) ProtoMessage() {} 376 377func (x *GetParticipantRequest) ProtoReflect() protoreflect.Message { 378 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[3] 379 if protoimpl.UnsafeEnabled && x != nil { 380 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 381 if ms.LoadMessageInfo() == nil { 382 ms.StoreMessageInfo(mi) 383 } 384 return ms 385 } 386 return mi.MessageOf(x) 387} 388 389// Deprecated: Use GetParticipantRequest.ProtoReflect.Descriptor instead. 390func (*GetParticipantRequest) Descriptor() ([]byte, []int) { 391 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{3} 392} 393 394func (x *GetParticipantRequest) GetName() string { 395 if x != nil { 396 return x.Name 397 } 398 return "" 399} 400 401// The request message for [Participants.ListParticipants][google.cloud.dialogflow.v2.Participants.ListParticipants]. 402type ListParticipantsRequest struct { 403 state protoimpl.MessageState 404 sizeCache protoimpl.SizeCache 405 unknownFields protoimpl.UnknownFields 406 407 // Required. The conversation to list all participants from. 408 // Format: `projects/<Project ID>/locations/<Location 409 // ID>/conversations/<Conversation ID>`. 410 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 411 // Optional. The maximum number of items to return in a single page. By 412 // default 100 and at most 1000. 413 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 414 // Optional. The next_page_token value returned from a previous list request. 415 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 416} 417 418func (x *ListParticipantsRequest) Reset() { 419 *x = ListParticipantsRequest{} 420 if protoimpl.UnsafeEnabled { 421 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[4] 422 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 423 ms.StoreMessageInfo(mi) 424 } 425} 426 427func (x *ListParticipantsRequest) String() string { 428 return protoimpl.X.MessageStringOf(x) 429} 430 431func (*ListParticipantsRequest) ProtoMessage() {} 432 433func (x *ListParticipantsRequest) ProtoReflect() protoreflect.Message { 434 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[4] 435 if protoimpl.UnsafeEnabled && x != nil { 436 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 437 if ms.LoadMessageInfo() == nil { 438 ms.StoreMessageInfo(mi) 439 } 440 return ms 441 } 442 return mi.MessageOf(x) 443} 444 445// Deprecated: Use ListParticipantsRequest.ProtoReflect.Descriptor instead. 446func (*ListParticipantsRequest) Descriptor() ([]byte, []int) { 447 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{4} 448} 449 450func (x *ListParticipantsRequest) GetParent() string { 451 if x != nil { 452 return x.Parent 453 } 454 return "" 455} 456 457func (x *ListParticipantsRequest) GetPageSize() int32 { 458 if x != nil { 459 return x.PageSize 460 } 461 return 0 462} 463 464func (x *ListParticipantsRequest) GetPageToken() string { 465 if x != nil { 466 return x.PageToken 467 } 468 return "" 469} 470 471// The response message for [Participants.ListParticipants][google.cloud.dialogflow.v2.Participants.ListParticipants]. 472type ListParticipantsResponse struct { 473 state protoimpl.MessageState 474 sizeCache protoimpl.SizeCache 475 unknownFields protoimpl.UnknownFields 476 477 // The list of participants. There is a maximum number of items 478 // returned based on the page_size field in the request. 479 Participants []*Participant `protobuf:"bytes,1,rep,name=participants,proto3" json:"participants,omitempty"` 480 // Token to retrieve the next page of results or empty if there are no 481 // more results in the list. 482 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 483} 484 485func (x *ListParticipantsResponse) Reset() { 486 *x = ListParticipantsResponse{} 487 if protoimpl.UnsafeEnabled { 488 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[5] 489 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 490 ms.StoreMessageInfo(mi) 491 } 492} 493 494func (x *ListParticipantsResponse) String() string { 495 return protoimpl.X.MessageStringOf(x) 496} 497 498func (*ListParticipantsResponse) ProtoMessage() {} 499 500func (x *ListParticipantsResponse) ProtoReflect() protoreflect.Message { 501 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[5] 502 if protoimpl.UnsafeEnabled && x != nil { 503 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 504 if ms.LoadMessageInfo() == nil { 505 ms.StoreMessageInfo(mi) 506 } 507 return ms 508 } 509 return mi.MessageOf(x) 510} 511 512// Deprecated: Use ListParticipantsResponse.ProtoReflect.Descriptor instead. 513func (*ListParticipantsResponse) Descriptor() ([]byte, []int) { 514 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{5} 515} 516 517func (x *ListParticipantsResponse) GetParticipants() []*Participant { 518 if x != nil { 519 return x.Participants 520 } 521 return nil 522} 523 524func (x *ListParticipantsResponse) GetNextPageToken() string { 525 if x != nil { 526 return x.NextPageToken 527 } 528 return "" 529} 530 531// The request message for [Participants.UpdateParticipant][google.cloud.dialogflow.v2.Participants.UpdateParticipant]. 532type UpdateParticipantRequest struct { 533 state protoimpl.MessageState 534 sizeCache protoimpl.SizeCache 535 unknownFields protoimpl.UnknownFields 536 537 // Required. The participant to update. 538 Participant *Participant `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"` 539 // Required. The mask to specify which fields to update. 540 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 541} 542 543func (x *UpdateParticipantRequest) Reset() { 544 *x = UpdateParticipantRequest{} 545 if protoimpl.UnsafeEnabled { 546 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[6] 547 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 548 ms.StoreMessageInfo(mi) 549 } 550} 551 552func (x *UpdateParticipantRequest) String() string { 553 return protoimpl.X.MessageStringOf(x) 554} 555 556func (*UpdateParticipantRequest) ProtoMessage() {} 557 558func (x *UpdateParticipantRequest) ProtoReflect() protoreflect.Message { 559 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[6] 560 if protoimpl.UnsafeEnabled && x != nil { 561 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 562 if ms.LoadMessageInfo() == nil { 563 ms.StoreMessageInfo(mi) 564 } 565 return ms 566 } 567 return mi.MessageOf(x) 568} 569 570// Deprecated: Use UpdateParticipantRequest.ProtoReflect.Descriptor instead. 571func (*UpdateParticipantRequest) Descriptor() ([]byte, []int) { 572 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{6} 573} 574 575func (x *UpdateParticipantRequest) GetParticipant() *Participant { 576 if x != nil { 577 return x.Participant 578 } 579 return nil 580} 581 582func (x *UpdateParticipantRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 583 if x != nil { 584 return x.UpdateMask 585 } 586 return nil 587} 588 589// The request message for [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent]. 590type AnalyzeContentRequest struct { 591 state protoimpl.MessageState 592 sizeCache protoimpl.SizeCache 593 unknownFields protoimpl.UnknownFields 594 595 // Required. The name of the participant this text comes from. 596 // Format: `projects/<Project ID>/locations/<Location 597 // ID>/conversations/<Conversation ID>/participants/<Participant ID>`. 598 Participant string `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"` 599 // Required. The input content. 600 // 601 // Types that are assignable to Input: 602 // *AnalyzeContentRequest_TextInput 603 // *AnalyzeContentRequest_EventInput 604 Input isAnalyzeContentRequest_Input `protobuf_oneof:"input"` 605 // Speech synthesis configuration. 606 // The speech synthesis settings for a virtual agent that may be configured 607 // for the associated conversation profile are not used when calling 608 // AnalyzeContent. If this configuration is not supplied, speech synthesis 609 // is disabled. 610 ReplyAudioConfig *OutputAudioConfig `protobuf:"bytes,5,opt,name=reply_audio_config,json=replyAudioConfig,proto3" json:"reply_audio_config,omitempty"` 611 // Parameters for a Dialogflow virtual-agent query. 612 QueryParams *QueryParameters `protobuf:"bytes,9,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"` 613 // A unique identifier for this request. Restricted to 36 ASCII characters. 614 // A random UUID is recommended. 615 // This request is only idempotent if a `request_id` is provided. 616 RequestId string `protobuf:"bytes,11,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` 617} 618 619func (x *AnalyzeContentRequest) Reset() { 620 *x = AnalyzeContentRequest{} 621 if protoimpl.UnsafeEnabled { 622 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[7] 623 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 624 ms.StoreMessageInfo(mi) 625 } 626} 627 628func (x *AnalyzeContentRequest) String() string { 629 return protoimpl.X.MessageStringOf(x) 630} 631 632func (*AnalyzeContentRequest) ProtoMessage() {} 633 634func (x *AnalyzeContentRequest) ProtoReflect() protoreflect.Message { 635 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[7] 636 if protoimpl.UnsafeEnabled && x != nil { 637 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 638 if ms.LoadMessageInfo() == nil { 639 ms.StoreMessageInfo(mi) 640 } 641 return ms 642 } 643 return mi.MessageOf(x) 644} 645 646// Deprecated: Use AnalyzeContentRequest.ProtoReflect.Descriptor instead. 647func (*AnalyzeContentRequest) Descriptor() ([]byte, []int) { 648 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{7} 649} 650 651func (x *AnalyzeContentRequest) GetParticipant() string { 652 if x != nil { 653 return x.Participant 654 } 655 return "" 656} 657 658func (m *AnalyzeContentRequest) GetInput() isAnalyzeContentRequest_Input { 659 if m != nil { 660 return m.Input 661 } 662 return nil 663} 664 665func (x *AnalyzeContentRequest) GetTextInput() *TextInput { 666 if x, ok := x.GetInput().(*AnalyzeContentRequest_TextInput); ok { 667 return x.TextInput 668 } 669 return nil 670} 671 672func (x *AnalyzeContentRequest) GetEventInput() *EventInput { 673 if x, ok := x.GetInput().(*AnalyzeContentRequest_EventInput); ok { 674 return x.EventInput 675 } 676 return nil 677} 678 679func (x *AnalyzeContentRequest) GetReplyAudioConfig() *OutputAudioConfig { 680 if x != nil { 681 return x.ReplyAudioConfig 682 } 683 return nil 684} 685 686func (x *AnalyzeContentRequest) GetQueryParams() *QueryParameters { 687 if x != nil { 688 return x.QueryParams 689 } 690 return nil 691} 692 693func (x *AnalyzeContentRequest) GetRequestId() string { 694 if x != nil { 695 return x.RequestId 696 } 697 return "" 698} 699 700type isAnalyzeContentRequest_Input interface { 701 isAnalyzeContentRequest_Input() 702} 703 704type AnalyzeContentRequest_TextInput struct { 705 // The natural language text to be processed. 706 TextInput *TextInput `protobuf:"bytes,6,opt,name=text_input,json=textInput,proto3,oneof"` 707} 708 709type AnalyzeContentRequest_EventInput struct { 710 // An input event to send to Dialogflow. 711 EventInput *EventInput `protobuf:"bytes,8,opt,name=event_input,json=eventInput,proto3,oneof"` 712} 713 714func (*AnalyzeContentRequest_TextInput) isAnalyzeContentRequest_Input() {} 715 716func (*AnalyzeContentRequest_EventInput) isAnalyzeContentRequest_Input() {} 717 718// The message in the response that indicates the parameters of DTMF. 719type DtmfParameters struct { 720 state protoimpl.MessageState 721 sizeCache protoimpl.SizeCache 722 unknownFields protoimpl.UnknownFields 723 724 // Indicates whether DTMF input can be handled in the next request. 725 AcceptsDtmfInput bool `protobuf:"varint,1,opt,name=accepts_dtmf_input,json=acceptsDtmfInput,proto3" json:"accepts_dtmf_input,omitempty"` 726} 727 728func (x *DtmfParameters) Reset() { 729 *x = DtmfParameters{} 730 if protoimpl.UnsafeEnabled { 731 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[8] 732 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 733 ms.StoreMessageInfo(mi) 734 } 735} 736 737func (x *DtmfParameters) String() string { 738 return protoimpl.X.MessageStringOf(x) 739} 740 741func (*DtmfParameters) ProtoMessage() {} 742 743func (x *DtmfParameters) ProtoReflect() protoreflect.Message { 744 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[8] 745 if protoimpl.UnsafeEnabled && x != nil { 746 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 747 if ms.LoadMessageInfo() == nil { 748 ms.StoreMessageInfo(mi) 749 } 750 return ms 751 } 752 return mi.MessageOf(x) 753} 754 755// Deprecated: Use DtmfParameters.ProtoReflect.Descriptor instead. 756func (*DtmfParameters) Descriptor() ([]byte, []int) { 757 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{8} 758} 759 760func (x *DtmfParameters) GetAcceptsDtmfInput() bool { 761 if x != nil { 762 return x.AcceptsDtmfInput 763 } 764 return false 765} 766 767// The response message for [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent]. 768type AnalyzeContentResponse struct { 769 state protoimpl.MessageState 770 sizeCache protoimpl.SizeCache 771 unknownFields protoimpl.UnknownFields 772 773 // The output text content. 774 // This field is set if the automated agent responded with text to show to 775 // the user. 776 ReplyText string `protobuf:"bytes,1,opt,name=reply_text,json=replyText,proto3" json:"reply_text,omitempty"` 777 // The audio data bytes encoded as specified in the request. 778 // This field is set if: 779 // 780 // - `reply_audio_config` was specified in the request, or 781 // - The automated agent responded with audio to play to the user. In such 782 // case, `reply_audio.config` contains settings used to synthesize the 783 // speech. 784 // 785 // In some scenarios, multiple output audio fields may be present in the 786 // response structure. In these cases, only the top-most-level audio output 787 // has content. 788 ReplyAudio *OutputAudio `protobuf:"bytes,2,opt,name=reply_audio,json=replyAudio,proto3" json:"reply_audio,omitempty"` 789 // Only set if a Dialogflow automated agent has responded. 790 // Note that: [AutomatedAgentReply.detect_intent_response.output_audio][] 791 // and [AutomatedAgentReply.detect_intent_response.output_audio_config][] 792 // are always empty, use [reply_audio][google.cloud.dialogflow.v2.AnalyzeContentResponse.reply_audio] instead. 793 AutomatedAgentReply *AutomatedAgentReply `protobuf:"bytes,3,opt,name=automated_agent_reply,json=automatedAgentReply,proto3" json:"automated_agent_reply,omitempty"` 794 // Message analyzed by CCAI. 795 Message *Message `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"` 796 // The suggestions for most recent human agent. The order is the same as 797 // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs] of 798 // [HumanAgentAssistantConfig.human_agent_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.human_agent_suggestion_config]. 799 HumanAgentSuggestionResults []*SuggestionResult `protobuf:"bytes,6,rep,name=human_agent_suggestion_results,json=humanAgentSuggestionResults,proto3" json:"human_agent_suggestion_results,omitempty"` 800 // The suggestions for end user. The order is the same as 801 // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs] of 802 // [HumanAgentAssistantConfig.end_user_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.end_user_suggestion_config]. 803 EndUserSuggestionResults []*SuggestionResult `protobuf:"bytes,7,rep,name=end_user_suggestion_results,json=endUserSuggestionResults,proto3" json:"end_user_suggestion_results,omitempty"` 804 // Indicates the parameters of DTMF. 805 DtmfParameters *DtmfParameters `protobuf:"bytes,9,opt,name=dtmf_parameters,json=dtmfParameters,proto3" json:"dtmf_parameters,omitempty"` 806} 807 808func (x *AnalyzeContentResponse) Reset() { 809 *x = AnalyzeContentResponse{} 810 if protoimpl.UnsafeEnabled { 811 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[9] 812 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 813 ms.StoreMessageInfo(mi) 814 } 815} 816 817func (x *AnalyzeContentResponse) String() string { 818 return protoimpl.X.MessageStringOf(x) 819} 820 821func (*AnalyzeContentResponse) ProtoMessage() {} 822 823func (x *AnalyzeContentResponse) ProtoReflect() protoreflect.Message { 824 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[9] 825 if protoimpl.UnsafeEnabled && x != nil { 826 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 827 if ms.LoadMessageInfo() == nil { 828 ms.StoreMessageInfo(mi) 829 } 830 return ms 831 } 832 return mi.MessageOf(x) 833} 834 835// Deprecated: Use AnalyzeContentResponse.ProtoReflect.Descriptor instead. 836func (*AnalyzeContentResponse) Descriptor() ([]byte, []int) { 837 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{9} 838} 839 840func (x *AnalyzeContentResponse) GetReplyText() string { 841 if x != nil { 842 return x.ReplyText 843 } 844 return "" 845} 846 847func (x *AnalyzeContentResponse) GetReplyAudio() *OutputAudio { 848 if x != nil { 849 return x.ReplyAudio 850 } 851 return nil 852} 853 854func (x *AnalyzeContentResponse) GetAutomatedAgentReply() *AutomatedAgentReply { 855 if x != nil { 856 return x.AutomatedAgentReply 857 } 858 return nil 859} 860 861func (x *AnalyzeContentResponse) GetMessage() *Message { 862 if x != nil { 863 return x.Message 864 } 865 return nil 866} 867 868func (x *AnalyzeContentResponse) GetHumanAgentSuggestionResults() []*SuggestionResult { 869 if x != nil { 870 return x.HumanAgentSuggestionResults 871 } 872 return nil 873} 874 875func (x *AnalyzeContentResponse) GetEndUserSuggestionResults() []*SuggestionResult { 876 if x != nil { 877 return x.EndUserSuggestionResults 878 } 879 return nil 880} 881 882func (x *AnalyzeContentResponse) GetDtmfParameters() *DtmfParameters { 883 if x != nil { 884 return x.DtmfParameters 885 } 886 return nil 887} 888 889// The request message for [Participants.SuggestArticles][google.cloud.dialogflow.v2.Participants.SuggestArticles]. 890type SuggestArticlesRequest struct { 891 state protoimpl.MessageState 892 sizeCache protoimpl.SizeCache 893 unknownFields protoimpl.UnknownFields 894 895 // Required. The name of the participant to fetch suggestion for. 896 // Format: `projects/<Project ID>/locations/<Location 897 // ID>/conversations/<Conversation ID>/participants/<Participant ID>`. 898 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 899 // The name of the latest conversation message to compile suggestion 900 // for. If empty, it will be the latest message of the conversation. 901 // 902 // Format: `projects/<Project ID>/locations/<Location 903 // ID>/conversations/<Conversation ID>/messages/<Message ID>`. 904 LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"` 905 // Max number of messages prior to and including 906 // [latest_message][google.cloud.dialogflow.v2.SuggestArticlesRequest.latest_message] to use as context 907 // when compiling the suggestion. By default 20 and at most 50. 908 ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"` 909} 910 911func (x *SuggestArticlesRequest) Reset() { 912 *x = SuggestArticlesRequest{} 913 if protoimpl.UnsafeEnabled { 914 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[10] 915 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 916 ms.StoreMessageInfo(mi) 917 } 918} 919 920func (x *SuggestArticlesRequest) String() string { 921 return protoimpl.X.MessageStringOf(x) 922} 923 924func (*SuggestArticlesRequest) ProtoMessage() {} 925 926func (x *SuggestArticlesRequest) ProtoReflect() protoreflect.Message { 927 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[10] 928 if protoimpl.UnsafeEnabled && x != nil { 929 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 930 if ms.LoadMessageInfo() == nil { 931 ms.StoreMessageInfo(mi) 932 } 933 return ms 934 } 935 return mi.MessageOf(x) 936} 937 938// Deprecated: Use SuggestArticlesRequest.ProtoReflect.Descriptor instead. 939func (*SuggestArticlesRequest) Descriptor() ([]byte, []int) { 940 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{10} 941} 942 943func (x *SuggestArticlesRequest) GetParent() string { 944 if x != nil { 945 return x.Parent 946 } 947 return "" 948} 949 950func (x *SuggestArticlesRequest) GetLatestMessage() string { 951 if x != nil { 952 return x.LatestMessage 953 } 954 return "" 955} 956 957func (x *SuggestArticlesRequest) GetContextSize() int32 { 958 if x != nil { 959 return x.ContextSize 960 } 961 return 0 962} 963 964// The response message for [Participants.SuggestArticles][google.cloud.dialogflow.v2.Participants.SuggestArticles]. 965type SuggestArticlesResponse struct { 966 state protoimpl.MessageState 967 sizeCache protoimpl.SizeCache 968 unknownFields protoimpl.UnknownFields 969 970 // Articles ordered by score in descending order. 971 ArticleAnswers []*ArticleAnswer `protobuf:"bytes,1,rep,name=article_answers,json=articleAnswers,proto3" json:"article_answers,omitempty"` 972 // The name of the latest conversation message used to compile 973 // suggestion for. 974 // 975 // Format: `projects/<Project ID>/locations/<Location 976 // ID>/conversations/<Conversation ID>/messages/<Message ID>`. 977 LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"` 978 // Number of messages prior to and including 979 // [latest_message][google.cloud.dialogflow.v2.SuggestArticlesResponse.latest_message] to compile the 980 // suggestion. It may be smaller than the 981 // [SuggestArticlesRequest.context_size][google.cloud.dialogflow.v2.SuggestArticlesRequest.context_size] field in the request if there 982 // aren't that many messages in the conversation. 983 ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"` 984} 985 986func (x *SuggestArticlesResponse) Reset() { 987 *x = SuggestArticlesResponse{} 988 if protoimpl.UnsafeEnabled { 989 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[11] 990 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 991 ms.StoreMessageInfo(mi) 992 } 993} 994 995func (x *SuggestArticlesResponse) String() string { 996 return protoimpl.X.MessageStringOf(x) 997} 998 999func (*SuggestArticlesResponse) ProtoMessage() {} 1000 1001func (x *SuggestArticlesResponse) ProtoReflect() protoreflect.Message { 1002 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[11] 1003 if protoimpl.UnsafeEnabled && x != nil { 1004 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1005 if ms.LoadMessageInfo() == nil { 1006 ms.StoreMessageInfo(mi) 1007 } 1008 return ms 1009 } 1010 return mi.MessageOf(x) 1011} 1012 1013// Deprecated: Use SuggestArticlesResponse.ProtoReflect.Descriptor instead. 1014func (*SuggestArticlesResponse) Descriptor() ([]byte, []int) { 1015 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{11} 1016} 1017 1018func (x *SuggestArticlesResponse) GetArticleAnswers() []*ArticleAnswer { 1019 if x != nil { 1020 return x.ArticleAnswers 1021 } 1022 return nil 1023} 1024 1025func (x *SuggestArticlesResponse) GetLatestMessage() string { 1026 if x != nil { 1027 return x.LatestMessage 1028 } 1029 return "" 1030} 1031 1032func (x *SuggestArticlesResponse) GetContextSize() int32 { 1033 if x != nil { 1034 return x.ContextSize 1035 } 1036 return 0 1037} 1038 1039// The request message for [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers]. 1040type SuggestFaqAnswersRequest struct { 1041 state protoimpl.MessageState 1042 sizeCache protoimpl.SizeCache 1043 unknownFields protoimpl.UnknownFields 1044 1045 // Required. The name of the participant to fetch suggestion for. 1046 // Format: `projects/<Project ID>/locations/<Location 1047 // ID>/conversations/<Conversation ID>/participants/<Participant ID>`. 1048 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1049 // The name of the latest conversation message to compile suggestion 1050 // for. If empty, it will be the latest message of the conversation. 1051 // 1052 // Format: `projects/<Project ID>/locations/<Location 1053 // ID>/conversations/<Conversation ID>/messages/<Message ID>`. 1054 LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"` 1055 // Max number of messages prior to and including 1056 // [latest_message] to use as context when compiling the 1057 // suggestion. By default 20 and at most 50. 1058 ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"` 1059} 1060 1061func (x *SuggestFaqAnswersRequest) Reset() { 1062 *x = SuggestFaqAnswersRequest{} 1063 if protoimpl.UnsafeEnabled { 1064 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[12] 1065 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1066 ms.StoreMessageInfo(mi) 1067 } 1068} 1069 1070func (x *SuggestFaqAnswersRequest) String() string { 1071 return protoimpl.X.MessageStringOf(x) 1072} 1073 1074func (*SuggestFaqAnswersRequest) ProtoMessage() {} 1075 1076func (x *SuggestFaqAnswersRequest) ProtoReflect() protoreflect.Message { 1077 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[12] 1078 if protoimpl.UnsafeEnabled && x != nil { 1079 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1080 if ms.LoadMessageInfo() == nil { 1081 ms.StoreMessageInfo(mi) 1082 } 1083 return ms 1084 } 1085 return mi.MessageOf(x) 1086} 1087 1088// Deprecated: Use SuggestFaqAnswersRequest.ProtoReflect.Descriptor instead. 1089func (*SuggestFaqAnswersRequest) Descriptor() ([]byte, []int) { 1090 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{12} 1091} 1092 1093func (x *SuggestFaqAnswersRequest) GetParent() string { 1094 if x != nil { 1095 return x.Parent 1096 } 1097 return "" 1098} 1099 1100func (x *SuggestFaqAnswersRequest) GetLatestMessage() string { 1101 if x != nil { 1102 return x.LatestMessage 1103 } 1104 return "" 1105} 1106 1107func (x *SuggestFaqAnswersRequest) GetContextSize() int32 { 1108 if x != nil { 1109 return x.ContextSize 1110 } 1111 return 0 1112} 1113 1114// The request message for [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers]. 1115type SuggestFaqAnswersResponse struct { 1116 state protoimpl.MessageState 1117 sizeCache protoimpl.SizeCache 1118 unknownFields protoimpl.UnknownFields 1119 1120 // Answers extracted from FAQ documents. 1121 FaqAnswers []*FaqAnswer `protobuf:"bytes,1,rep,name=faq_answers,json=faqAnswers,proto3" json:"faq_answers,omitempty"` 1122 // The name of the latest conversation message used to compile 1123 // suggestion for. 1124 // 1125 // Format: `projects/<Project ID>/locations/<Location 1126 // ID>/conversations/<Conversation ID>/messages/<Message ID>`. 1127 LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"` 1128 // Number of messages prior to and including 1129 // [latest_message][google.cloud.dialogflow.v2.SuggestFaqAnswersResponse.latest_message] to compile the 1130 // suggestion. It may be smaller than the 1131 // [SuggestFaqAnswersRequest.context_size][google.cloud.dialogflow.v2.SuggestFaqAnswersRequest.context_size] field in the request if there 1132 // aren't that many messages in the conversation. 1133 ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"` 1134} 1135 1136func (x *SuggestFaqAnswersResponse) Reset() { 1137 *x = SuggestFaqAnswersResponse{} 1138 if protoimpl.UnsafeEnabled { 1139 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[13] 1140 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1141 ms.StoreMessageInfo(mi) 1142 } 1143} 1144 1145func (x *SuggestFaqAnswersResponse) String() string { 1146 return protoimpl.X.MessageStringOf(x) 1147} 1148 1149func (*SuggestFaqAnswersResponse) ProtoMessage() {} 1150 1151func (x *SuggestFaqAnswersResponse) ProtoReflect() protoreflect.Message { 1152 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[13] 1153 if protoimpl.UnsafeEnabled && x != nil { 1154 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1155 if ms.LoadMessageInfo() == nil { 1156 ms.StoreMessageInfo(mi) 1157 } 1158 return ms 1159 } 1160 return mi.MessageOf(x) 1161} 1162 1163// Deprecated: Use SuggestFaqAnswersResponse.ProtoReflect.Descriptor instead. 1164func (*SuggestFaqAnswersResponse) Descriptor() ([]byte, []int) { 1165 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{13} 1166} 1167 1168func (x *SuggestFaqAnswersResponse) GetFaqAnswers() []*FaqAnswer { 1169 if x != nil { 1170 return x.FaqAnswers 1171 } 1172 return nil 1173} 1174 1175func (x *SuggestFaqAnswersResponse) GetLatestMessage() string { 1176 if x != nil { 1177 return x.LatestMessage 1178 } 1179 return "" 1180} 1181 1182func (x *SuggestFaqAnswersResponse) GetContextSize() int32 { 1183 if x != nil { 1184 return x.ContextSize 1185 } 1186 return 0 1187} 1188 1189// Represents the natural language speech audio to be played to the end user. 1190type OutputAudio struct { 1191 state protoimpl.MessageState 1192 sizeCache protoimpl.SizeCache 1193 unknownFields protoimpl.UnknownFields 1194 1195 // Instructs the speech synthesizer how to generate the speech 1196 // audio. 1197 Config *OutputAudioConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` 1198 // The natural language speech audio. 1199 Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"` 1200} 1201 1202func (x *OutputAudio) Reset() { 1203 *x = OutputAudio{} 1204 if protoimpl.UnsafeEnabled { 1205 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[14] 1206 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1207 ms.StoreMessageInfo(mi) 1208 } 1209} 1210 1211func (x *OutputAudio) String() string { 1212 return protoimpl.X.MessageStringOf(x) 1213} 1214 1215func (*OutputAudio) ProtoMessage() {} 1216 1217func (x *OutputAudio) ProtoReflect() protoreflect.Message { 1218 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[14] 1219 if protoimpl.UnsafeEnabled && x != nil { 1220 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1221 if ms.LoadMessageInfo() == nil { 1222 ms.StoreMessageInfo(mi) 1223 } 1224 return ms 1225 } 1226 return mi.MessageOf(x) 1227} 1228 1229// Deprecated: Use OutputAudio.ProtoReflect.Descriptor instead. 1230func (*OutputAudio) Descriptor() ([]byte, []int) { 1231 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{14} 1232} 1233 1234func (x *OutputAudio) GetConfig() *OutputAudioConfig { 1235 if x != nil { 1236 return x.Config 1237 } 1238 return nil 1239} 1240 1241func (x *OutputAudio) GetAudio() []byte { 1242 if x != nil { 1243 return x.Audio 1244 } 1245 return nil 1246} 1247 1248// Represents a response from an automated agent. 1249type AutomatedAgentReply struct { 1250 state protoimpl.MessageState 1251 sizeCache protoimpl.SizeCache 1252 unknownFields protoimpl.UnknownFields 1253 1254 // Response of the Dialogflow [Sessions.DetectIntent][google.cloud.dialogflow.v2.Sessions.DetectIntent] call. 1255 DetectIntentResponse *DetectIntentResponse `protobuf:"bytes,1,opt,name=detect_intent_response,json=detectIntentResponse,proto3" json:"detect_intent_response,omitempty"` 1256} 1257 1258func (x *AutomatedAgentReply) Reset() { 1259 *x = AutomatedAgentReply{} 1260 if protoimpl.UnsafeEnabled { 1261 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[15] 1262 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1263 ms.StoreMessageInfo(mi) 1264 } 1265} 1266 1267func (x *AutomatedAgentReply) String() string { 1268 return protoimpl.X.MessageStringOf(x) 1269} 1270 1271func (*AutomatedAgentReply) ProtoMessage() {} 1272 1273func (x *AutomatedAgentReply) ProtoReflect() protoreflect.Message { 1274 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[15] 1275 if protoimpl.UnsafeEnabled && x != nil { 1276 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1277 if ms.LoadMessageInfo() == nil { 1278 ms.StoreMessageInfo(mi) 1279 } 1280 return ms 1281 } 1282 return mi.MessageOf(x) 1283} 1284 1285// Deprecated: Use AutomatedAgentReply.ProtoReflect.Descriptor instead. 1286func (*AutomatedAgentReply) Descriptor() ([]byte, []int) { 1287 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{15} 1288} 1289 1290func (x *AutomatedAgentReply) GetDetectIntentResponse() *DetectIntentResponse { 1291 if x != nil { 1292 return x.DetectIntentResponse 1293 } 1294 return nil 1295} 1296 1297// Represents article answer. 1298type ArticleAnswer struct { 1299 state protoimpl.MessageState 1300 sizeCache protoimpl.SizeCache 1301 unknownFields protoimpl.UnknownFields 1302 1303 // The article title. 1304 Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` 1305 // The article URI. 1306 Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"` 1307 // Article snippets. 1308 Snippets []string `protobuf:"bytes,3,rep,name=snippets,proto3" json:"snippets,omitempty"` 1309 // Article match confidence. 1310 // The system's confidence score that this article is a good match for this 1311 // conversation, as a value from 0.0 (completely uncertain) to 1.0 1312 // (completely certain). 1313 Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"` 1314 // A map that contains metadata about the answer and the 1315 // document from which it originates. 1316 Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 1317 // The name of answer record, in the format of 1318 // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record 1319 // ID>" 1320 AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"` 1321} 1322 1323func (x *ArticleAnswer) Reset() { 1324 *x = ArticleAnswer{} 1325 if protoimpl.UnsafeEnabled { 1326 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[16] 1327 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1328 ms.StoreMessageInfo(mi) 1329 } 1330} 1331 1332func (x *ArticleAnswer) String() string { 1333 return protoimpl.X.MessageStringOf(x) 1334} 1335 1336func (*ArticleAnswer) ProtoMessage() {} 1337 1338func (x *ArticleAnswer) ProtoReflect() protoreflect.Message { 1339 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[16] 1340 if protoimpl.UnsafeEnabled && x != nil { 1341 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1342 if ms.LoadMessageInfo() == nil { 1343 ms.StoreMessageInfo(mi) 1344 } 1345 return ms 1346 } 1347 return mi.MessageOf(x) 1348} 1349 1350// Deprecated: Use ArticleAnswer.ProtoReflect.Descriptor instead. 1351func (*ArticleAnswer) Descriptor() ([]byte, []int) { 1352 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{16} 1353} 1354 1355func (x *ArticleAnswer) GetTitle() string { 1356 if x != nil { 1357 return x.Title 1358 } 1359 return "" 1360} 1361 1362func (x *ArticleAnswer) GetUri() string { 1363 if x != nil { 1364 return x.Uri 1365 } 1366 return "" 1367} 1368 1369func (x *ArticleAnswer) GetSnippets() []string { 1370 if x != nil { 1371 return x.Snippets 1372 } 1373 return nil 1374} 1375 1376func (x *ArticleAnswer) GetConfidence() float32 { 1377 if x != nil { 1378 return x.Confidence 1379 } 1380 return 0 1381} 1382 1383func (x *ArticleAnswer) GetMetadata() map[string]string { 1384 if x != nil { 1385 return x.Metadata 1386 } 1387 return nil 1388} 1389 1390func (x *ArticleAnswer) GetAnswerRecord() string { 1391 if x != nil { 1392 return x.AnswerRecord 1393 } 1394 return "" 1395} 1396 1397// Represents answer from "frequently asked questions". 1398type FaqAnswer struct { 1399 state protoimpl.MessageState 1400 sizeCache protoimpl.SizeCache 1401 unknownFields protoimpl.UnknownFields 1402 1403 // The piece of text from the `source` knowledge base document. 1404 Answer string `protobuf:"bytes,1,opt,name=answer,proto3" json:"answer,omitempty"` 1405 // The system's confidence score that this Knowledge answer is a good match 1406 // for this conversational query, range from 0.0 (completely uncertain) 1407 // to 1.0 (completely certain). 1408 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"` 1409 // The corresponding FAQ question. 1410 Question string `protobuf:"bytes,3,opt,name=question,proto3" json:"question,omitempty"` 1411 // Indicates which Knowledge Document this answer was extracted 1412 // from. 1413 // Format: `projects/<Project ID>/locations/<Location 1414 // ID>/agent/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`. 1415 Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"` 1416 // A map that contains metadata about the answer and the 1417 // document from which it originates. 1418 Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 1419 // The name of answer record, in the format of 1420 // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record 1421 // ID>" 1422 AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"` 1423} 1424 1425func (x *FaqAnswer) Reset() { 1426 *x = FaqAnswer{} 1427 if protoimpl.UnsafeEnabled { 1428 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[17] 1429 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1430 ms.StoreMessageInfo(mi) 1431 } 1432} 1433 1434func (x *FaqAnswer) String() string { 1435 return protoimpl.X.MessageStringOf(x) 1436} 1437 1438func (*FaqAnswer) ProtoMessage() {} 1439 1440func (x *FaqAnswer) ProtoReflect() protoreflect.Message { 1441 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[17] 1442 if protoimpl.UnsafeEnabled && x != nil { 1443 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1444 if ms.LoadMessageInfo() == nil { 1445 ms.StoreMessageInfo(mi) 1446 } 1447 return ms 1448 } 1449 return mi.MessageOf(x) 1450} 1451 1452// Deprecated: Use FaqAnswer.ProtoReflect.Descriptor instead. 1453func (*FaqAnswer) Descriptor() ([]byte, []int) { 1454 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{17} 1455} 1456 1457func (x *FaqAnswer) GetAnswer() string { 1458 if x != nil { 1459 return x.Answer 1460 } 1461 return "" 1462} 1463 1464func (x *FaqAnswer) GetConfidence() float32 { 1465 if x != nil { 1466 return x.Confidence 1467 } 1468 return 0 1469} 1470 1471func (x *FaqAnswer) GetQuestion() string { 1472 if x != nil { 1473 return x.Question 1474 } 1475 return "" 1476} 1477 1478func (x *FaqAnswer) GetSource() string { 1479 if x != nil { 1480 return x.Source 1481 } 1482 return "" 1483} 1484 1485func (x *FaqAnswer) GetMetadata() map[string]string { 1486 if x != nil { 1487 return x.Metadata 1488 } 1489 return nil 1490} 1491 1492func (x *FaqAnswer) GetAnswerRecord() string { 1493 if x != nil { 1494 return x.AnswerRecord 1495 } 1496 return "" 1497} 1498 1499// One response of different type of suggestion response which is used in 1500// the response of [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent] and 1501// [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent], as well as [HumanAgentAssistantEvent][google.cloud.dialogflow.v2.HumanAgentAssistantEvent]. 1502type SuggestionResult struct { 1503 state protoimpl.MessageState 1504 sizeCache protoimpl.SizeCache 1505 unknownFields protoimpl.UnknownFields 1506 1507 // Different type of suggestion response. 1508 // 1509 // Types that are assignable to SuggestionResponse: 1510 // *SuggestionResult_Error 1511 // *SuggestionResult_SuggestArticlesResponse 1512 // *SuggestionResult_SuggestFaqAnswersResponse 1513 SuggestionResponse isSuggestionResult_SuggestionResponse `protobuf_oneof:"suggestion_response"` 1514} 1515 1516func (x *SuggestionResult) Reset() { 1517 *x = SuggestionResult{} 1518 if protoimpl.UnsafeEnabled { 1519 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[18] 1520 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1521 ms.StoreMessageInfo(mi) 1522 } 1523} 1524 1525func (x *SuggestionResult) String() string { 1526 return protoimpl.X.MessageStringOf(x) 1527} 1528 1529func (*SuggestionResult) ProtoMessage() {} 1530 1531func (x *SuggestionResult) ProtoReflect() protoreflect.Message { 1532 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[18] 1533 if protoimpl.UnsafeEnabled && x != nil { 1534 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1535 if ms.LoadMessageInfo() == nil { 1536 ms.StoreMessageInfo(mi) 1537 } 1538 return ms 1539 } 1540 return mi.MessageOf(x) 1541} 1542 1543// Deprecated: Use SuggestionResult.ProtoReflect.Descriptor instead. 1544func (*SuggestionResult) Descriptor() ([]byte, []int) { 1545 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{18} 1546} 1547 1548func (m *SuggestionResult) GetSuggestionResponse() isSuggestionResult_SuggestionResponse { 1549 if m != nil { 1550 return m.SuggestionResponse 1551 } 1552 return nil 1553} 1554 1555func (x *SuggestionResult) GetError() *status.Status { 1556 if x, ok := x.GetSuggestionResponse().(*SuggestionResult_Error); ok { 1557 return x.Error 1558 } 1559 return nil 1560} 1561 1562func (x *SuggestionResult) GetSuggestArticlesResponse() *SuggestArticlesResponse { 1563 if x, ok := x.GetSuggestionResponse().(*SuggestionResult_SuggestArticlesResponse); ok { 1564 return x.SuggestArticlesResponse 1565 } 1566 return nil 1567} 1568 1569func (x *SuggestionResult) GetSuggestFaqAnswersResponse() *SuggestFaqAnswersResponse { 1570 if x, ok := x.GetSuggestionResponse().(*SuggestionResult_SuggestFaqAnswersResponse); ok { 1571 return x.SuggestFaqAnswersResponse 1572 } 1573 return nil 1574} 1575 1576type isSuggestionResult_SuggestionResponse interface { 1577 isSuggestionResult_SuggestionResponse() 1578} 1579 1580type SuggestionResult_Error struct { 1581 // Error status if the request failed. 1582 Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3,oneof"` 1583} 1584 1585type SuggestionResult_SuggestArticlesResponse struct { 1586 // SuggestArticlesResponse if request is for ARTICLE_SUGGESTION. 1587 SuggestArticlesResponse *SuggestArticlesResponse `protobuf:"bytes,2,opt,name=suggest_articles_response,json=suggestArticlesResponse,proto3,oneof"` 1588} 1589 1590type SuggestionResult_SuggestFaqAnswersResponse struct { 1591 // SuggestFaqAnswersResponse if request is for FAQ_ANSWER. 1592 SuggestFaqAnswersResponse *SuggestFaqAnswersResponse `protobuf:"bytes,3,opt,name=suggest_faq_answers_response,json=suggestFaqAnswersResponse,proto3,oneof"` 1593} 1594 1595func (*SuggestionResult_Error) isSuggestionResult_SuggestionResponse() {} 1596 1597func (*SuggestionResult_SuggestArticlesResponse) isSuggestionResult_SuggestionResponse() {} 1598 1599func (*SuggestionResult_SuggestFaqAnswersResponse) isSuggestionResult_SuggestionResponse() {} 1600 1601// Represents a part of a message possibly annotated with an entity. The part 1602// can be an entity or purely a part of the message between two entities or 1603// message start/end. 1604type AnnotatedMessagePart struct { 1605 state protoimpl.MessageState 1606 sizeCache protoimpl.SizeCache 1607 unknownFields protoimpl.UnknownFields 1608 1609 // A part of a message possibly annotated with an entity. 1610 Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` 1611 // The [Dialogflow system entity 1612 // type](https://cloud.google.com/dialogflow/docs/reference/system-entities) 1613 // of this message part. If this is empty, Dialogflow could not annotate the 1614 // phrase part with a system entity. 1615 EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` 1616 // The [Dialogflow system entity formatted value 1617 // ](https://cloud.google.com/dialogflow/docs/reference/system-entities) of 1618 // this message part. For example for a system entity of type 1619 // `@sys.unit-currency`, this may contain: 1620 // <pre> 1621 // { 1622 // "amount": 5, 1623 // "currency": "USD" 1624 // } 1625 // </pre> 1626 FormattedValue *structpb.Value `protobuf:"bytes,3,opt,name=formatted_value,json=formattedValue,proto3" json:"formatted_value,omitempty"` 1627} 1628 1629func (x *AnnotatedMessagePart) Reset() { 1630 *x = AnnotatedMessagePart{} 1631 if protoimpl.UnsafeEnabled { 1632 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[19] 1633 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1634 ms.StoreMessageInfo(mi) 1635 } 1636} 1637 1638func (x *AnnotatedMessagePart) String() string { 1639 return protoimpl.X.MessageStringOf(x) 1640} 1641 1642func (*AnnotatedMessagePart) ProtoMessage() {} 1643 1644func (x *AnnotatedMessagePart) ProtoReflect() protoreflect.Message { 1645 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[19] 1646 if protoimpl.UnsafeEnabled && x != nil { 1647 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1648 if ms.LoadMessageInfo() == nil { 1649 ms.StoreMessageInfo(mi) 1650 } 1651 return ms 1652 } 1653 return mi.MessageOf(x) 1654} 1655 1656// Deprecated: Use AnnotatedMessagePart.ProtoReflect.Descriptor instead. 1657func (*AnnotatedMessagePart) Descriptor() ([]byte, []int) { 1658 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{19} 1659} 1660 1661func (x *AnnotatedMessagePart) GetText() string { 1662 if x != nil { 1663 return x.Text 1664 } 1665 return "" 1666} 1667 1668func (x *AnnotatedMessagePart) GetEntityType() string { 1669 if x != nil { 1670 return x.EntityType 1671 } 1672 return "" 1673} 1674 1675func (x *AnnotatedMessagePart) GetFormattedValue() *structpb.Value { 1676 if x != nil { 1677 return x.FormattedValue 1678 } 1679 return nil 1680} 1681 1682// Represents the result of annotation for the message. 1683type MessageAnnotation struct { 1684 state protoimpl.MessageState 1685 sizeCache protoimpl.SizeCache 1686 unknownFields protoimpl.UnknownFields 1687 1688 // The collection of annotated message parts ordered by their 1689 // position in the message. You can recover the annotated message by 1690 // concatenating [AnnotatedMessagePart.text]. 1691 Parts []*AnnotatedMessagePart `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"` 1692 // Indicates whether the text message contains entities. 1693 ContainEntities bool `protobuf:"varint,2,opt,name=contain_entities,json=containEntities,proto3" json:"contain_entities,omitempty"` 1694} 1695 1696func (x *MessageAnnotation) Reset() { 1697 *x = MessageAnnotation{} 1698 if protoimpl.UnsafeEnabled { 1699 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[20] 1700 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1701 ms.StoreMessageInfo(mi) 1702 } 1703} 1704 1705func (x *MessageAnnotation) String() string { 1706 return protoimpl.X.MessageStringOf(x) 1707} 1708 1709func (*MessageAnnotation) ProtoMessage() {} 1710 1711func (x *MessageAnnotation) ProtoReflect() protoreflect.Message { 1712 mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[20] 1713 if protoimpl.UnsafeEnabled && x != nil { 1714 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1715 if ms.LoadMessageInfo() == nil { 1716 ms.StoreMessageInfo(mi) 1717 } 1718 return ms 1719 } 1720 return mi.MessageOf(x) 1721} 1722 1723// Deprecated: Use MessageAnnotation.ProtoReflect.Descriptor instead. 1724func (*MessageAnnotation) Descriptor() ([]byte, []int) { 1725 return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{20} 1726} 1727 1728func (x *MessageAnnotation) GetParts() []*AnnotatedMessagePart { 1729 if x != nil { 1730 return x.Parts 1731 } 1732 return nil 1733} 1734 1735func (x *MessageAnnotation) GetContainEntities() bool { 1736 if x != nil { 1737 return x.ContainEntities 1738 } 1739 return false 1740} 1741 1742var File_google_cloud_dialogflow_v2_participant_proto protoreflect.FileDescriptor 1743 1744var file_google_cloud_dialogflow_v2_participant_proto_rawDesc = []byte{ 1745 0x0a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 1746 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x61, 0x72, 1747 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 1748 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 1749 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 1750 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 1751 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1752 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1753 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 1754 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 1755 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 1756 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 1757 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 1758 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 1759 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67, 0x6f, 1760 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 1761 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 1762 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 1763 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1764 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 1765 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 1766 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1767 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 1768 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 1769 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 1770 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 1771 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1772 0x22, 0xda, 0x03, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 1773 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 1774 0xe0, 0x41, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x45, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 1775 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1776 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 1777 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 1778 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 1779 0x12, 0x3e, 0x0a, 0x19, 0x73, 0x69, 0x70, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 1780 0x67, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 1781 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x73, 0x69, 0x70, 0x52, 0x65, 0x63, 1782 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4c, 0x61, 0x62, 0x65, 0x6c, 1783 0x22, 0x50, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x4f, 0x4c, 0x45, 1784 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 1785 0x0a, 0x0b, 0x48, 0x55, 0x4d, 0x41, 0x4e, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 1786 0x13, 0x0a, 0x0f, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x47, 0x45, 1787 0x4e, 0x54, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x4e, 0x44, 0x5f, 0x55, 0x53, 0x45, 0x52, 1788 0x10, 0x03, 0x3a, 0xd8, 0x01, 0xea, 0x41, 0xd4, 0x01, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 1789 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 1790 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 1791 0x12, 0x4a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 1792 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 1793 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1794 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 1795 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x7d, 0x12, 0x5f, 0x70, 0x72, 1796 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 1797 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 1798 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 1799 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 1800 0x6e, 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 1801 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x7d, 0x22, 0xd7, 0x04, 1802 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 1803 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 1804 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 1805 0xe0, 0x41, 0x02, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 1806 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 1807 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 1808 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 1809 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 1810 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 1811 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 1812 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1813 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 1814 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 1815 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 1816 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 1817 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 1818 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 1819 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 1820 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x61, 0x0a, 1821 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 1822 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1823 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 1824 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 1825 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x6d, 1826 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1827 0x3a, 0xc4, 0x01, 0xea, 0x41, 0xc0, 0x01, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 1828 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 1829 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x42, 0x70, 0x72, 0x6f, 0x6a, 1830 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 1831 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 1832 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 1833 0x61, 0x67, 0x65, 0x73, 0x2f, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x12, 0x57, 1834 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 1835 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 1836 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 1837 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 1838 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x7b, 0x6d, 1839 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x22, 0xb1, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 1840 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 1841 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 1842 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x64, 0x69, 1843 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 1844 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 1845 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x4e, 0x0a, 0x0b, 0x70, 1846 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 1847 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1848 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x61, 1849 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 1850 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0x5a, 0x0a, 0x15, 0x47, 1851 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 1852 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 1853 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 1854 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 1855 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 1856 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 1857 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 1858 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 1859 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x64, 0x69, 0x61, 1860 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 1861 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 1862 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 1863 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 1864 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 1865 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 1866 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 1867 0x22, 0x8f, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 1868 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 1869 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 1870 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1871 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 1872 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0c, 0x70, 0x61, 1873 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 1874 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 1875 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 1876 0x65, 0x6e, 0x22, 0xac, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 1877 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 1878 0x4e, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x01, 1879 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1880 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 1881 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x42, 0x03, 0xe0, 1882 0x41, 0x02, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 1883 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 1884 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 1885 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 1886 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 1887 0x6b, 0x22, 0xd0, 0x03, 0x0a, 0x15, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 1888 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x70, 1889 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1890 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 1891 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 1892 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 1893 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x46, 0x0a, 0x0a, 1894 0x74, 0x65, 0x78, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 1895 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1896 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x65, 1897 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x09, 0x74, 0x65, 0x78, 0x74, 0x49, 1898 0x6e, 0x70, 0x75, 0x74, 0x12, 0x49, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 1899 0x70, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1900 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 1901 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 1902 0x74, 0x48, 0x00, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 1903 0x5b, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 1904 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 1905 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 1906 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 1907 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6c, 1908 0x79, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a, 0x0c, 1909 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 1910 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1911 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 1912 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 1913 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 1914 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 1915 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x69, 1916 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x0a, 0x0e, 0x44, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 1917 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 1918 0x73, 0x5f, 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 1919 0x28, 0x08, 0x52, 0x10, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x73, 0x44, 0x74, 0x6d, 0x66, 0x49, 1920 0x6e, 0x70, 0x75, 0x74, 0x22, 0xda, 0x04, 0x0a, 0x16, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 1921 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 1922 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 1923 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x65, 0x78, 0x74, 0x12, 0x48, 1924 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 1925 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1926 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 1927 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x0a, 0x72, 0x65, 1928 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x63, 0x0a, 0x15, 0x61, 0x75, 0x74, 0x6f, 1929 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 1930 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1931 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 1932 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 1933 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 1934 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x3d, 0x0a, 1935 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 1936 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 1937 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 1938 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x71, 0x0a, 0x1e, 1939 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x75, 0x67, 0x67, 1940 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 1941 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1942 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 1943 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 1944 0x6c, 0x74, 0x52, 0x1b, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x75, 1945 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 1946 0x6b, 0x0a, 0x1b, 0x65, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x67, 0x67, 1947 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x07, 1948 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1949 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 1950 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 1951 0x6c, 0x74, 0x52, 0x18, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 1952 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x53, 0x0a, 0x0f, 1953 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 1954 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1955 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 1956 0x76, 0x32, 0x2e, 0x44, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 1957 0x73, 0x52, 0x0e, 0x64, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 1958 0x73, 0x22, 0xd1, 0x01, 0x0a, 0x16, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 1959 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 1960 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 1961 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 1962 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1963 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 1964 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 1965 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 1966 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 1967 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 1968 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 1969 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 1970 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 1971 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x17, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 1972 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 1973 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x6e, 0x73, 1974 0x77, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 1975 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 1976 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 1977 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 1978 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 1979 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 1980 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 1981 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 1982 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 1983 0xd3, 0x01, 0x0a, 0x18, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 1984 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 1985 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 1986 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 1987 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1988 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 1989 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 1990 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 1991 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 1992 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 1993 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 1994 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 1995 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 1996 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x19, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 1997 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 1998 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x66, 0x61, 0x71, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 1999 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2000 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 2001 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 2002 0x0a, 0x66, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 2003 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 2004 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 2005 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 2006 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 2007 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x6a, 0x0a, 0x0b, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 2008 0x75, 0x64, 0x69, 0x6f, 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 2009 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 2010 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 2011 0x32, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 2012 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x61, 2013 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 2014 0x6f, 0x22, 0x7d, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 2015 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x66, 0x0a, 0x16, 0x64, 0x65, 0x74, 0x65, 2016 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 2017 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2018 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 2019 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 2020 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x14, 0x64, 0x65, 0x74, 0x65, 2021 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 2022 0x22, 0xaa, 0x02, 0x0a, 0x0d, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 0x73, 0x77, 2023 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 2024 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 2025 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, 2026 0x69, 0x70, 0x70, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, 2027 0x69, 0x70, 0x70, 0x65, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 2028 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 2029 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 2030 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2031 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 2032 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 0x73, 2033 0x77, 0x65, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 2034 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 2035 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 2036 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 2037 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 2038 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 2039 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 2040 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xaa, 0x02, 2041 0x0a, 0x09, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 2042 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73, 2043 0x77, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 2044 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 2045 0x6e, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 2046 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 2047 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 2048 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 2049 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2050 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 2051 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 2052 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 2053 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 2054 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 2055 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3b, 0x0a, 2056 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 2057 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 2058 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 2059 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc2, 0x02, 0x0a, 0x10, 0x53, 2060 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 2061 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 2062 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 2063 0x75, 0x73, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x71, 0x0a, 0x19, 0x73, 2064 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 2065 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 2066 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 2067 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 2068 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 2069 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x17, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 2070 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 2071 0x0a, 0x1c, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x66, 0x61, 0x71, 0x5f, 0x61, 0x6e, 2072 0x73, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03, 2073 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 2074 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 2075 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 2076 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x19, 0x73, 2077 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 2078 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x73, 0x75, 0x67, 0x67, 2079 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 2080 0x8c, 0x01, 0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 2081 0x73, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 2082 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 2083 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 2084 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x0a, 2085 0x0f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 2086 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2087 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 2088 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x86, 2089 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 2090 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 2091 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2092 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 2093 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 2094 0x65, 0x50, 0x61, 0x72, 0x74, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 2095 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 2096 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x45, 2097 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x32, 0xff, 0x11, 0x0a, 0x0c, 0x50, 0x61, 0x72, 0x74, 2098 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0xa5, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65, 2099 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x34, 2100 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 2101 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 2102 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 2103 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 2104 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 2105 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0xb0, 0x01, 2106 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x94, 0x01, 0x22, 0x34, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 2107 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2108 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 2109 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x3a, 0x0b, 0x70, 2110 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5a, 0x4f, 0x22, 0x40, 0x2f, 0x76, 2111 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 2112 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 2113 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 2114 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x3a, 0x0b, 2115 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0xda, 0x41, 0x12, 0x70, 0x61, 2116 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 2117 0x12, 0xf6, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 2118 0x61, 0x6e, 0x74, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2119 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 2120 0x2e, 0x47, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 2121 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2122 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 2123 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 2124 0x87, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x7a, 0x12, 0x34, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x6e, 2125 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 2126 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 2127 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x42, 2128 0x12, 0x40, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 2129 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 2130 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 2131 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 2132 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x89, 0x02, 0x0a, 0x10, 0x4c, 0x69, 2133 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x33, 2134 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 2135 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 2136 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 2137 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2138 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 2139 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 2140 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x89, 0x01, 0x82, 0xd3, 0xe4, 0x93, 2141 0x02, 0x7a, 0x12, 0x34, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 2142 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2143 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 2144 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x5a, 0x42, 0x12, 0x40, 0x2f, 0x76, 0x32, 0x2f, 2145 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 2146 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 2147 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 2148 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 2149 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xc2, 0x02, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 2150 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 2151 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 2152 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 2153 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 2154 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2155 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x50, 2156 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0xcd, 0x01, 0x82, 0xd3, 0xe4, 2157 0x93, 0x02, 0xac, 0x01, 0x32, 0x40, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 2158 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 2159 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 2160 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 2161 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 2162 0x61, 0x6e, 0x74, 0x5a, 0x5b, 0x32, 0x4c, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 2163 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 2164 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2165 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2166 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 2167 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 2168 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2c, 0x75, 2169 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xe0, 0x02, 0x0a, 0x0e, 0x41, 2170 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x2e, 2171 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 2172 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 2173 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2174 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2175 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x6e, 2176 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 2177 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe6, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xac, 0x01, 0x22, 0x4a, 2178 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 2179 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 2180 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 2181 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x61, 0x6e, 0x61, 0x6c, 2182 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x5b, 0x22, 2183 0x56, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 2184 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 2185 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 2186 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 2187 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 2188 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x16, 0x70, 0x61, 0x72, 2189 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2c, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x69, 0x6e, 2190 0x70, 0x75, 0x74, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 2191 0x74, 0x2c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0xc9, 0x02, 2192 0x0a, 0x0f, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 2193 0x73, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2194 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x53, 2195 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 2196 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2197 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 2198 0x76, 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 2199 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcc, 0x01, 0x82, 0xd3, 0xe4, 2200 0x93, 0x02, 0xbc, 0x01, 0x22, 0x52, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 2201 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 2202 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 2203 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 2204 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 2205 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 0x63, 0x22, 0x5e, 0x2f, 2206 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 2207 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 2208 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 2209 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 2210 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 2211 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x01, 0x2a, 2212 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xd3, 0x02, 0x0a, 0x11, 0x53, 0x75, 2213 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 2214 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 2215 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x75, 0x67, 2216 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 2217 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2218 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 2219 0x76, 0x32, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 2220 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd0, 0x01, 0x82, 2221 0xd3, 0xe4, 0x93, 0x02, 0xc0, 0x01, 0x22, 0x54, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 2222 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 2223 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 2224 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 2225 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 2226 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 2227 0x65, 0x22, 0x60, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 2228 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 2229 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 2230 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 2231 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 2232 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 2233 0x65, 0x72, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x1a, 2234 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 2235 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 2236 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2237 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 2238 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 2239 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2240 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 2241 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0x9f, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 2242 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 2243 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x42, 0x10, 0x50, 0x61, 2244 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 2245 0x5a, 0x44, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 2246 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 2247 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 2248 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x3b, 0x64, 0x69, 0x61, 0x6c, 2249 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 2250 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 2251 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 2252 0x74, 0x6f, 0x33, 2253} 2254 2255var ( 2256 file_google_cloud_dialogflow_v2_participant_proto_rawDescOnce sync.Once 2257 file_google_cloud_dialogflow_v2_participant_proto_rawDescData = file_google_cloud_dialogflow_v2_participant_proto_rawDesc 2258) 2259 2260func file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP() []byte { 2261 file_google_cloud_dialogflow_v2_participant_proto_rawDescOnce.Do(func() { 2262 file_google_cloud_dialogflow_v2_participant_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2_participant_proto_rawDescData) 2263 }) 2264 return file_google_cloud_dialogflow_v2_participant_proto_rawDescData 2265} 2266 2267var file_google_cloud_dialogflow_v2_participant_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 2268var file_google_cloud_dialogflow_v2_participant_proto_msgTypes = make([]protoimpl.MessageInfo, 23) 2269var file_google_cloud_dialogflow_v2_participant_proto_goTypes = []interface{}{ 2270 (Participant_Role)(0), // 0: google.cloud.dialogflow.v2.Participant.Role 2271 (*Participant)(nil), // 1: google.cloud.dialogflow.v2.Participant 2272 (*Message)(nil), // 2: google.cloud.dialogflow.v2.Message 2273 (*CreateParticipantRequest)(nil), // 3: google.cloud.dialogflow.v2.CreateParticipantRequest 2274 (*GetParticipantRequest)(nil), // 4: google.cloud.dialogflow.v2.GetParticipantRequest 2275 (*ListParticipantsRequest)(nil), // 5: google.cloud.dialogflow.v2.ListParticipantsRequest 2276 (*ListParticipantsResponse)(nil), // 6: google.cloud.dialogflow.v2.ListParticipantsResponse 2277 (*UpdateParticipantRequest)(nil), // 7: google.cloud.dialogflow.v2.UpdateParticipantRequest 2278 (*AnalyzeContentRequest)(nil), // 8: google.cloud.dialogflow.v2.AnalyzeContentRequest 2279 (*DtmfParameters)(nil), // 9: google.cloud.dialogflow.v2.DtmfParameters 2280 (*AnalyzeContentResponse)(nil), // 10: google.cloud.dialogflow.v2.AnalyzeContentResponse 2281 (*SuggestArticlesRequest)(nil), // 11: google.cloud.dialogflow.v2.SuggestArticlesRequest 2282 (*SuggestArticlesResponse)(nil), // 12: google.cloud.dialogflow.v2.SuggestArticlesResponse 2283 (*SuggestFaqAnswersRequest)(nil), // 13: google.cloud.dialogflow.v2.SuggestFaqAnswersRequest 2284 (*SuggestFaqAnswersResponse)(nil), // 14: google.cloud.dialogflow.v2.SuggestFaqAnswersResponse 2285 (*OutputAudio)(nil), // 15: google.cloud.dialogflow.v2.OutputAudio 2286 (*AutomatedAgentReply)(nil), // 16: google.cloud.dialogflow.v2.AutomatedAgentReply 2287 (*ArticleAnswer)(nil), // 17: google.cloud.dialogflow.v2.ArticleAnswer 2288 (*FaqAnswer)(nil), // 18: google.cloud.dialogflow.v2.FaqAnswer 2289 (*SuggestionResult)(nil), // 19: google.cloud.dialogflow.v2.SuggestionResult 2290 (*AnnotatedMessagePart)(nil), // 20: google.cloud.dialogflow.v2.AnnotatedMessagePart 2291 (*MessageAnnotation)(nil), // 21: google.cloud.dialogflow.v2.MessageAnnotation 2292 nil, // 22: google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry 2293 nil, // 23: google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry 2294 (*timestamppb.Timestamp)(nil), // 24: google.protobuf.Timestamp 2295 (*fieldmaskpb.FieldMask)(nil), // 25: google.protobuf.FieldMask 2296 (*TextInput)(nil), // 26: google.cloud.dialogflow.v2.TextInput 2297 (*EventInput)(nil), // 27: google.cloud.dialogflow.v2.EventInput 2298 (*OutputAudioConfig)(nil), // 28: google.cloud.dialogflow.v2.OutputAudioConfig 2299 (*QueryParameters)(nil), // 29: google.cloud.dialogflow.v2.QueryParameters 2300 (*DetectIntentResponse)(nil), // 30: google.cloud.dialogflow.v2.DetectIntentResponse 2301 (*status.Status)(nil), // 31: google.rpc.Status 2302 (*structpb.Value)(nil), // 32: google.protobuf.Value 2303} 2304var file_google_cloud_dialogflow_v2_participant_proto_depIdxs = []int32{ 2305 0, // 0: google.cloud.dialogflow.v2.Participant.role:type_name -> google.cloud.dialogflow.v2.Participant.Role 2306 0, // 1: google.cloud.dialogflow.v2.Message.participant_role:type_name -> google.cloud.dialogflow.v2.Participant.Role 2307 24, // 2: google.cloud.dialogflow.v2.Message.create_time:type_name -> google.protobuf.Timestamp 2308 21, // 3: google.cloud.dialogflow.v2.Message.message_annotation:type_name -> google.cloud.dialogflow.v2.MessageAnnotation 2309 1, // 4: google.cloud.dialogflow.v2.CreateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2.Participant 2310 1, // 5: google.cloud.dialogflow.v2.ListParticipantsResponse.participants:type_name -> google.cloud.dialogflow.v2.Participant 2311 1, // 6: google.cloud.dialogflow.v2.UpdateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2.Participant 2312 25, // 7: google.cloud.dialogflow.v2.UpdateParticipantRequest.update_mask:type_name -> google.protobuf.FieldMask 2313 26, // 8: google.cloud.dialogflow.v2.AnalyzeContentRequest.text_input:type_name -> google.cloud.dialogflow.v2.TextInput 2314 27, // 9: google.cloud.dialogflow.v2.AnalyzeContentRequest.event_input:type_name -> google.cloud.dialogflow.v2.EventInput 2315 28, // 10: google.cloud.dialogflow.v2.AnalyzeContentRequest.reply_audio_config:type_name -> google.cloud.dialogflow.v2.OutputAudioConfig 2316 29, // 11: google.cloud.dialogflow.v2.AnalyzeContentRequest.query_params:type_name -> google.cloud.dialogflow.v2.QueryParameters 2317 15, // 12: google.cloud.dialogflow.v2.AnalyzeContentResponse.reply_audio:type_name -> google.cloud.dialogflow.v2.OutputAudio 2318 16, // 13: google.cloud.dialogflow.v2.AnalyzeContentResponse.automated_agent_reply:type_name -> google.cloud.dialogflow.v2.AutomatedAgentReply 2319 2, // 14: google.cloud.dialogflow.v2.AnalyzeContentResponse.message:type_name -> google.cloud.dialogflow.v2.Message 2320 19, // 15: google.cloud.dialogflow.v2.AnalyzeContentResponse.human_agent_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult 2321 19, // 16: google.cloud.dialogflow.v2.AnalyzeContentResponse.end_user_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult 2322 9, // 17: google.cloud.dialogflow.v2.AnalyzeContentResponse.dtmf_parameters:type_name -> google.cloud.dialogflow.v2.DtmfParameters 2323 17, // 18: google.cloud.dialogflow.v2.SuggestArticlesResponse.article_answers:type_name -> google.cloud.dialogflow.v2.ArticleAnswer 2324 18, // 19: google.cloud.dialogflow.v2.SuggestFaqAnswersResponse.faq_answers:type_name -> google.cloud.dialogflow.v2.FaqAnswer 2325 28, // 20: google.cloud.dialogflow.v2.OutputAudio.config:type_name -> google.cloud.dialogflow.v2.OutputAudioConfig 2326 30, // 21: google.cloud.dialogflow.v2.AutomatedAgentReply.detect_intent_response:type_name -> google.cloud.dialogflow.v2.DetectIntentResponse 2327 22, // 22: google.cloud.dialogflow.v2.ArticleAnswer.metadata:type_name -> google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry 2328 23, // 23: google.cloud.dialogflow.v2.FaqAnswer.metadata:type_name -> google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry 2329 31, // 24: google.cloud.dialogflow.v2.SuggestionResult.error:type_name -> google.rpc.Status 2330 12, // 25: google.cloud.dialogflow.v2.SuggestionResult.suggest_articles_response:type_name -> google.cloud.dialogflow.v2.SuggestArticlesResponse 2331 14, // 26: google.cloud.dialogflow.v2.SuggestionResult.suggest_faq_answers_response:type_name -> google.cloud.dialogflow.v2.SuggestFaqAnswersResponse 2332 32, // 27: google.cloud.dialogflow.v2.AnnotatedMessagePart.formatted_value:type_name -> google.protobuf.Value 2333 20, // 28: google.cloud.dialogflow.v2.MessageAnnotation.parts:type_name -> google.cloud.dialogflow.v2.AnnotatedMessagePart 2334 3, // 29: google.cloud.dialogflow.v2.Participants.CreateParticipant:input_type -> google.cloud.dialogflow.v2.CreateParticipantRequest 2335 4, // 30: google.cloud.dialogflow.v2.Participants.GetParticipant:input_type -> google.cloud.dialogflow.v2.GetParticipantRequest 2336 5, // 31: google.cloud.dialogflow.v2.Participants.ListParticipants:input_type -> google.cloud.dialogflow.v2.ListParticipantsRequest 2337 7, // 32: google.cloud.dialogflow.v2.Participants.UpdateParticipant:input_type -> google.cloud.dialogflow.v2.UpdateParticipantRequest 2338 8, // 33: google.cloud.dialogflow.v2.Participants.AnalyzeContent:input_type -> google.cloud.dialogflow.v2.AnalyzeContentRequest 2339 11, // 34: google.cloud.dialogflow.v2.Participants.SuggestArticles:input_type -> google.cloud.dialogflow.v2.SuggestArticlesRequest 2340 13, // 35: google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers:input_type -> google.cloud.dialogflow.v2.SuggestFaqAnswersRequest 2341 1, // 36: google.cloud.dialogflow.v2.Participants.CreateParticipant:output_type -> google.cloud.dialogflow.v2.Participant 2342 1, // 37: google.cloud.dialogflow.v2.Participants.GetParticipant:output_type -> google.cloud.dialogflow.v2.Participant 2343 6, // 38: google.cloud.dialogflow.v2.Participants.ListParticipants:output_type -> google.cloud.dialogflow.v2.ListParticipantsResponse 2344 1, // 39: google.cloud.dialogflow.v2.Participants.UpdateParticipant:output_type -> google.cloud.dialogflow.v2.Participant 2345 10, // 40: google.cloud.dialogflow.v2.Participants.AnalyzeContent:output_type -> google.cloud.dialogflow.v2.AnalyzeContentResponse 2346 12, // 41: google.cloud.dialogflow.v2.Participants.SuggestArticles:output_type -> google.cloud.dialogflow.v2.SuggestArticlesResponse 2347 14, // 42: google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers:output_type -> google.cloud.dialogflow.v2.SuggestFaqAnswersResponse 2348 36, // [36:43] is the sub-list for method output_type 2349 29, // [29:36] is the sub-list for method input_type 2350 29, // [29:29] is the sub-list for extension type_name 2351 29, // [29:29] is the sub-list for extension extendee 2352 0, // [0:29] is the sub-list for field type_name 2353} 2354 2355func init() { file_google_cloud_dialogflow_v2_participant_proto_init() } 2356func file_google_cloud_dialogflow_v2_participant_proto_init() { 2357 if File_google_cloud_dialogflow_v2_participant_proto != nil { 2358 return 2359 } 2360 file_google_cloud_dialogflow_v2_audio_config_proto_init() 2361 file_google_cloud_dialogflow_v2_session_proto_init() 2362 if !protoimpl.UnsafeEnabled { 2363 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2364 switch v := v.(*Participant); i { 2365 case 0: 2366 return &v.state 2367 case 1: 2368 return &v.sizeCache 2369 case 2: 2370 return &v.unknownFields 2371 default: 2372 return nil 2373 } 2374 } 2375 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2376 switch v := v.(*Message); i { 2377 case 0: 2378 return &v.state 2379 case 1: 2380 return &v.sizeCache 2381 case 2: 2382 return &v.unknownFields 2383 default: 2384 return nil 2385 } 2386 } 2387 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2388 switch v := v.(*CreateParticipantRequest); i { 2389 case 0: 2390 return &v.state 2391 case 1: 2392 return &v.sizeCache 2393 case 2: 2394 return &v.unknownFields 2395 default: 2396 return nil 2397 } 2398 } 2399 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2400 switch v := v.(*GetParticipantRequest); i { 2401 case 0: 2402 return &v.state 2403 case 1: 2404 return &v.sizeCache 2405 case 2: 2406 return &v.unknownFields 2407 default: 2408 return nil 2409 } 2410 } 2411 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2412 switch v := v.(*ListParticipantsRequest); i { 2413 case 0: 2414 return &v.state 2415 case 1: 2416 return &v.sizeCache 2417 case 2: 2418 return &v.unknownFields 2419 default: 2420 return nil 2421 } 2422 } 2423 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2424 switch v := v.(*ListParticipantsResponse); i { 2425 case 0: 2426 return &v.state 2427 case 1: 2428 return &v.sizeCache 2429 case 2: 2430 return &v.unknownFields 2431 default: 2432 return nil 2433 } 2434 } 2435 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2436 switch v := v.(*UpdateParticipantRequest); i { 2437 case 0: 2438 return &v.state 2439 case 1: 2440 return &v.sizeCache 2441 case 2: 2442 return &v.unknownFields 2443 default: 2444 return nil 2445 } 2446 } 2447 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2448 switch v := v.(*AnalyzeContentRequest); i { 2449 case 0: 2450 return &v.state 2451 case 1: 2452 return &v.sizeCache 2453 case 2: 2454 return &v.unknownFields 2455 default: 2456 return nil 2457 } 2458 } 2459 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2460 switch v := v.(*DtmfParameters); i { 2461 case 0: 2462 return &v.state 2463 case 1: 2464 return &v.sizeCache 2465 case 2: 2466 return &v.unknownFields 2467 default: 2468 return nil 2469 } 2470 } 2471 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2472 switch v := v.(*AnalyzeContentResponse); i { 2473 case 0: 2474 return &v.state 2475 case 1: 2476 return &v.sizeCache 2477 case 2: 2478 return &v.unknownFields 2479 default: 2480 return nil 2481 } 2482 } 2483 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2484 switch v := v.(*SuggestArticlesRequest); i { 2485 case 0: 2486 return &v.state 2487 case 1: 2488 return &v.sizeCache 2489 case 2: 2490 return &v.unknownFields 2491 default: 2492 return nil 2493 } 2494 } 2495 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2496 switch v := v.(*SuggestArticlesResponse); i { 2497 case 0: 2498 return &v.state 2499 case 1: 2500 return &v.sizeCache 2501 case 2: 2502 return &v.unknownFields 2503 default: 2504 return nil 2505 } 2506 } 2507 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2508 switch v := v.(*SuggestFaqAnswersRequest); i { 2509 case 0: 2510 return &v.state 2511 case 1: 2512 return &v.sizeCache 2513 case 2: 2514 return &v.unknownFields 2515 default: 2516 return nil 2517 } 2518 } 2519 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 2520 switch v := v.(*SuggestFaqAnswersResponse); i { 2521 case 0: 2522 return &v.state 2523 case 1: 2524 return &v.sizeCache 2525 case 2: 2526 return &v.unknownFields 2527 default: 2528 return nil 2529 } 2530 } 2531 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 2532 switch v := v.(*OutputAudio); i { 2533 case 0: 2534 return &v.state 2535 case 1: 2536 return &v.sizeCache 2537 case 2: 2538 return &v.unknownFields 2539 default: 2540 return nil 2541 } 2542 } 2543 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 2544 switch v := v.(*AutomatedAgentReply); i { 2545 case 0: 2546 return &v.state 2547 case 1: 2548 return &v.sizeCache 2549 case 2: 2550 return &v.unknownFields 2551 default: 2552 return nil 2553 } 2554 } 2555 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 2556 switch v := v.(*ArticleAnswer); i { 2557 case 0: 2558 return &v.state 2559 case 1: 2560 return &v.sizeCache 2561 case 2: 2562 return &v.unknownFields 2563 default: 2564 return nil 2565 } 2566 } 2567 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 2568 switch v := v.(*FaqAnswer); i { 2569 case 0: 2570 return &v.state 2571 case 1: 2572 return &v.sizeCache 2573 case 2: 2574 return &v.unknownFields 2575 default: 2576 return nil 2577 } 2578 } 2579 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 2580 switch v := v.(*SuggestionResult); i { 2581 case 0: 2582 return &v.state 2583 case 1: 2584 return &v.sizeCache 2585 case 2: 2586 return &v.unknownFields 2587 default: 2588 return nil 2589 } 2590 } 2591 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 2592 switch v := v.(*AnnotatedMessagePart); i { 2593 case 0: 2594 return &v.state 2595 case 1: 2596 return &v.sizeCache 2597 case 2: 2598 return &v.unknownFields 2599 default: 2600 return nil 2601 } 2602 } 2603 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 2604 switch v := v.(*MessageAnnotation); i { 2605 case 0: 2606 return &v.state 2607 case 1: 2608 return &v.sizeCache 2609 case 2: 2610 return &v.unknownFields 2611 default: 2612 return nil 2613 } 2614 } 2615 } 2616 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[7].OneofWrappers = []interface{}{ 2617 (*AnalyzeContentRequest_TextInput)(nil), 2618 (*AnalyzeContentRequest_EventInput)(nil), 2619 } 2620 file_google_cloud_dialogflow_v2_participant_proto_msgTypes[18].OneofWrappers = []interface{}{ 2621 (*SuggestionResult_Error)(nil), 2622 (*SuggestionResult_SuggestArticlesResponse)(nil), 2623 (*SuggestionResult_SuggestFaqAnswersResponse)(nil), 2624 } 2625 type x struct{} 2626 out := protoimpl.TypeBuilder{ 2627 File: protoimpl.DescBuilder{ 2628 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2629 RawDescriptor: file_google_cloud_dialogflow_v2_participant_proto_rawDesc, 2630 NumEnums: 1, 2631 NumMessages: 23, 2632 NumExtensions: 0, 2633 NumServices: 1, 2634 }, 2635 GoTypes: file_google_cloud_dialogflow_v2_participant_proto_goTypes, 2636 DependencyIndexes: file_google_cloud_dialogflow_v2_participant_proto_depIdxs, 2637 EnumInfos: file_google_cloud_dialogflow_v2_participant_proto_enumTypes, 2638 MessageInfos: file_google_cloud_dialogflow_v2_participant_proto_msgTypes, 2639 }.Build() 2640 File_google_cloud_dialogflow_v2_participant_proto = out.File 2641 file_google_cloud_dialogflow_v2_participant_proto_rawDesc = nil 2642 file_google_cloud_dialogflow_v2_participant_proto_goTypes = nil 2643 file_google_cloud_dialogflow_v2_participant_proto_depIdxs = nil 2644} 2645 2646// Reference imports to suppress errors if they are not otherwise used. 2647var _ context.Context 2648var _ grpc.ClientConnInterface 2649 2650// This is a compile-time assertion to ensure that this generated file 2651// is compatible with the grpc package it is being compiled against. 2652const _ = grpc.SupportPackageIsVersion6 2653 2654// ParticipantsClient is the client API for Participants service. 2655// 2656// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2657type ParticipantsClient interface { 2658 // Creates a new participant in a conversation. 2659 CreateParticipant(ctx context.Context, in *CreateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) 2660 // Retrieves a conversation participant. 2661 GetParticipant(ctx context.Context, in *GetParticipantRequest, opts ...grpc.CallOption) (*Participant, error) 2662 // Returns the list of all participants in the specified conversation. 2663 ListParticipants(ctx context.Context, in *ListParticipantsRequest, opts ...grpc.CallOption) (*ListParticipantsResponse, error) 2664 // Updates the specified participant. 2665 UpdateParticipant(ctx context.Context, in *UpdateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) 2666 // Adds a text (chat, for example), or audio (phone recording, for example) 2667 // message from a participant into the conversation. 2668 // 2669 // Note: Always use agent versions for production traffic 2670 // sent to virtual agents. See [Versions and 2671 // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions). 2672 AnalyzeContent(ctx context.Context, in *AnalyzeContentRequest, opts ...grpc.CallOption) (*AnalyzeContentResponse, error) 2673 // Gets suggested articles for a participant based on specific historical 2674 // messages. 2675 SuggestArticles(ctx context.Context, in *SuggestArticlesRequest, opts ...grpc.CallOption) (*SuggestArticlesResponse, error) 2676 // Gets suggested faq answers for a participant based on specific historical 2677 // messages. 2678 SuggestFaqAnswers(ctx context.Context, in *SuggestFaqAnswersRequest, opts ...grpc.CallOption) (*SuggestFaqAnswersResponse, error) 2679} 2680 2681type participantsClient struct { 2682 cc grpc.ClientConnInterface 2683} 2684 2685func NewParticipantsClient(cc grpc.ClientConnInterface) ParticipantsClient { 2686 return &participantsClient{cc} 2687} 2688 2689func (c *participantsClient) CreateParticipant(ctx context.Context, in *CreateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) { 2690 out := new(Participant) 2691 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/CreateParticipant", in, out, opts...) 2692 if err != nil { 2693 return nil, err 2694 } 2695 return out, nil 2696} 2697 2698func (c *participantsClient) GetParticipant(ctx context.Context, in *GetParticipantRequest, opts ...grpc.CallOption) (*Participant, error) { 2699 out := new(Participant) 2700 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/GetParticipant", in, out, opts...) 2701 if err != nil { 2702 return nil, err 2703 } 2704 return out, nil 2705} 2706 2707func (c *participantsClient) ListParticipants(ctx context.Context, in *ListParticipantsRequest, opts ...grpc.CallOption) (*ListParticipantsResponse, error) { 2708 out := new(ListParticipantsResponse) 2709 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/ListParticipants", in, out, opts...) 2710 if err != nil { 2711 return nil, err 2712 } 2713 return out, nil 2714} 2715 2716func (c *participantsClient) UpdateParticipant(ctx context.Context, in *UpdateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) { 2717 out := new(Participant) 2718 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/UpdateParticipant", in, out, opts...) 2719 if err != nil { 2720 return nil, err 2721 } 2722 return out, nil 2723} 2724 2725func (c *participantsClient) AnalyzeContent(ctx context.Context, in *AnalyzeContentRequest, opts ...grpc.CallOption) (*AnalyzeContentResponse, error) { 2726 out := new(AnalyzeContentResponse) 2727 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/AnalyzeContent", in, out, opts...) 2728 if err != nil { 2729 return nil, err 2730 } 2731 return out, nil 2732} 2733 2734func (c *participantsClient) SuggestArticles(ctx context.Context, in *SuggestArticlesRequest, opts ...grpc.CallOption) (*SuggestArticlesResponse, error) { 2735 out := new(SuggestArticlesResponse) 2736 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/SuggestArticles", in, out, opts...) 2737 if err != nil { 2738 return nil, err 2739 } 2740 return out, nil 2741} 2742 2743func (c *participantsClient) SuggestFaqAnswers(ctx context.Context, in *SuggestFaqAnswersRequest, opts ...grpc.CallOption) (*SuggestFaqAnswersResponse, error) { 2744 out := new(SuggestFaqAnswersResponse) 2745 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Participants/SuggestFaqAnswers", in, out, opts...) 2746 if err != nil { 2747 return nil, err 2748 } 2749 return out, nil 2750} 2751 2752// ParticipantsServer is the server API for Participants service. 2753type ParticipantsServer interface { 2754 // Creates a new participant in a conversation. 2755 CreateParticipant(context.Context, *CreateParticipantRequest) (*Participant, error) 2756 // Retrieves a conversation participant. 2757 GetParticipant(context.Context, *GetParticipantRequest) (*Participant, error) 2758 // Returns the list of all participants in the specified conversation. 2759 ListParticipants(context.Context, *ListParticipantsRequest) (*ListParticipantsResponse, error) 2760 // Updates the specified participant. 2761 UpdateParticipant(context.Context, *UpdateParticipantRequest) (*Participant, error) 2762 // Adds a text (chat, for example), or audio (phone recording, for example) 2763 // message from a participant into the conversation. 2764 // 2765 // Note: Always use agent versions for production traffic 2766 // sent to virtual agents. See [Versions and 2767 // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions). 2768 AnalyzeContent(context.Context, *AnalyzeContentRequest) (*AnalyzeContentResponse, error) 2769 // Gets suggested articles for a participant based on specific historical 2770 // messages. 2771 SuggestArticles(context.Context, *SuggestArticlesRequest) (*SuggestArticlesResponse, error) 2772 // Gets suggested faq answers for a participant based on specific historical 2773 // messages. 2774 SuggestFaqAnswers(context.Context, *SuggestFaqAnswersRequest) (*SuggestFaqAnswersResponse, error) 2775} 2776 2777// UnimplementedParticipantsServer can be embedded to have forward compatible implementations. 2778type UnimplementedParticipantsServer struct { 2779} 2780 2781func (*UnimplementedParticipantsServer) CreateParticipant(context.Context, *CreateParticipantRequest) (*Participant, error) { 2782 return nil, status1.Errorf(codes.Unimplemented, "method CreateParticipant not implemented") 2783} 2784func (*UnimplementedParticipantsServer) GetParticipant(context.Context, *GetParticipantRequest) (*Participant, error) { 2785 return nil, status1.Errorf(codes.Unimplemented, "method GetParticipant not implemented") 2786} 2787func (*UnimplementedParticipantsServer) ListParticipants(context.Context, *ListParticipantsRequest) (*ListParticipantsResponse, error) { 2788 return nil, status1.Errorf(codes.Unimplemented, "method ListParticipants not implemented") 2789} 2790func (*UnimplementedParticipantsServer) UpdateParticipant(context.Context, *UpdateParticipantRequest) (*Participant, error) { 2791 return nil, status1.Errorf(codes.Unimplemented, "method UpdateParticipant not implemented") 2792} 2793func (*UnimplementedParticipantsServer) AnalyzeContent(context.Context, *AnalyzeContentRequest) (*AnalyzeContentResponse, error) { 2794 return nil, status1.Errorf(codes.Unimplemented, "method AnalyzeContent not implemented") 2795} 2796func (*UnimplementedParticipantsServer) SuggestArticles(context.Context, *SuggestArticlesRequest) (*SuggestArticlesResponse, error) { 2797 return nil, status1.Errorf(codes.Unimplemented, "method SuggestArticles not implemented") 2798} 2799func (*UnimplementedParticipantsServer) SuggestFaqAnswers(context.Context, *SuggestFaqAnswersRequest) (*SuggestFaqAnswersResponse, error) { 2800 return nil, status1.Errorf(codes.Unimplemented, "method SuggestFaqAnswers not implemented") 2801} 2802 2803func RegisterParticipantsServer(s *grpc.Server, srv ParticipantsServer) { 2804 s.RegisterService(&_Participants_serviceDesc, srv) 2805} 2806 2807func _Participants_CreateParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2808 in := new(CreateParticipantRequest) 2809 if err := dec(in); err != nil { 2810 return nil, err 2811 } 2812 if interceptor == nil { 2813 return srv.(ParticipantsServer).CreateParticipant(ctx, in) 2814 } 2815 info := &grpc.UnaryServerInfo{ 2816 Server: srv, 2817 FullMethod: "/google.cloud.dialogflow.v2.Participants/CreateParticipant", 2818 } 2819 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2820 return srv.(ParticipantsServer).CreateParticipant(ctx, req.(*CreateParticipantRequest)) 2821 } 2822 return interceptor(ctx, in, info, handler) 2823} 2824 2825func _Participants_GetParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2826 in := new(GetParticipantRequest) 2827 if err := dec(in); err != nil { 2828 return nil, err 2829 } 2830 if interceptor == nil { 2831 return srv.(ParticipantsServer).GetParticipant(ctx, in) 2832 } 2833 info := &grpc.UnaryServerInfo{ 2834 Server: srv, 2835 FullMethod: "/google.cloud.dialogflow.v2.Participants/GetParticipant", 2836 } 2837 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2838 return srv.(ParticipantsServer).GetParticipant(ctx, req.(*GetParticipantRequest)) 2839 } 2840 return interceptor(ctx, in, info, handler) 2841} 2842 2843func _Participants_ListParticipants_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2844 in := new(ListParticipantsRequest) 2845 if err := dec(in); err != nil { 2846 return nil, err 2847 } 2848 if interceptor == nil { 2849 return srv.(ParticipantsServer).ListParticipants(ctx, in) 2850 } 2851 info := &grpc.UnaryServerInfo{ 2852 Server: srv, 2853 FullMethod: "/google.cloud.dialogflow.v2.Participants/ListParticipants", 2854 } 2855 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2856 return srv.(ParticipantsServer).ListParticipants(ctx, req.(*ListParticipantsRequest)) 2857 } 2858 return interceptor(ctx, in, info, handler) 2859} 2860 2861func _Participants_UpdateParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2862 in := new(UpdateParticipantRequest) 2863 if err := dec(in); err != nil { 2864 return nil, err 2865 } 2866 if interceptor == nil { 2867 return srv.(ParticipantsServer).UpdateParticipant(ctx, in) 2868 } 2869 info := &grpc.UnaryServerInfo{ 2870 Server: srv, 2871 FullMethod: "/google.cloud.dialogflow.v2.Participants/UpdateParticipant", 2872 } 2873 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2874 return srv.(ParticipantsServer).UpdateParticipant(ctx, req.(*UpdateParticipantRequest)) 2875 } 2876 return interceptor(ctx, in, info, handler) 2877} 2878 2879func _Participants_AnalyzeContent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2880 in := new(AnalyzeContentRequest) 2881 if err := dec(in); err != nil { 2882 return nil, err 2883 } 2884 if interceptor == nil { 2885 return srv.(ParticipantsServer).AnalyzeContent(ctx, in) 2886 } 2887 info := &grpc.UnaryServerInfo{ 2888 Server: srv, 2889 FullMethod: "/google.cloud.dialogflow.v2.Participants/AnalyzeContent", 2890 } 2891 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2892 return srv.(ParticipantsServer).AnalyzeContent(ctx, req.(*AnalyzeContentRequest)) 2893 } 2894 return interceptor(ctx, in, info, handler) 2895} 2896 2897func _Participants_SuggestArticles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2898 in := new(SuggestArticlesRequest) 2899 if err := dec(in); err != nil { 2900 return nil, err 2901 } 2902 if interceptor == nil { 2903 return srv.(ParticipantsServer).SuggestArticles(ctx, in) 2904 } 2905 info := &grpc.UnaryServerInfo{ 2906 Server: srv, 2907 FullMethod: "/google.cloud.dialogflow.v2.Participants/SuggestArticles", 2908 } 2909 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2910 return srv.(ParticipantsServer).SuggestArticles(ctx, req.(*SuggestArticlesRequest)) 2911 } 2912 return interceptor(ctx, in, info, handler) 2913} 2914 2915func _Participants_SuggestFaqAnswers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2916 in := new(SuggestFaqAnswersRequest) 2917 if err := dec(in); err != nil { 2918 return nil, err 2919 } 2920 if interceptor == nil { 2921 return srv.(ParticipantsServer).SuggestFaqAnswers(ctx, in) 2922 } 2923 info := &grpc.UnaryServerInfo{ 2924 Server: srv, 2925 FullMethod: "/google.cloud.dialogflow.v2.Participants/SuggestFaqAnswers", 2926 } 2927 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2928 return srv.(ParticipantsServer).SuggestFaqAnswers(ctx, req.(*SuggestFaqAnswersRequest)) 2929 } 2930 return interceptor(ctx, in, info, handler) 2931} 2932 2933var _Participants_serviceDesc = grpc.ServiceDesc{ 2934 ServiceName: "google.cloud.dialogflow.v2.Participants", 2935 HandlerType: (*ParticipantsServer)(nil), 2936 Methods: []grpc.MethodDesc{ 2937 { 2938 MethodName: "CreateParticipant", 2939 Handler: _Participants_CreateParticipant_Handler, 2940 }, 2941 { 2942 MethodName: "GetParticipant", 2943 Handler: _Participants_GetParticipant_Handler, 2944 }, 2945 { 2946 MethodName: "ListParticipants", 2947 Handler: _Participants_ListParticipants_Handler, 2948 }, 2949 { 2950 MethodName: "UpdateParticipant", 2951 Handler: _Participants_UpdateParticipant_Handler, 2952 }, 2953 { 2954 MethodName: "AnalyzeContent", 2955 Handler: _Participants_AnalyzeContent_Handler, 2956 }, 2957 { 2958 MethodName: "SuggestArticles", 2959 Handler: _Participants_SuggestArticles_Handler, 2960 }, 2961 { 2962 MethodName: "SuggestFaqAnswers", 2963 Handler: _Participants_SuggestFaqAnswers_Handler, 2964 }, 2965 }, 2966 Streams: []grpc.StreamDesc{}, 2967 Metadata: "google/cloud/dialogflow/v2/participant.proto", 2968} 2969