github.com/prysmaticlabs/prysm@v1.4.4/proto/eth/v1alpha1/beacon_chain.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // versions: 3 // protoc-gen-go v1.25.0 4 // protoc v3.15.8 5 // source: proto/eth/v1alpha1/beacon_chain.proto 6 7 package eth 8 9 import ( 10 context "context" 11 reflect "reflect" 12 sync "sync" 13 14 proto "github.com/golang/protobuf/proto" 15 empty "github.com/golang/protobuf/ptypes/empty" 16 github_com_prysmaticlabs_eth2_types "github.com/prysmaticlabs/eth2-types" 17 _ "github.com/prysmaticlabs/prysm/proto/eth/ext" 18 _ "google.golang.org/genproto/googleapis/api/annotations" 19 grpc "google.golang.org/grpc" 20 codes "google.golang.org/grpc/codes" 21 status "google.golang.org/grpc/status" 22 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 23 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 24 ) 25 26 const ( 27 // Verify that this generated code is sufficiently up-to-date. 28 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 29 // Verify that runtime/protoimpl is sufficiently up-to-date. 30 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 31 ) 32 33 // This is a compile-time assertion that a sufficiently up-to-date version 34 // of the legacy proto package is being used. 35 const _ = proto.ProtoPackageIsVersion4 36 37 type SetAction int32 38 39 const ( 40 SetAction_ADD_VALIDATOR_KEYS SetAction = 0 41 SetAction_REMOVE_VALIDATOR_KEYS SetAction = 1 42 SetAction_SET_VALIDATOR_KEYS SetAction = 2 43 ) 44 45 // Enum value maps for SetAction. 46 var ( 47 SetAction_name = map[int32]string{ 48 0: "ADD_VALIDATOR_KEYS", 49 1: "REMOVE_VALIDATOR_KEYS", 50 2: "SET_VALIDATOR_KEYS", 51 } 52 SetAction_value = map[string]int32{ 53 "ADD_VALIDATOR_KEYS": 0, 54 "REMOVE_VALIDATOR_KEYS": 1, 55 "SET_VALIDATOR_KEYS": 2, 56 } 57 ) 58 59 func (x SetAction) Enum() *SetAction { 60 p := new(SetAction) 61 *p = x 62 return p 63 } 64 65 func (x SetAction) String() string { 66 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 67 } 68 69 func (SetAction) Descriptor() protoreflect.EnumDescriptor { 70 return file_proto_eth_v1alpha1_beacon_chain_proto_enumTypes[0].Descriptor() 71 } 72 73 func (SetAction) Type() protoreflect.EnumType { 74 return &file_proto_eth_v1alpha1_beacon_chain_proto_enumTypes[0] 75 } 76 77 func (x SetAction) Number() protoreflect.EnumNumber { 78 return protoreflect.EnumNumber(x) 79 } 80 81 // Deprecated: Use SetAction.Descriptor instead. 82 func (SetAction) EnumDescriptor() ([]byte, []int) { 83 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{0} 84 } 85 86 type ValidatorChangeSet struct { 87 state protoimpl.MessageState 88 sizeCache protoimpl.SizeCache 89 unknownFields protoimpl.UnknownFields 90 91 Action SetAction `protobuf:"varint,1,opt,name=action,proto3,enum=ethereum.eth.v1alpha1.SetAction" json:"action,omitempty"` 92 PublicKeys [][]byte `protobuf:"bytes,2,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"` 93 } 94 95 func (x *ValidatorChangeSet) Reset() { 96 *x = ValidatorChangeSet{} 97 if protoimpl.UnsafeEnabled { 98 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[0] 99 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 100 ms.StoreMessageInfo(mi) 101 } 102 } 103 104 func (x *ValidatorChangeSet) String() string { 105 return protoimpl.X.MessageStringOf(x) 106 } 107 108 func (*ValidatorChangeSet) ProtoMessage() {} 109 110 func (x *ValidatorChangeSet) ProtoReflect() protoreflect.Message { 111 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[0] 112 if protoimpl.UnsafeEnabled && x != nil { 113 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 114 if ms.LoadMessageInfo() == nil { 115 ms.StoreMessageInfo(mi) 116 } 117 return ms 118 } 119 return mi.MessageOf(x) 120 } 121 122 // Deprecated: Use ValidatorChangeSet.ProtoReflect.Descriptor instead. 123 func (*ValidatorChangeSet) Descriptor() ([]byte, []int) { 124 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{0} 125 } 126 127 func (x *ValidatorChangeSet) GetAction() SetAction { 128 if x != nil { 129 return x.Action 130 } 131 return SetAction_ADD_VALIDATOR_KEYS 132 } 133 134 func (x *ValidatorChangeSet) GetPublicKeys() [][]byte { 135 if x != nil { 136 return x.PublicKeys 137 } 138 return nil 139 } 140 141 type ListIndexedAttestationsRequest struct { 142 state protoimpl.MessageState 143 sizeCache protoimpl.SizeCache 144 unknownFields protoimpl.UnknownFields 145 146 // Types that are assignable to QueryFilter: 147 // *ListIndexedAttestationsRequest_Epoch 148 // *ListIndexedAttestationsRequest_GenesisEpoch 149 QueryFilter isListIndexedAttestationsRequest_QueryFilter `protobuf_oneof:"query_filter"` 150 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 151 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 152 } 153 154 func (x *ListIndexedAttestationsRequest) Reset() { 155 *x = ListIndexedAttestationsRequest{} 156 if protoimpl.UnsafeEnabled { 157 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[1] 158 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 159 ms.StoreMessageInfo(mi) 160 } 161 } 162 163 func (x *ListIndexedAttestationsRequest) String() string { 164 return protoimpl.X.MessageStringOf(x) 165 } 166 167 func (*ListIndexedAttestationsRequest) ProtoMessage() {} 168 169 func (x *ListIndexedAttestationsRequest) ProtoReflect() protoreflect.Message { 170 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[1] 171 if protoimpl.UnsafeEnabled && x != nil { 172 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 173 if ms.LoadMessageInfo() == nil { 174 ms.StoreMessageInfo(mi) 175 } 176 return ms 177 } 178 return mi.MessageOf(x) 179 } 180 181 // Deprecated: Use ListIndexedAttestationsRequest.ProtoReflect.Descriptor instead. 182 func (*ListIndexedAttestationsRequest) Descriptor() ([]byte, []int) { 183 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{1} 184 } 185 186 func (m *ListIndexedAttestationsRequest) GetQueryFilter() isListIndexedAttestationsRequest_QueryFilter { 187 if m != nil { 188 return m.QueryFilter 189 } 190 return nil 191 } 192 193 func (x *ListIndexedAttestationsRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 194 if x, ok := x.GetQueryFilter().(*ListIndexedAttestationsRequest_Epoch); ok { 195 return x.Epoch 196 } 197 return github_com_prysmaticlabs_eth2_types.Epoch(0) 198 } 199 200 func (x *ListIndexedAttestationsRequest) GetGenesisEpoch() bool { 201 if x, ok := x.GetQueryFilter().(*ListIndexedAttestationsRequest_GenesisEpoch); ok { 202 return x.GenesisEpoch 203 } 204 return false 205 } 206 207 func (x *ListIndexedAttestationsRequest) GetPageSize() int32 { 208 if x != nil { 209 return x.PageSize 210 } 211 return 0 212 } 213 214 func (x *ListIndexedAttestationsRequest) GetPageToken() string { 215 if x != nil { 216 return x.PageToken 217 } 218 return "" 219 } 220 221 type isListIndexedAttestationsRequest_QueryFilter interface { 222 isListIndexedAttestationsRequest_QueryFilter() 223 } 224 225 type ListIndexedAttestationsRequest_Epoch struct { 226 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 227 } 228 229 type ListIndexedAttestationsRequest_GenesisEpoch struct { 230 GenesisEpoch bool `protobuf:"varint,2,opt,name=genesis_epoch,json=genesisEpoch,proto3,oneof"` 231 } 232 233 func (*ListIndexedAttestationsRequest_Epoch) isListIndexedAttestationsRequest_QueryFilter() {} 234 235 func (*ListIndexedAttestationsRequest_GenesisEpoch) isListIndexedAttestationsRequest_QueryFilter() {} 236 237 type ListAttestationsRequest struct { 238 state protoimpl.MessageState 239 sizeCache protoimpl.SizeCache 240 unknownFields protoimpl.UnknownFields 241 242 // Types that are assignable to QueryFilter: 243 // *ListAttestationsRequest_Epoch 244 // *ListAttestationsRequest_GenesisEpoch 245 QueryFilter isListAttestationsRequest_QueryFilter `protobuf_oneof:"query_filter"` 246 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 247 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 248 } 249 250 func (x *ListAttestationsRequest) Reset() { 251 *x = ListAttestationsRequest{} 252 if protoimpl.UnsafeEnabled { 253 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[2] 254 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 255 ms.StoreMessageInfo(mi) 256 } 257 } 258 259 func (x *ListAttestationsRequest) String() string { 260 return protoimpl.X.MessageStringOf(x) 261 } 262 263 func (*ListAttestationsRequest) ProtoMessage() {} 264 265 func (x *ListAttestationsRequest) ProtoReflect() protoreflect.Message { 266 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[2] 267 if protoimpl.UnsafeEnabled && x != nil { 268 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 269 if ms.LoadMessageInfo() == nil { 270 ms.StoreMessageInfo(mi) 271 } 272 return ms 273 } 274 return mi.MessageOf(x) 275 } 276 277 // Deprecated: Use ListAttestationsRequest.ProtoReflect.Descriptor instead. 278 func (*ListAttestationsRequest) Descriptor() ([]byte, []int) { 279 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{2} 280 } 281 282 func (m *ListAttestationsRequest) GetQueryFilter() isListAttestationsRequest_QueryFilter { 283 if m != nil { 284 return m.QueryFilter 285 } 286 return nil 287 } 288 289 func (x *ListAttestationsRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 290 if x, ok := x.GetQueryFilter().(*ListAttestationsRequest_Epoch); ok { 291 return x.Epoch 292 } 293 return github_com_prysmaticlabs_eth2_types.Epoch(0) 294 } 295 296 func (x *ListAttestationsRequest) GetGenesisEpoch() bool { 297 if x, ok := x.GetQueryFilter().(*ListAttestationsRequest_GenesisEpoch); ok { 298 return x.GenesisEpoch 299 } 300 return false 301 } 302 303 func (x *ListAttestationsRequest) GetPageSize() int32 { 304 if x != nil { 305 return x.PageSize 306 } 307 return 0 308 } 309 310 func (x *ListAttestationsRequest) GetPageToken() string { 311 if x != nil { 312 return x.PageToken 313 } 314 return "" 315 } 316 317 type isListAttestationsRequest_QueryFilter interface { 318 isListAttestationsRequest_QueryFilter() 319 } 320 321 type ListAttestationsRequest_Epoch struct { 322 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 323 } 324 325 type ListAttestationsRequest_GenesisEpoch struct { 326 GenesisEpoch bool `protobuf:"varint,2,opt,name=genesis_epoch,json=genesisEpoch,proto3,oneof"` 327 } 328 329 func (*ListAttestationsRequest_Epoch) isListAttestationsRequest_QueryFilter() {} 330 331 func (*ListAttestationsRequest_GenesisEpoch) isListAttestationsRequest_QueryFilter() {} 332 333 type ListAttestationsResponse struct { 334 state protoimpl.MessageState 335 sizeCache protoimpl.SizeCache 336 unknownFields protoimpl.UnknownFields 337 338 Attestations []*Attestation `protobuf:"bytes,1,rep,name=attestations,proto3" json:"attestations,omitempty"` 339 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 340 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 341 } 342 343 func (x *ListAttestationsResponse) Reset() { 344 *x = ListAttestationsResponse{} 345 if protoimpl.UnsafeEnabled { 346 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[3] 347 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 348 ms.StoreMessageInfo(mi) 349 } 350 } 351 352 func (x *ListAttestationsResponse) String() string { 353 return protoimpl.X.MessageStringOf(x) 354 } 355 356 func (*ListAttestationsResponse) ProtoMessage() {} 357 358 func (x *ListAttestationsResponse) ProtoReflect() protoreflect.Message { 359 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[3] 360 if protoimpl.UnsafeEnabled && x != nil { 361 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 362 if ms.LoadMessageInfo() == nil { 363 ms.StoreMessageInfo(mi) 364 } 365 return ms 366 } 367 return mi.MessageOf(x) 368 } 369 370 // Deprecated: Use ListAttestationsResponse.ProtoReflect.Descriptor instead. 371 func (*ListAttestationsResponse) Descriptor() ([]byte, []int) { 372 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{3} 373 } 374 375 func (x *ListAttestationsResponse) GetAttestations() []*Attestation { 376 if x != nil { 377 return x.Attestations 378 } 379 return nil 380 } 381 382 func (x *ListAttestationsResponse) GetNextPageToken() string { 383 if x != nil { 384 return x.NextPageToken 385 } 386 return "" 387 } 388 389 func (x *ListAttestationsResponse) GetTotalSize() int32 { 390 if x != nil { 391 return x.TotalSize 392 } 393 return 0 394 } 395 396 type ListIndexedAttestationsResponse struct { 397 state protoimpl.MessageState 398 sizeCache protoimpl.SizeCache 399 unknownFields protoimpl.UnknownFields 400 401 IndexedAttestations []*IndexedAttestation `protobuf:"bytes,1,rep,name=indexed_attestations,json=indexedAttestations,proto3" json:"indexed_attestations,omitempty"` 402 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 403 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 404 } 405 406 func (x *ListIndexedAttestationsResponse) Reset() { 407 *x = ListIndexedAttestationsResponse{} 408 if protoimpl.UnsafeEnabled { 409 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[4] 410 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 411 ms.StoreMessageInfo(mi) 412 } 413 } 414 415 func (x *ListIndexedAttestationsResponse) String() string { 416 return protoimpl.X.MessageStringOf(x) 417 } 418 419 func (*ListIndexedAttestationsResponse) ProtoMessage() {} 420 421 func (x *ListIndexedAttestationsResponse) ProtoReflect() protoreflect.Message { 422 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[4] 423 if protoimpl.UnsafeEnabled && x != nil { 424 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 425 if ms.LoadMessageInfo() == nil { 426 ms.StoreMessageInfo(mi) 427 } 428 return ms 429 } 430 return mi.MessageOf(x) 431 } 432 433 // Deprecated: Use ListIndexedAttestationsResponse.ProtoReflect.Descriptor instead. 434 func (*ListIndexedAttestationsResponse) Descriptor() ([]byte, []int) { 435 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{4} 436 } 437 438 func (x *ListIndexedAttestationsResponse) GetIndexedAttestations() []*IndexedAttestation { 439 if x != nil { 440 return x.IndexedAttestations 441 } 442 return nil 443 } 444 445 func (x *ListIndexedAttestationsResponse) GetNextPageToken() string { 446 if x != nil { 447 return x.NextPageToken 448 } 449 return "" 450 } 451 452 func (x *ListIndexedAttestationsResponse) GetTotalSize() int32 { 453 if x != nil { 454 return x.TotalSize 455 } 456 return 0 457 } 458 459 type ListBlocksRequest struct { 460 state protoimpl.MessageState 461 sizeCache protoimpl.SizeCache 462 unknownFields protoimpl.UnknownFields 463 464 // Types that are assignable to QueryFilter: 465 // *ListBlocksRequest_Root 466 // *ListBlocksRequest_Slot 467 // *ListBlocksRequest_Epoch 468 // *ListBlocksRequest_Genesis 469 QueryFilter isListBlocksRequest_QueryFilter `protobuf_oneof:"query_filter"` 470 PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 471 PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 472 } 473 474 func (x *ListBlocksRequest) Reset() { 475 *x = ListBlocksRequest{} 476 if protoimpl.UnsafeEnabled { 477 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[5] 478 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 479 ms.StoreMessageInfo(mi) 480 } 481 } 482 483 func (x *ListBlocksRequest) String() string { 484 return protoimpl.X.MessageStringOf(x) 485 } 486 487 func (*ListBlocksRequest) ProtoMessage() {} 488 489 func (x *ListBlocksRequest) ProtoReflect() protoreflect.Message { 490 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[5] 491 if protoimpl.UnsafeEnabled && x != nil { 492 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 493 if ms.LoadMessageInfo() == nil { 494 ms.StoreMessageInfo(mi) 495 } 496 return ms 497 } 498 return mi.MessageOf(x) 499 } 500 501 // Deprecated: Use ListBlocksRequest.ProtoReflect.Descriptor instead. 502 func (*ListBlocksRequest) Descriptor() ([]byte, []int) { 503 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{5} 504 } 505 506 func (m *ListBlocksRequest) GetQueryFilter() isListBlocksRequest_QueryFilter { 507 if m != nil { 508 return m.QueryFilter 509 } 510 return nil 511 } 512 513 func (x *ListBlocksRequest) GetRoot() []byte { 514 if x, ok := x.GetQueryFilter().(*ListBlocksRequest_Root); ok { 515 return x.Root 516 } 517 return nil 518 } 519 520 func (x *ListBlocksRequest) GetSlot() github_com_prysmaticlabs_eth2_types.Slot { 521 if x, ok := x.GetQueryFilter().(*ListBlocksRequest_Slot); ok { 522 return x.Slot 523 } 524 return github_com_prysmaticlabs_eth2_types.Slot(0) 525 } 526 527 func (x *ListBlocksRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 528 if x, ok := x.GetQueryFilter().(*ListBlocksRequest_Epoch); ok { 529 return x.Epoch 530 } 531 return github_com_prysmaticlabs_eth2_types.Epoch(0) 532 } 533 534 func (x *ListBlocksRequest) GetGenesis() bool { 535 if x, ok := x.GetQueryFilter().(*ListBlocksRequest_Genesis); ok { 536 return x.Genesis 537 } 538 return false 539 } 540 541 func (x *ListBlocksRequest) GetPageSize() int32 { 542 if x != nil { 543 return x.PageSize 544 } 545 return 0 546 } 547 548 func (x *ListBlocksRequest) GetPageToken() string { 549 if x != nil { 550 return x.PageToken 551 } 552 return "" 553 } 554 555 type isListBlocksRequest_QueryFilter interface { 556 isListBlocksRequest_QueryFilter() 557 } 558 559 type ListBlocksRequest_Root struct { 560 Root []byte `protobuf:"bytes,1,opt,name=root,proto3,oneof"` 561 } 562 563 type ListBlocksRequest_Slot struct { 564 Slot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,2,opt,name=slot,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 565 } 566 567 type ListBlocksRequest_Epoch struct { 568 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,3,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 569 } 570 571 type ListBlocksRequest_Genesis struct { 572 Genesis bool `protobuf:"varint,4,opt,name=genesis,proto3,oneof"` 573 } 574 575 func (*ListBlocksRequest_Root) isListBlocksRequest_QueryFilter() {} 576 577 func (*ListBlocksRequest_Slot) isListBlocksRequest_QueryFilter() {} 578 579 func (*ListBlocksRequest_Epoch) isListBlocksRequest_QueryFilter() {} 580 581 func (*ListBlocksRequest_Genesis) isListBlocksRequest_QueryFilter() {} 582 583 type ListBlocksResponse struct { 584 state protoimpl.MessageState 585 sizeCache protoimpl.SizeCache 586 unknownFields protoimpl.UnknownFields 587 588 BlockContainers []*BeaconBlockContainer `protobuf:"bytes,1,rep,name=blockContainers,proto3" json:"blockContainers,omitempty"` 589 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 590 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 591 } 592 593 func (x *ListBlocksResponse) Reset() { 594 *x = ListBlocksResponse{} 595 if protoimpl.UnsafeEnabled { 596 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[6] 597 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 598 ms.StoreMessageInfo(mi) 599 } 600 } 601 602 func (x *ListBlocksResponse) String() string { 603 return protoimpl.X.MessageStringOf(x) 604 } 605 606 func (*ListBlocksResponse) ProtoMessage() {} 607 608 func (x *ListBlocksResponse) ProtoReflect() protoreflect.Message { 609 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[6] 610 if protoimpl.UnsafeEnabled && x != nil { 611 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 612 if ms.LoadMessageInfo() == nil { 613 ms.StoreMessageInfo(mi) 614 } 615 return ms 616 } 617 return mi.MessageOf(x) 618 } 619 620 // Deprecated: Use ListBlocksResponse.ProtoReflect.Descriptor instead. 621 func (*ListBlocksResponse) Descriptor() ([]byte, []int) { 622 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{6} 623 } 624 625 func (x *ListBlocksResponse) GetBlockContainers() []*BeaconBlockContainer { 626 if x != nil { 627 return x.BlockContainers 628 } 629 return nil 630 } 631 632 func (x *ListBlocksResponse) GetNextPageToken() string { 633 if x != nil { 634 return x.NextPageToken 635 } 636 return "" 637 } 638 639 func (x *ListBlocksResponse) GetTotalSize() int32 { 640 if x != nil { 641 return x.TotalSize 642 } 643 return 0 644 } 645 646 type StreamBlocksRequest struct { 647 state protoimpl.MessageState 648 sizeCache protoimpl.SizeCache 649 unknownFields protoimpl.UnknownFields 650 651 VerifiedOnly bool `protobuf:"varint,1,opt,name=verified_only,json=verifiedOnly,proto3" json:"verified_only,omitempty"` 652 } 653 654 func (x *StreamBlocksRequest) Reset() { 655 *x = StreamBlocksRequest{} 656 if protoimpl.UnsafeEnabled { 657 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[7] 658 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 659 ms.StoreMessageInfo(mi) 660 } 661 } 662 663 func (x *StreamBlocksRequest) String() string { 664 return protoimpl.X.MessageStringOf(x) 665 } 666 667 func (*StreamBlocksRequest) ProtoMessage() {} 668 669 func (x *StreamBlocksRequest) ProtoReflect() protoreflect.Message { 670 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[7] 671 if protoimpl.UnsafeEnabled && x != nil { 672 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 673 if ms.LoadMessageInfo() == nil { 674 ms.StoreMessageInfo(mi) 675 } 676 return ms 677 } 678 return mi.MessageOf(x) 679 } 680 681 // Deprecated: Use StreamBlocksRequest.ProtoReflect.Descriptor instead. 682 func (*StreamBlocksRequest) Descriptor() ([]byte, []int) { 683 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{7} 684 } 685 686 func (x *StreamBlocksRequest) GetVerifiedOnly() bool { 687 if x != nil { 688 return x.VerifiedOnly 689 } 690 return false 691 } 692 693 type BeaconBlockContainer struct { 694 state protoimpl.MessageState 695 sizeCache protoimpl.SizeCache 696 unknownFields protoimpl.UnknownFields 697 698 Block *SignedBeaconBlock `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"` 699 BlockRoot []byte `protobuf:"bytes,2,opt,name=block_root,json=blockRoot,proto3" json:"block_root,omitempty"` 700 Canonical bool `protobuf:"varint,3,opt,name=canonical,proto3" json:"canonical,omitempty"` 701 } 702 703 func (x *BeaconBlockContainer) Reset() { 704 *x = BeaconBlockContainer{} 705 if protoimpl.UnsafeEnabled { 706 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[8] 707 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 708 ms.StoreMessageInfo(mi) 709 } 710 } 711 712 func (x *BeaconBlockContainer) String() string { 713 return protoimpl.X.MessageStringOf(x) 714 } 715 716 func (*BeaconBlockContainer) ProtoMessage() {} 717 718 func (x *BeaconBlockContainer) ProtoReflect() protoreflect.Message { 719 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[8] 720 if protoimpl.UnsafeEnabled && x != nil { 721 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 722 if ms.LoadMessageInfo() == nil { 723 ms.StoreMessageInfo(mi) 724 } 725 return ms 726 } 727 return mi.MessageOf(x) 728 } 729 730 // Deprecated: Use BeaconBlockContainer.ProtoReflect.Descriptor instead. 731 func (*BeaconBlockContainer) Descriptor() ([]byte, []int) { 732 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{8} 733 } 734 735 func (x *BeaconBlockContainer) GetBlock() *SignedBeaconBlock { 736 if x != nil { 737 return x.Block 738 } 739 return nil 740 } 741 742 func (x *BeaconBlockContainer) GetBlockRoot() []byte { 743 if x != nil { 744 return x.BlockRoot 745 } 746 return nil 747 } 748 749 func (x *BeaconBlockContainer) GetCanonical() bool { 750 if x != nil { 751 return x.Canonical 752 } 753 return false 754 } 755 756 type ChainHead struct { 757 state protoimpl.MessageState 758 sizeCache protoimpl.SizeCache 759 unknownFields protoimpl.UnknownFields 760 761 HeadSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,1,opt,name=head_slot,json=headSlot,proto3" json:"head_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 762 HeadEpoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,2,opt,name=head_epoch,json=headEpoch,proto3" json:"head_epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 763 HeadBlockRoot []byte `protobuf:"bytes,3,opt,name=head_block_root,json=headBlockRoot,proto3" json:"head_block_root,omitempty" ssz-size:"32"` 764 FinalizedSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,4,opt,name=finalized_slot,json=finalizedSlot,proto3" json:"finalized_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 765 FinalizedEpoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,5,opt,name=finalized_epoch,json=finalizedEpoch,proto3" json:"finalized_epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 766 FinalizedBlockRoot []byte `protobuf:"bytes,6,opt,name=finalized_block_root,json=finalizedBlockRoot,proto3" json:"finalized_block_root,omitempty" ssz-size:"32"` 767 JustifiedSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,7,opt,name=justified_slot,json=justifiedSlot,proto3" json:"justified_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 768 JustifiedEpoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,8,opt,name=justified_epoch,json=justifiedEpoch,proto3" json:"justified_epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 769 JustifiedBlockRoot []byte `protobuf:"bytes,9,opt,name=justified_block_root,json=justifiedBlockRoot,proto3" json:"justified_block_root,omitempty" ssz-size:"32"` 770 PreviousJustifiedSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,10,opt,name=previous_justified_slot,json=previousJustifiedSlot,proto3" json:"previous_justified_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 771 PreviousJustifiedEpoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,11,opt,name=previous_justified_epoch,json=previousJustifiedEpoch,proto3" json:"previous_justified_epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 772 PreviousJustifiedBlockRoot []byte `protobuf:"bytes,12,opt,name=previous_justified_block_root,json=previousJustifiedBlockRoot,proto3" json:"previous_justified_block_root,omitempty" ssz-size:"32"` 773 } 774 775 func (x *ChainHead) Reset() { 776 *x = ChainHead{} 777 if protoimpl.UnsafeEnabled { 778 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[9] 779 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 780 ms.StoreMessageInfo(mi) 781 } 782 } 783 784 func (x *ChainHead) String() string { 785 return protoimpl.X.MessageStringOf(x) 786 } 787 788 func (*ChainHead) ProtoMessage() {} 789 790 func (x *ChainHead) ProtoReflect() protoreflect.Message { 791 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[9] 792 if protoimpl.UnsafeEnabled && x != nil { 793 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 794 if ms.LoadMessageInfo() == nil { 795 ms.StoreMessageInfo(mi) 796 } 797 return ms 798 } 799 return mi.MessageOf(x) 800 } 801 802 // Deprecated: Use ChainHead.ProtoReflect.Descriptor instead. 803 func (*ChainHead) Descriptor() ([]byte, []int) { 804 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{9} 805 } 806 807 func (x *ChainHead) GetHeadSlot() github_com_prysmaticlabs_eth2_types.Slot { 808 if x != nil { 809 return x.HeadSlot 810 } 811 return github_com_prysmaticlabs_eth2_types.Slot(0) 812 } 813 814 func (x *ChainHead) GetHeadEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 815 if x != nil { 816 return x.HeadEpoch 817 } 818 return github_com_prysmaticlabs_eth2_types.Epoch(0) 819 } 820 821 func (x *ChainHead) GetHeadBlockRoot() []byte { 822 if x != nil { 823 return x.HeadBlockRoot 824 } 825 return nil 826 } 827 828 func (x *ChainHead) GetFinalizedSlot() github_com_prysmaticlabs_eth2_types.Slot { 829 if x != nil { 830 return x.FinalizedSlot 831 } 832 return github_com_prysmaticlabs_eth2_types.Slot(0) 833 } 834 835 func (x *ChainHead) GetFinalizedEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 836 if x != nil { 837 return x.FinalizedEpoch 838 } 839 return github_com_prysmaticlabs_eth2_types.Epoch(0) 840 } 841 842 func (x *ChainHead) GetFinalizedBlockRoot() []byte { 843 if x != nil { 844 return x.FinalizedBlockRoot 845 } 846 return nil 847 } 848 849 func (x *ChainHead) GetJustifiedSlot() github_com_prysmaticlabs_eth2_types.Slot { 850 if x != nil { 851 return x.JustifiedSlot 852 } 853 return github_com_prysmaticlabs_eth2_types.Slot(0) 854 } 855 856 func (x *ChainHead) GetJustifiedEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 857 if x != nil { 858 return x.JustifiedEpoch 859 } 860 return github_com_prysmaticlabs_eth2_types.Epoch(0) 861 } 862 863 func (x *ChainHead) GetJustifiedBlockRoot() []byte { 864 if x != nil { 865 return x.JustifiedBlockRoot 866 } 867 return nil 868 } 869 870 func (x *ChainHead) GetPreviousJustifiedSlot() github_com_prysmaticlabs_eth2_types.Slot { 871 if x != nil { 872 return x.PreviousJustifiedSlot 873 } 874 return github_com_prysmaticlabs_eth2_types.Slot(0) 875 } 876 877 func (x *ChainHead) GetPreviousJustifiedEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 878 if x != nil { 879 return x.PreviousJustifiedEpoch 880 } 881 return github_com_prysmaticlabs_eth2_types.Epoch(0) 882 } 883 884 func (x *ChainHead) GetPreviousJustifiedBlockRoot() []byte { 885 if x != nil { 886 return x.PreviousJustifiedBlockRoot 887 } 888 return nil 889 } 890 891 type ListCommitteesRequest struct { 892 state protoimpl.MessageState 893 sizeCache protoimpl.SizeCache 894 unknownFields protoimpl.UnknownFields 895 896 // Types that are assignable to QueryFilter: 897 // *ListCommitteesRequest_Epoch 898 // *ListCommitteesRequest_Genesis 899 QueryFilter isListCommitteesRequest_QueryFilter `protobuf_oneof:"query_filter"` 900 } 901 902 func (x *ListCommitteesRequest) Reset() { 903 *x = ListCommitteesRequest{} 904 if protoimpl.UnsafeEnabled { 905 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[10] 906 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 907 ms.StoreMessageInfo(mi) 908 } 909 } 910 911 func (x *ListCommitteesRequest) String() string { 912 return protoimpl.X.MessageStringOf(x) 913 } 914 915 func (*ListCommitteesRequest) ProtoMessage() {} 916 917 func (x *ListCommitteesRequest) ProtoReflect() protoreflect.Message { 918 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[10] 919 if protoimpl.UnsafeEnabled && x != nil { 920 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 921 if ms.LoadMessageInfo() == nil { 922 ms.StoreMessageInfo(mi) 923 } 924 return ms 925 } 926 return mi.MessageOf(x) 927 } 928 929 // Deprecated: Use ListCommitteesRequest.ProtoReflect.Descriptor instead. 930 func (*ListCommitteesRequest) Descriptor() ([]byte, []int) { 931 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{10} 932 } 933 934 func (m *ListCommitteesRequest) GetQueryFilter() isListCommitteesRequest_QueryFilter { 935 if m != nil { 936 return m.QueryFilter 937 } 938 return nil 939 } 940 941 func (x *ListCommitteesRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 942 if x, ok := x.GetQueryFilter().(*ListCommitteesRequest_Epoch); ok { 943 return x.Epoch 944 } 945 return github_com_prysmaticlabs_eth2_types.Epoch(0) 946 } 947 948 func (x *ListCommitteesRequest) GetGenesis() bool { 949 if x, ok := x.GetQueryFilter().(*ListCommitteesRequest_Genesis); ok { 950 return x.Genesis 951 } 952 return false 953 } 954 955 type isListCommitteesRequest_QueryFilter interface { 956 isListCommitteesRequest_QueryFilter() 957 } 958 959 type ListCommitteesRequest_Epoch struct { 960 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 961 } 962 963 type ListCommitteesRequest_Genesis struct { 964 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 965 } 966 967 func (*ListCommitteesRequest_Epoch) isListCommitteesRequest_QueryFilter() {} 968 969 func (*ListCommitteesRequest_Genesis) isListCommitteesRequest_QueryFilter() {} 970 971 type BeaconCommittees struct { 972 state protoimpl.MessageState 973 sizeCache protoimpl.SizeCache 974 unknownFields protoimpl.UnknownFields 975 976 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 977 Committees map[uint64]*BeaconCommittees_CommitteesList `protobuf:"bytes,2,rep,name=committees,proto3" json:"committees,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 978 ActiveValidatorCount uint64 `protobuf:"varint,3,opt,name=active_validator_count,json=activeValidatorCount,proto3" json:"active_validator_count,omitempty"` 979 } 980 981 func (x *BeaconCommittees) Reset() { 982 *x = BeaconCommittees{} 983 if protoimpl.UnsafeEnabled { 984 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[11] 985 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 986 ms.StoreMessageInfo(mi) 987 } 988 } 989 990 func (x *BeaconCommittees) String() string { 991 return protoimpl.X.MessageStringOf(x) 992 } 993 994 func (*BeaconCommittees) ProtoMessage() {} 995 996 func (x *BeaconCommittees) ProtoReflect() protoreflect.Message { 997 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[11] 998 if protoimpl.UnsafeEnabled && x != nil { 999 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1000 if ms.LoadMessageInfo() == nil { 1001 ms.StoreMessageInfo(mi) 1002 } 1003 return ms 1004 } 1005 return mi.MessageOf(x) 1006 } 1007 1008 // Deprecated: Use BeaconCommittees.ProtoReflect.Descriptor instead. 1009 func (*BeaconCommittees) Descriptor() ([]byte, []int) { 1010 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{11} 1011 } 1012 1013 func (x *BeaconCommittees) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1014 if x != nil { 1015 return x.Epoch 1016 } 1017 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1018 } 1019 1020 func (x *BeaconCommittees) GetCommittees() map[uint64]*BeaconCommittees_CommitteesList { 1021 if x != nil { 1022 return x.Committees 1023 } 1024 return nil 1025 } 1026 1027 func (x *BeaconCommittees) GetActiveValidatorCount() uint64 { 1028 if x != nil { 1029 return x.ActiveValidatorCount 1030 } 1031 return 0 1032 } 1033 1034 type ListValidatorBalancesRequest struct { 1035 state protoimpl.MessageState 1036 sizeCache protoimpl.SizeCache 1037 unknownFields protoimpl.UnknownFields 1038 1039 // Types that are assignable to QueryFilter: 1040 // *ListValidatorBalancesRequest_Epoch 1041 // *ListValidatorBalancesRequest_Genesis 1042 QueryFilter isListValidatorBalancesRequest_QueryFilter `protobuf_oneof:"query_filter"` 1043 PublicKeys [][]byte `protobuf:"bytes,3,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty" ssz-size:"?,48"` 1044 Indices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,4,rep,packed,name=indices,proto3" json:"indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1045 PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 1046 PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1047 } 1048 1049 func (x *ListValidatorBalancesRequest) Reset() { 1050 *x = ListValidatorBalancesRequest{} 1051 if protoimpl.UnsafeEnabled { 1052 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[12] 1053 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1054 ms.StoreMessageInfo(mi) 1055 } 1056 } 1057 1058 func (x *ListValidatorBalancesRequest) String() string { 1059 return protoimpl.X.MessageStringOf(x) 1060 } 1061 1062 func (*ListValidatorBalancesRequest) ProtoMessage() {} 1063 1064 func (x *ListValidatorBalancesRequest) ProtoReflect() protoreflect.Message { 1065 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[12] 1066 if protoimpl.UnsafeEnabled && x != nil { 1067 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1068 if ms.LoadMessageInfo() == nil { 1069 ms.StoreMessageInfo(mi) 1070 } 1071 return ms 1072 } 1073 return mi.MessageOf(x) 1074 } 1075 1076 // Deprecated: Use ListValidatorBalancesRequest.ProtoReflect.Descriptor instead. 1077 func (*ListValidatorBalancesRequest) Descriptor() ([]byte, []int) { 1078 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{12} 1079 } 1080 1081 func (m *ListValidatorBalancesRequest) GetQueryFilter() isListValidatorBalancesRequest_QueryFilter { 1082 if m != nil { 1083 return m.QueryFilter 1084 } 1085 return nil 1086 } 1087 1088 func (x *ListValidatorBalancesRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1089 if x, ok := x.GetQueryFilter().(*ListValidatorBalancesRequest_Epoch); ok { 1090 return x.Epoch 1091 } 1092 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1093 } 1094 1095 func (x *ListValidatorBalancesRequest) GetGenesis() bool { 1096 if x, ok := x.GetQueryFilter().(*ListValidatorBalancesRequest_Genesis); ok { 1097 return x.Genesis 1098 } 1099 return false 1100 } 1101 1102 func (x *ListValidatorBalancesRequest) GetPublicKeys() [][]byte { 1103 if x != nil { 1104 return x.PublicKeys 1105 } 1106 return nil 1107 } 1108 1109 func (x *ListValidatorBalancesRequest) GetIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1110 if x != nil { 1111 return x.Indices 1112 } 1113 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1114 } 1115 1116 func (x *ListValidatorBalancesRequest) GetPageSize() int32 { 1117 if x != nil { 1118 return x.PageSize 1119 } 1120 return 0 1121 } 1122 1123 func (x *ListValidatorBalancesRequest) GetPageToken() string { 1124 if x != nil { 1125 return x.PageToken 1126 } 1127 return "" 1128 } 1129 1130 type isListValidatorBalancesRequest_QueryFilter interface { 1131 isListValidatorBalancesRequest_QueryFilter() 1132 } 1133 1134 type ListValidatorBalancesRequest_Epoch struct { 1135 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1136 } 1137 1138 type ListValidatorBalancesRequest_Genesis struct { 1139 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 1140 } 1141 1142 func (*ListValidatorBalancesRequest_Epoch) isListValidatorBalancesRequest_QueryFilter() {} 1143 1144 func (*ListValidatorBalancesRequest_Genesis) isListValidatorBalancesRequest_QueryFilter() {} 1145 1146 type ValidatorBalances struct { 1147 state protoimpl.MessageState 1148 sizeCache protoimpl.SizeCache 1149 unknownFields protoimpl.UnknownFields 1150 1151 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1152 Balances []*ValidatorBalances_Balance `protobuf:"bytes,2,rep,name=balances,proto3" json:"balances,omitempty"` 1153 NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1154 TotalSize int32 `protobuf:"varint,4,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 1155 } 1156 1157 func (x *ValidatorBalances) Reset() { 1158 *x = ValidatorBalances{} 1159 if protoimpl.UnsafeEnabled { 1160 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[13] 1161 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1162 ms.StoreMessageInfo(mi) 1163 } 1164 } 1165 1166 func (x *ValidatorBalances) String() string { 1167 return protoimpl.X.MessageStringOf(x) 1168 } 1169 1170 func (*ValidatorBalances) ProtoMessage() {} 1171 1172 func (x *ValidatorBalances) ProtoReflect() protoreflect.Message { 1173 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[13] 1174 if protoimpl.UnsafeEnabled && x != nil { 1175 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1176 if ms.LoadMessageInfo() == nil { 1177 ms.StoreMessageInfo(mi) 1178 } 1179 return ms 1180 } 1181 return mi.MessageOf(x) 1182 } 1183 1184 // Deprecated: Use ValidatorBalances.ProtoReflect.Descriptor instead. 1185 func (*ValidatorBalances) Descriptor() ([]byte, []int) { 1186 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{13} 1187 } 1188 1189 func (x *ValidatorBalances) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1190 if x != nil { 1191 return x.Epoch 1192 } 1193 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1194 } 1195 1196 func (x *ValidatorBalances) GetBalances() []*ValidatorBalances_Balance { 1197 if x != nil { 1198 return x.Balances 1199 } 1200 return nil 1201 } 1202 1203 func (x *ValidatorBalances) GetNextPageToken() string { 1204 if x != nil { 1205 return x.NextPageToken 1206 } 1207 return "" 1208 } 1209 1210 func (x *ValidatorBalances) GetTotalSize() int32 { 1211 if x != nil { 1212 return x.TotalSize 1213 } 1214 return 0 1215 } 1216 1217 type ListValidatorsRequest struct { 1218 state protoimpl.MessageState 1219 sizeCache protoimpl.SizeCache 1220 unknownFields protoimpl.UnknownFields 1221 1222 // Types that are assignable to QueryFilter: 1223 // *ListValidatorsRequest_Epoch 1224 // *ListValidatorsRequest_Genesis 1225 QueryFilter isListValidatorsRequest_QueryFilter `protobuf_oneof:"query_filter"` 1226 Active bool `protobuf:"varint,3,opt,name=active,proto3" json:"active,omitempty"` 1227 PageSize int32 `protobuf:"varint,4,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 1228 PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1229 PublicKeys [][]byte `protobuf:"bytes,6,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"` 1230 Indices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,7,rep,packed,name=indices,proto3" json:"indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1231 } 1232 1233 func (x *ListValidatorsRequest) Reset() { 1234 *x = ListValidatorsRequest{} 1235 if protoimpl.UnsafeEnabled { 1236 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[14] 1237 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1238 ms.StoreMessageInfo(mi) 1239 } 1240 } 1241 1242 func (x *ListValidatorsRequest) String() string { 1243 return protoimpl.X.MessageStringOf(x) 1244 } 1245 1246 func (*ListValidatorsRequest) ProtoMessage() {} 1247 1248 func (x *ListValidatorsRequest) ProtoReflect() protoreflect.Message { 1249 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[14] 1250 if protoimpl.UnsafeEnabled && x != nil { 1251 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1252 if ms.LoadMessageInfo() == nil { 1253 ms.StoreMessageInfo(mi) 1254 } 1255 return ms 1256 } 1257 return mi.MessageOf(x) 1258 } 1259 1260 // Deprecated: Use ListValidatorsRequest.ProtoReflect.Descriptor instead. 1261 func (*ListValidatorsRequest) Descriptor() ([]byte, []int) { 1262 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{14} 1263 } 1264 1265 func (m *ListValidatorsRequest) GetQueryFilter() isListValidatorsRequest_QueryFilter { 1266 if m != nil { 1267 return m.QueryFilter 1268 } 1269 return nil 1270 } 1271 1272 func (x *ListValidatorsRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1273 if x, ok := x.GetQueryFilter().(*ListValidatorsRequest_Epoch); ok { 1274 return x.Epoch 1275 } 1276 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1277 } 1278 1279 func (x *ListValidatorsRequest) GetGenesis() bool { 1280 if x, ok := x.GetQueryFilter().(*ListValidatorsRequest_Genesis); ok { 1281 return x.Genesis 1282 } 1283 return false 1284 } 1285 1286 func (x *ListValidatorsRequest) GetActive() bool { 1287 if x != nil { 1288 return x.Active 1289 } 1290 return false 1291 } 1292 1293 func (x *ListValidatorsRequest) GetPageSize() int32 { 1294 if x != nil { 1295 return x.PageSize 1296 } 1297 return 0 1298 } 1299 1300 func (x *ListValidatorsRequest) GetPageToken() string { 1301 if x != nil { 1302 return x.PageToken 1303 } 1304 return "" 1305 } 1306 1307 func (x *ListValidatorsRequest) GetPublicKeys() [][]byte { 1308 if x != nil { 1309 return x.PublicKeys 1310 } 1311 return nil 1312 } 1313 1314 func (x *ListValidatorsRequest) GetIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1315 if x != nil { 1316 return x.Indices 1317 } 1318 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1319 } 1320 1321 type isListValidatorsRequest_QueryFilter interface { 1322 isListValidatorsRequest_QueryFilter() 1323 } 1324 1325 type ListValidatorsRequest_Epoch struct { 1326 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1327 } 1328 1329 type ListValidatorsRequest_Genesis struct { 1330 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 1331 } 1332 1333 func (*ListValidatorsRequest_Epoch) isListValidatorsRequest_QueryFilter() {} 1334 1335 func (*ListValidatorsRequest_Genesis) isListValidatorsRequest_QueryFilter() {} 1336 1337 type GetValidatorRequest struct { 1338 state protoimpl.MessageState 1339 sizeCache protoimpl.SizeCache 1340 unknownFields protoimpl.UnknownFields 1341 1342 // Types that are assignable to QueryFilter: 1343 // *GetValidatorRequest_Index 1344 // *GetValidatorRequest_PublicKey 1345 QueryFilter isGetValidatorRequest_QueryFilter `protobuf_oneof:"query_filter"` 1346 } 1347 1348 func (x *GetValidatorRequest) Reset() { 1349 *x = GetValidatorRequest{} 1350 if protoimpl.UnsafeEnabled { 1351 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[15] 1352 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1353 ms.StoreMessageInfo(mi) 1354 } 1355 } 1356 1357 func (x *GetValidatorRequest) String() string { 1358 return protoimpl.X.MessageStringOf(x) 1359 } 1360 1361 func (*GetValidatorRequest) ProtoMessage() {} 1362 1363 func (x *GetValidatorRequest) ProtoReflect() protoreflect.Message { 1364 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[15] 1365 if protoimpl.UnsafeEnabled && x != nil { 1366 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1367 if ms.LoadMessageInfo() == nil { 1368 ms.StoreMessageInfo(mi) 1369 } 1370 return ms 1371 } 1372 return mi.MessageOf(x) 1373 } 1374 1375 // Deprecated: Use GetValidatorRequest.ProtoReflect.Descriptor instead. 1376 func (*GetValidatorRequest) Descriptor() ([]byte, []int) { 1377 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{15} 1378 } 1379 1380 func (m *GetValidatorRequest) GetQueryFilter() isGetValidatorRequest_QueryFilter { 1381 if m != nil { 1382 return m.QueryFilter 1383 } 1384 return nil 1385 } 1386 1387 func (x *GetValidatorRequest) GetIndex() github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1388 if x, ok := x.GetQueryFilter().(*GetValidatorRequest_Index); ok { 1389 return x.Index 1390 } 1391 return github_com_prysmaticlabs_eth2_types.ValidatorIndex(0) 1392 } 1393 1394 func (x *GetValidatorRequest) GetPublicKey() []byte { 1395 if x, ok := x.GetQueryFilter().(*GetValidatorRequest_PublicKey); ok { 1396 return x.PublicKey 1397 } 1398 return nil 1399 } 1400 1401 type isGetValidatorRequest_QueryFilter interface { 1402 isGetValidatorRequest_QueryFilter() 1403 } 1404 1405 type GetValidatorRequest_Index struct { 1406 Index github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,1,opt,name=index,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1407 } 1408 1409 type GetValidatorRequest_PublicKey struct { 1410 PublicKey []byte `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3,oneof" ssz-size:"48"` 1411 } 1412 1413 func (*GetValidatorRequest_Index) isGetValidatorRequest_QueryFilter() {} 1414 1415 func (*GetValidatorRequest_PublicKey) isGetValidatorRequest_QueryFilter() {} 1416 1417 type Validators struct { 1418 state protoimpl.MessageState 1419 sizeCache protoimpl.SizeCache 1420 unknownFields protoimpl.UnknownFields 1421 1422 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1423 ValidatorList []*Validators_ValidatorContainer `protobuf:"bytes,2,rep,name=validator_list,json=validatorList,proto3" json:"validator_list,omitempty"` 1424 NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1425 TotalSize int32 `protobuf:"varint,4,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 1426 } 1427 1428 func (x *Validators) Reset() { 1429 *x = Validators{} 1430 if protoimpl.UnsafeEnabled { 1431 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[16] 1432 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1433 ms.StoreMessageInfo(mi) 1434 } 1435 } 1436 1437 func (x *Validators) String() string { 1438 return protoimpl.X.MessageStringOf(x) 1439 } 1440 1441 func (*Validators) ProtoMessage() {} 1442 1443 func (x *Validators) ProtoReflect() protoreflect.Message { 1444 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[16] 1445 if protoimpl.UnsafeEnabled && x != nil { 1446 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1447 if ms.LoadMessageInfo() == nil { 1448 ms.StoreMessageInfo(mi) 1449 } 1450 return ms 1451 } 1452 return mi.MessageOf(x) 1453 } 1454 1455 // Deprecated: Use Validators.ProtoReflect.Descriptor instead. 1456 func (*Validators) Descriptor() ([]byte, []int) { 1457 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{16} 1458 } 1459 1460 func (x *Validators) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1461 if x != nil { 1462 return x.Epoch 1463 } 1464 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1465 } 1466 1467 func (x *Validators) GetValidatorList() []*Validators_ValidatorContainer { 1468 if x != nil { 1469 return x.ValidatorList 1470 } 1471 return nil 1472 } 1473 1474 func (x *Validators) GetNextPageToken() string { 1475 if x != nil { 1476 return x.NextPageToken 1477 } 1478 return "" 1479 } 1480 1481 func (x *Validators) GetTotalSize() int32 { 1482 if x != nil { 1483 return x.TotalSize 1484 } 1485 return 0 1486 } 1487 1488 type GetValidatorActiveSetChangesRequest struct { 1489 state protoimpl.MessageState 1490 sizeCache protoimpl.SizeCache 1491 unknownFields protoimpl.UnknownFields 1492 1493 // Types that are assignable to QueryFilter: 1494 // *GetValidatorActiveSetChangesRequest_Epoch 1495 // *GetValidatorActiveSetChangesRequest_Genesis 1496 QueryFilter isGetValidatorActiveSetChangesRequest_QueryFilter `protobuf_oneof:"query_filter"` 1497 } 1498 1499 func (x *GetValidatorActiveSetChangesRequest) Reset() { 1500 *x = GetValidatorActiveSetChangesRequest{} 1501 if protoimpl.UnsafeEnabled { 1502 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[17] 1503 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1504 ms.StoreMessageInfo(mi) 1505 } 1506 } 1507 1508 func (x *GetValidatorActiveSetChangesRequest) String() string { 1509 return protoimpl.X.MessageStringOf(x) 1510 } 1511 1512 func (*GetValidatorActiveSetChangesRequest) ProtoMessage() {} 1513 1514 func (x *GetValidatorActiveSetChangesRequest) ProtoReflect() protoreflect.Message { 1515 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[17] 1516 if protoimpl.UnsafeEnabled && x != nil { 1517 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1518 if ms.LoadMessageInfo() == nil { 1519 ms.StoreMessageInfo(mi) 1520 } 1521 return ms 1522 } 1523 return mi.MessageOf(x) 1524 } 1525 1526 // Deprecated: Use GetValidatorActiveSetChangesRequest.ProtoReflect.Descriptor instead. 1527 func (*GetValidatorActiveSetChangesRequest) Descriptor() ([]byte, []int) { 1528 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{17} 1529 } 1530 1531 func (m *GetValidatorActiveSetChangesRequest) GetQueryFilter() isGetValidatorActiveSetChangesRequest_QueryFilter { 1532 if m != nil { 1533 return m.QueryFilter 1534 } 1535 return nil 1536 } 1537 1538 func (x *GetValidatorActiveSetChangesRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1539 if x, ok := x.GetQueryFilter().(*GetValidatorActiveSetChangesRequest_Epoch); ok { 1540 return x.Epoch 1541 } 1542 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1543 } 1544 1545 func (x *GetValidatorActiveSetChangesRequest) GetGenesis() bool { 1546 if x, ok := x.GetQueryFilter().(*GetValidatorActiveSetChangesRequest_Genesis); ok { 1547 return x.Genesis 1548 } 1549 return false 1550 } 1551 1552 type isGetValidatorActiveSetChangesRequest_QueryFilter interface { 1553 isGetValidatorActiveSetChangesRequest_QueryFilter() 1554 } 1555 1556 type GetValidatorActiveSetChangesRequest_Epoch struct { 1557 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1558 } 1559 1560 type GetValidatorActiveSetChangesRequest_Genesis struct { 1561 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 1562 } 1563 1564 func (*GetValidatorActiveSetChangesRequest_Epoch) isGetValidatorActiveSetChangesRequest_QueryFilter() { 1565 } 1566 1567 func (*GetValidatorActiveSetChangesRequest_Genesis) isGetValidatorActiveSetChangesRequest_QueryFilter() { 1568 } 1569 1570 type ActiveSetChanges struct { 1571 state protoimpl.MessageState 1572 sizeCache protoimpl.SizeCache 1573 unknownFields protoimpl.UnknownFields 1574 1575 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 1576 ActivatedPublicKeys [][]byte `protobuf:"bytes,2,rep,name=activated_public_keys,json=activatedPublicKeys,proto3" json:"activated_public_keys,omitempty" ssz-size:"?,48"` 1577 ActivatedIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,3,rep,packed,name=activated_indices,json=activatedIndices,proto3" json:"activated_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1578 ExitedPublicKeys [][]byte `protobuf:"bytes,4,rep,name=exited_public_keys,json=exitedPublicKeys,proto3" json:"exited_public_keys,omitempty" ssz-size:"?,48"` 1579 ExitedIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,5,rep,packed,name=exited_indices,json=exitedIndices,proto3" json:"exited_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1580 SlashedPublicKeys [][]byte `protobuf:"bytes,6,rep,name=slashed_public_keys,json=slashedPublicKeys,proto3" json:"slashed_public_keys,omitempty" ssz-size:"?,48"` 1581 SlashedIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,7,rep,packed,name=slashed_indices,json=slashedIndices,proto3" json:"slashed_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1582 EjectedPublicKeys [][]byte `protobuf:"bytes,8,rep,name=ejected_public_keys,json=ejectedPublicKeys,proto3" json:"ejected_public_keys,omitempty" ssz-size:"?,48"` 1583 EjectedIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,9,rep,packed,name=ejected_indices,json=ejectedIndices,proto3" json:"ejected_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1584 } 1585 1586 func (x *ActiveSetChanges) Reset() { 1587 *x = ActiveSetChanges{} 1588 if protoimpl.UnsafeEnabled { 1589 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[18] 1590 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1591 ms.StoreMessageInfo(mi) 1592 } 1593 } 1594 1595 func (x *ActiveSetChanges) String() string { 1596 return protoimpl.X.MessageStringOf(x) 1597 } 1598 1599 func (*ActiveSetChanges) ProtoMessage() {} 1600 1601 func (x *ActiveSetChanges) ProtoReflect() protoreflect.Message { 1602 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[18] 1603 if protoimpl.UnsafeEnabled && x != nil { 1604 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1605 if ms.LoadMessageInfo() == nil { 1606 ms.StoreMessageInfo(mi) 1607 } 1608 return ms 1609 } 1610 return mi.MessageOf(x) 1611 } 1612 1613 // Deprecated: Use ActiveSetChanges.ProtoReflect.Descriptor instead. 1614 func (*ActiveSetChanges) Descriptor() ([]byte, []int) { 1615 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{18} 1616 } 1617 1618 func (x *ActiveSetChanges) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 1619 if x != nil { 1620 return x.Epoch 1621 } 1622 return github_com_prysmaticlabs_eth2_types.Epoch(0) 1623 } 1624 1625 func (x *ActiveSetChanges) GetActivatedPublicKeys() [][]byte { 1626 if x != nil { 1627 return x.ActivatedPublicKeys 1628 } 1629 return nil 1630 } 1631 1632 func (x *ActiveSetChanges) GetActivatedIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1633 if x != nil { 1634 return x.ActivatedIndices 1635 } 1636 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1637 } 1638 1639 func (x *ActiveSetChanges) GetExitedPublicKeys() [][]byte { 1640 if x != nil { 1641 return x.ExitedPublicKeys 1642 } 1643 return nil 1644 } 1645 1646 func (x *ActiveSetChanges) GetExitedIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1647 if x != nil { 1648 return x.ExitedIndices 1649 } 1650 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1651 } 1652 1653 func (x *ActiveSetChanges) GetSlashedPublicKeys() [][]byte { 1654 if x != nil { 1655 return x.SlashedPublicKeys 1656 } 1657 return nil 1658 } 1659 1660 func (x *ActiveSetChanges) GetSlashedIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1661 if x != nil { 1662 return x.SlashedIndices 1663 } 1664 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1665 } 1666 1667 func (x *ActiveSetChanges) GetEjectedPublicKeys() [][]byte { 1668 if x != nil { 1669 return x.EjectedPublicKeys 1670 } 1671 return nil 1672 } 1673 1674 func (x *ActiveSetChanges) GetEjectedIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1675 if x != nil { 1676 return x.EjectedIndices 1677 } 1678 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1679 } 1680 1681 type ValidatorPerformanceRequest struct { 1682 state protoimpl.MessageState 1683 sizeCache protoimpl.SizeCache 1684 unknownFields protoimpl.UnknownFields 1685 1686 // Deprecated: Do not use. 1687 PublicKeys [][]byte `protobuf:"bytes,1,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"` 1688 Indices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,2,rep,packed,name=indices,proto3" json:"indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1689 } 1690 1691 func (x *ValidatorPerformanceRequest) Reset() { 1692 *x = ValidatorPerformanceRequest{} 1693 if protoimpl.UnsafeEnabled { 1694 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[19] 1695 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1696 ms.StoreMessageInfo(mi) 1697 } 1698 } 1699 1700 func (x *ValidatorPerformanceRequest) String() string { 1701 return protoimpl.X.MessageStringOf(x) 1702 } 1703 1704 func (*ValidatorPerformanceRequest) ProtoMessage() {} 1705 1706 func (x *ValidatorPerformanceRequest) ProtoReflect() protoreflect.Message { 1707 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[19] 1708 if protoimpl.UnsafeEnabled && x != nil { 1709 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1710 if ms.LoadMessageInfo() == nil { 1711 ms.StoreMessageInfo(mi) 1712 } 1713 return ms 1714 } 1715 return mi.MessageOf(x) 1716 } 1717 1718 // Deprecated: Use ValidatorPerformanceRequest.ProtoReflect.Descriptor instead. 1719 func (*ValidatorPerformanceRequest) Descriptor() ([]byte, []int) { 1720 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{19} 1721 } 1722 1723 // Deprecated: Do not use. 1724 func (x *ValidatorPerformanceRequest) GetPublicKeys() [][]byte { 1725 if x != nil { 1726 return x.PublicKeys 1727 } 1728 return nil 1729 } 1730 1731 func (x *ValidatorPerformanceRequest) GetIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1732 if x != nil { 1733 return x.Indices 1734 } 1735 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1736 } 1737 1738 type ValidatorPerformanceResponse struct { 1739 state protoimpl.MessageState 1740 sizeCache protoimpl.SizeCache 1741 unknownFields protoimpl.UnknownFields 1742 1743 CurrentEffectiveBalances []uint64 `protobuf:"varint,1,rep,packed,name=current_effective_balances,json=currentEffectiveBalances,proto3" json:"current_effective_balances,omitempty"` 1744 InclusionSlots []github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,2,rep,packed,name=inclusion_slots,json=inclusionSlots,proto3" json:"inclusion_slots,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 1745 InclusionDistances []github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,3,rep,packed,name=inclusion_distances,json=inclusionDistances,proto3" json:"inclusion_distances,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 1746 CorrectlyVotedSource []bool `protobuf:"varint,4,rep,packed,name=correctly_voted_source,json=correctlyVotedSource,proto3" json:"correctly_voted_source,omitempty"` 1747 CorrectlyVotedTarget []bool `protobuf:"varint,5,rep,packed,name=correctly_voted_target,json=correctlyVotedTarget,proto3" json:"correctly_voted_target,omitempty"` 1748 CorrectlyVotedHead []bool `protobuf:"varint,6,rep,packed,name=correctly_voted_head,json=correctlyVotedHead,proto3" json:"correctly_voted_head,omitempty"` 1749 BalancesBeforeEpochTransition []uint64 `protobuf:"varint,7,rep,packed,name=balances_before_epoch_transition,json=balancesBeforeEpochTransition,proto3" json:"balances_before_epoch_transition,omitempty"` 1750 BalancesAfterEpochTransition []uint64 `protobuf:"varint,8,rep,packed,name=balances_after_epoch_transition,json=balancesAfterEpochTransition,proto3" json:"balances_after_epoch_transition,omitempty"` 1751 MissingValidators [][]byte `protobuf:"bytes,9,rep,name=missing_validators,json=missingValidators,proto3" json:"missing_validators,omitempty"` 1752 AverageActiveValidatorBalance float32 `protobuf:"fixed32,10,opt,name=average_active_validator_balance,json=averageActiveValidatorBalance,proto3" json:"average_active_validator_balance,omitempty"` 1753 PublicKeys [][]byte `protobuf:"bytes,11,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty" ssz-size:"?,48"` 1754 } 1755 1756 func (x *ValidatorPerformanceResponse) Reset() { 1757 *x = ValidatorPerformanceResponse{} 1758 if protoimpl.UnsafeEnabled { 1759 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[20] 1760 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1761 ms.StoreMessageInfo(mi) 1762 } 1763 } 1764 1765 func (x *ValidatorPerformanceResponse) String() string { 1766 return protoimpl.X.MessageStringOf(x) 1767 } 1768 1769 func (*ValidatorPerformanceResponse) ProtoMessage() {} 1770 1771 func (x *ValidatorPerformanceResponse) ProtoReflect() protoreflect.Message { 1772 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[20] 1773 if protoimpl.UnsafeEnabled && x != nil { 1774 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1775 if ms.LoadMessageInfo() == nil { 1776 ms.StoreMessageInfo(mi) 1777 } 1778 return ms 1779 } 1780 return mi.MessageOf(x) 1781 } 1782 1783 // Deprecated: Use ValidatorPerformanceResponse.ProtoReflect.Descriptor instead. 1784 func (*ValidatorPerformanceResponse) Descriptor() ([]byte, []int) { 1785 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{20} 1786 } 1787 1788 func (x *ValidatorPerformanceResponse) GetCurrentEffectiveBalances() []uint64 { 1789 if x != nil { 1790 return x.CurrentEffectiveBalances 1791 } 1792 return nil 1793 } 1794 1795 func (x *ValidatorPerformanceResponse) GetInclusionSlots() []github_com_prysmaticlabs_eth2_types.Slot { 1796 if x != nil { 1797 return x.InclusionSlots 1798 } 1799 return []github_com_prysmaticlabs_eth2_types.Slot(nil) 1800 } 1801 1802 func (x *ValidatorPerformanceResponse) GetInclusionDistances() []github_com_prysmaticlabs_eth2_types.Slot { 1803 if x != nil { 1804 return x.InclusionDistances 1805 } 1806 return []github_com_prysmaticlabs_eth2_types.Slot(nil) 1807 } 1808 1809 func (x *ValidatorPerformanceResponse) GetCorrectlyVotedSource() []bool { 1810 if x != nil { 1811 return x.CorrectlyVotedSource 1812 } 1813 return nil 1814 } 1815 1816 func (x *ValidatorPerformanceResponse) GetCorrectlyVotedTarget() []bool { 1817 if x != nil { 1818 return x.CorrectlyVotedTarget 1819 } 1820 return nil 1821 } 1822 1823 func (x *ValidatorPerformanceResponse) GetCorrectlyVotedHead() []bool { 1824 if x != nil { 1825 return x.CorrectlyVotedHead 1826 } 1827 return nil 1828 } 1829 1830 func (x *ValidatorPerformanceResponse) GetBalancesBeforeEpochTransition() []uint64 { 1831 if x != nil { 1832 return x.BalancesBeforeEpochTransition 1833 } 1834 return nil 1835 } 1836 1837 func (x *ValidatorPerformanceResponse) GetBalancesAfterEpochTransition() []uint64 { 1838 if x != nil { 1839 return x.BalancesAfterEpochTransition 1840 } 1841 return nil 1842 } 1843 1844 func (x *ValidatorPerformanceResponse) GetMissingValidators() [][]byte { 1845 if x != nil { 1846 return x.MissingValidators 1847 } 1848 return nil 1849 } 1850 1851 func (x *ValidatorPerformanceResponse) GetAverageActiveValidatorBalance() float32 { 1852 if x != nil { 1853 return x.AverageActiveValidatorBalance 1854 } 1855 return 0 1856 } 1857 1858 func (x *ValidatorPerformanceResponse) GetPublicKeys() [][]byte { 1859 if x != nil { 1860 return x.PublicKeys 1861 } 1862 return nil 1863 } 1864 1865 type ValidatorQueue struct { 1866 state protoimpl.MessageState 1867 sizeCache protoimpl.SizeCache 1868 unknownFields protoimpl.UnknownFields 1869 1870 ChurnLimit uint64 `protobuf:"varint,1,opt,name=churn_limit,json=churnLimit,proto3" json:"churn_limit,omitempty"` 1871 // Deprecated: Do not use. 1872 ActivationPublicKeys [][]byte `protobuf:"bytes,2,rep,name=activation_public_keys,json=activationPublicKeys,proto3" json:"activation_public_keys,omitempty" ssz-size:"?,48"` 1873 // Deprecated: Do not use. 1874 ExitPublicKeys [][]byte `protobuf:"bytes,3,rep,name=exit_public_keys,json=exitPublicKeys,proto3" json:"exit_public_keys,omitempty" ssz-size:"?,48"` 1875 ActivationValidatorIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,4,rep,packed,name=activation_validator_indices,json=activationValidatorIndices,proto3" json:"activation_validator_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1876 ExitValidatorIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,5,rep,packed,name=exit_validator_indices,json=exitValidatorIndices,proto3" json:"exit_validator_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1877 } 1878 1879 func (x *ValidatorQueue) Reset() { 1880 *x = ValidatorQueue{} 1881 if protoimpl.UnsafeEnabled { 1882 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[21] 1883 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1884 ms.StoreMessageInfo(mi) 1885 } 1886 } 1887 1888 func (x *ValidatorQueue) String() string { 1889 return protoimpl.X.MessageStringOf(x) 1890 } 1891 1892 func (*ValidatorQueue) ProtoMessage() {} 1893 1894 func (x *ValidatorQueue) ProtoReflect() protoreflect.Message { 1895 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[21] 1896 if protoimpl.UnsafeEnabled && x != nil { 1897 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1898 if ms.LoadMessageInfo() == nil { 1899 ms.StoreMessageInfo(mi) 1900 } 1901 return ms 1902 } 1903 return mi.MessageOf(x) 1904 } 1905 1906 // Deprecated: Use ValidatorQueue.ProtoReflect.Descriptor instead. 1907 func (*ValidatorQueue) Descriptor() ([]byte, []int) { 1908 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{21} 1909 } 1910 1911 func (x *ValidatorQueue) GetChurnLimit() uint64 { 1912 if x != nil { 1913 return x.ChurnLimit 1914 } 1915 return 0 1916 } 1917 1918 // Deprecated: Do not use. 1919 func (x *ValidatorQueue) GetActivationPublicKeys() [][]byte { 1920 if x != nil { 1921 return x.ActivationPublicKeys 1922 } 1923 return nil 1924 } 1925 1926 // Deprecated: Do not use. 1927 func (x *ValidatorQueue) GetExitPublicKeys() [][]byte { 1928 if x != nil { 1929 return x.ExitPublicKeys 1930 } 1931 return nil 1932 } 1933 1934 func (x *ValidatorQueue) GetActivationValidatorIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1935 if x != nil { 1936 return x.ActivationValidatorIndices 1937 } 1938 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1939 } 1940 1941 func (x *ValidatorQueue) GetExitValidatorIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 1942 if x != nil { 1943 return x.ExitValidatorIndices 1944 } 1945 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 1946 } 1947 1948 type ListValidatorAssignmentsRequest struct { 1949 state protoimpl.MessageState 1950 sizeCache protoimpl.SizeCache 1951 unknownFields protoimpl.UnknownFields 1952 1953 // Types that are assignable to QueryFilter: 1954 // *ListValidatorAssignmentsRequest_Epoch 1955 // *ListValidatorAssignmentsRequest_Genesis 1956 QueryFilter isListValidatorAssignmentsRequest_QueryFilter `protobuf_oneof:"query_filter"` 1957 PublicKeys [][]byte `protobuf:"bytes,3,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty" ssz-size:"?,48"` 1958 Indices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,4,rep,packed,name=indices,proto3" json:"indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 1959 PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 1960 PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 1961 } 1962 1963 func (x *ListValidatorAssignmentsRequest) Reset() { 1964 *x = ListValidatorAssignmentsRequest{} 1965 if protoimpl.UnsafeEnabled { 1966 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[22] 1967 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1968 ms.StoreMessageInfo(mi) 1969 } 1970 } 1971 1972 func (x *ListValidatorAssignmentsRequest) String() string { 1973 return protoimpl.X.MessageStringOf(x) 1974 } 1975 1976 func (*ListValidatorAssignmentsRequest) ProtoMessage() {} 1977 1978 func (x *ListValidatorAssignmentsRequest) ProtoReflect() protoreflect.Message { 1979 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[22] 1980 if protoimpl.UnsafeEnabled && x != nil { 1981 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1982 if ms.LoadMessageInfo() == nil { 1983 ms.StoreMessageInfo(mi) 1984 } 1985 return ms 1986 } 1987 return mi.MessageOf(x) 1988 } 1989 1990 // Deprecated: Use ListValidatorAssignmentsRequest.ProtoReflect.Descriptor instead. 1991 func (*ListValidatorAssignmentsRequest) Descriptor() ([]byte, []int) { 1992 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{22} 1993 } 1994 1995 func (m *ListValidatorAssignmentsRequest) GetQueryFilter() isListValidatorAssignmentsRequest_QueryFilter { 1996 if m != nil { 1997 return m.QueryFilter 1998 } 1999 return nil 2000 } 2001 2002 func (x *ListValidatorAssignmentsRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2003 if x, ok := x.GetQueryFilter().(*ListValidatorAssignmentsRequest_Epoch); ok { 2004 return x.Epoch 2005 } 2006 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2007 } 2008 2009 func (x *ListValidatorAssignmentsRequest) GetGenesis() bool { 2010 if x, ok := x.GetQueryFilter().(*ListValidatorAssignmentsRequest_Genesis); ok { 2011 return x.Genesis 2012 } 2013 return false 2014 } 2015 2016 func (x *ListValidatorAssignmentsRequest) GetPublicKeys() [][]byte { 2017 if x != nil { 2018 return x.PublicKeys 2019 } 2020 return nil 2021 } 2022 2023 func (x *ListValidatorAssignmentsRequest) GetIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2024 if x != nil { 2025 return x.Indices 2026 } 2027 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 2028 } 2029 2030 func (x *ListValidatorAssignmentsRequest) GetPageSize() int32 { 2031 if x != nil { 2032 return x.PageSize 2033 } 2034 return 0 2035 } 2036 2037 func (x *ListValidatorAssignmentsRequest) GetPageToken() string { 2038 if x != nil { 2039 return x.PageToken 2040 } 2041 return "" 2042 } 2043 2044 type isListValidatorAssignmentsRequest_QueryFilter interface { 2045 isListValidatorAssignmentsRequest_QueryFilter() 2046 } 2047 2048 type ListValidatorAssignmentsRequest_Epoch struct { 2049 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2050 } 2051 2052 type ListValidatorAssignmentsRequest_Genesis struct { 2053 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 2054 } 2055 2056 func (*ListValidatorAssignmentsRequest_Epoch) isListValidatorAssignmentsRequest_QueryFilter() {} 2057 2058 func (*ListValidatorAssignmentsRequest_Genesis) isListValidatorAssignmentsRequest_QueryFilter() {} 2059 2060 type ValidatorAssignments struct { 2061 state protoimpl.MessageState 2062 sizeCache protoimpl.SizeCache 2063 unknownFields protoimpl.UnknownFields 2064 2065 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2066 Assignments []*ValidatorAssignments_CommitteeAssignment `protobuf:"bytes,2,rep,name=assignments,proto3" json:"assignments,omitempty"` 2067 NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 2068 TotalSize int32 `protobuf:"varint,4,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 2069 } 2070 2071 func (x *ValidatorAssignments) Reset() { 2072 *x = ValidatorAssignments{} 2073 if protoimpl.UnsafeEnabled { 2074 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[23] 2075 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2076 ms.StoreMessageInfo(mi) 2077 } 2078 } 2079 2080 func (x *ValidatorAssignments) String() string { 2081 return protoimpl.X.MessageStringOf(x) 2082 } 2083 2084 func (*ValidatorAssignments) ProtoMessage() {} 2085 2086 func (x *ValidatorAssignments) ProtoReflect() protoreflect.Message { 2087 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[23] 2088 if protoimpl.UnsafeEnabled && x != nil { 2089 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2090 if ms.LoadMessageInfo() == nil { 2091 ms.StoreMessageInfo(mi) 2092 } 2093 return ms 2094 } 2095 return mi.MessageOf(x) 2096 } 2097 2098 // Deprecated: Use ValidatorAssignments.ProtoReflect.Descriptor instead. 2099 func (*ValidatorAssignments) Descriptor() ([]byte, []int) { 2100 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{23} 2101 } 2102 2103 func (x *ValidatorAssignments) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2104 if x != nil { 2105 return x.Epoch 2106 } 2107 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2108 } 2109 2110 func (x *ValidatorAssignments) GetAssignments() []*ValidatorAssignments_CommitteeAssignment { 2111 if x != nil { 2112 return x.Assignments 2113 } 2114 return nil 2115 } 2116 2117 func (x *ValidatorAssignments) GetNextPageToken() string { 2118 if x != nil { 2119 return x.NextPageToken 2120 } 2121 return "" 2122 } 2123 2124 func (x *ValidatorAssignments) GetTotalSize() int32 { 2125 if x != nil { 2126 return x.TotalSize 2127 } 2128 return 0 2129 } 2130 2131 type GetValidatorParticipationRequest struct { 2132 state protoimpl.MessageState 2133 sizeCache protoimpl.SizeCache 2134 unknownFields protoimpl.UnknownFields 2135 2136 // Types that are assignable to QueryFilter: 2137 // *GetValidatorParticipationRequest_Epoch 2138 // *GetValidatorParticipationRequest_Genesis 2139 QueryFilter isGetValidatorParticipationRequest_QueryFilter `protobuf_oneof:"query_filter"` 2140 } 2141 2142 func (x *GetValidatorParticipationRequest) Reset() { 2143 *x = GetValidatorParticipationRequest{} 2144 if protoimpl.UnsafeEnabled { 2145 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[24] 2146 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2147 ms.StoreMessageInfo(mi) 2148 } 2149 } 2150 2151 func (x *GetValidatorParticipationRequest) String() string { 2152 return protoimpl.X.MessageStringOf(x) 2153 } 2154 2155 func (*GetValidatorParticipationRequest) ProtoMessage() {} 2156 2157 func (x *GetValidatorParticipationRequest) ProtoReflect() protoreflect.Message { 2158 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[24] 2159 if protoimpl.UnsafeEnabled && x != nil { 2160 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2161 if ms.LoadMessageInfo() == nil { 2162 ms.StoreMessageInfo(mi) 2163 } 2164 return ms 2165 } 2166 return mi.MessageOf(x) 2167 } 2168 2169 // Deprecated: Use GetValidatorParticipationRequest.ProtoReflect.Descriptor instead. 2170 func (*GetValidatorParticipationRequest) Descriptor() ([]byte, []int) { 2171 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{24} 2172 } 2173 2174 func (m *GetValidatorParticipationRequest) GetQueryFilter() isGetValidatorParticipationRequest_QueryFilter { 2175 if m != nil { 2176 return m.QueryFilter 2177 } 2178 return nil 2179 } 2180 2181 func (x *GetValidatorParticipationRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2182 if x, ok := x.GetQueryFilter().(*GetValidatorParticipationRequest_Epoch); ok { 2183 return x.Epoch 2184 } 2185 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2186 } 2187 2188 func (x *GetValidatorParticipationRequest) GetGenesis() bool { 2189 if x, ok := x.GetQueryFilter().(*GetValidatorParticipationRequest_Genesis); ok { 2190 return x.Genesis 2191 } 2192 return false 2193 } 2194 2195 type isGetValidatorParticipationRequest_QueryFilter interface { 2196 isGetValidatorParticipationRequest_QueryFilter() 2197 } 2198 2199 type GetValidatorParticipationRequest_Epoch struct { 2200 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3,oneof" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2201 } 2202 2203 type GetValidatorParticipationRequest_Genesis struct { 2204 Genesis bool `protobuf:"varint,2,opt,name=genesis,proto3,oneof"` 2205 } 2206 2207 func (*GetValidatorParticipationRequest_Epoch) isGetValidatorParticipationRequest_QueryFilter() {} 2208 2209 func (*GetValidatorParticipationRequest_Genesis) isGetValidatorParticipationRequest_QueryFilter() {} 2210 2211 type ValidatorParticipationResponse struct { 2212 state protoimpl.MessageState 2213 sizeCache protoimpl.SizeCache 2214 unknownFields protoimpl.UnknownFields 2215 2216 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2217 Finalized bool `protobuf:"varint,2,opt,name=finalized,proto3" json:"finalized,omitempty"` 2218 Participation *ValidatorParticipation `protobuf:"bytes,3,opt,name=participation,proto3" json:"participation,omitempty"` 2219 } 2220 2221 func (x *ValidatorParticipationResponse) Reset() { 2222 *x = ValidatorParticipationResponse{} 2223 if protoimpl.UnsafeEnabled { 2224 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[25] 2225 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2226 ms.StoreMessageInfo(mi) 2227 } 2228 } 2229 2230 func (x *ValidatorParticipationResponse) String() string { 2231 return protoimpl.X.MessageStringOf(x) 2232 } 2233 2234 func (*ValidatorParticipationResponse) ProtoMessage() {} 2235 2236 func (x *ValidatorParticipationResponse) ProtoReflect() protoreflect.Message { 2237 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[25] 2238 if protoimpl.UnsafeEnabled && x != nil { 2239 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2240 if ms.LoadMessageInfo() == nil { 2241 ms.StoreMessageInfo(mi) 2242 } 2243 return ms 2244 } 2245 return mi.MessageOf(x) 2246 } 2247 2248 // Deprecated: Use ValidatorParticipationResponse.ProtoReflect.Descriptor instead. 2249 func (*ValidatorParticipationResponse) Descriptor() ([]byte, []int) { 2250 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{25} 2251 } 2252 2253 func (x *ValidatorParticipationResponse) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2254 if x != nil { 2255 return x.Epoch 2256 } 2257 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2258 } 2259 2260 func (x *ValidatorParticipationResponse) GetFinalized() bool { 2261 if x != nil { 2262 return x.Finalized 2263 } 2264 return false 2265 } 2266 2267 func (x *ValidatorParticipationResponse) GetParticipation() *ValidatorParticipation { 2268 if x != nil { 2269 return x.Participation 2270 } 2271 return nil 2272 } 2273 2274 type AttestationPoolRequest struct { 2275 state protoimpl.MessageState 2276 sizeCache protoimpl.SizeCache 2277 unknownFields protoimpl.UnknownFields 2278 2279 PageSize int32 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 2280 PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 2281 } 2282 2283 func (x *AttestationPoolRequest) Reset() { 2284 *x = AttestationPoolRequest{} 2285 if protoimpl.UnsafeEnabled { 2286 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[26] 2287 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2288 ms.StoreMessageInfo(mi) 2289 } 2290 } 2291 2292 func (x *AttestationPoolRequest) String() string { 2293 return protoimpl.X.MessageStringOf(x) 2294 } 2295 2296 func (*AttestationPoolRequest) ProtoMessage() {} 2297 2298 func (x *AttestationPoolRequest) ProtoReflect() protoreflect.Message { 2299 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[26] 2300 if protoimpl.UnsafeEnabled && x != nil { 2301 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2302 if ms.LoadMessageInfo() == nil { 2303 ms.StoreMessageInfo(mi) 2304 } 2305 return ms 2306 } 2307 return mi.MessageOf(x) 2308 } 2309 2310 // Deprecated: Use AttestationPoolRequest.ProtoReflect.Descriptor instead. 2311 func (*AttestationPoolRequest) Descriptor() ([]byte, []int) { 2312 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{26} 2313 } 2314 2315 func (x *AttestationPoolRequest) GetPageSize() int32 { 2316 if x != nil { 2317 return x.PageSize 2318 } 2319 return 0 2320 } 2321 2322 func (x *AttestationPoolRequest) GetPageToken() string { 2323 if x != nil { 2324 return x.PageToken 2325 } 2326 return "" 2327 } 2328 2329 type AttestationPoolResponse struct { 2330 state protoimpl.MessageState 2331 sizeCache protoimpl.SizeCache 2332 unknownFields protoimpl.UnknownFields 2333 2334 Attestations []*Attestation `protobuf:"bytes,1,rep,name=attestations,proto3" json:"attestations,omitempty"` 2335 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 2336 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 2337 } 2338 2339 func (x *AttestationPoolResponse) Reset() { 2340 *x = AttestationPoolResponse{} 2341 if protoimpl.UnsafeEnabled { 2342 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[27] 2343 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2344 ms.StoreMessageInfo(mi) 2345 } 2346 } 2347 2348 func (x *AttestationPoolResponse) String() string { 2349 return protoimpl.X.MessageStringOf(x) 2350 } 2351 2352 func (*AttestationPoolResponse) ProtoMessage() {} 2353 2354 func (x *AttestationPoolResponse) ProtoReflect() protoreflect.Message { 2355 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[27] 2356 if protoimpl.UnsafeEnabled && x != nil { 2357 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2358 if ms.LoadMessageInfo() == nil { 2359 ms.StoreMessageInfo(mi) 2360 } 2361 return ms 2362 } 2363 return mi.MessageOf(x) 2364 } 2365 2366 // Deprecated: Use AttestationPoolResponse.ProtoReflect.Descriptor instead. 2367 func (*AttestationPoolResponse) Descriptor() ([]byte, []int) { 2368 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{27} 2369 } 2370 2371 func (x *AttestationPoolResponse) GetAttestations() []*Attestation { 2372 if x != nil { 2373 return x.Attestations 2374 } 2375 return nil 2376 } 2377 2378 func (x *AttestationPoolResponse) GetNextPageToken() string { 2379 if x != nil { 2380 return x.NextPageToken 2381 } 2382 return "" 2383 } 2384 2385 func (x *AttestationPoolResponse) GetTotalSize() int32 { 2386 if x != nil { 2387 return x.TotalSize 2388 } 2389 return 0 2390 } 2391 2392 type BeaconConfig struct { 2393 state protoimpl.MessageState 2394 sizeCache protoimpl.SizeCache 2395 unknownFields protoimpl.UnknownFields 2396 2397 Config map[string]string `protobuf:"bytes,1,rep,name=config,proto3" json:"config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 2398 } 2399 2400 func (x *BeaconConfig) Reset() { 2401 *x = BeaconConfig{} 2402 if protoimpl.UnsafeEnabled { 2403 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[28] 2404 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2405 ms.StoreMessageInfo(mi) 2406 } 2407 } 2408 2409 func (x *BeaconConfig) String() string { 2410 return protoimpl.X.MessageStringOf(x) 2411 } 2412 2413 func (*BeaconConfig) ProtoMessage() {} 2414 2415 func (x *BeaconConfig) ProtoReflect() protoreflect.Message { 2416 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[28] 2417 if protoimpl.UnsafeEnabled && x != nil { 2418 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2419 if ms.LoadMessageInfo() == nil { 2420 ms.StoreMessageInfo(mi) 2421 } 2422 return ms 2423 } 2424 return mi.MessageOf(x) 2425 } 2426 2427 // Deprecated: Use BeaconConfig.ProtoReflect.Descriptor instead. 2428 func (*BeaconConfig) Descriptor() ([]byte, []int) { 2429 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{28} 2430 } 2431 2432 func (x *BeaconConfig) GetConfig() map[string]string { 2433 if x != nil { 2434 return x.Config 2435 } 2436 return nil 2437 } 2438 2439 type SubmitSlashingResponse struct { 2440 state protoimpl.MessageState 2441 sizeCache protoimpl.SizeCache 2442 unknownFields protoimpl.UnknownFields 2443 2444 SlashedIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,1,rep,packed,name=slashed_indices,json=slashedIndices,proto3" json:"slashed_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2445 } 2446 2447 func (x *SubmitSlashingResponse) Reset() { 2448 *x = SubmitSlashingResponse{} 2449 if protoimpl.UnsafeEnabled { 2450 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[29] 2451 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2452 ms.StoreMessageInfo(mi) 2453 } 2454 } 2455 2456 func (x *SubmitSlashingResponse) String() string { 2457 return protoimpl.X.MessageStringOf(x) 2458 } 2459 2460 func (*SubmitSlashingResponse) ProtoMessage() {} 2461 2462 func (x *SubmitSlashingResponse) ProtoReflect() protoreflect.Message { 2463 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[29] 2464 if protoimpl.UnsafeEnabled && x != nil { 2465 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2466 if ms.LoadMessageInfo() == nil { 2467 ms.StoreMessageInfo(mi) 2468 } 2469 return ms 2470 } 2471 return mi.MessageOf(x) 2472 } 2473 2474 // Deprecated: Use SubmitSlashingResponse.ProtoReflect.Descriptor instead. 2475 func (*SubmitSlashingResponse) Descriptor() ([]byte, []int) { 2476 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{29} 2477 } 2478 2479 func (x *SubmitSlashingResponse) GetSlashedIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2480 if x != nil { 2481 return x.SlashedIndices 2482 } 2483 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 2484 } 2485 2486 type IndividualVotesRequest struct { 2487 state protoimpl.MessageState 2488 sizeCache protoimpl.SizeCache 2489 unknownFields protoimpl.UnknownFields 2490 2491 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2492 PublicKeys [][]byte `protobuf:"bytes,2,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"` 2493 Indices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,3,rep,packed,name=indices,proto3" json:"indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2494 } 2495 2496 func (x *IndividualVotesRequest) Reset() { 2497 *x = IndividualVotesRequest{} 2498 if protoimpl.UnsafeEnabled { 2499 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[30] 2500 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2501 ms.StoreMessageInfo(mi) 2502 } 2503 } 2504 2505 func (x *IndividualVotesRequest) String() string { 2506 return protoimpl.X.MessageStringOf(x) 2507 } 2508 2509 func (*IndividualVotesRequest) ProtoMessage() {} 2510 2511 func (x *IndividualVotesRequest) ProtoReflect() protoreflect.Message { 2512 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[30] 2513 if protoimpl.UnsafeEnabled && x != nil { 2514 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2515 if ms.LoadMessageInfo() == nil { 2516 ms.StoreMessageInfo(mi) 2517 } 2518 return ms 2519 } 2520 return mi.MessageOf(x) 2521 } 2522 2523 // Deprecated: Use IndividualVotesRequest.ProtoReflect.Descriptor instead. 2524 func (*IndividualVotesRequest) Descriptor() ([]byte, []int) { 2525 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{30} 2526 } 2527 2528 func (x *IndividualVotesRequest) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2529 if x != nil { 2530 return x.Epoch 2531 } 2532 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2533 } 2534 2535 func (x *IndividualVotesRequest) GetPublicKeys() [][]byte { 2536 if x != nil { 2537 return x.PublicKeys 2538 } 2539 return nil 2540 } 2541 2542 func (x *IndividualVotesRequest) GetIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2543 if x != nil { 2544 return x.Indices 2545 } 2546 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 2547 } 2548 2549 type IndividualVotesRespond struct { 2550 state protoimpl.MessageState 2551 sizeCache protoimpl.SizeCache 2552 unknownFields protoimpl.UnknownFields 2553 2554 IndividualVotes []*IndividualVotesRespond_IndividualVote `protobuf:"bytes,1,rep,name=individual_votes,json=individualVotes,proto3" json:"individual_votes,omitempty"` 2555 } 2556 2557 func (x *IndividualVotesRespond) Reset() { 2558 *x = IndividualVotesRespond{} 2559 if protoimpl.UnsafeEnabled { 2560 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[31] 2561 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2562 ms.StoreMessageInfo(mi) 2563 } 2564 } 2565 2566 func (x *IndividualVotesRespond) String() string { 2567 return protoimpl.X.MessageStringOf(x) 2568 } 2569 2570 func (*IndividualVotesRespond) ProtoMessage() {} 2571 2572 func (x *IndividualVotesRespond) ProtoReflect() protoreflect.Message { 2573 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[31] 2574 if protoimpl.UnsafeEnabled && x != nil { 2575 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2576 if ms.LoadMessageInfo() == nil { 2577 ms.StoreMessageInfo(mi) 2578 } 2579 return ms 2580 } 2581 return mi.MessageOf(x) 2582 } 2583 2584 // Deprecated: Use IndividualVotesRespond.ProtoReflect.Descriptor instead. 2585 func (*IndividualVotesRespond) Descriptor() ([]byte, []int) { 2586 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{31} 2587 } 2588 2589 func (x *IndividualVotesRespond) GetIndividualVotes() []*IndividualVotesRespond_IndividualVote { 2590 if x != nil { 2591 return x.IndividualVotes 2592 } 2593 return nil 2594 } 2595 2596 type WeakSubjectivityCheckpoint struct { 2597 state protoimpl.MessageState 2598 sizeCache protoimpl.SizeCache 2599 unknownFields protoimpl.UnknownFields 2600 2601 BlockRoot []byte `protobuf:"bytes,1,opt,name=block_root,json=blockRoot,proto3" json:"block_root,omitempty"` 2602 StateRoot []byte `protobuf:"bytes,2,opt,name=state_root,json=stateRoot,proto3" json:"state_root,omitempty"` 2603 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,3,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2604 } 2605 2606 func (x *WeakSubjectivityCheckpoint) Reset() { 2607 *x = WeakSubjectivityCheckpoint{} 2608 if protoimpl.UnsafeEnabled { 2609 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[32] 2610 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2611 ms.StoreMessageInfo(mi) 2612 } 2613 } 2614 2615 func (x *WeakSubjectivityCheckpoint) String() string { 2616 return protoimpl.X.MessageStringOf(x) 2617 } 2618 2619 func (*WeakSubjectivityCheckpoint) ProtoMessage() {} 2620 2621 func (x *WeakSubjectivityCheckpoint) ProtoReflect() protoreflect.Message { 2622 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[32] 2623 if protoimpl.UnsafeEnabled && x != nil { 2624 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2625 if ms.LoadMessageInfo() == nil { 2626 ms.StoreMessageInfo(mi) 2627 } 2628 return ms 2629 } 2630 return mi.MessageOf(x) 2631 } 2632 2633 // Deprecated: Use WeakSubjectivityCheckpoint.ProtoReflect.Descriptor instead. 2634 func (*WeakSubjectivityCheckpoint) Descriptor() ([]byte, []int) { 2635 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{32} 2636 } 2637 2638 func (x *WeakSubjectivityCheckpoint) GetBlockRoot() []byte { 2639 if x != nil { 2640 return x.BlockRoot 2641 } 2642 return nil 2643 } 2644 2645 func (x *WeakSubjectivityCheckpoint) GetStateRoot() []byte { 2646 if x != nil { 2647 return x.StateRoot 2648 } 2649 return nil 2650 } 2651 2652 func (x *WeakSubjectivityCheckpoint) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 2653 if x != nil { 2654 return x.Epoch 2655 } 2656 return github_com_prysmaticlabs_eth2_types.Epoch(0) 2657 } 2658 2659 type BeaconCommittees_CommitteeItem struct { 2660 state protoimpl.MessageState 2661 sizeCache protoimpl.SizeCache 2662 unknownFields protoimpl.UnknownFields 2663 2664 ValidatorIndices []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,1,rep,packed,name=validator_indices,json=validatorIndices,proto3" json:"validator_indices,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2665 } 2666 2667 func (x *BeaconCommittees_CommitteeItem) Reset() { 2668 *x = BeaconCommittees_CommitteeItem{} 2669 if protoimpl.UnsafeEnabled { 2670 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[33] 2671 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2672 ms.StoreMessageInfo(mi) 2673 } 2674 } 2675 2676 func (x *BeaconCommittees_CommitteeItem) String() string { 2677 return protoimpl.X.MessageStringOf(x) 2678 } 2679 2680 func (*BeaconCommittees_CommitteeItem) ProtoMessage() {} 2681 2682 func (x *BeaconCommittees_CommitteeItem) ProtoReflect() protoreflect.Message { 2683 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[33] 2684 if protoimpl.UnsafeEnabled && x != nil { 2685 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2686 if ms.LoadMessageInfo() == nil { 2687 ms.StoreMessageInfo(mi) 2688 } 2689 return ms 2690 } 2691 return mi.MessageOf(x) 2692 } 2693 2694 // Deprecated: Use BeaconCommittees_CommitteeItem.ProtoReflect.Descriptor instead. 2695 func (*BeaconCommittees_CommitteeItem) Descriptor() ([]byte, []int) { 2696 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{11, 0} 2697 } 2698 2699 func (x *BeaconCommittees_CommitteeItem) GetValidatorIndices() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2700 if x != nil { 2701 return x.ValidatorIndices 2702 } 2703 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 2704 } 2705 2706 type BeaconCommittees_CommitteesList struct { 2707 state protoimpl.MessageState 2708 sizeCache protoimpl.SizeCache 2709 unknownFields protoimpl.UnknownFields 2710 2711 Committees []*BeaconCommittees_CommitteeItem `protobuf:"bytes,1,rep,name=committees,proto3" json:"committees,omitempty"` 2712 } 2713 2714 func (x *BeaconCommittees_CommitteesList) Reset() { 2715 *x = BeaconCommittees_CommitteesList{} 2716 if protoimpl.UnsafeEnabled { 2717 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[34] 2718 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2719 ms.StoreMessageInfo(mi) 2720 } 2721 } 2722 2723 func (x *BeaconCommittees_CommitteesList) String() string { 2724 return protoimpl.X.MessageStringOf(x) 2725 } 2726 2727 func (*BeaconCommittees_CommitteesList) ProtoMessage() {} 2728 2729 func (x *BeaconCommittees_CommitteesList) ProtoReflect() protoreflect.Message { 2730 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[34] 2731 if protoimpl.UnsafeEnabled && x != nil { 2732 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2733 if ms.LoadMessageInfo() == nil { 2734 ms.StoreMessageInfo(mi) 2735 } 2736 return ms 2737 } 2738 return mi.MessageOf(x) 2739 } 2740 2741 // Deprecated: Use BeaconCommittees_CommitteesList.ProtoReflect.Descriptor instead. 2742 func (*BeaconCommittees_CommitteesList) Descriptor() ([]byte, []int) { 2743 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{11, 1} 2744 } 2745 2746 func (x *BeaconCommittees_CommitteesList) GetCommittees() []*BeaconCommittees_CommitteeItem { 2747 if x != nil { 2748 return x.Committees 2749 } 2750 return nil 2751 } 2752 2753 type ValidatorBalances_Balance struct { 2754 state protoimpl.MessageState 2755 sizeCache protoimpl.SizeCache 2756 unknownFields protoimpl.UnknownFields 2757 2758 PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty" ssz-size:"48"` 2759 Index github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2760 Balance uint64 `protobuf:"varint,3,opt,name=balance,proto3" json:"balance,omitempty"` 2761 Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` 2762 } 2763 2764 func (x *ValidatorBalances_Balance) Reset() { 2765 *x = ValidatorBalances_Balance{} 2766 if protoimpl.UnsafeEnabled { 2767 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[36] 2768 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2769 ms.StoreMessageInfo(mi) 2770 } 2771 } 2772 2773 func (x *ValidatorBalances_Balance) String() string { 2774 return protoimpl.X.MessageStringOf(x) 2775 } 2776 2777 func (*ValidatorBalances_Balance) ProtoMessage() {} 2778 2779 func (x *ValidatorBalances_Balance) ProtoReflect() protoreflect.Message { 2780 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[36] 2781 if protoimpl.UnsafeEnabled && x != nil { 2782 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2783 if ms.LoadMessageInfo() == nil { 2784 ms.StoreMessageInfo(mi) 2785 } 2786 return ms 2787 } 2788 return mi.MessageOf(x) 2789 } 2790 2791 // Deprecated: Use ValidatorBalances_Balance.ProtoReflect.Descriptor instead. 2792 func (*ValidatorBalances_Balance) Descriptor() ([]byte, []int) { 2793 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{13, 0} 2794 } 2795 2796 func (x *ValidatorBalances_Balance) GetPublicKey() []byte { 2797 if x != nil { 2798 return x.PublicKey 2799 } 2800 return nil 2801 } 2802 2803 func (x *ValidatorBalances_Balance) GetIndex() github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2804 if x != nil { 2805 return x.Index 2806 } 2807 return github_com_prysmaticlabs_eth2_types.ValidatorIndex(0) 2808 } 2809 2810 func (x *ValidatorBalances_Balance) GetBalance() uint64 { 2811 if x != nil { 2812 return x.Balance 2813 } 2814 return 0 2815 } 2816 2817 func (x *ValidatorBalances_Balance) GetStatus() string { 2818 if x != nil { 2819 return x.Status 2820 } 2821 return "" 2822 } 2823 2824 type Validators_ValidatorContainer struct { 2825 state protoimpl.MessageState 2826 sizeCache protoimpl.SizeCache 2827 unknownFields protoimpl.UnknownFields 2828 2829 Index github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2830 Validator *Validator `protobuf:"bytes,2,opt,name=validator,proto3" json:"validator,omitempty"` 2831 } 2832 2833 func (x *Validators_ValidatorContainer) Reset() { 2834 *x = Validators_ValidatorContainer{} 2835 if protoimpl.UnsafeEnabled { 2836 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[37] 2837 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2838 ms.StoreMessageInfo(mi) 2839 } 2840 } 2841 2842 func (x *Validators_ValidatorContainer) String() string { 2843 return protoimpl.X.MessageStringOf(x) 2844 } 2845 2846 func (*Validators_ValidatorContainer) ProtoMessage() {} 2847 2848 func (x *Validators_ValidatorContainer) ProtoReflect() protoreflect.Message { 2849 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[37] 2850 if protoimpl.UnsafeEnabled && x != nil { 2851 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2852 if ms.LoadMessageInfo() == nil { 2853 ms.StoreMessageInfo(mi) 2854 } 2855 return ms 2856 } 2857 return mi.MessageOf(x) 2858 } 2859 2860 // Deprecated: Use Validators_ValidatorContainer.ProtoReflect.Descriptor instead. 2861 func (*Validators_ValidatorContainer) Descriptor() ([]byte, []int) { 2862 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{16, 0} 2863 } 2864 2865 func (x *Validators_ValidatorContainer) GetIndex() github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2866 if x != nil { 2867 return x.Index 2868 } 2869 return github_com_prysmaticlabs_eth2_types.ValidatorIndex(0) 2870 } 2871 2872 func (x *Validators_ValidatorContainer) GetValidator() *Validator { 2873 if x != nil { 2874 return x.Validator 2875 } 2876 return nil 2877 } 2878 2879 type ValidatorAssignments_CommitteeAssignment struct { 2880 state protoimpl.MessageState 2881 sizeCache protoimpl.SizeCache 2882 unknownFields protoimpl.UnknownFields 2883 2884 BeaconCommittees []github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,1,rep,packed,name=beacon_committees,json=beaconCommittees,proto3" json:"beacon_committees,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2885 CommitteeIndex github_com_prysmaticlabs_eth2_types.CommitteeIndex `protobuf:"varint,2,opt,name=committee_index,json=committeeIndex,proto3" json:"committee_index,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.CommitteeIndex"` 2886 AttesterSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,3,opt,name=attester_slot,json=attesterSlot,proto3" json:"attester_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 2887 ProposerSlots []github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,4,rep,packed,name=proposer_slots,json=proposerSlots,proto3" json:"proposer_slots,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 2888 // Deprecated: Do not use. 2889 PublicKey []byte `protobuf:"bytes,5,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty" ssz-size:"48"` 2890 ValidatorIndex github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,6,opt,name=validator_index,json=validatorIndex,proto3" json:"validator_index,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2891 } 2892 2893 func (x *ValidatorAssignments_CommitteeAssignment) Reset() { 2894 *x = ValidatorAssignments_CommitteeAssignment{} 2895 if protoimpl.UnsafeEnabled { 2896 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[38] 2897 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2898 ms.StoreMessageInfo(mi) 2899 } 2900 } 2901 2902 func (x *ValidatorAssignments_CommitteeAssignment) String() string { 2903 return protoimpl.X.MessageStringOf(x) 2904 } 2905 2906 func (*ValidatorAssignments_CommitteeAssignment) ProtoMessage() {} 2907 2908 func (x *ValidatorAssignments_CommitteeAssignment) ProtoReflect() protoreflect.Message { 2909 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[38] 2910 if protoimpl.UnsafeEnabled && x != nil { 2911 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2912 if ms.LoadMessageInfo() == nil { 2913 ms.StoreMessageInfo(mi) 2914 } 2915 return ms 2916 } 2917 return mi.MessageOf(x) 2918 } 2919 2920 // Deprecated: Use ValidatorAssignments_CommitteeAssignment.ProtoReflect.Descriptor instead. 2921 func (*ValidatorAssignments_CommitteeAssignment) Descriptor() ([]byte, []int) { 2922 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{23, 0} 2923 } 2924 2925 func (x *ValidatorAssignments_CommitteeAssignment) GetBeaconCommittees() []github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2926 if x != nil { 2927 return x.BeaconCommittees 2928 } 2929 return []github_com_prysmaticlabs_eth2_types.ValidatorIndex(nil) 2930 } 2931 2932 func (x *ValidatorAssignments_CommitteeAssignment) GetCommitteeIndex() github_com_prysmaticlabs_eth2_types.CommitteeIndex { 2933 if x != nil { 2934 return x.CommitteeIndex 2935 } 2936 return github_com_prysmaticlabs_eth2_types.CommitteeIndex(0) 2937 } 2938 2939 func (x *ValidatorAssignments_CommitteeAssignment) GetAttesterSlot() github_com_prysmaticlabs_eth2_types.Slot { 2940 if x != nil { 2941 return x.AttesterSlot 2942 } 2943 return github_com_prysmaticlabs_eth2_types.Slot(0) 2944 } 2945 2946 func (x *ValidatorAssignments_CommitteeAssignment) GetProposerSlots() []github_com_prysmaticlabs_eth2_types.Slot { 2947 if x != nil { 2948 return x.ProposerSlots 2949 } 2950 return []github_com_prysmaticlabs_eth2_types.Slot(nil) 2951 } 2952 2953 // Deprecated: Do not use. 2954 func (x *ValidatorAssignments_CommitteeAssignment) GetPublicKey() []byte { 2955 if x != nil { 2956 return x.PublicKey 2957 } 2958 return nil 2959 } 2960 2961 func (x *ValidatorAssignments_CommitteeAssignment) GetValidatorIndex() github_com_prysmaticlabs_eth2_types.ValidatorIndex { 2962 if x != nil { 2963 return x.ValidatorIndex 2964 } 2965 return github_com_prysmaticlabs_eth2_types.ValidatorIndex(0) 2966 } 2967 2968 type IndividualVotesRespond_IndividualVote struct { 2969 state protoimpl.MessageState 2970 sizeCache protoimpl.SizeCache 2971 unknownFields protoimpl.UnknownFields 2972 2973 Epoch github_com_prysmaticlabs_eth2_types.Epoch `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Epoch"` 2974 PublicKey []byte `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` 2975 ValidatorIndex github_com_prysmaticlabs_eth2_types.ValidatorIndex `protobuf:"varint,3,opt,name=validator_index,json=validatorIndex,proto3" json:"validator_index,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.ValidatorIndex"` 2976 IsSlashed bool `protobuf:"varint,4,opt,name=is_slashed,json=isSlashed,proto3" json:"is_slashed,omitempty"` 2977 IsWithdrawableInCurrentEpoch bool `protobuf:"varint,5,opt,name=is_withdrawable_in_current_epoch,json=isWithdrawableInCurrentEpoch,proto3" json:"is_withdrawable_in_current_epoch,omitempty"` 2978 IsActiveInCurrentEpoch bool `protobuf:"varint,6,opt,name=is_active_in_current_epoch,json=isActiveInCurrentEpoch,proto3" json:"is_active_in_current_epoch,omitempty"` 2979 IsActiveInPreviousEpoch bool `protobuf:"varint,7,opt,name=is_active_in_previous_epoch,json=isActiveInPreviousEpoch,proto3" json:"is_active_in_previous_epoch,omitempty"` 2980 IsCurrentEpochAttester bool `protobuf:"varint,8,opt,name=is_current_epoch_attester,json=isCurrentEpochAttester,proto3" json:"is_current_epoch_attester,omitempty"` 2981 IsCurrentEpochTargetAttester bool `protobuf:"varint,9,opt,name=is_current_epoch_target_attester,json=isCurrentEpochTargetAttester,proto3" json:"is_current_epoch_target_attester,omitempty"` 2982 IsPreviousEpochAttester bool `protobuf:"varint,10,opt,name=is_previous_epoch_attester,json=isPreviousEpochAttester,proto3" json:"is_previous_epoch_attester,omitempty"` 2983 IsPreviousEpochTargetAttester bool `protobuf:"varint,11,opt,name=is_previous_epoch_target_attester,json=isPreviousEpochTargetAttester,proto3" json:"is_previous_epoch_target_attester,omitempty"` 2984 IsPreviousEpochHeadAttester bool `protobuf:"varint,12,opt,name=is_previous_epoch_head_attester,json=isPreviousEpochHeadAttester,proto3" json:"is_previous_epoch_head_attester,omitempty"` 2985 CurrentEpochEffectiveBalanceGwei uint64 `protobuf:"varint,13,opt,name=current_epoch_effective_balance_gwei,json=currentEpochEffectiveBalanceGwei,proto3" json:"current_epoch_effective_balance_gwei,omitempty"` 2986 InclusionSlot github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,14,opt,name=inclusion_slot,json=inclusionSlot,proto3" json:"inclusion_slot,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 2987 InclusionDistance github_com_prysmaticlabs_eth2_types.Slot `protobuf:"varint,15,opt,name=inclusion_distance,json=inclusionDistance,proto3" json:"inclusion_distance,omitempty" cast-type:"github.com/prysmaticlabs/eth2-types.Slot"` 2988 } 2989 2990 func (x *IndividualVotesRespond_IndividualVote) Reset() { 2991 *x = IndividualVotesRespond_IndividualVote{} 2992 if protoimpl.UnsafeEnabled { 2993 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[40] 2994 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2995 ms.StoreMessageInfo(mi) 2996 } 2997 } 2998 2999 func (x *IndividualVotesRespond_IndividualVote) String() string { 3000 return protoimpl.X.MessageStringOf(x) 3001 } 3002 3003 func (*IndividualVotesRespond_IndividualVote) ProtoMessage() {} 3004 3005 func (x *IndividualVotesRespond_IndividualVote) ProtoReflect() protoreflect.Message { 3006 mi := &file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[40] 3007 if protoimpl.UnsafeEnabled && x != nil { 3008 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3009 if ms.LoadMessageInfo() == nil { 3010 ms.StoreMessageInfo(mi) 3011 } 3012 return ms 3013 } 3014 return mi.MessageOf(x) 3015 } 3016 3017 // Deprecated: Use IndividualVotesRespond_IndividualVote.ProtoReflect.Descriptor instead. 3018 func (*IndividualVotesRespond_IndividualVote) Descriptor() ([]byte, []int) { 3019 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP(), []int{31, 0} 3020 } 3021 3022 func (x *IndividualVotesRespond_IndividualVote) GetEpoch() github_com_prysmaticlabs_eth2_types.Epoch { 3023 if x != nil { 3024 return x.Epoch 3025 } 3026 return github_com_prysmaticlabs_eth2_types.Epoch(0) 3027 } 3028 3029 func (x *IndividualVotesRespond_IndividualVote) GetPublicKey() []byte { 3030 if x != nil { 3031 return x.PublicKey 3032 } 3033 return nil 3034 } 3035 3036 func (x *IndividualVotesRespond_IndividualVote) GetValidatorIndex() github_com_prysmaticlabs_eth2_types.ValidatorIndex { 3037 if x != nil { 3038 return x.ValidatorIndex 3039 } 3040 return github_com_prysmaticlabs_eth2_types.ValidatorIndex(0) 3041 } 3042 3043 func (x *IndividualVotesRespond_IndividualVote) GetIsSlashed() bool { 3044 if x != nil { 3045 return x.IsSlashed 3046 } 3047 return false 3048 } 3049 3050 func (x *IndividualVotesRespond_IndividualVote) GetIsWithdrawableInCurrentEpoch() bool { 3051 if x != nil { 3052 return x.IsWithdrawableInCurrentEpoch 3053 } 3054 return false 3055 } 3056 3057 func (x *IndividualVotesRespond_IndividualVote) GetIsActiveInCurrentEpoch() bool { 3058 if x != nil { 3059 return x.IsActiveInCurrentEpoch 3060 } 3061 return false 3062 } 3063 3064 func (x *IndividualVotesRespond_IndividualVote) GetIsActiveInPreviousEpoch() bool { 3065 if x != nil { 3066 return x.IsActiveInPreviousEpoch 3067 } 3068 return false 3069 } 3070 3071 func (x *IndividualVotesRespond_IndividualVote) GetIsCurrentEpochAttester() bool { 3072 if x != nil { 3073 return x.IsCurrentEpochAttester 3074 } 3075 return false 3076 } 3077 3078 func (x *IndividualVotesRespond_IndividualVote) GetIsCurrentEpochTargetAttester() bool { 3079 if x != nil { 3080 return x.IsCurrentEpochTargetAttester 3081 } 3082 return false 3083 } 3084 3085 func (x *IndividualVotesRespond_IndividualVote) GetIsPreviousEpochAttester() bool { 3086 if x != nil { 3087 return x.IsPreviousEpochAttester 3088 } 3089 return false 3090 } 3091 3092 func (x *IndividualVotesRespond_IndividualVote) GetIsPreviousEpochTargetAttester() bool { 3093 if x != nil { 3094 return x.IsPreviousEpochTargetAttester 3095 } 3096 return false 3097 } 3098 3099 func (x *IndividualVotesRespond_IndividualVote) GetIsPreviousEpochHeadAttester() bool { 3100 if x != nil { 3101 return x.IsPreviousEpochHeadAttester 3102 } 3103 return false 3104 } 3105 3106 func (x *IndividualVotesRespond_IndividualVote) GetCurrentEpochEffectiveBalanceGwei() uint64 { 3107 if x != nil { 3108 return x.CurrentEpochEffectiveBalanceGwei 3109 } 3110 return 0 3111 } 3112 3113 func (x *IndividualVotesRespond_IndividualVote) GetInclusionSlot() github_com_prysmaticlabs_eth2_types.Slot { 3114 if x != nil { 3115 return x.InclusionSlot 3116 } 3117 return github_com_prysmaticlabs_eth2_types.Slot(0) 3118 } 3119 3120 func (x *IndividualVotesRespond_IndividualVote) GetInclusionDistance() github_com_prysmaticlabs_eth2_types.Slot { 3121 if x != nil { 3122 return x.InclusionDistance 3123 } 3124 return github_com_prysmaticlabs_eth2_types.Slot(0) 3125 } 3126 3127 var File_proto_eth_v1alpha1_beacon_chain_proto protoreflect.FileDescriptor 3128 3129 var file_proto_eth_v1alpha1_beacon_chain_proto_rawDesc = []byte{ 3130 0x0a, 0x25, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 3131 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x69, 3132 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3133 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x1a, 0x1c, 3134 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 3135 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 3136 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 3137 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 3138 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x65, 0x78, 0x74, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3139 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x74, 3140 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 3141 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x70, 0x72, 3142 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 3143 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x72, 3144 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 3145 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 3146 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6f, 0x0a, 0x12, 0x56, 0x61, 0x6c, 0x69, 0x64, 3147 0x61, 0x74, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x65, 0x74, 0x12, 0x38, 0x0a, 3148 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 3149 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 3150 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 3151 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 3152 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x75, 3153 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 3154 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 3155 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 3156 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 3157 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 3158 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 3159 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 3160 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0d, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x5f, 0x65, 0x70, 3161 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0c, 0x67, 0x65, 0x6e, 3162 0x65, 0x73, 0x69, 0x73, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 3163 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 3164 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 3165 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 3166 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 3167 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0xd3, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x74, 3168 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3169 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 3170 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 3171 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 3172 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 3173 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0d, 0x67, 0x65, 0x6e, 0x65, 3174 0x73, 0x69, 0x73, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 3175 0x00, 0x52, 0x0c, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 3176 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 3177 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 3178 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 3179 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 3180 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0xa9, 0x01, 0x0a, 0x18, 3181 0x4c, 0x69, 0x73, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3182 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x65, 3183 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 3184 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 3185 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 3186 0x6f, 0x6e, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3187 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 3188 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 3189 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 3190 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 3191 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xc6, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 3192 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 3193 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x14, 0x69, 3194 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 3195 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x74, 0x68, 0x65, 3196 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 3197 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 3198 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 3199 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 3200 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 3201 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 3202 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 3203 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 3204 0x22, 0x9c, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 3205 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x01, 3206 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x42, 0x0a, 0x04, 3207 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 3208 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 3209 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 3210 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x48, 0x00, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 3211 0x12, 0x45, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 3212 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 3213 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 3214 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 3215 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 3216 0x69, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 3217 0x73, 0x69, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 3218 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 3219 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06, 3220 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 3221 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 3222 0xb2, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 3223 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 3224 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 3225 0x2b, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 3226 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x42, 0x6c, 3227 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x0f, 0x62, 0x6c, 3228 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 3229 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 3230 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 3231 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 3232 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 3233 0x53, 0x69, 0x7a, 0x65, 0x22, 0x3a, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 3234 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x76, 3235 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 3236 0x28, 0x08, 0x52, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 3237 0x22, 0x93, 0x01, 0x0a, 0x14, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 3238 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 3239 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 3240 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 3241 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 3242 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 3243 0x63, 0x6b, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x62, 3244 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x6f, 3245 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 3246 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x22, 0xbc, 0x07, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x69, 0x6e, 3247 0x48, 0x65, 0x61, 0x64, 0x12, 0x49, 0x0a, 0x09, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x73, 0x6c, 0x6f, 3248 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 3249 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3250 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3251 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x08, 0x68, 0x65, 0x61, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x12, 3252 0x4c, 0x0a, 0x0a, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 3253 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 3254 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 3255 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 3256 0x63, 0x68, 0x52, 0x09, 0x68, 0x65, 0x61, 0x64, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x2e, 0x0a, 3257 0x0f, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 3258 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x06, 0x8a, 0xb5, 0x18, 0x02, 0x33, 0x32, 0x52, 0x0d, 3259 0x68, 0x65, 0x61, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x53, 0x0a, 3260 0x0e, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 3261 0x04, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 3262 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 3263 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 3264 0x6c, 0x6f, 0x74, 0x52, 0x0d, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x6c, 3265 0x6f, 0x74, 0x12, 0x56, 0x0a, 0x0f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 3266 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 3267 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 3268 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 3269 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x0e, 0x66, 0x69, 0x6e, 0x61, 3270 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x38, 0x0a, 0x14, 0x66, 0x69, 3271 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x6f, 3272 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x06, 0x8a, 0xb5, 0x18, 0x02, 0x33, 0x32, 3273 0x52, 0x12, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 3274 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x53, 0x0a, 0x0e, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 3275 0x64, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 3276 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3277 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3278 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0d, 0x6a, 0x75, 0x73, 0x74, 3279 0x69, 0x66, 0x69, 0x65, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x56, 0x0a, 0x0f, 0x6a, 0x75, 0x73, 3280 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 3281 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 3282 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 3283 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 3284 0x68, 0x52, 0x0e, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x70, 0x6f, 0x63, 3285 0x68, 0x12, 0x38, 0x0a, 0x14, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 3286 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x42, 3287 0x06, 0x8a, 0xb5, 0x18, 0x02, 0x33, 0x32, 0x52, 0x12, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 3288 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x64, 0x0a, 0x17, 0x70, 3289 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 3290 0x64, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 3291 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3292 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3293 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 3294 0x69, 0x6f, 0x75, 0x73, 0x4a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x53, 0x6c, 0x6f, 3295 0x74, 0x12, 0x67, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6a, 0x75, 3296 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x0b, 0x20, 3297 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 3298 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 3299 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 3300 0x63, 0x68, 0x52, 0x16, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x4a, 0x75, 0x73, 0x74, 3301 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x49, 0x0a, 0x1d, 0x70, 0x72, 3302 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 3303 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 3304 0x0c, 0x42, 0x06, 0x8a, 0xb5, 0x18, 0x02, 0x33, 0x32, 0x52, 0x1a, 0x70, 0x72, 0x65, 0x76, 0x69, 3305 0x6f, 0x75, 0x73, 0x4a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 3306 0x6b, 0x52, 0x6f, 0x6f, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 3307 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 3308 0x45, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 3309 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 3310 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 3311 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 3312 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 3313 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 3314 0x69, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 3315 0x65, 0x72, 0x22, 0xbc, 0x04, 0x0a, 0x10, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 3316 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 3317 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 3318 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 3319 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 3320 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x57, 0x0a, 0x0a, 3321 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 3322 0x32, 0x37, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3323 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 3324 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 3325 0x74, 0x65, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 3326 0x74, 0x74, 0x65, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 3327 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 3328 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x61, 0x6c, 3329 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x74, 0x0a, 0x0d, 0x43, 3330 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x63, 0x0a, 0x11, 3331 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 3332 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 3333 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3334 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3335 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 3336 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 3337 0x73, 0x1a, 0x67, 0x0a, 0x0e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x4c, 3338 0x69, 0x73, 0x74, 0x12, 0x55, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 3339 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 3340 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 3341 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 3342 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 3343 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x1a, 0x75, 0x0a, 0x0f, 0x43, 0x6f, 3344 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 3345 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 3346 0x4c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 3347 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 3348 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 3349 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 3350 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 3351 0x01, 0x22, 0xca, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3352 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 3353 0x73, 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 3354 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 3355 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 3356 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 3357 0x48, 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 3358 0x65, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 3359 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x29, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 3360 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x08, 0x8a, 0xb5, 0x18, 0x04, 3361 0x3f, 0x2c, 0x34, 0x38, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 3362 0x12, 0x50, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 3363 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 3364 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 3365 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 3366 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 3367 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 3368 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 3369 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06, 0x20, 3370 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x0e, 3371 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0xa0, 3372 0x03, 0x0a, 0x11, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 3373 0x6e, 0x63, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 3374 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 3375 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 3376 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 3377 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x4c, 0x0a, 0x08, 0x62, 0x61, 0x6c, 3378 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x65, 0x74, 3379 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 3380 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 3381 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x62, 3382 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 3383 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 3384 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 3385 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 3386 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0xb0, 3387 0x01, 0x0a, 0x07, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0a, 0x70, 0x75, 3388 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x06, 3389 0x8a, 0xb5, 0x18, 0x02, 0x34, 0x38, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 3390 0x79, 0x12, 0x4c, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 3391 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 3392 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 3393 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3394 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 3395 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 3396 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 3397 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 3398 0x73, 0x22, 0xd1, 0x02, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3399 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 3400 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 3401 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 3402 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 3403 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 3404 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 3405 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x16, 3406 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 3407 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 3408 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 3409 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 3410 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 3411 0x65, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 3412 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 3413 0x65, 0x79, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x07, 3414 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 3415 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 3416 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 3417 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x07, 0x69, 0x6e, 3418 0x64, 0x69, 0x63, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 3419 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x9e, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 3420 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4e, 0x0a, 3421 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 3422 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3423 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3424 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 3425 0x6e, 0x64, 0x65, 0x78, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 3426 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 3427 0x0c, 0x42, 0x06, 0x8a, 0xb5, 0x18, 0x02, 0x34, 0x38, 0x48, 0x00, 0x52, 0x09, 0x70, 0x75, 0x62, 3428 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 3429 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x9a, 0x03, 0x0a, 0x0a, 0x56, 0x61, 0x6c, 0x69, 0x64, 3430 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 3431 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 3432 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 3433 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 3434 0x6f, 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x5b, 0x0a, 0x0e, 0x76, 0x61, 3435 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 3436 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 3437 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 3438 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x43, 3439 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 3440 0x74, 0x6f, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 3441 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 3442 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 3443 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 3444 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0xa2, 3445 0x01, 0x0a, 0x12, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x74, 3446 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x4c, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 3447 0x20, 0x01, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 3448 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 3449 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 3450 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x05, 0x69, 0x6e, 3451 0x64, 0x65, 0x78, 0x12, 0x3e, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3452 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3453 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 3454 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 3455 0x74, 0x6f, 0x72, 0x22, 0x98, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 3456 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x74, 0x43, 0x68, 0x61, 3457 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 3458 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 3459 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 3460 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 3461 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 3462 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 3463 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x42, 0x0e, 3464 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0xc7, 3465 0x05, 0x0a, 0x10, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 3466 0x67, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 3467 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 3468 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 3469 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 3470 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x3c, 0x0a, 0x15, 0x61, 0x63, 0x74, 0x69, 3471 0x76, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 3472 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x08, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 3473 0x38, 0x52, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 3474 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x63, 0x0a, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 3475 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 3476 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 3477 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 3478 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 3479 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 3480 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x12, 0x65, 3481 0x78, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 3482 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x08, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 3483 0x38, 0x52, 0x10, 0x65, 0x78, 0x69, 0x74, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 3484 0x65, 0x79, 0x73, 0x12, 0x5d, 0x0a, 0x0e, 0x65, 0x78, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 3485 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 3486 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 3487 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 3488 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 3489 0x64, 0x65, 0x78, 0x52, 0x0d, 0x65, 0x78, 0x69, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 3490 0x65, 0x73, 0x12, 0x38, 0x0a, 0x13, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x70, 0x75, 3491 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0c, 0x42, 3492 0x08, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 0x38, 0x52, 0x11, 0x73, 0x6c, 0x61, 0x73, 0x68, 3493 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x5f, 0x0a, 0x0f, 3494 0x73, 0x6c, 0x61, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 3495 0x07, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 3496 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 3497 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 3498 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x0e, 0x73, 3499 0x6c, 0x61, 0x73, 0x68, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x38, 0x0a, 3500 0x13, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 3501 0x6b, 0x65, 0x79, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x08, 0x8a, 0xb5, 0x18, 0x04, 3502 0x3f, 0x2c, 0x34, 0x38, 0x52, 0x11, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x75, 0x62, 3503 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x5f, 0x0a, 0x0f, 0x65, 0x6a, 0x65, 0x63, 0x74, 3504 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x04, 3505 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 3506 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 3507 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3508 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x0e, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 3509 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x1b, 0x56, 0x61, 0x6c, 3510 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 3511 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 3512 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x02, 0x18, 3513 0x01, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x50, 0x0a, 3514 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 3515 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 3516 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 3517 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 3518 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 3519 0xe3, 0x05, 0x0a, 0x1c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 3520 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 3521 0x12, 0x3c, 0x0a, 0x1a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x66, 0x66, 0x65, 3522 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 3523 0x20, 0x03, 0x28, 0x04, 0x52, 0x18, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x66, 0x66, 3524 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x55, 3525 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 3526 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 3527 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3528 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3529 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 3530 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x5d, 0x0a, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 3531 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 3532 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 3533 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 3534 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 3535 0x52, 0x12, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x74, 0x61, 3536 0x6e, 0x63, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 3537 0x79, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 3538 0x20, 0x03, 0x28, 0x08, 0x52, 0x14, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x56, 3539 0x6f, 0x74, 0x65, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 3540 0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x61, 3541 0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x08, 0x52, 0x14, 0x63, 0x6f, 0x72, 0x72, 3542 0x65, 0x63, 0x74, 0x6c, 0x79, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 3543 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x5f, 0x76, 0x6f, 3544 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x18, 0x06, 0x20, 0x03, 0x28, 0x08, 0x52, 0x12, 3545 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x48, 0x65, 3546 0x61, 0x64, 0x12, 0x47, 0x0a, 0x20, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x5f, 0x62, 3547 0x65, 0x66, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x74, 0x72, 0x61, 0x6e, 3548 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x1d, 0x62, 0x61, 3549 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x45, 0x70, 0x6f, 0x63, 3550 0x68, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x1f, 0x62, 3551 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x70, 3552 0x6f, 0x63, 0x68, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 3553 0x20, 0x03, 0x28, 0x04, 0x52, 0x1c, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x66, 3554 0x74, 0x65, 0x72, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 3555 0x6f, 0x6e, 0x12, 0x2d, 0x0a, 0x12, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 3556 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x11, 3557 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3558 0x73, 0x12, 0x47, 0x0a, 0x20, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 3559 0x69, 0x76, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x62, 0x61, 3560 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1d, 0x61, 0x76, 0x65, 3561 0x72, 0x61, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3562 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x0b, 0x70, 0x75, 3563 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0c, 0x42, 3564 0x08, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 0x38, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 3565 0x63, 0x4b, 0x65, 0x79, 0x73, 0x22, 0x91, 0x03, 0x0a, 0x0e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3566 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x75, 0x72, 3567 0x6e, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 3568 0x68, 0x75, 0x72, 0x6e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x40, 0x0a, 0x16, 0x61, 0x63, 0x74, 3569 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 3570 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x0a, 0x18, 0x01, 0x8a, 0xb5, 0x18, 3571 0x04, 0x3f, 0x2c, 0x34, 0x38, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 3572 0x6e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x34, 0x0a, 0x10, 0x65, 3573 0x78, 0x69, 0x74, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 3574 0x03, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x0a, 0x18, 0x01, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 3575 0x38, 0x52, 0x0e, 0x65, 0x78, 0x69, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 3576 0x73, 0x12, 0x78, 0x0a, 0x1c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 3577 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 3578 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 3579 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3580 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3581 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 3582 0x1a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x69, 0x64, 3583 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x6c, 0x0a, 0x16, 0x65, 3584 0x78, 0x69, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 3585 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 3586 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 3587 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 3588 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 3589 0x64, 0x65, 0x78, 0x52, 0x14, 0x65, 0x78, 0x69, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 3590 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 0xcd, 0x02, 0x0a, 0x1f, 0x4c, 0x69, 3591 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 0x73, 0x69, 0x67, 3592 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 3593 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 3594 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3595 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3596 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 0x05, 0x65, 3597 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18, 3598 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 3599 0x12, 0x29, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 3600 0x03, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x08, 0x8a, 0xb5, 0x18, 0x04, 0x3f, 0x2c, 0x34, 0x38, 0x52, 3601 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x69, 3602 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 3603 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3604 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3605 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 3606 0x6e, 0x64, 0x65, 0x78, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1b, 0x0a, 3607 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 3608 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 3609 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 3610 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 3611 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x95, 0x06, 0x0a, 0x14, 0x56, 0x61, 3612 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 3613 0x74, 0x73, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 3614 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 3615 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 3616 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 3617 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x61, 0x0a, 0x0b, 0x61, 0x73, 0x73, 0x69, 0x67, 3618 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x65, 3619 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 3620 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 3621 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 3622 0x74, 0x65, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 3623 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 3624 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 3625 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 3626 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 3627 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 3628 0x65, 0x1a, 0x8d, 0x04, 0x0a, 0x13, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x41, 3629 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x63, 0x0a, 0x11, 0x62, 0x65, 0x61, 3630 0x63, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x18, 0x01, 3631 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 3632 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 3633 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 3634 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x10, 0x62, 0x65, 3635 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x12, 0x5f, 3636 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 3637 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 3638 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3639 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3640 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 3641 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 3642 0x51, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 3643 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 3644 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 3645 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 3646 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6c, 3647 0x6f, 0x74, 0x12, 0x53, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x73, 3648 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 3649 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 3650 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 3651 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 3652 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 3653 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x08, 0x18, 0x01, 0x8a, 3654 0xb5, 0x18, 0x02, 0x34, 0x38, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 3655 0x12, 0x5f, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 3656 0x64, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 3657 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 3658 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 3659 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 3660 0x78, 0x52, 0x0e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 3661 0x78, 0x22, 0x95, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 3662 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 3663 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 3664 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 3665 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 3666 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 3667 0x70, 0x6f, 0x63, 0x68, 0x48, 0x00, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1a, 0x0a, 3668 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 3669 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 3670 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0xd8, 0x01, 0x0a, 0x1e, 0x56, 0x61, 3671 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 3672 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x05, 3673 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 3674 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 3675 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 3676 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 3677 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x18, 0x02, 3678 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 3679 0x53, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 3680 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3681 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 3682 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 3683 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 3684 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x16, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 3685 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 3686 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 3687 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 3688 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 3689 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xa8, 0x01, 0x0a, 0x17, 0x41, 3690 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 3691 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 3692 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 3693 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 3694 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 3695 0x52, 0x0c, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 3696 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 3697 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 3698 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 3699 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 3700 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x92, 0x01, 0x0a, 0x0c, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 3701 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 3702 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3703 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 3704 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 3705 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 3706 0x39, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 3707 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 3708 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 3709 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x79, 0x0a, 0x16, 0x53, 0x75, 3710 0x62, 0x6d, 0x69, 0x74, 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 3711 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x0f, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x65, 0x64, 0x5f, 3712 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 3713 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 3714 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 3715 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3716 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x0e, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x65, 0x64, 0x49, 0x6e, 3717 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x16, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 3718 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3719 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 3720 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 3721 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 3722 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x05, 3723 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 3724 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 3725 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x50, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 3726 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 0x18, 0x32, 0x67, 0x69, 0x74, 3727 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 3728 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 3729 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 3730 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 0x8c, 0x09, 0x0a, 0x16, 0x49, 0x6e, 0x64, 3731 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 3732 0x6f, 0x6e, 0x64, 0x12, 0x67, 0x0a, 0x10, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 3733 0x6c, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 3734 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 3735 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 3736 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x2e, 0x49, 0x6e, 0x64, 3737 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x0f, 0x69, 0x6e, 0x64, 3738 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x1a, 0x88, 0x08, 0x0a, 3739 0x0e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x12, 3740 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2d, 3741 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 3742 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 3743 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x05, 0x65, 3744 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 3745 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 3746 0x4b, 0x65, 0x79, 0x12, 0x5f, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3747 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x36, 0x82, 0xb5, 3748 0x18, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 3749 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 3750 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 3751 0x6e, 0x64, 0x65, 0x78, 0x52, 0x0e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x49, 3752 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x73, 0x6c, 0x61, 0x73, 0x68, 3753 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x53, 0x6c, 0x61, 0x73, 3754 0x68, 0x65, 0x64, 0x12, 0x46, 0x0a, 0x20, 0x69, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 3755 0x61, 0x77, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 3756 0x74, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, 3757 0x73, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x43, 3758 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x3a, 0x0a, 0x1a, 0x69, 3759 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x75, 0x72, 0x72, 3760 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 3761 0x16, 0x69, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x43, 0x75, 0x72, 0x72, 0x65, 3762 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x3c, 0x0a, 0x1b, 0x69, 0x73, 0x5f, 0x61, 0x63, 3763 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 3764 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x73, 3765 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 3766 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x39, 0x0a, 0x19, 0x69, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 3767 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 3768 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x73, 0x43, 0x75, 0x72, 0x72, 3769 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 3770 0x12, 0x46, 0x0a, 0x20, 0x69, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 3771 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x65, 3772 0x73, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, 0x73, 0x43, 0x75, 3773 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 3774 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x73, 0x5f, 0x70, 3775 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x61, 0x74, 3776 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x73, 3777 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x41, 0x74, 0x74, 3778 0x65, 0x73, 0x74, 0x65, 0x72, 0x12, 0x48, 0x0a, 0x21, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 3779 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 3780 0x74, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 3781 0x52, 0x1d, 0x69, 0x73, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x45, 0x70, 0x6f, 0x63, 3782 0x68, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x12, 3783 0x44, 0x0a, 0x1f, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x65, 3784 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 3785 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x69, 0x73, 0x50, 0x72, 0x65, 0x76, 3786 0x69, 0x6f, 0x75, 0x73, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x48, 0x65, 0x61, 0x64, 0x41, 0x74, 0x74, 3787 0x65, 0x73, 0x74, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x24, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 3788 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 3789 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x67, 0x77, 0x65, 0x69, 0x18, 0x0d, 0x20, 3790 0x01, 0x28, 0x04, 0x52, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 3791 0x68, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 3792 0x65, 0x47, 0x77, 0x65, 0x69, 0x12, 0x53, 0x0a, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 3793 0x6f, 0x6e, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 3794 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 3795 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 3796 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0d, 0x69, 0x6e, 0x63, 3797 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x5b, 0x0a, 0x12, 0x69, 0x6e, 3798 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 3799 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x42, 0x2c, 0x82, 0xb5, 0x18, 0x28, 0x67, 0x69, 0x74, 0x68, 3800 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 3801 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 3802 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x44, 3803 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x1a, 0x57, 0x65, 0x61, 0x6b, 3804 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 0x63, 3805 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 3806 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 3807 0x6b, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x72, 3808 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 3809 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x03, 0x20, 3810 0x01, 0x28, 0x04, 0x42, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 3811 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 0x61, 0x62, 3812 0x73, 0x2f, 0x65, 0x74, 0x68, 0x32, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x70, 0x6f, 3813 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x2a, 0x56, 0x0a, 0x09, 0x53, 0x65, 0x74, 3814 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x44, 0x44, 0x5f, 0x56, 0x41, 3815 0x4c, 0x49, 0x44, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x00, 0x12, 0x19, 3816 0x0a, 0x15, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, 3817 0x4f, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x45, 0x54, 3818 0x5f, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 3819 0x02, 0x32, 0x93, 0x1d, 0x0a, 0x0b, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x69, 3820 0x6e, 0x12, 0x9e, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 3821 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3822 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 3823 0x69, 0x73, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 3824 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3825 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 3826 0x69, 0x73, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 3827 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 3828 0x21, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 3829 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 3830 0x6e, 0x73, 0x12, 0xbb, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 3831 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 3832 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 3833 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 3834 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 3835 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 3836 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 3837 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 3838 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 3839 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 3840 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x61, 0x74, 0x74, 0x65, 3841 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 3842 0x12, 0x84, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x41, 0x74, 0x74, 0x65, 0x73, 3843 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3844 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 3845 0x22, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 3846 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 3847 0x69, 0x6f, 0x6e, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x65, 0x74, 3848 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 3849 0x6e, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 3850 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x9a, 0x01, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, 3851 0x61, 0x6d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 3852 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 3853 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x29, 0x2e, 3854 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 3855 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x41, 0x74, 0x74, 3856 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x38, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 3857 0x12, 0x30, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 3858 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 3859 0x6f, 0x6e, 0x73, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x2f, 0x73, 0x74, 0x72, 0x65, 3860 0x61, 0x6d, 0x30, 0x01, 0x12, 0xa0, 0x01, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 3861 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x2d, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 3862 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 3863 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 3864 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 3865 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 3866 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 3867 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 3868 0x26, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 3869 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 3870 0x6e, 0x73, 0x2f, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x86, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 3871 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x28, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3872 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 3873 0x69, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 3874 0x1a, 0x29, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3875 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x6c, 0x6f, 3876 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 3877 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 3878 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 3879 0x12, 0x92, 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 3880 0x73, 0x12, 0x2a, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 3881 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 3882 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 3883 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 3884 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x42, 0x65, 0x61, 0x63, 3885 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x12, 3886 0x22, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 3887 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x2f, 0x73, 0x74, 0x72, 3888 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x7c, 0x0a, 0x0f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 3889 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3890 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 3891 0x1a, 0x20, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3892 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 3893 0x61, 0x64, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x65, 0x74, 0x68, 3894 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 3895 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x68, 0x65, 0x61, 0x64, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 3896 0x6d, 0x30, 0x01, 0x12, 0x70, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 3897 0x65, 0x61, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 3898 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x20, 0x2e, 0x65, 0x74, 3899 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 3900 0x68, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x22, 0x26, 0x82, 3901 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 3902 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x69, 3903 0x6e, 0x68, 0x65, 0x61, 0x64, 0x12, 0xa5, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x57, 0x65, 0x61, 3904 0x6b, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 3905 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3906 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 3907 0x31, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 3908 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x61, 0x6b, 0x53, 0x75, 0x62, 0x6a, 3909 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 3910 0x6e, 0x74, 0x22, 0x39, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x12, 0x31, 0x2f, 0x65, 0x74, 0x68, 3911 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 3912 0x2f, 0x77, 0x65, 0x61, 0x6b, 0x5f, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 3913 0x74, 0x79, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x96, 0x01, 3914 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 3915 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x12, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 3916 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 3917 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x52, 0x65, 0x71, 3918 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 3919 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x61, 3920 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x22, 0x27, 0x82, 3921 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 3922 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 3923 0x69, 0x74, 0x74, 0x65, 0x65, 0x73, 0x12, 0xa1, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x56, 3924 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 3925 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3926 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 3927 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 3928 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 3929 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 3930 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x22, 3931 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 3932 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3933 0x73, 0x2f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x4c, 3934 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2c, 0x2e, 3935 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 3936 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 3937 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x65, 0x74, 3938 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 3939 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x20, 3940 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 3941 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 3942 0x12, 0x7d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3943 0x12, 0x2a, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3944 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 3945 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x65, 3946 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 3947 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1f, 3948 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 3949 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 3950 0xb6, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3951 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 3952 0x12, 0x3a, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3953 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 3954 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x74, 0x43, 0x68, 3955 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x65, 3956 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 3957 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x74, 0x43, 0x68, 3958 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 3959 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 3960 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x65, 3961 0x74, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x7a, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 3962 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x16, 0x2e, 3963 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 3964 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x25, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 3965 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 3966 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x75, 0x65, 0x22, 0x26, 0x82, 0xd3, 3967 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 3968 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x71, 3969 0x75, 0x65, 0x75, 0x65, 0x12, 0xb0, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 3970 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 3971 0x12, 0x32, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 3972 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 3973 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 3974 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 3975 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 3976 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 3977 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 3978 0x26, 0x12, 0x24, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 3979 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x70, 0x65, 0x72, 0x66, 3980 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x12, 0xad, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 3981 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 3982 0x65, 0x6e, 0x74, 0x73, 0x12, 0x36, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 3983 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 3984 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 3985 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x65, 3986 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 3987 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x73, 3988 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 3989 0x26, 0x12, 0x24, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 3990 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x61, 0x73, 0x73, 0x69, 3991 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0xbb, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x56, 3992 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 3993 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 3994 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 3995 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 3996 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 3997 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 3998 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 3999 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 4000 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 4001 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 4002 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 4003 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x73, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x42, 0x65, 0x61, 0x63, 4004 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4005 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 4006 0x1a, 0x23, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 4007 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 4008 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 4009 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 4010 0x63, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xa0, 0x01, 0x0a, 0x14, 0x53, 4011 0x74, 0x72, 0x65, 0x61, 0x6d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x49, 4012 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 4013 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 4014 0x64, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x65, 0x74, 0x1a, 0x24, 4015 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 4016 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 4017 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x33, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f, 0x65, 4018 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 4019 0x6f, 0x6e, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x69, 0x6e, 4020 0x66, 0x6f, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x28, 0x01, 0x30, 0x01, 0x12, 0xa8, 0x01, 4021 0x0a, 0x16, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 4022 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x27, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 4023 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 4024 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 4025 0x67, 0x1a, 0x2d, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 4026 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 4027 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 4028 0x22, 0x36, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 4029 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x73, 4030 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x65, 4031 0x72, 0x2f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x12, 0xa8, 0x01, 0x0a, 0x16, 0x53, 0x75, 0x62, 4032 0x6d, 0x69, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x53, 0x6c, 0x61, 0x73, 0x68, 4033 0x69, 0x6e, 0x67, 0x12, 0x27, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 4034 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x70, 4035 0x6f, 0x73, 0x65, 0x72, 0x53, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x1a, 0x2d, 0x2e, 0x65, 4036 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 4037 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x6c, 0x61, 0x73, 0x68, 4038 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x82, 0xd3, 0xe4, 4039 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 4040 0x61, 0x31, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x69, 4041 0x6e, 0x67, 0x73, 0x2f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x2f, 0x73, 0x75, 0x62, 4042 0x6d, 0x69, 0x74, 0x12, 0xa1, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x69, 0x76, 4043 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x2d, 0x2e, 0x65, 0x74, 0x68, 4044 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 4045 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 4046 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x65, 0x74, 0x68, 0x65, 4047 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 4048 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x56, 0x6f, 0x74, 0x65, 4049 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 4050 0x12, 0x25, 0x2f, 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 4051 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 4052 0x6c, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x42, 0x96, 0x01, 0x0a, 0x19, 0x6f, 0x72, 0x67, 0x2e, 4053 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 4054 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x43, 0x68, 0x61, 4055 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 4056 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x6c, 4057 0x61, 0x62, 0x73, 0x2f, 0x70, 0x72, 0x79, 0x73, 0x6d, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 4058 0x65, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x65, 0x74, 0x68, 4059 0xaa, 0x02, 0x15, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x45, 0x74, 0x68, 0x2e, 4060 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x15, 0x45, 0x74, 0x68, 0x65, 0x72, 4061 0x65, 0x75, 0x6d, 0x5c, 0x45, 0x74, 0x68, 0x5c, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 4062 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 4063 } 4064 4065 var ( 4066 file_proto_eth_v1alpha1_beacon_chain_proto_rawDescOnce sync.Once 4067 file_proto_eth_v1alpha1_beacon_chain_proto_rawDescData = file_proto_eth_v1alpha1_beacon_chain_proto_rawDesc 4068 ) 4069 4070 func file_proto_eth_v1alpha1_beacon_chain_proto_rawDescGZIP() []byte { 4071 file_proto_eth_v1alpha1_beacon_chain_proto_rawDescOnce.Do(func() { 4072 file_proto_eth_v1alpha1_beacon_chain_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_eth_v1alpha1_beacon_chain_proto_rawDescData) 4073 }) 4074 return file_proto_eth_v1alpha1_beacon_chain_proto_rawDescData 4075 } 4076 4077 var file_proto_eth_v1alpha1_beacon_chain_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 4078 var file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes = make([]protoimpl.MessageInfo, 41) 4079 var file_proto_eth_v1alpha1_beacon_chain_proto_goTypes = []interface{}{ 4080 (SetAction)(0), // 0: ethereum.eth.v1alpha1.SetAction 4081 (*ValidatorChangeSet)(nil), // 1: ethereum.eth.v1alpha1.ValidatorChangeSet 4082 (*ListIndexedAttestationsRequest)(nil), // 2: ethereum.eth.v1alpha1.ListIndexedAttestationsRequest 4083 (*ListAttestationsRequest)(nil), // 3: ethereum.eth.v1alpha1.ListAttestationsRequest 4084 (*ListAttestationsResponse)(nil), // 4: ethereum.eth.v1alpha1.ListAttestationsResponse 4085 (*ListIndexedAttestationsResponse)(nil), // 5: ethereum.eth.v1alpha1.ListIndexedAttestationsResponse 4086 (*ListBlocksRequest)(nil), // 6: ethereum.eth.v1alpha1.ListBlocksRequest 4087 (*ListBlocksResponse)(nil), // 7: ethereum.eth.v1alpha1.ListBlocksResponse 4088 (*StreamBlocksRequest)(nil), // 8: ethereum.eth.v1alpha1.StreamBlocksRequest 4089 (*BeaconBlockContainer)(nil), // 9: ethereum.eth.v1alpha1.BeaconBlockContainer 4090 (*ChainHead)(nil), // 10: ethereum.eth.v1alpha1.ChainHead 4091 (*ListCommitteesRequest)(nil), // 11: ethereum.eth.v1alpha1.ListCommitteesRequest 4092 (*BeaconCommittees)(nil), // 12: ethereum.eth.v1alpha1.BeaconCommittees 4093 (*ListValidatorBalancesRequest)(nil), // 13: ethereum.eth.v1alpha1.ListValidatorBalancesRequest 4094 (*ValidatorBalances)(nil), // 14: ethereum.eth.v1alpha1.ValidatorBalances 4095 (*ListValidatorsRequest)(nil), // 15: ethereum.eth.v1alpha1.ListValidatorsRequest 4096 (*GetValidatorRequest)(nil), // 16: ethereum.eth.v1alpha1.GetValidatorRequest 4097 (*Validators)(nil), // 17: ethereum.eth.v1alpha1.Validators 4098 (*GetValidatorActiveSetChangesRequest)(nil), // 18: ethereum.eth.v1alpha1.GetValidatorActiveSetChangesRequest 4099 (*ActiveSetChanges)(nil), // 19: ethereum.eth.v1alpha1.ActiveSetChanges 4100 (*ValidatorPerformanceRequest)(nil), // 20: ethereum.eth.v1alpha1.ValidatorPerformanceRequest 4101 (*ValidatorPerformanceResponse)(nil), // 21: ethereum.eth.v1alpha1.ValidatorPerformanceResponse 4102 (*ValidatorQueue)(nil), // 22: ethereum.eth.v1alpha1.ValidatorQueue 4103 (*ListValidatorAssignmentsRequest)(nil), // 23: ethereum.eth.v1alpha1.ListValidatorAssignmentsRequest 4104 (*ValidatorAssignments)(nil), // 24: ethereum.eth.v1alpha1.ValidatorAssignments 4105 (*GetValidatorParticipationRequest)(nil), // 25: ethereum.eth.v1alpha1.GetValidatorParticipationRequest 4106 (*ValidatorParticipationResponse)(nil), // 26: ethereum.eth.v1alpha1.ValidatorParticipationResponse 4107 (*AttestationPoolRequest)(nil), // 27: ethereum.eth.v1alpha1.AttestationPoolRequest 4108 (*AttestationPoolResponse)(nil), // 28: ethereum.eth.v1alpha1.AttestationPoolResponse 4109 (*BeaconConfig)(nil), // 29: ethereum.eth.v1alpha1.BeaconConfig 4110 (*SubmitSlashingResponse)(nil), // 30: ethereum.eth.v1alpha1.SubmitSlashingResponse 4111 (*IndividualVotesRequest)(nil), // 31: ethereum.eth.v1alpha1.IndividualVotesRequest 4112 (*IndividualVotesRespond)(nil), // 32: ethereum.eth.v1alpha1.IndividualVotesRespond 4113 (*WeakSubjectivityCheckpoint)(nil), // 33: ethereum.eth.v1alpha1.WeakSubjectivityCheckpoint 4114 (*BeaconCommittees_CommitteeItem)(nil), // 34: ethereum.eth.v1alpha1.BeaconCommittees.CommitteeItem 4115 (*BeaconCommittees_CommitteesList)(nil), // 35: ethereum.eth.v1alpha1.BeaconCommittees.CommitteesList 4116 nil, // 36: ethereum.eth.v1alpha1.BeaconCommittees.CommitteesEntry 4117 (*ValidatorBalances_Balance)(nil), // 37: ethereum.eth.v1alpha1.ValidatorBalances.Balance 4118 (*Validators_ValidatorContainer)(nil), // 38: ethereum.eth.v1alpha1.Validators.ValidatorContainer 4119 (*ValidatorAssignments_CommitteeAssignment)(nil), // 39: ethereum.eth.v1alpha1.ValidatorAssignments.CommitteeAssignment 4120 nil, // 40: ethereum.eth.v1alpha1.BeaconConfig.ConfigEntry 4121 (*IndividualVotesRespond_IndividualVote)(nil), // 41: ethereum.eth.v1alpha1.IndividualVotesRespond.IndividualVote 4122 (*Attestation)(nil), // 42: ethereum.eth.v1alpha1.Attestation 4123 (*IndexedAttestation)(nil), // 43: ethereum.eth.v1alpha1.IndexedAttestation 4124 (*SignedBeaconBlock)(nil), // 44: ethereum.eth.v1alpha1.SignedBeaconBlock 4125 (*ValidatorParticipation)(nil), // 45: ethereum.eth.v1alpha1.ValidatorParticipation 4126 (*Validator)(nil), // 46: ethereum.eth.v1alpha1.Validator 4127 (*empty.Empty)(nil), // 47: google.protobuf.Empty 4128 (*AttesterSlashing)(nil), // 48: ethereum.eth.v1alpha1.AttesterSlashing 4129 (*ProposerSlashing)(nil), // 49: ethereum.eth.v1alpha1.ProposerSlashing 4130 (*ValidatorInfo)(nil), // 50: ethereum.eth.v1alpha1.ValidatorInfo 4131 } 4132 var file_proto_eth_v1alpha1_beacon_chain_proto_depIdxs = []int32{ 4133 0, // 0: ethereum.eth.v1alpha1.ValidatorChangeSet.action:type_name -> ethereum.eth.v1alpha1.SetAction 4134 42, // 1: ethereum.eth.v1alpha1.ListAttestationsResponse.attestations:type_name -> ethereum.eth.v1alpha1.Attestation 4135 43, // 2: ethereum.eth.v1alpha1.ListIndexedAttestationsResponse.indexed_attestations:type_name -> ethereum.eth.v1alpha1.IndexedAttestation 4136 9, // 3: ethereum.eth.v1alpha1.ListBlocksResponse.blockContainers:type_name -> ethereum.eth.v1alpha1.BeaconBlockContainer 4137 44, // 4: ethereum.eth.v1alpha1.BeaconBlockContainer.block:type_name -> ethereum.eth.v1alpha1.SignedBeaconBlock 4138 36, // 5: ethereum.eth.v1alpha1.BeaconCommittees.committees:type_name -> ethereum.eth.v1alpha1.BeaconCommittees.CommitteesEntry 4139 37, // 6: ethereum.eth.v1alpha1.ValidatorBalances.balances:type_name -> ethereum.eth.v1alpha1.ValidatorBalances.Balance 4140 38, // 7: ethereum.eth.v1alpha1.Validators.validator_list:type_name -> ethereum.eth.v1alpha1.Validators.ValidatorContainer 4141 39, // 8: ethereum.eth.v1alpha1.ValidatorAssignments.assignments:type_name -> ethereum.eth.v1alpha1.ValidatorAssignments.CommitteeAssignment 4142 45, // 9: ethereum.eth.v1alpha1.ValidatorParticipationResponse.participation:type_name -> ethereum.eth.v1alpha1.ValidatorParticipation 4143 42, // 10: ethereum.eth.v1alpha1.AttestationPoolResponse.attestations:type_name -> ethereum.eth.v1alpha1.Attestation 4144 40, // 11: ethereum.eth.v1alpha1.BeaconConfig.config:type_name -> ethereum.eth.v1alpha1.BeaconConfig.ConfigEntry 4145 41, // 12: ethereum.eth.v1alpha1.IndividualVotesRespond.individual_votes:type_name -> ethereum.eth.v1alpha1.IndividualVotesRespond.IndividualVote 4146 34, // 13: ethereum.eth.v1alpha1.BeaconCommittees.CommitteesList.committees:type_name -> ethereum.eth.v1alpha1.BeaconCommittees.CommitteeItem 4147 35, // 14: ethereum.eth.v1alpha1.BeaconCommittees.CommitteesEntry.value:type_name -> ethereum.eth.v1alpha1.BeaconCommittees.CommitteesList 4148 46, // 15: ethereum.eth.v1alpha1.Validators.ValidatorContainer.validator:type_name -> ethereum.eth.v1alpha1.Validator 4149 3, // 16: ethereum.eth.v1alpha1.BeaconChain.ListAttestations:input_type -> ethereum.eth.v1alpha1.ListAttestationsRequest 4150 2, // 17: ethereum.eth.v1alpha1.BeaconChain.ListIndexedAttestations:input_type -> ethereum.eth.v1alpha1.ListIndexedAttestationsRequest 4151 47, // 18: ethereum.eth.v1alpha1.BeaconChain.StreamAttestations:input_type -> google.protobuf.Empty 4152 47, // 19: ethereum.eth.v1alpha1.BeaconChain.StreamIndexedAttestations:input_type -> google.protobuf.Empty 4153 27, // 20: ethereum.eth.v1alpha1.BeaconChain.AttestationPool:input_type -> ethereum.eth.v1alpha1.AttestationPoolRequest 4154 6, // 21: ethereum.eth.v1alpha1.BeaconChain.ListBlocks:input_type -> ethereum.eth.v1alpha1.ListBlocksRequest 4155 8, // 22: ethereum.eth.v1alpha1.BeaconChain.StreamBlocks:input_type -> ethereum.eth.v1alpha1.StreamBlocksRequest 4156 47, // 23: ethereum.eth.v1alpha1.BeaconChain.StreamChainHead:input_type -> google.protobuf.Empty 4157 47, // 24: ethereum.eth.v1alpha1.BeaconChain.GetChainHead:input_type -> google.protobuf.Empty 4158 47, // 25: ethereum.eth.v1alpha1.BeaconChain.GetWeakSubjectivityCheckpoint:input_type -> google.protobuf.Empty 4159 11, // 26: ethereum.eth.v1alpha1.BeaconChain.ListBeaconCommittees:input_type -> ethereum.eth.v1alpha1.ListCommitteesRequest 4160 13, // 27: ethereum.eth.v1alpha1.BeaconChain.ListValidatorBalances:input_type -> ethereum.eth.v1alpha1.ListValidatorBalancesRequest 4161 15, // 28: ethereum.eth.v1alpha1.BeaconChain.ListValidators:input_type -> ethereum.eth.v1alpha1.ListValidatorsRequest 4162 16, // 29: ethereum.eth.v1alpha1.BeaconChain.GetValidator:input_type -> ethereum.eth.v1alpha1.GetValidatorRequest 4163 18, // 30: ethereum.eth.v1alpha1.BeaconChain.GetValidatorActiveSetChanges:input_type -> ethereum.eth.v1alpha1.GetValidatorActiveSetChangesRequest 4164 47, // 31: ethereum.eth.v1alpha1.BeaconChain.GetValidatorQueue:input_type -> google.protobuf.Empty 4165 20, // 32: ethereum.eth.v1alpha1.BeaconChain.GetValidatorPerformance:input_type -> ethereum.eth.v1alpha1.ValidatorPerformanceRequest 4166 23, // 33: ethereum.eth.v1alpha1.BeaconChain.ListValidatorAssignments:input_type -> ethereum.eth.v1alpha1.ListValidatorAssignmentsRequest 4167 25, // 34: ethereum.eth.v1alpha1.BeaconChain.GetValidatorParticipation:input_type -> ethereum.eth.v1alpha1.GetValidatorParticipationRequest 4168 47, // 35: ethereum.eth.v1alpha1.BeaconChain.GetBeaconConfig:input_type -> google.protobuf.Empty 4169 1, // 36: ethereum.eth.v1alpha1.BeaconChain.StreamValidatorsInfo:input_type -> ethereum.eth.v1alpha1.ValidatorChangeSet 4170 48, // 37: ethereum.eth.v1alpha1.BeaconChain.SubmitAttesterSlashing:input_type -> ethereum.eth.v1alpha1.AttesterSlashing 4171 49, // 38: ethereum.eth.v1alpha1.BeaconChain.SubmitProposerSlashing:input_type -> ethereum.eth.v1alpha1.ProposerSlashing 4172 31, // 39: ethereum.eth.v1alpha1.BeaconChain.GetIndividualVotes:input_type -> ethereum.eth.v1alpha1.IndividualVotesRequest 4173 4, // 40: ethereum.eth.v1alpha1.BeaconChain.ListAttestations:output_type -> ethereum.eth.v1alpha1.ListAttestationsResponse 4174 5, // 41: ethereum.eth.v1alpha1.BeaconChain.ListIndexedAttestations:output_type -> ethereum.eth.v1alpha1.ListIndexedAttestationsResponse 4175 42, // 42: ethereum.eth.v1alpha1.BeaconChain.StreamAttestations:output_type -> ethereum.eth.v1alpha1.Attestation 4176 43, // 43: ethereum.eth.v1alpha1.BeaconChain.StreamIndexedAttestations:output_type -> ethereum.eth.v1alpha1.IndexedAttestation 4177 28, // 44: ethereum.eth.v1alpha1.BeaconChain.AttestationPool:output_type -> ethereum.eth.v1alpha1.AttestationPoolResponse 4178 7, // 45: ethereum.eth.v1alpha1.BeaconChain.ListBlocks:output_type -> ethereum.eth.v1alpha1.ListBlocksResponse 4179 44, // 46: ethereum.eth.v1alpha1.BeaconChain.StreamBlocks:output_type -> ethereum.eth.v1alpha1.SignedBeaconBlock 4180 10, // 47: ethereum.eth.v1alpha1.BeaconChain.StreamChainHead:output_type -> ethereum.eth.v1alpha1.ChainHead 4181 10, // 48: ethereum.eth.v1alpha1.BeaconChain.GetChainHead:output_type -> ethereum.eth.v1alpha1.ChainHead 4182 33, // 49: ethereum.eth.v1alpha1.BeaconChain.GetWeakSubjectivityCheckpoint:output_type -> ethereum.eth.v1alpha1.WeakSubjectivityCheckpoint 4183 12, // 50: ethereum.eth.v1alpha1.BeaconChain.ListBeaconCommittees:output_type -> ethereum.eth.v1alpha1.BeaconCommittees 4184 14, // 51: ethereum.eth.v1alpha1.BeaconChain.ListValidatorBalances:output_type -> ethereum.eth.v1alpha1.ValidatorBalances 4185 17, // 52: ethereum.eth.v1alpha1.BeaconChain.ListValidators:output_type -> ethereum.eth.v1alpha1.Validators 4186 46, // 53: ethereum.eth.v1alpha1.BeaconChain.GetValidator:output_type -> ethereum.eth.v1alpha1.Validator 4187 19, // 54: ethereum.eth.v1alpha1.BeaconChain.GetValidatorActiveSetChanges:output_type -> ethereum.eth.v1alpha1.ActiveSetChanges 4188 22, // 55: ethereum.eth.v1alpha1.BeaconChain.GetValidatorQueue:output_type -> ethereum.eth.v1alpha1.ValidatorQueue 4189 21, // 56: ethereum.eth.v1alpha1.BeaconChain.GetValidatorPerformance:output_type -> ethereum.eth.v1alpha1.ValidatorPerformanceResponse 4190 24, // 57: ethereum.eth.v1alpha1.BeaconChain.ListValidatorAssignments:output_type -> ethereum.eth.v1alpha1.ValidatorAssignments 4191 26, // 58: ethereum.eth.v1alpha1.BeaconChain.GetValidatorParticipation:output_type -> ethereum.eth.v1alpha1.ValidatorParticipationResponse 4192 29, // 59: ethereum.eth.v1alpha1.BeaconChain.GetBeaconConfig:output_type -> ethereum.eth.v1alpha1.BeaconConfig 4193 50, // 60: ethereum.eth.v1alpha1.BeaconChain.StreamValidatorsInfo:output_type -> ethereum.eth.v1alpha1.ValidatorInfo 4194 30, // 61: ethereum.eth.v1alpha1.BeaconChain.SubmitAttesterSlashing:output_type -> ethereum.eth.v1alpha1.SubmitSlashingResponse 4195 30, // 62: ethereum.eth.v1alpha1.BeaconChain.SubmitProposerSlashing:output_type -> ethereum.eth.v1alpha1.SubmitSlashingResponse 4196 32, // 63: ethereum.eth.v1alpha1.BeaconChain.GetIndividualVotes:output_type -> ethereum.eth.v1alpha1.IndividualVotesRespond 4197 40, // [40:64] is the sub-list for method output_type 4198 16, // [16:40] is the sub-list for method input_type 4199 16, // [16:16] is the sub-list for extension type_name 4200 16, // [16:16] is the sub-list for extension extendee 4201 0, // [0:16] is the sub-list for field type_name 4202 } 4203 4204 func init() { file_proto_eth_v1alpha1_beacon_chain_proto_init() } 4205 func file_proto_eth_v1alpha1_beacon_chain_proto_init() { 4206 if File_proto_eth_v1alpha1_beacon_chain_proto != nil { 4207 return 4208 } 4209 file_proto_eth_v1alpha1_attestation_proto_init() 4210 file_proto_eth_v1alpha1_beacon_block_proto_init() 4211 file_proto_eth_v1alpha1_validator_proto_init() 4212 if !protoimpl.UnsafeEnabled { 4213 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 4214 switch v := v.(*ValidatorChangeSet); i { 4215 case 0: 4216 return &v.state 4217 case 1: 4218 return &v.sizeCache 4219 case 2: 4220 return &v.unknownFields 4221 default: 4222 return nil 4223 } 4224 } 4225 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 4226 switch v := v.(*ListIndexedAttestationsRequest); i { 4227 case 0: 4228 return &v.state 4229 case 1: 4230 return &v.sizeCache 4231 case 2: 4232 return &v.unknownFields 4233 default: 4234 return nil 4235 } 4236 } 4237 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 4238 switch v := v.(*ListAttestationsRequest); i { 4239 case 0: 4240 return &v.state 4241 case 1: 4242 return &v.sizeCache 4243 case 2: 4244 return &v.unknownFields 4245 default: 4246 return nil 4247 } 4248 } 4249 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 4250 switch v := v.(*ListAttestationsResponse); i { 4251 case 0: 4252 return &v.state 4253 case 1: 4254 return &v.sizeCache 4255 case 2: 4256 return &v.unknownFields 4257 default: 4258 return nil 4259 } 4260 } 4261 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 4262 switch v := v.(*ListIndexedAttestationsResponse); i { 4263 case 0: 4264 return &v.state 4265 case 1: 4266 return &v.sizeCache 4267 case 2: 4268 return &v.unknownFields 4269 default: 4270 return nil 4271 } 4272 } 4273 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 4274 switch v := v.(*ListBlocksRequest); i { 4275 case 0: 4276 return &v.state 4277 case 1: 4278 return &v.sizeCache 4279 case 2: 4280 return &v.unknownFields 4281 default: 4282 return nil 4283 } 4284 } 4285 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 4286 switch v := v.(*ListBlocksResponse); i { 4287 case 0: 4288 return &v.state 4289 case 1: 4290 return &v.sizeCache 4291 case 2: 4292 return &v.unknownFields 4293 default: 4294 return nil 4295 } 4296 } 4297 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 4298 switch v := v.(*StreamBlocksRequest); i { 4299 case 0: 4300 return &v.state 4301 case 1: 4302 return &v.sizeCache 4303 case 2: 4304 return &v.unknownFields 4305 default: 4306 return nil 4307 } 4308 } 4309 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 4310 switch v := v.(*BeaconBlockContainer); i { 4311 case 0: 4312 return &v.state 4313 case 1: 4314 return &v.sizeCache 4315 case 2: 4316 return &v.unknownFields 4317 default: 4318 return nil 4319 } 4320 } 4321 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 4322 switch v := v.(*ChainHead); i { 4323 case 0: 4324 return &v.state 4325 case 1: 4326 return &v.sizeCache 4327 case 2: 4328 return &v.unknownFields 4329 default: 4330 return nil 4331 } 4332 } 4333 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 4334 switch v := v.(*ListCommitteesRequest); i { 4335 case 0: 4336 return &v.state 4337 case 1: 4338 return &v.sizeCache 4339 case 2: 4340 return &v.unknownFields 4341 default: 4342 return nil 4343 } 4344 } 4345 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 4346 switch v := v.(*BeaconCommittees); i { 4347 case 0: 4348 return &v.state 4349 case 1: 4350 return &v.sizeCache 4351 case 2: 4352 return &v.unknownFields 4353 default: 4354 return nil 4355 } 4356 } 4357 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 4358 switch v := v.(*ListValidatorBalancesRequest); i { 4359 case 0: 4360 return &v.state 4361 case 1: 4362 return &v.sizeCache 4363 case 2: 4364 return &v.unknownFields 4365 default: 4366 return nil 4367 } 4368 } 4369 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 4370 switch v := v.(*ValidatorBalances); i { 4371 case 0: 4372 return &v.state 4373 case 1: 4374 return &v.sizeCache 4375 case 2: 4376 return &v.unknownFields 4377 default: 4378 return nil 4379 } 4380 } 4381 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 4382 switch v := v.(*ListValidatorsRequest); i { 4383 case 0: 4384 return &v.state 4385 case 1: 4386 return &v.sizeCache 4387 case 2: 4388 return &v.unknownFields 4389 default: 4390 return nil 4391 } 4392 } 4393 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 4394 switch v := v.(*GetValidatorRequest); i { 4395 case 0: 4396 return &v.state 4397 case 1: 4398 return &v.sizeCache 4399 case 2: 4400 return &v.unknownFields 4401 default: 4402 return nil 4403 } 4404 } 4405 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 4406 switch v := v.(*Validators); i { 4407 case 0: 4408 return &v.state 4409 case 1: 4410 return &v.sizeCache 4411 case 2: 4412 return &v.unknownFields 4413 default: 4414 return nil 4415 } 4416 } 4417 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 4418 switch v := v.(*GetValidatorActiveSetChangesRequest); i { 4419 case 0: 4420 return &v.state 4421 case 1: 4422 return &v.sizeCache 4423 case 2: 4424 return &v.unknownFields 4425 default: 4426 return nil 4427 } 4428 } 4429 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 4430 switch v := v.(*ActiveSetChanges); i { 4431 case 0: 4432 return &v.state 4433 case 1: 4434 return &v.sizeCache 4435 case 2: 4436 return &v.unknownFields 4437 default: 4438 return nil 4439 } 4440 } 4441 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 4442 switch v := v.(*ValidatorPerformanceRequest); i { 4443 case 0: 4444 return &v.state 4445 case 1: 4446 return &v.sizeCache 4447 case 2: 4448 return &v.unknownFields 4449 default: 4450 return nil 4451 } 4452 } 4453 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 4454 switch v := v.(*ValidatorPerformanceResponse); i { 4455 case 0: 4456 return &v.state 4457 case 1: 4458 return &v.sizeCache 4459 case 2: 4460 return &v.unknownFields 4461 default: 4462 return nil 4463 } 4464 } 4465 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 4466 switch v := v.(*ValidatorQueue); i { 4467 case 0: 4468 return &v.state 4469 case 1: 4470 return &v.sizeCache 4471 case 2: 4472 return &v.unknownFields 4473 default: 4474 return nil 4475 } 4476 } 4477 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 4478 switch v := v.(*ListValidatorAssignmentsRequest); i { 4479 case 0: 4480 return &v.state 4481 case 1: 4482 return &v.sizeCache 4483 case 2: 4484 return &v.unknownFields 4485 default: 4486 return nil 4487 } 4488 } 4489 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 4490 switch v := v.(*ValidatorAssignments); i { 4491 case 0: 4492 return &v.state 4493 case 1: 4494 return &v.sizeCache 4495 case 2: 4496 return &v.unknownFields 4497 default: 4498 return nil 4499 } 4500 } 4501 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { 4502 switch v := v.(*GetValidatorParticipationRequest); i { 4503 case 0: 4504 return &v.state 4505 case 1: 4506 return &v.sizeCache 4507 case 2: 4508 return &v.unknownFields 4509 default: 4510 return nil 4511 } 4512 } 4513 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { 4514 switch v := v.(*ValidatorParticipationResponse); i { 4515 case 0: 4516 return &v.state 4517 case 1: 4518 return &v.sizeCache 4519 case 2: 4520 return &v.unknownFields 4521 default: 4522 return nil 4523 } 4524 } 4525 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { 4526 switch v := v.(*AttestationPoolRequest); i { 4527 case 0: 4528 return &v.state 4529 case 1: 4530 return &v.sizeCache 4531 case 2: 4532 return &v.unknownFields 4533 default: 4534 return nil 4535 } 4536 } 4537 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { 4538 switch v := v.(*AttestationPoolResponse); i { 4539 case 0: 4540 return &v.state 4541 case 1: 4542 return &v.sizeCache 4543 case 2: 4544 return &v.unknownFields 4545 default: 4546 return nil 4547 } 4548 } 4549 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { 4550 switch v := v.(*BeaconConfig); i { 4551 case 0: 4552 return &v.state 4553 case 1: 4554 return &v.sizeCache 4555 case 2: 4556 return &v.unknownFields 4557 default: 4558 return nil 4559 } 4560 } 4561 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { 4562 switch v := v.(*SubmitSlashingResponse); i { 4563 case 0: 4564 return &v.state 4565 case 1: 4566 return &v.sizeCache 4567 case 2: 4568 return &v.unknownFields 4569 default: 4570 return nil 4571 } 4572 } 4573 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { 4574 switch v := v.(*IndividualVotesRequest); i { 4575 case 0: 4576 return &v.state 4577 case 1: 4578 return &v.sizeCache 4579 case 2: 4580 return &v.unknownFields 4581 default: 4582 return nil 4583 } 4584 } 4585 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { 4586 switch v := v.(*IndividualVotesRespond); i { 4587 case 0: 4588 return &v.state 4589 case 1: 4590 return &v.sizeCache 4591 case 2: 4592 return &v.unknownFields 4593 default: 4594 return nil 4595 } 4596 } 4597 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { 4598 switch v := v.(*WeakSubjectivityCheckpoint); i { 4599 case 0: 4600 return &v.state 4601 case 1: 4602 return &v.sizeCache 4603 case 2: 4604 return &v.unknownFields 4605 default: 4606 return nil 4607 } 4608 } 4609 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { 4610 switch v := v.(*BeaconCommittees_CommitteeItem); i { 4611 case 0: 4612 return &v.state 4613 case 1: 4614 return &v.sizeCache 4615 case 2: 4616 return &v.unknownFields 4617 default: 4618 return nil 4619 } 4620 } 4621 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { 4622 switch v := v.(*BeaconCommittees_CommitteesList); i { 4623 case 0: 4624 return &v.state 4625 case 1: 4626 return &v.sizeCache 4627 case 2: 4628 return &v.unknownFields 4629 default: 4630 return nil 4631 } 4632 } 4633 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { 4634 switch v := v.(*ValidatorBalances_Balance); i { 4635 case 0: 4636 return &v.state 4637 case 1: 4638 return &v.sizeCache 4639 case 2: 4640 return &v.unknownFields 4641 default: 4642 return nil 4643 } 4644 } 4645 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { 4646 switch v := v.(*Validators_ValidatorContainer); i { 4647 case 0: 4648 return &v.state 4649 case 1: 4650 return &v.sizeCache 4651 case 2: 4652 return &v.unknownFields 4653 default: 4654 return nil 4655 } 4656 } 4657 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { 4658 switch v := v.(*ValidatorAssignments_CommitteeAssignment); i { 4659 case 0: 4660 return &v.state 4661 case 1: 4662 return &v.sizeCache 4663 case 2: 4664 return &v.unknownFields 4665 default: 4666 return nil 4667 } 4668 } 4669 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { 4670 switch v := v.(*IndividualVotesRespond_IndividualVote); i { 4671 case 0: 4672 return &v.state 4673 case 1: 4674 return &v.sizeCache 4675 case 2: 4676 return &v.unknownFields 4677 default: 4678 return nil 4679 } 4680 } 4681 } 4682 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[1].OneofWrappers = []interface{}{ 4683 (*ListIndexedAttestationsRequest_Epoch)(nil), 4684 (*ListIndexedAttestationsRequest_GenesisEpoch)(nil), 4685 } 4686 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[2].OneofWrappers = []interface{}{ 4687 (*ListAttestationsRequest_Epoch)(nil), 4688 (*ListAttestationsRequest_GenesisEpoch)(nil), 4689 } 4690 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[5].OneofWrappers = []interface{}{ 4691 (*ListBlocksRequest_Root)(nil), 4692 (*ListBlocksRequest_Slot)(nil), 4693 (*ListBlocksRequest_Epoch)(nil), 4694 (*ListBlocksRequest_Genesis)(nil), 4695 } 4696 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[10].OneofWrappers = []interface{}{ 4697 (*ListCommitteesRequest_Epoch)(nil), 4698 (*ListCommitteesRequest_Genesis)(nil), 4699 } 4700 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[12].OneofWrappers = []interface{}{ 4701 (*ListValidatorBalancesRequest_Epoch)(nil), 4702 (*ListValidatorBalancesRequest_Genesis)(nil), 4703 } 4704 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[14].OneofWrappers = []interface{}{ 4705 (*ListValidatorsRequest_Epoch)(nil), 4706 (*ListValidatorsRequest_Genesis)(nil), 4707 } 4708 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[15].OneofWrappers = []interface{}{ 4709 (*GetValidatorRequest_Index)(nil), 4710 (*GetValidatorRequest_PublicKey)(nil), 4711 } 4712 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[17].OneofWrappers = []interface{}{ 4713 (*GetValidatorActiveSetChangesRequest_Epoch)(nil), 4714 (*GetValidatorActiveSetChangesRequest_Genesis)(nil), 4715 } 4716 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[22].OneofWrappers = []interface{}{ 4717 (*ListValidatorAssignmentsRequest_Epoch)(nil), 4718 (*ListValidatorAssignmentsRequest_Genesis)(nil), 4719 } 4720 file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes[24].OneofWrappers = []interface{}{ 4721 (*GetValidatorParticipationRequest_Epoch)(nil), 4722 (*GetValidatorParticipationRequest_Genesis)(nil), 4723 } 4724 type x struct{} 4725 out := protoimpl.TypeBuilder{ 4726 File: protoimpl.DescBuilder{ 4727 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 4728 RawDescriptor: file_proto_eth_v1alpha1_beacon_chain_proto_rawDesc, 4729 NumEnums: 1, 4730 NumMessages: 41, 4731 NumExtensions: 0, 4732 NumServices: 1, 4733 }, 4734 GoTypes: file_proto_eth_v1alpha1_beacon_chain_proto_goTypes, 4735 DependencyIndexes: file_proto_eth_v1alpha1_beacon_chain_proto_depIdxs, 4736 EnumInfos: file_proto_eth_v1alpha1_beacon_chain_proto_enumTypes, 4737 MessageInfos: file_proto_eth_v1alpha1_beacon_chain_proto_msgTypes, 4738 }.Build() 4739 File_proto_eth_v1alpha1_beacon_chain_proto = out.File 4740 file_proto_eth_v1alpha1_beacon_chain_proto_rawDesc = nil 4741 file_proto_eth_v1alpha1_beacon_chain_proto_goTypes = nil 4742 file_proto_eth_v1alpha1_beacon_chain_proto_depIdxs = nil 4743 } 4744 4745 // Reference imports to suppress errors if they are not otherwise used. 4746 var _ context.Context 4747 var _ grpc.ClientConnInterface 4748 4749 // This is a compile-time assertion to ensure that this generated file 4750 // is compatible with the grpc package it is being compiled against. 4751 const _ = grpc.SupportPackageIsVersion6 4752 4753 // BeaconChainClient is the client API for BeaconChain service. 4754 // 4755 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 4756 type BeaconChainClient interface { 4757 ListAttestations(ctx context.Context, in *ListAttestationsRequest, opts ...grpc.CallOption) (*ListAttestationsResponse, error) 4758 ListIndexedAttestations(ctx context.Context, in *ListIndexedAttestationsRequest, opts ...grpc.CallOption) (*ListIndexedAttestationsResponse, error) 4759 StreamAttestations(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamAttestationsClient, error) 4760 StreamIndexedAttestations(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamIndexedAttestationsClient, error) 4761 AttestationPool(ctx context.Context, in *AttestationPoolRequest, opts ...grpc.CallOption) (*AttestationPoolResponse, error) 4762 ListBlocks(ctx context.Context, in *ListBlocksRequest, opts ...grpc.CallOption) (*ListBlocksResponse, error) 4763 StreamBlocks(ctx context.Context, in *StreamBlocksRequest, opts ...grpc.CallOption) (BeaconChain_StreamBlocksClient, error) 4764 StreamChainHead(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamChainHeadClient, error) 4765 GetChainHead(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ChainHead, error) 4766 GetWeakSubjectivityCheckpoint(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*WeakSubjectivityCheckpoint, error) 4767 ListBeaconCommittees(ctx context.Context, in *ListCommitteesRequest, opts ...grpc.CallOption) (*BeaconCommittees, error) 4768 ListValidatorBalances(ctx context.Context, in *ListValidatorBalancesRequest, opts ...grpc.CallOption) (*ValidatorBalances, error) 4769 ListValidators(ctx context.Context, in *ListValidatorsRequest, opts ...grpc.CallOption) (*Validators, error) 4770 GetValidator(ctx context.Context, in *GetValidatorRequest, opts ...grpc.CallOption) (*Validator, error) 4771 GetValidatorActiveSetChanges(ctx context.Context, in *GetValidatorActiveSetChangesRequest, opts ...grpc.CallOption) (*ActiveSetChanges, error) 4772 GetValidatorQueue(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ValidatorQueue, error) 4773 GetValidatorPerformance(ctx context.Context, in *ValidatorPerformanceRequest, opts ...grpc.CallOption) (*ValidatorPerformanceResponse, error) 4774 ListValidatorAssignments(ctx context.Context, in *ListValidatorAssignmentsRequest, opts ...grpc.CallOption) (*ValidatorAssignments, error) 4775 GetValidatorParticipation(ctx context.Context, in *GetValidatorParticipationRequest, opts ...grpc.CallOption) (*ValidatorParticipationResponse, error) 4776 GetBeaconConfig(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*BeaconConfig, error) 4777 StreamValidatorsInfo(ctx context.Context, opts ...grpc.CallOption) (BeaconChain_StreamValidatorsInfoClient, error) 4778 SubmitAttesterSlashing(ctx context.Context, in *AttesterSlashing, opts ...grpc.CallOption) (*SubmitSlashingResponse, error) 4779 SubmitProposerSlashing(ctx context.Context, in *ProposerSlashing, opts ...grpc.CallOption) (*SubmitSlashingResponse, error) 4780 GetIndividualVotes(ctx context.Context, in *IndividualVotesRequest, opts ...grpc.CallOption) (*IndividualVotesRespond, error) 4781 } 4782 4783 type beaconChainClient struct { 4784 cc grpc.ClientConnInterface 4785 } 4786 4787 func NewBeaconChainClient(cc grpc.ClientConnInterface) BeaconChainClient { 4788 return &beaconChainClient{cc} 4789 } 4790 4791 func (c *beaconChainClient) ListAttestations(ctx context.Context, in *ListAttestationsRequest, opts ...grpc.CallOption) (*ListAttestationsResponse, error) { 4792 out := new(ListAttestationsResponse) 4793 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListAttestations", in, out, opts...) 4794 if err != nil { 4795 return nil, err 4796 } 4797 return out, nil 4798 } 4799 4800 func (c *beaconChainClient) ListIndexedAttestations(ctx context.Context, in *ListIndexedAttestationsRequest, opts ...grpc.CallOption) (*ListIndexedAttestationsResponse, error) { 4801 out := new(ListIndexedAttestationsResponse) 4802 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListIndexedAttestations", in, out, opts...) 4803 if err != nil { 4804 return nil, err 4805 } 4806 return out, nil 4807 } 4808 4809 func (c *beaconChainClient) StreamAttestations(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamAttestationsClient, error) { 4810 stream, err := c.cc.NewStream(ctx, &_BeaconChain_serviceDesc.Streams[0], "/ethereum.eth.v1alpha1.BeaconChain/StreamAttestations", opts...) 4811 if err != nil { 4812 return nil, err 4813 } 4814 x := &beaconChainStreamAttestationsClient{stream} 4815 if err := x.ClientStream.SendMsg(in); err != nil { 4816 return nil, err 4817 } 4818 if err := x.ClientStream.CloseSend(); err != nil { 4819 return nil, err 4820 } 4821 return x, nil 4822 } 4823 4824 type BeaconChain_StreamAttestationsClient interface { 4825 Recv() (*Attestation, error) 4826 grpc.ClientStream 4827 } 4828 4829 type beaconChainStreamAttestationsClient struct { 4830 grpc.ClientStream 4831 } 4832 4833 func (x *beaconChainStreamAttestationsClient) Recv() (*Attestation, error) { 4834 m := new(Attestation) 4835 if err := x.ClientStream.RecvMsg(m); err != nil { 4836 return nil, err 4837 } 4838 return m, nil 4839 } 4840 4841 func (c *beaconChainClient) StreamIndexedAttestations(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamIndexedAttestationsClient, error) { 4842 stream, err := c.cc.NewStream(ctx, &_BeaconChain_serviceDesc.Streams[1], "/ethereum.eth.v1alpha1.BeaconChain/StreamIndexedAttestations", opts...) 4843 if err != nil { 4844 return nil, err 4845 } 4846 x := &beaconChainStreamIndexedAttestationsClient{stream} 4847 if err := x.ClientStream.SendMsg(in); err != nil { 4848 return nil, err 4849 } 4850 if err := x.ClientStream.CloseSend(); err != nil { 4851 return nil, err 4852 } 4853 return x, nil 4854 } 4855 4856 type BeaconChain_StreamIndexedAttestationsClient interface { 4857 Recv() (*IndexedAttestation, error) 4858 grpc.ClientStream 4859 } 4860 4861 type beaconChainStreamIndexedAttestationsClient struct { 4862 grpc.ClientStream 4863 } 4864 4865 func (x *beaconChainStreamIndexedAttestationsClient) Recv() (*IndexedAttestation, error) { 4866 m := new(IndexedAttestation) 4867 if err := x.ClientStream.RecvMsg(m); err != nil { 4868 return nil, err 4869 } 4870 return m, nil 4871 } 4872 4873 func (c *beaconChainClient) AttestationPool(ctx context.Context, in *AttestationPoolRequest, opts ...grpc.CallOption) (*AttestationPoolResponse, error) { 4874 out := new(AttestationPoolResponse) 4875 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/AttestationPool", in, out, opts...) 4876 if err != nil { 4877 return nil, err 4878 } 4879 return out, nil 4880 } 4881 4882 func (c *beaconChainClient) ListBlocks(ctx context.Context, in *ListBlocksRequest, opts ...grpc.CallOption) (*ListBlocksResponse, error) { 4883 out := new(ListBlocksResponse) 4884 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListBlocks", in, out, opts...) 4885 if err != nil { 4886 return nil, err 4887 } 4888 return out, nil 4889 } 4890 4891 func (c *beaconChainClient) StreamBlocks(ctx context.Context, in *StreamBlocksRequest, opts ...grpc.CallOption) (BeaconChain_StreamBlocksClient, error) { 4892 stream, err := c.cc.NewStream(ctx, &_BeaconChain_serviceDesc.Streams[2], "/ethereum.eth.v1alpha1.BeaconChain/StreamBlocks", opts...) 4893 if err != nil { 4894 return nil, err 4895 } 4896 x := &beaconChainStreamBlocksClient{stream} 4897 if err := x.ClientStream.SendMsg(in); err != nil { 4898 return nil, err 4899 } 4900 if err := x.ClientStream.CloseSend(); err != nil { 4901 return nil, err 4902 } 4903 return x, nil 4904 } 4905 4906 type BeaconChain_StreamBlocksClient interface { 4907 Recv() (*SignedBeaconBlock, error) 4908 grpc.ClientStream 4909 } 4910 4911 type beaconChainStreamBlocksClient struct { 4912 grpc.ClientStream 4913 } 4914 4915 func (x *beaconChainStreamBlocksClient) Recv() (*SignedBeaconBlock, error) { 4916 m := new(SignedBeaconBlock) 4917 if err := x.ClientStream.RecvMsg(m); err != nil { 4918 return nil, err 4919 } 4920 return m, nil 4921 } 4922 4923 func (c *beaconChainClient) StreamChainHead(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (BeaconChain_StreamChainHeadClient, error) { 4924 stream, err := c.cc.NewStream(ctx, &_BeaconChain_serviceDesc.Streams[3], "/ethereum.eth.v1alpha1.BeaconChain/StreamChainHead", opts...) 4925 if err != nil { 4926 return nil, err 4927 } 4928 x := &beaconChainStreamChainHeadClient{stream} 4929 if err := x.ClientStream.SendMsg(in); err != nil { 4930 return nil, err 4931 } 4932 if err := x.ClientStream.CloseSend(); err != nil { 4933 return nil, err 4934 } 4935 return x, nil 4936 } 4937 4938 type BeaconChain_StreamChainHeadClient interface { 4939 Recv() (*ChainHead, error) 4940 grpc.ClientStream 4941 } 4942 4943 type beaconChainStreamChainHeadClient struct { 4944 grpc.ClientStream 4945 } 4946 4947 func (x *beaconChainStreamChainHeadClient) Recv() (*ChainHead, error) { 4948 m := new(ChainHead) 4949 if err := x.ClientStream.RecvMsg(m); err != nil { 4950 return nil, err 4951 } 4952 return m, nil 4953 } 4954 4955 func (c *beaconChainClient) GetChainHead(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ChainHead, error) { 4956 out := new(ChainHead) 4957 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetChainHead", in, out, opts...) 4958 if err != nil { 4959 return nil, err 4960 } 4961 return out, nil 4962 } 4963 4964 func (c *beaconChainClient) GetWeakSubjectivityCheckpoint(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*WeakSubjectivityCheckpoint, error) { 4965 out := new(WeakSubjectivityCheckpoint) 4966 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetWeakSubjectivityCheckpoint", in, out, opts...) 4967 if err != nil { 4968 return nil, err 4969 } 4970 return out, nil 4971 } 4972 4973 func (c *beaconChainClient) ListBeaconCommittees(ctx context.Context, in *ListCommitteesRequest, opts ...grpc.CallOption) (*BeaconCommittees, error) { 4974 out := new(BeaconCommittees) 4975 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListBeaconCommittees", in, out, opts...) 4976 if err != nil { 4977 return nil, err 4978 } 4979 return out, nil 4980 } 4981 4982 func (c *beaconChainClient) ListValidatorBalances(ctx context.Context, in *ListValidatorBalancesRequest, opts ...grpc.CallOption) (*ValidatorBalances, error) { 4983 out := new(ValidatorBalances) 4984 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListValidatorBalances", in, out, opts...) 4985 if err != nil { 4986 return nil, err 4987 } 4988 return out, nil 4989 } 4990 4991 func (c *beaconChainClient) ListValidators(ctx context.Context, in *ListValidatorsRequest, opts ...grpc.CallOption) (*Validators, error) { 4992 out := new(Validators) 4993 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListValidators", in, out, opts...) 4994 if err != nil { 4995 return nil, err 4996 } 4997 return out, nil 4998 } 4999 5000 func (c *beaconChainClient) GetValidator(ctx context.Context, in *GetValidatorRequest, opts ...grpc.CallOption) (*Validator, error) { 5001 out := new(Validator) 5002 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetValidator", in, out, opts...) 5003 if err != nil { 5004 return nil, err 5005 } 5006 return out, nil 5007 } 5008 5009 func (c *beaconChainClient) GetValidatorActiveSetChanges(ctx context.Context, in *GetValidatorActiveSetChangesRequest, opts ...grpc.CallOption) (*ActiveSetChanges, error) { 5010 out := new(ActiveSetChanges) 5011 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorActiveSetChanges", in, out, opts...) 5012 if err != nil { 5013 return nil, err 5014 } 5015 return out, nil 5016 } 5017 5018 func (c *beaconChainClient) GetValidatorQueue(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ValidatorQueue, error) { 5019 out := new(ValidatorQueue) 5020 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorQueue", in, out, opts...) 5021 if err != nil { 5022 return nil, err 5023 } 5024 return out, nil 5025 } 5026 5027 func (c *beaconChainClient) GetValidatorPerformance(ctx context.Context, in *ValidatorPerformanceRequest, opts ...grpc.CallOption) (*ValidatorPerformanceResponse, error) { 5028 out := new(ValidatorPerformanceResponse) 5029 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorPerformance", in, out, opts...) 5030 if err != nil { 5031 return nil, err 5032 } 5033 return out, nil 5034 } 5035 5036 func (c *beaconChainClient) ListValidatorAssignments(ctx context.Context, in *ListValidatorAssignmentsRequest, opts ...grpc.CallOption) (*ValidatorAssignments, error) { 5037 out := new(ValidatorAssignments) 5038 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/ListValidatorAssignments", in, out, opts...) 5039 if err != nil { 5040 return nil, err 5041 } 5042 return out, nil 5043 } 5044 5045 func (c *beaconChainClient) GetValidatorParticipation(ctx context.Context, in *GetValidatorParticipationRequest, opts ...grpc.CallOption) (*ValidatorParticipationResponse, error) { 5046 out := new(ValidatorParticipationResponse) 5047 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorParticipation", in, out, opts...) 5048 if err != nil { 5049 return nil, err 5050 } 5051 return out, nil 5052 } 5053 5054 func (c *beaconChainClient) GetBeaconConfig(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*BeaconConfig, error) { 5055 out := new(BeaconConfig) 5056 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetBeaconConfig", in, out, opts...) 5057 if err != nil { 5058 return nil, err 5059 } 5060 return out, nil 5061 } 5062 5063 func (c *beaconChainClient) StreamValidatorsInfo(ctx context.Context, opts ...grpc.CallOption) (BeaconChain_StreamValidatorsInfoClient, error) { 5064 stream, err := c.cc.NewStream(ctx, &_BeaconChain_serviceDesc.Streams[4], "/ethereum.eth.v1alpha1.BeaconChain/StreamValidatorsInfo", opts...) 5065 if err != nil { 5066 return nil, err 5067 } 5068 x := &beaconChainStreamValidatorsInfoClient{stream} 5069 return x, nil 5070 } 5071 5072 type BeaconChain_StreamValidatorsInfoClient interface { 5073 Send(*ValidatorChangeSet) error 5074 Recv() (*ValidatorInfo, error) 5075 grpc.ClientStream 5076 } 5077 5078 type beaconChainStreamValidatorsInfoClient struct { 5079 grpc.ClientStream 5080 } 5081 5082 func (x *beaconChainStreamValidatorsInfoClient) Send(m *ValidatorChangeSet) error { 5083 return x.ClientStream.SendMsg(m) 5084 } 5085 5086 func (x *beaconChainStreamValidatorsInfoClient) Recv() (*ValidatorInfo, error) { 5087 m := new(ValidatorInfo) 5088 if err := x.ClientStream.RecvMsg(m); err != nil { 5089 return nil, err 5090 } 5091 return m, nil 5092 } 5093 5094 func (c *beaconChainClient) SubmitAttesterSlashing(ctx context.Context, in *AttesterSlashing, opts ...grpc.CallOption) (*SubmitSlashingResponse, error) { 5095 out := new(SubmitSlashingResponse) 5096 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/SubmitAttesterSlashing", in, out, opts...) 5097 if err != nil { 5098 return nil, err 5099 } 5100 return out, nil 5101 } 5102 5103 func (c *beaconChainClient) SubmitProposerSlashing(ctx context.Context, in *ProposerSlashing, opts ...grpc.CallOption) (*SubmitSlashingResponse, error) { 5104 out := new(SubmitSlashingResponse) 5105 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/SubmitProposerSlashing", in, out, opts...) 5106 if err != nil { 5107 return nil, err 5108 } 5109 return out, nil 5110 } 5111 5112 func (c *beaconChainClient) GetIndividualVotes(ctx context.Context, in *IndividualVotesRequest, opts ...grpc.CallOption) (*IndividualVotesRespond, error) { 5113 out := new(IndividualVotesRespond) 5114 err := c.cc.Invoke(ctx, "/ethereum.eth.v1alpha1.BeaconChain/GetIndividualVotes", in, out, opts...) 5115 if err != nil { 5116 return nil, err 5117 } 5118 return out, nil 5119 } 5120 5121 // BeaconChainServer is the server API for BeaconChain service. 5122 type BeaconChainServer interface { 5123 ListAttestations(context.Context, *ListAttestationsRequest) (*ListAttestationsResponse, error) 5124 ListIndexedAttestations(context.Context, *ListIndexedAttestationsRequest) (*ListIndexedAttestationsResponse, error) 5125 StreamAttestations(*empty.Empty, BeaconChain_StreamAttestationsServer) error 5126 StreamIndexedAttestations(*empty.Empty, BeaconChain_StreamIndexedAttestationsServer) error 5127 AttestationPool(context.Context, *AttestationPoolRequest) (*AttestationPoolResponse, error) 5128 ListBlocks(context.Context, *ListBlocksRequest) (*ListBlocksResponse, error) 5129 StreamBlocks(*StreamBlocksRequest, BeaconChain_StreamBlocksServer) error 5130 StreamChainHead(*empty.Empty, BeaconChain_StreamChainHeadServer) error 5131 GetChainHead(context.Context, *empty.Empty) (*ChainHead, error) 5132 GetWeakSubjectivityCheckpoint(context.Context, *empty.Empty) (*WeakSubjectivityCheckpoint, error) 5133 ListBeaconCommittees(context.Context, *ListCommitteesRequest) (*BeaconCommittees, error) 5134 ListValidatorBalances(context.Context, *ListValidatorBalancesRequest) (*ValidatorBalances, error) 5135 ListValidators(context.Context, *ListValidatorsRequest) (*Validators, error) 5136 GetValidator(context.Context, *GetValidatorRequest) (*Validator, error) 5137 GetValidatorActiveSetChanges(context.Context, *GetValidatorActiveSetChangesRequest) (*ActiveSetChanges, error) 5138 GetValidatorQueue(context.Context, *empty.Empty) (*ValidatorQueue, error) 5139 GetValidatorPerformance(context.Context, *ValidatorPerformanceRequest) (*ValidatorPerformanceResponse, error) 5140 ListValidatorAssignments(context.Context, *ListValidatorAssignmentsRequest) (*ValidatorAssignments, error) 5141 GetValidatorParticipation(context.Context, *GetValidatorParticipationRequest) (*ValidatorParticipationResponse, error) 5142 GetBeaconConfig(context.Context, *empty.Empty) (*BeaconConfig, error) 5143 StreamValidatorsInfo(BeaconChain_StreamValidatorsInfoServer) error 5144 SubmitAttesterSlashing(context.Context, *AttesterSlashing) (*SubmitSlashingResponse, error) 5145 SubmitProposerSlashing(context.Context, *ProposerSlashing) (*SubmitSlashingResponse, error) 5146 GetIndividualVotes(context.Context, *IndividualVotesRequest) (*IndividualVotesRespond, error) 5147 } 5148 5149 // UnimplementedBeaconChainServer can be embedded to have forward compatible implementations. 5150 type UnimplementedBeaconChainServer struct { 5151 } 5152 5153 func (*UnimplementedBeaconChainServer) ListAttestations(context.Context, *ListAttestationsRequest) (*ListAttestationsResponse, error) { 5154 return nil, status.Errorf(codes.Unimplemented, "method ListAttestations not implemented") 5155 } 5156 func (*UnimplementedBeaconChainServer) ListIndexedAttestations(context.Context, *ListIndexedAttestationsRequest) (*ListIndexedAttestationsResponse, error) { 5157 return nil, status.Errorf(codes.Unimplemented, "method ListIndexedAttestations not implemented") 5158 } 5159 func (*UnimplementedBeaconChainServer) StreamAttestations(*empty.Empty, BeaconChain_StreamAttestationsServer) error { 5160 return status.Errorf(codes.Unimplemented, "method StreamAttestations not implemented") 5161 } 5162 func (*UnimplementedBeaconChainServer) StreamIndexedAttestations(*empty.Empty, BeaconChain_StreamIndexedAttestationsServer) error { 5163 return status.Errorf(codes.Unimplemented, "method StreamIndexedAttestations not implemented") 5164 } 5165 func (*UnimplementedBeaconChainServer) AttestationPool(context.Context, *AttestationPoolRequest) (*AttestationPoolResponse, error) { 5166 return nil, status.Errorf(codes.Unimplemented, "method AttestationPool not implemented") 5167 } 5168 func (*UnimplementedBeaconChainServer) ListBlocks(context.Context, *ListBlocksRequest) (*ListBlocksResponse, error) { 5169 return nil, status.Errorf(codes.Unimplemented, "method ListBlocks not implemented") 5170 } 5171 func (*UnimplementedBeaconChainServer) StreamBlocks(*StreamBlocksRequest, BeaconChain_StreamBlocksServer) error { 5172 return status.Errorf(codes.Unimplemented, "method StreamBlocks not implemented") 5173 } 5174 func (*UnimplementedBeaconChainServer) StreamChainHead(*empty.Empty, BeaconChain_StreamChainHeadServer) error { 5175 return status.Errorf(codes.Unimplemented, "method StreamChainHead not implemented") 5176 } 5177 func (*UnimplementedBeaconChainServer) GetChainHead(context.Context, *empty.Empty) (*ChainHead, error) { 5178 return nil, status.Errorf(codes.Unimplemented, "method GetChainHead not implemented") 5179 } 5180 func (*UnimplementedBeaconChainServer) GetWeakSubjectivityCheckpoint(context.Context, *empty.Empty) (*WeakSubjectivityCheckpoint, error) { 5181 return nil, status.Errorf(codes.Unimplemented, "method GetWeakSubjectivityCheckpoint not implemented") 5182 } 5183 func (*UnimplementedBeaconChainServer) ListBeaconCommittees(context.Context, *ListCommitteesRequest) (*BeaconCommittees, error) { 5184 return nil, status.Errorf(codes.Unimplemented, "method ListBeaconCommittees not implemented") 5185 } 5186 func (*UnimplementedBeaconChainServer) ListValidatorBalances(context.Context, *ListValidatorBalancesRequest) (*ValidatorBalances, error) { 5187 return nil, status.Errorf(codes.Unimplemented, "method ListValidatorBalances not implemented") 5188 } 5189 func (*UnimplementedBeaconChainServer) ListValidators(context.Context, *ListValidatorsRequest) (*Validators, error) { 5190 return nil, status.Errorf(codes.Unimplemented, "method ListValidators not implemented") 5191 } 5192 func (*UnimplementedBeaconChainServer) GetValidator(context.Context, *GetValidatorRequest) (*Validator, error) { 5193 return nil, status.Errorf(codes.Unimplemented, "method GetValidator not implemented") 5194 } 5195 func (*UnimplementedBeaconChainServer) GetValidatorActiveSetChanges(context.Context, *GetValidatorActiveSetChangesRequest) (*ActiveSetChanges, error) { 5196 return nil, status.Errorf(codes.Unimplemented, "method GetValidatorActiveSetChanges not implemented") 5197 } 5198 func (*UnimplementedBeaconChainServer) GetValidatorQueue(context.Context, *empty.Empty) (*ValidatorQueue, error) { 5199 return nil, status.Errorf(codes.Unimplemented, "method GetValidatorQueue not implemented") 5200 } 5201 func (*UnimplementedBeaconChainServer) GetValidatorPerformance(context.Context, *ValidatorPerformanceRequest) (*ValidatorPerformanceResponse, error) { 5202 return nil, status.Errorf(codes.Unimplemented, "method GetValidatorPerformance not implemented") 5203 } 5204 func (*UnimplementedBeaconChainServer) ListValidatorAssignments(context.Context, *ListValidatorAssignmentsRequest) (*ValidatorAssignments, error) { 5205 return nil, status.Errorf(codes.Unimplemented, "method ListValidatorAssignments not implemented") 5206 } 5207 func (*UnimplementedBeaconChainServer) GetValidatorParticipation(context.Context, *GetValidatorParticipationRequest) (*ValidatorParticipationResponse, error) { 5208 return nil, status.Errorf(codes.Unimplemented, "method GetValidatorParticipation not implemented") 5209 } 5210 func (*UnimplementedBeaconChainServer) GetBeaconConfig(context.Context, *empty.Empty) (*BeaconConfig, error) { 5211 return nil, status.Errorf(codes.Unimplemented, "method GetBeaconConfig not implemented") 5212 } 5213 func (*UnimplementedBeaconChainServer) StreamValidatorsInfo(BeaconChain_StreamValidatorsInfoServer) error { 5214 return status.Errorf(codes.Unimplemented, "method StreamValidatorsInfo not implemented") 5215 } 5216 func (*UnimplementedBeaconChainServer) SubmitAttesterSlashing(context.Context, *AttesterSlashing) (*SubmitSlashingResponse, error) { 5217 return nil, status.Errorf(codes.Unimplemented, "method SubmitAttesterSlashing not implemented") 5218 } 5219 func (*UnimplementedBeaconChainServer) SubmitProposerSlashing(context.Context, *ProposerSlashing) (*SubmitSlashingResponse, error) { 5220 return nil, status.Errorf(codes.Unimplemented, "method SubmitProposerSlashing not implemented") 5221 } 5222 func (*UnimplementedBeaconChainServer) GetIndividualVotes(context.Context, *IndividualVotesRequest) (*IndividualVotesRespond, error) { 5223 return nil, status.Errorf(codes.Unimplemented, "method GetIndividualVotes not implemented") 5224 } 5225 5226 func RegisterBeaconChainServer(s *grpc.Server, srv BeaconChainServer) { 5227 s.RegisterService(&_BeaconChain_serviceDesc, srv) 5228 } 5229 5230 func _BeaconChain_ListAttestations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5231 in := new(ListAttestationsRequest) 5232 if err := dec(in); err != nil { 5233 return nil, err 5234 } 5235 if interceptor == nil { 5236 return srv.(BeaconChainServer).ListAttestations(ctx, in) 5237 } 5238 info := &grpc.UnaryServerInfo{ 5239 Server: srv, 5240 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListAttestations", 5241 } 5242 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5243 return srv.(BeaconChainServer).ListAttestations(ctx, req.(*ListAttestationsRequest)) 5244 } 5245 return interceptor(ctx, in, info, handler) 5246 } 5247 5248 func _BeaconChain_ListIndexedAttestations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5249 in := new(ListIndexedAttestationsRequest) 5250 if err := dec(in); err != nil { 5251 return nil, err 5252 } 5253 if interceptor == nil { 5254 return srv.(BeaconChainServer).ListIndexedAttestations(ctx, in) 5255 } 5256 info := &grpc.UnaryServerInfo{ 5257 Server: srv, 5258 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListIndexedAttestations", 5259 } 5260 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5261 return srv.(BeaconChainServer).ListIndexedAttestations(ctx, req.(*ListIndexedAttestationsRequest)) 5262 } 5263 return interceptor(ctx, in, info, handler) 5264 } 5265 5266 func _BeaconChain_StreamAttestations_Handler(srv interface{}, stream grpc.ServerStream) error { 5267 m := new(empty.Empty) 5268 if err := stream.RecvMsg(m); err != nil { 5269 return err 5270 } 5271 return srv.(BeaconChainServer).StreamAttestations(m, &beaconChainStreamAttestationsServer{stream}) 5272 } 5273 5274 type BeaconChain_StreamAttestationsServer interface { 5275 Send(*Attestation) error 5276 grpc.ServerStream 5277 } 5278 5279 type beaconChainStreamAttestationsServer struct { 5280 grpc.ServerStream 5281 } 5282 5283 func (x *beaconChainStreamAttestationsServer) Send(m *Attestation) error { 5284 return x.ServerStream.SendMsg(m) 5285 } 5286 5287 func _BeaconChain_StreamIndexedAttestations_Handler(srv interface{}, stream grpc.ServerStream) error { 5288 m := new(empty.Empty) 5289 if err := stream.RecvMsg(m); err != nil { 5290 return err 5291 } 5292 return srv.(BeaconChainServer).StreamIndexedAttestations(m, &beaconChainStreamIndexedAttestationsServer{stream}) 5293 } 5294 5295 type BeaconChain_StreamIndexedAttestationsServer interface { 5296 Send(*IndexedAttestation) error 5297 grpc.ServerStream 5298 } 5299 5300 type beaconChainStreamIndexedAttestationsServer struct { 5301 grpc.ServerStream 5302 } 5303 5304 func (x *beaconChainStreamIndexedAttestationsServer) Send(m *IndexedAttestation) error { 5305 return x.ServerStream.SendMsg(m) 5306 } 5307 5308 func _BeaconChain_AttestationPool_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5309 in := new(AttestationPoolRequest) 5310 if err := dec(in); err != nil { 5311 return nil, err 5312 } 5313 if interceptor == nil { 5314 return srv.(BeaconChainServer).AttestationPool(ctx, in) 5315 } 5316 info := &grpc.UnaryServerInfo{ 5317 Server: srv, 5318 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/AttestationPool", 5319 } 5320 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5321 return srv.(BeaconChainServer).AttestationPool(ctx, req.(*AttestationPoolRequest)) 5322 } 5323 return interceptor(ctx, in, info, handler) 5324 } 5325 5326 func _BeaconChain_ListBlocks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5327 in := new(ListBlocksRequest) 5328 if err := dec(in); err != nil { 5329 return nil, err 5330 } 5331 if interceptor == nil { 5332 return srv.(BeaconChainServer).ListBlocks(ctx, in) 5333 } 5334 info := &grpc.UnaryServerInfo{ 5335 Server: srv, 5336 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListBlocks", 5337 } 5338 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5339 return srv.(BeaconChainServer).ListBlocks(ctx, req.(*ListBlocksRequest)) 5340 } 5341 return interceptor(ctx, in, info, handler) 5342 } 5343 5344 func _BeaconChain_StreamBlocks_Handler(srv interface{}, stream grpc.ServerStream) error { 5345 m := new(StreamBlocksRequest) 5346 if err := stream.RecvMsg(m); err != nil { 5347 return err 5348 } 5349 return srv.(BeaconChainServer).StreamBlocks(m, &beaconChainStreamBlocksServer{stream}) 5350 } 5351 5352 type BeaconChain_StreamBlocksServer interface { 5353 Send(*SignedBeaconBlock) error 5354 grpc.ServerStream 5355 } 5356 5357 type beaconChainStreamBlocksServer struct { 5358 grpc.ServerStream 5359 } 5360 5361 func (x *beaconChainStreamBlocksServer) Send(m *SignedBeaconBlock) error { 5362 return x.ServerStream.SendMsg(m) 5363 } 5364 5365 func _BeaconChain_StreamChainHead_Handler(srv interface{}, stream grpc.ServerStream) error { 5366 m := new(empty.Empty) 5367 if err := stream.RecvMsg(m); err != nil { 5368 return err 5369 } 5370 return srv.(BeaconChainServer).StreamChainHead(m, &beaconChainStreamChainHeadServer{stream}) 5371 } 5372 5373 type BeaconChain_StreamChainHeadServer interface { 5374 Send(*ChainHead) error 5375 grpc.ServerStream 5376 } 5377 5378 type beaconChainStreamChainHeadServer struct { 5379 grpc.ServerStream 5380 } 5381 5382 func (x *beaconChainStreamChainHeadServer) Send(m *ChainHead) error { 5383 return x.ServerStream.SendMsg(m) 5384 } 5385 5386 func _BeaconChain_GetChainHead_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5387 in := new(empty.Empty) 5388 if err := dec(in); err != nil { 5389 return nil, err 5390 } 5391 if interceptor == nil { 5392 return srv.(BeaconChainServer).GetChainHead(ctx, in) 5393 } 5394 info := &grpc.UnaryServerInfo{ 5395 Server: srv, 5396 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetChainHead", 5397 } 5398 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5399 return srv.(BeaconChainServer).GetChainHead(ctx, req.(*empty.Empty)) 5400 } 5401 return interceptor(ctx, in, info, handler) 5402 } 5403 5404 func _BeaconChain_GetWeakSubjectivityCheckpoint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5405 in := new(empty.Empty) 5406 if err := dec(in); err != nil { 5407 return nil, err 5408 } 5409 if interceptor == nil { 5410 return srv.(BeaconChainServer).GetWeakSubjectivityCheckpoint(ctx, in) 5411 } 5412 info := &grpc.UnaryServerInfo{ 5413 Server: srv, 5414 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetWeakSubjectivityCheckpoint", 5415 } 5416 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5417 return srv.(BeaconChainServer).GetWeakSubjectivityCheckpoint(ctx, req.(*empty.Empty)) 5418 } 5419 return interceptor(ctx, in, info, handler) 5420 } 5421 5422 func _BeaconChain_ListBeaconCommittees_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5423 in := new(ListCommitteesRequest) 5424 if err := dec(in); err != nil { 5425 return nil, err 5426 } 5427 if interceptor == nil { 5428 return srv.(BeaconChainServer).ListBeaconCommittees(ctx, in) 5429 } 5430 info := &grpc.UnaryServerInfo{ 5431 Server: srv, 5432 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListBeaconCommittees", 5433 } 5434 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5435 return srv.(BeaconChainServer).ListBeaconCommittees(ctx, req.(*ListCommitteesRequest)) 5436 } 5437 return interceptor(ctx, in, info, handler) 5438 } 5439 5440 func _BeaconChain_ListValidatorBalances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5441 in := new(ListValidatorBalancesRequest) 5442 if err := dec(in); err != nil { 5443 return nil, err 5444 } 5445 if interceptor == nil { 5446 return srv.(BeaconChainServer).ListValidatorBalances(ctx, in) 5447 } 5448 info := &grpc.UnaryServerInfo{ 5449 Server: srv, 5450 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListValidatorBalances", 5451 } 5452 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5453 return srv.(BeaconChainServer).ListValidatorBalances(ctx, req.(*ListValidatorBalancesRequest)) 5454 } 5455 return interceptor(ctx, in, info, handler) 5456 } 5457 5458 func _BeaconChain_ListValidators_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5459 in := new(ListValidatorsRequest) 5460 if err := dec(in); err != nil { 5461 return nil, err 5462 } 5463 if interceptor == nil { 5464 return srv.(BeaconChainServer).ListValidators(ctx, in) 5465 } 5466 info := &grpc.UnaryServerInfo{ 5467 Server: srv, 5468 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListValidators", 5469 } 5470 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5471 return srv.(BeaconChainServer).ListValidators(ctx, req.(*ListValidatorsRequest)) 5472 } 5473 return interceptor(ctx, in, info, handler) 5474 } 5475 5476 func _BeaconChain_GetValidator_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5477 in := new(GetValidatorRequest) 5478 if err := dec(in); err != nil { 5479 return nil, err 5480 } 5481 if interceptor == nil { 5482 return srv.(BeaconChainServer).GetValidator(ctx, in) 5483 } 5484 info := &grpc.UnaryServerInfo{ 5485 Server: srv, 5486 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetValidator", 5487 } 5488 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5489 return srv.(BeaconChainServer).GetValidator(ctx, req.(*GetValidatorRequest)) 5490 } 5491 return interceptor(ctx, in, info, handler) 5492 } 5493 5494 func _BeaconChain_GetValidatorActiveSetChanges_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5495 in := new(GetValidatorActiveSetChangesRequest) 5496 if err := dec(in); err != nil { 5497 return nil, err 5498 } 5499 if interceptor == nil { 5500 return srv.(BeaconChainServer).GetValidatorActiveSetChanges(ctx, in) 5501 } 5502 info := &grpc.UnaryServerInfo{ 5503 Server: srv, 5504 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorActiveSetChanges", 5505 } 5506 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5507 return srv.(BeaconChainServer).GetValidatorActiveSetChanges(ctx, req.(*GetValidatorActiveSetChangesRequest)) 5508 } 5509 return interceptor(ctx, in, info, handler) 5510 } 5511 5512 func _BeaconChain_GetValidatorQueue_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5513 in := new(empty.Empty) 5514 if err := dec(in); err != nil { 5515 return nil, err 5516 } 5517 if interceptor == nil { 5518 return srv.(BeaconChainServer).GetValidatorQueue(ctx, in) 5519 } 5520 info := &grpc.UnaryServerInfo{ 5521 Server: srv, 5522 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorQueue", 5523 } 5524 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5525 return srv.(BeaconChainServer).GetValidatorQueue(ctx, req.(*empty.Empty)) 5526 } 5527 return interceptor(ctx, in, info, handler) 5528 } 5529 5530 func _BeaconChain_GetValidatorPerformance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5531 in := new(ValidatorPerformanceRequest) 5532 if err := dec(in); err != nil { 5533 return nil, err 5534 } 5535 if interceptor == nil { 5536 return srv.(BeaconChainServer).GetValidatorPerformance(ctx, in) 5537 } 5538 info := &grpc.UnaryServerInfo{ 5539 Server: srv, 5540 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorPerformance", 5541 } 5542 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5543 return srv.(BeaconChainServer).GetValidatorPerformance(ctx, req.(*ValidatorPerformanceRequest)) 5544 } 5545 return interceptor(ctx, in, info, handler) 5546 } 5547 5548 func _BeaconChain_ListValidatorAssignments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5549 in := new(ListValidatorAssignmentsRequest) 5550 if err := dec(in); err != nil { 5551 return nil, err 5552 } 5553 if interceptor == nil { 5554 return srv.(BeaconChainServer).ListValidatorAssignments(ctx, in) 5555 } 5556 info := &grpc.UnaryServerInfo{ 5557 Server: srv, 5558 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/ListValidatorAssignments", 5559 } 5560 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5561 return srv.(BeaconChainServer).ListValidatorAssignments(ctx, req.(*ListValidatorAssignmentsRequest)) 5562 } 5563 return interceptor(ctx, in, info, handler) 5564 } 5565 5566 func _BeaconChain_GetValidatorParticipation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5567 in := new(GetValidatorParticipationRequest) 5568 if err := dec(in); err != nil { 5569 return nil, err 5570 } 5571 if interceptor == nil { 5572 return srv.(BeaconChainServer).GetValidatorParticipation(ctx, in) 5573 } 5574 info := &grpc.UnaryServerInfo{ 5575 Server: srv, 5576 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetValidatorParticipation", 5577 } 5578 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5579 return srv.(BeaconChainServer).GetValidatorParticipation(ctx, req.(*GetValidatorParticipationRequest)) 5580 } 5581 return interceptor(ctx, in, info, handler) 5582 } 5583 5584 func _BeaconChain_GetBeaconConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5585 in := new(empty.Empty) 5586 if err := dec(in); err != nil { 5587 return nil, err 5588 } 5589 if interceptor == nil { 5590 return srv.(BeaconChainServer).GetBeaconConfig(ctx, in) 5591 } 5592 info := &grpc.UnaryServerInfo{ 5593 Server: srv, 5594 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetBeaconConfig", 5595 } 5596 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5597 return srv.(BeaconChainServer).GetBeaconConfig(ctx, req.(*empty.Empty)) 5598 } 5599 return interceptor(ctx, in, info, handler) 5600 } 5601 5602 func _BeaconChain_StreamValidatorsInfo_Handler(srv interface{}, stream grpc.ServerStream) error { 5603 return srv.(BeaconChainServer).StreamValidatorsInfo(&beaconChainStreamValidatorsInfoServer{stream}) 5604 } 5605 5606 type BeaconChain_StreamValidatorsInfoServer interface { 5607 Send(*ValidatorInfo) error 5608 Recv() (*ValidatorChangeSet, error) 5609 grpc.ServerStream 5610 } 5611 5612 type beaconChainStreamValidatorsInfoServer struct { 5613 grpc.ServerStream 5614 } 5615 5616 func (x *beaconChainStreamValidatorsInfoServer) Send(m *ValidatorInfo) error { 5617 return x.ServerStream.SendMsg(m) 5618 } 5619 5620 func (x *beaconChainStreamValidatorsInfoServer) Recv() (*ValidatorChangeSet, error) { 5621 m := new(ValidatorChangeSet) 5622 if err := x.ServerStream.RecvMsg(m); err != nil { 5623 return nil, err 5624 } 5625 return m, nil 5626 } 5627 5628 func _BeaconChain_SubmitAttesterSlashing_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5629 in := new(AttesterSlashing) 5630 if err := dec(in); err != nil { 5631 return nil, err 5632 } 5633 if interceptor == nil { 5634 return srv.(BeaconChainServer).SubmitAttesterSlashing(ctx, in) 5635 } 5636 info := &grpc.UnaryServerInfo{ 5637 Server: srv, 5638 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/SubmitAttesterSlashing", 5639 } 5640 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5641 return srv.(BeaconChainServer).SubmitAttesterSlashing(ctx, req.(*AttesterSlashing)) 5642 } 5643 return interceptor(ctx, in, info, handler) 5644 } 5645 5646 func _BeaconChain_SubmitProposerSlashing_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5647 in := new(ProposerSlashing) 5648 if err := dec(in); err != nil { 5649 return nil, err 5650 } 5651 if interceptor == nil { 5652 return srv.(BeaconChainServer).SubmitProposerSlashing(ctx, in) 5653 } 5654 info := &grpc.UnaryServerInfo{ 5655 Server: srv, 5656 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/SubmitProposerSlashing", 5657 } 5658 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5659 return srv.(BeaconChainServer).SubmitProposerSlashing(ctx, req.(*ProposerSlashing)) 5660 } 5661 return interceptor(ctx, in, info, handler) 5662 } 5663 5664 func _BeaconChain_GetIndividualVotes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 5665 in := new(IndividualVotesRequest) 5666 if err := dec(in); err != nil { 5667 return nil, err 5668 } 5669 if interceptor == nil { 5670 return srv.(BeaconChainServer).GetIndividualVotes(ctx, in) 5671 } 5672 info := &grpc.UnaryServerInfo{ 5673 Server: srv, 5674 FullMethod: "/ethereum.eth.v1alpha1.BeaconChain/GetIndividualVotes", 5675 } 5676 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 5677 return srv.(BeaconChainServer).GetIndividualVotes(ctx, req.(*IndividualVotesRequest)) 5678 } 5679 return interceptor(ctx, in, info, handler) 5680 } 5681 5682 var _BeaconChain_serviceDesc = grpc.ServiceDesc{ 5683 ServiceName: "ethereum.eth.v1alpha1.BeaconChain", 5684 HandlerType: (*BeaconChainServer)(nil), 5685 Methods: []grpc.MethodDesc{ 5686 { 5687 MethodName: "ListAttestations", 5688 Handler: _BeaconChain_ListAttestations_Handler, 5689 }, 5690 { 5691 MethodName: "ListIndexedAttestations", 5692 Handler: _BeaconChain_ListIndexedAttestations_Handler, 5693 }, 5694 { 5695 MethodName: "AttestationPool", 5696 Handler: _BeaconChain_AttestationPool_Handler, 5697 }, 5698 { 5699 MethodName: "ListBlocks", 5700 Handler: _BeaconChain_ListBlocks_Handler, 5701 }, 5702 { 5703 MethodName: "GetChainHead", 5704 Handler: _BeaconChain_GetChainHead_Handler, 5705 }, 5706 { 5707 MethodName: "GetWeakSubjectivityCheckpoint", 5708 Handler: _BeaconChain_GetWeakSubjectivityCheckpoint_Handler, 5709 }, 5710 { 5711 MethodName: "ListBeaconCommittees", 5712 Handler: _BeaconChain_ListBeaconCommittees_Handler, 5713 }, 5714 { 5715 MethodName: "ListValidatorBalances", 5716 Handler: _BeaconChain_ListValidatorBalances_Handler, 5717 }, 5718 { 5719 MethodName: "ListValidators", 5720 Handler: _BeaconChain_ListValidators_Handler, 5721 }, 5722 { 5723 MethodName: "GetValidator", 5724 Handler: _BeaconChain_GetValidator_Handler, 5725 }, 5726 { 5727 MethodName: "GetValidatorActiveSetChanges", 5728 Handler: _BeaconChain_GetValidatorActiveSetChanges_Handler, 5729 }, 5730 { 5731 MethodName: "GetValidatorQueue", 5732 Handler: _BeaconChain_GetValidatorQueue_Handler, 5733 }, 5734 { 5735 MethodName: "GetValidatorPerformance", 5736 Handler: _BeaconChain_GetValidatorPerformance_Handler, 5737 }, 5738 { 5739 MethodName: "ListValidatorAssignments", 5740 Handler: _BeaconChain_ListValidatorAssignments_Handler, 5741 }, 5742 { 5743 MethodName: "GetValidatorParticipation", 5744 Handler: _BeaconChain_GetValidatorParticipation_Handler, 5745 }, 5746 { 5747 MethodName: "GetBeaconConfig", 5748 Handler: _BeaconChain_GetBeaconConfig_Handler, 5749 }, 5750 { 5751 MethodName: "SubmitAttesterSlashing", 5752 Handler: _BeaconChain_SubmitAttesterSlashing_Handler, 5753 }, 5754 { 5755 MethodName: "SubmitProposerSlashing", 5756 Handler: _BeaconChain_SubmitProposerSlashing_Handler, 5757 }, 5758 { 5759 MethodName: "GetIndividualVotes", 5760 Handler: _BeaconChain_GetIndividualVotes_Handler, 5761 }, 5762 }, 5763 Streams: []grpc.StreamDesc{ 5764 { 5765 StreamName: "StreamAttestations", 5766 Handler: _BeaconChain_StreamAttestations_Handler, 5767 ServerStreams: true, 5768 }, 5769 { 5770 StreamName: "StreamIndexedAttestations", 5771 Handler: _BeaconChain_StreamIndexedAttestations_Handler, 5772 ServerStreams: true, 5773 }, 5774 { 5775 StreamName: "StreamBlocks", 5776 Handler: _BeaconChain_StreamBlocks_Handler, 5777 ServerStreams: true, 5778 }, 5779 { 5780 StreamName: "StreamChainHead", 5781 Handler: _BeaconChain_StreamChainHead_Handler, 5782 ServerStreams: true, 5783 }, 5784 { 5785 StreamName: "StreamValidatorsInfo", 5786 Handler: _BeaconChain_StreamValidatorsInfo_Handler, 5787 ServerStreams: true, 5788 ClientStreams: true, 5789 }, 5790 }, 5791 Metadata: "proto/eth/v1alpha1/beacon_chain.proto", 5792 }