github.com/turingchain2020/turingchain@v1.1.21/types/blockchain.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // source: blockchain.proto 3 4 package types 5 6 import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 ) 12 13 // Reference imports to suppress errors if they are not otherwise used. 14 var _ = proto.Marshal 15 var _ = fmt.Errorf 16 var _ = math.Inf 17 18 // This is a compile-time assertion to ensure that this generated file 19 // is compatible with the proto package it is being compiled against. 20 // A compilation error at this line likely means your copy of the 21 // proto package needs to be updated. 22 const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 23 24 //区块头信息 25 // version : 版本信息 26 // parentHash :父哈希 27 // txHash : 交易根哈希 28 // stateHash :状态哈希 29 // height : 区块高度 30 // blockTime :区块产生时的时标 31 // txCount : 区块上所有交易个数 32 // difficulty :区块难度系数, 33 // signature :交易签名 34 type Header struct { 35 Version int64 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"` 36 ParentHash []byte `protobuf:"bytes,2,opt,name=parentHash,proto3" json:"parentHash,omitempty"` 37 TxHash []byte `protobuf:"bytes,3,opt,name=txHash,proto3" json:"txHash,omitempty"` 38 StateHash []byte `protobuf:"bytes,4,opt,name=stateHash,proto3" json:"stateHash,omitempty"` 39 Height int64 `protobuf:"varint,5,opt,name=height,proto3" json:"height,omitempty"` 40 BlockTime int64 `protobuf:"varint,6,opt,name=blockTime,proto3" json:"blockTime,omitempty"` 41 TxCount int64 `protobuf:"varint,9,opt,name=txCount,proto3" json:"txCount,omitempty"` 42 Hash []byte `protobuf:"bytes,10,opt,name=hash,proto3" json:"hash,omitempty"` 43 Difficulty uint32 `protobuf:"varint,11,opt,name=difficulty,proto3" json:"difficulty,omitempty"` 44 Signature *Signature `protobuf:"bytes,8,opt,name=signature,proto3" json:"signature,omitempty"` 45 XXX_NoUnkeyedLiteral struct{} `json:"-"` 46 XXX_unrecognized []byte `json:"-"` 47 XXX_sizecache int32 `json:"-"` 48 } 49 50 func (m *Header) Reset() { *m = Header{} } 51 func (m *Header) String() string { return proto.CompactTextString(m) } 52 func (*Header) ProtoMessage() {} 53 func (*Header) Descriptor() ([]byte, []int) { 54 return fileDescriptor_e9ac6287ce250c9a, []int{0} 55 } 56 57 func (m *Header) XXX_Unmarshal(b []byte) error { 58 return xxx_messageInfo_Header.Unmarshal(m, b) 59 } 60 func (m *Header) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 61 return xxx_messageInfo_Header.Marshal(b, m, deterministic) 62 } 63 func (m *Header) XXX_Merge(src proto.Message) { 64 xxx_messageInfo_Header.Merge(m, src) 65 } 66 func (m *Header) XXX_Size() int { 67 return xxx_messageInfo_Header.Size(m) 68 } 69 func (m *Header) XXX_DiscardUnknown() { 70 xxx_messageInfo_Header.DiscardUnknown(m) 71 } 72 73 var xxx_messageInfo_Header proto.InternalMessageInfo 74 75 func (m *Header) GetVersion() int64 { 76 if m != nil { 77 return m.Version 78 } 79 return 0 80 } 81 82 func (m *Header) GetParentHash() []byte { 83 if m != nil { 84 return m.ParentHash 85 } 86 return nil 87 } 88 89 func (m *Header) GetTxHash() []byte { 90 if m != nil { 91 return m.TxHash 92 } 93 return nil 94 } 95 96 func (m *Header) GetStateHash() []byte { 97 if m != nil { 98 return m.StateHash 99 } 100 return nil 101 } 102 103 func (m *Header) GetHeight() int64 { 104 if m != nil { 105 return m.Height 106 } 107 return 0 108 } 109 110 func (m *Header) GetBlockTime() int64 { 111 if m != nil { 112 return m.BlockTime 113 } 114 return 0 115 } 116 117 func (m *Header) GetTxCount() int64 { 118 if m != nil { 119 return m.TxCount 120 } 121 return 0 122 } 123 124 func (m *Header) GetHash() []byte { 125 if m != nil { 126 return m.Hash 127 } 128 return nil 129 } 130 131 func (m *Header) GetDifficulty() uint32 { 132 if m != nil { 133 return m.Difficulty 134 } 135 return 0 136 } 137 138 func (m *Header) GetSignature() *Signature { 139 if m != nil { 140 return m.Signature 141 } 142 return nil 143 } 144 145 // 参考Header解释 146 // mainHash 平行链上使用的字段,代表这个区块的主链hash 147 type Block struct { 148 Version int64 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"` 149 ParentHash []byte `protobuf:"bytes,2,opt,name=parentHash,proto3" json:"parentHash,omitempty"` 150 TxHash []byte `protobuf:"bytes,3,opt,name=txHash,proto3" json:"txHash,omitempty"` 151 StateHash []byte `protobuf:"bytes,4,opt,name=stateHash,proto3" json:"stateHash,omitempty"` 152 Height int64 `protobuf:"varint,5,opt,name=height,proto3" json:"height,omitempty"` 153 BlockTime int64 `protobuf:"varint,6,opt,name=blockTime,proto3" json:"blockTime,omitempty"` 154 Difficulty uint32 `protobuf:"varint,11,opt,name=difficulty,proto3" json:"difficulty,omitempty"` 155 MainHash []byte `protobuf:"bytes,12,opt,name=mainHash,proto3" json:"mainHash,omitempty"` 156 MainHeight int64 `protobuf:"varint,13,opt,name=mainHeight,proto3" json:"mainHeight,omitempty"` 157 Signature *Signature `protobuf:"bytes,8,opt,name=signature,proto3" json:"signature,omitempty"` 158 Txs []*Transaction `protobuf:"bytes,7,rep,name=txs,proto3" json:"txs,omitempty"` 159 XXX_NoUnkeyedLiteral struct{} `json:"-"` 160 XXX_unrecognized []byte `json:"-"` 161 XXX_sizecache int32 `json:"-"` 162 } 163 164 func (m *Block) Reset() { *m = Block{} } 165 func (m *Block) String() string { return proto.CompactTextString(m) } 166 func (*Block) ProtoMessage() {} 167 func (*Block) Descriptor() ([]byte, []int) { 168 return fileDescriptor_e9ac6287ce250c9a, []int{1} 169 } 170 171 func (m *Block) XXX_Unmarshal(b []byte) error { 172 return xxx_messageInfo_Block.Unmarshal(m, b) 173 } 174 func (m *Block) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 175 return xxx_messageInfo_Block.Marshal(b, m, deterministic) 176 } 177 func (m *Block) XXX_Merge(src proto.Message) { 178 xxx_messageInfo_Block.Merge(m, src) 179 } 180 func (m *Block) XXX_Size() int { 181 return xxx_messageInfo_Block.Size(m) 182 } 183 func (m *Block) XXX_DiscardUnknown() { 184 xxx_messageInfo_Block.DiscardUnknown(m) 185 } 186 187 var xxx_messageInfo_Block proto.InternalMessageInfo 188 189 func (m *Block) GetVersion() int64 { 190 if m != nil { 191 return m.Version 192 } 193 return 0 194 } 195 196 func (m *Block) GetParentHash() []byte { 197 if m != nil { 198 return m.ParentHash 199 } 200 return nil 201 } 202 203 func (m *Block) GetTxHash() []byte { 204 if m != nil { 205 return m.TxHash 206 } 207 return nil 208 } 209 210 func (m *Block) GetStateHash() []byte { 211 if m != nil { 212 return m.StateHash 213 } 214 return nil 215 } 216 217 func (m *Block) GetHeight() int64 { 218 if m != nil { 219 return m.Height 220 } 221 return 0 222 } 223 224 func (m *Block) GetBlockTime() int64 { 225 if m != nil { 226 return m.BlockTime 227 } 228 return 0 229 } 230 231 func (m *Block) GetDifficulty() uint32 { 232 if m != nil { 233 return m.Difficulty 234 } 235 return 0 236 } 237 238 func (m *Block) GetMainHash() []byte { 239 if m != nil { 240 return m.MainHash 241 } 242 return nil 243 } 244 245 func (m *Block) GetMainHeight() int64 { 246 if m != nil { 247 return m.MainHeight 248 } 249 return 0 250 } 251 252 func (m *Block) GetSignature() *Signature { 253 if m != nil { 254 return m.Signature 255 } 256 return nil 257 } 258 259 func (m *Block) GetTxs() []*Transaction { 260 if m != nil { 261 return m.Txs 262 } 263 return nil 264 } 265 266 type Blocks struct { 267 Items []*Block `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 268 XXX_NoUnkeyedLiteral struct{} `json:"-"` 269 XXX_unrecognized []byte `json:"-"` 270 XXX_sizecache int32 `json:"-"` 271 } 272 273 func (m *Blocks) Reset() { *m = Blocks{} } 274 func (m *Blocks) String() string { return proto.CompactTextString(m) } 275 func (*Blocks) ProtoMessage() {} 276 func (*Blocks) Descriptor() ([]byte, []int) { 277 return fileDescriptor_e9ac6287ce250c9a, []int{2} 278 } 279 280 func (m *Blocks) XXX_Unmarshal(b []byte) error { 281 return xxx_messageInfo_Blocks.Unmarshal(m, b) 282 } 283 func (m *Blocks) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 284 return xxx_messageInfo_Blocks.Marshal(b, m, deterministic) 285 } 286 func (m *Blocks) XXX_Merge(src proto.Message) { 287 xxx_messageInfo_Blocks.Merge(m, src) 288 } 289 func (m *Blocks) XXX_Size() int { 290 return xxx_messageInfo_Blocks.Size(m) 291 } 292 func (m *Blocks) XXX_DiscardUnknown() { 293 xxx_messageInfo_Blocks.DiscardUnknown(m) 294 } 295 296 var xxx_messageInfo_Blocks proto.InternalMessageInfo 297 298 func (m *Blocks) GetItems() []*Block { 299 if m != nil { 300 return m.Items 301 } 302 return nil 303 } 304 305 type BlockSeq struct { 306 Num int64 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"` 307 Seq *BlockSequence `protobuf:"bytes,2,opt,name=seq,proto3" json:"seq,omitempty"` 308 Detail *BlockDetail `protobuf:"bytes,3,opt,name=detail,proto3" json:"detail,omitempty"` 309 XXX_NoUnkeyedLiteral struct{} `json:"-"` 310 XXX_unrecognized []byte `json:"-"` 311 XXX_sizecache int32 `json:"-"` 312 } 313 314 func (m *BlockSeq) Reset() { *m = BlockSeq{} } 315 func (m *BlockSeq) String() string { return proto.CompactTextString(m) } 316 func (*BlockSeq) ProtoMessage() {} 317 func (*BlockSeq) Descriptor() ([]byte, []int) { 318 return fileDescriptor_e9ac6287ce250c9a, []int{3} 319 } 320 321 func (m *BlockSeq) XXX_Unmarshal(b []byte) error { 322 return xxx_messageInfo_BlockSeq.Unmarshal(m, b) 323 } 324 func (m *BlockSeq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 325 return xxx_messageInfo_BlockSeq.Marshal(b, m, deterministic) 326 } 327 func (m *BlockSeq) XXX_Merge(src proto.Message) { 328 xxx_messageInfo_BlockSeq.Merge(m, src) 329 } 330 func (m *BlockSeq) XXX_Size() int { 331 return xxx_messageInfo_BlockSeq.Size(m) 332 } 333 func (m *BlockSeq) XXX_DiscardUnknown() { 334 xxx_messageInfo_BlockSeq.DiscardUnknown(m) 335 } 336 337 var xxx_messageInfo_BlockSeq proto.InternalMessageInfo 338 339 func (m *BlockSeq) GetNum() int64 { 340 if m != nil { 341 return m.Num 342 } 343 return 0 344 } 345 346 func (m *BlockSeq) GetSeq() *BlockSequence { 347 if m != nil { 348 return m.Seq 349 } 350 return nil 351 } 352 353 func (m *BlockSeq) GetDetail() *BlockDetail { 354 if m != nil { 355 return m.Detail 356 } 357 return nil 358 } 359 360 type BlockSeqs struct { 361 Seqs []*BlockSeq `protobuf:"bytes,1,rep,name=seqs,proto3" json:"seqs,omitempty"` 362 XXX_NoUnkeyedLiteral struct{} `json:"-"` 363 XXX_unrecognized []byte `json:"-"` 364 XXX_sizecache int32 `json:"-"` 365 } 366 367 func (m *BlockSeqs) Reset() { *m = BlockSeqs{} } 368 func (m *BlockSeqs) String() string { return proto.CompactTextString(m) } 369 func (*BlockSeqs) ProtoMessage() {} 370 func (*BlockSeqs) Descriptor() ([]byte, []int) { 371 return fileDescriptor_e9ac6287ce250c9a, []int{4} 372 } 373 374 func (m *BlockSeqs) XXX_Unmarshal(b []byte) error { 375 return xxx_messageInfo_BlockSeqs.Unmarshal(m, b) 376 } 377 func (m *BlockSeqs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 378 return xxx_messageInfo_BlockSeqs.Marshal(b, m, deterministic) 379 } 380 func (m *BlockSeqs) XXX_Merge(src proto.Message) { 381 xxx_messageInfo_BlockSeqs.Merge(m, src) 382 } 383 func (m *BlockSeqs) XXX_Size() int { 384 return xxx_messageInfo_BlockSeqs.Size(m) 385 } 386 func (m *BlockSeqs) XXX_DiscardUnknown() { 387 xxx_messageInfo_BlockSeqs.DiscardUnknown(m) 388 } 389 390 var xxx_messageInfo_BlockSeqs proto.InternalMessageInfo 391 392 func (m *BlockSeqs) GetSeqs() []*BlockSeq { 393 if m != nil { 394 return m.Seqs 395 } 396 return nil 397 } 398 399 //节点ID以及对应的Block 400 type BlockPid struct { 401 Pid string `protobuf:"bytes,1,opt,name=pid,proto3" json:"pid,omitempty"` 402 Block *Block `protobuf:"bytes,2,opt,name=block,proto3" json:"block,omitempty"` 403 XXX_NoUnkeyedLiteral struct{} `json:"-"` 404 XXX_unrecognized []byte `json:"-"` 405 XXX_sizecache int32 `json:"-"` 406 } 407 408 func (m *BlockPid) Reset() { *m = BlockPid{} } 409 func (m *BlockPid) String() string { return proto.CompactTextString(m) } 410 func (*BlockPid) ProtoMessage() {} 411 func (*BlockPid) Descriptor() ([]byte, []int) { 412 return fileDescriptor_e9ac6287ce250c9a, []int{5} 413 } 414 415 func (m *BlockPid) XXX_Unmarshal(b []byte) error { 416 return xxx_messageInfo_BlockPid.Unmarshal(m, b) 417 } 418 func (m *BlockPid) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 419 return xxx_messageInfo_BlockPid.Marshal(b, m, deterministic) 420 } 421 func (m *BlockPid) XXX_Merge(src proto.Message) { 422 xxx_messageInfo_BlockPid.Merge(m, src) 423 } 424 func (m *BlockPid) XXX_Size() int { 425 return xxx_messageInfo_BlockPid.Size(m) 426 } 427 func (m *BlockPid) XXX_DiscardUnknown() { 428 xxx_messageInfo_BlockPid.DiscardUnknown(m) 429 } 430 431 var xxx_messageInfo_BlockPid proto.InternalMessageInfo 432 433 func (m *BlockPid) GetPid() string { 434 if m != nil { 435 return m.Pid 436 } 437 return "" 438 } 439 440 func (m *BlockPid) GetBlock() *Block { 441 if m != nil { 442 return m.Block 443 } 444 return nil 445 } 446 447 // resp 448 type BlockDetails struct { 449 Items []*BlockDetail `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 450 XXX_NoUnkeyedLiteral struct{} `json:"-"` 451 XXX_unrecognized []byte `json:"-"` 452 XXX_sizecache int32 `json:"-"` 453 } 454 455 func (m *BlockDetails) Reset() { *m = BlockDetails{} } 456 func (m *BlockDetails) String() string { return proto.CompactTextString(m) } 457 func (*BlockDetails) ProtoMessage() {} 458 func (*BlockDetails) Descriptor() ([]byte, []int) { 459 return fileDescriptor_e9ac6287ce250c9a, []int{6} 460 } 461 462 func (m *BlockDetails) XXX_Unmarshal(b []byte) error { 463 return xxx_messageInfo_BlockDetails.Unmarshal(m, b) 464 } 465 func (m *BlockDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 466 return xxx_messageInfo_BlockDetails.Marshal(b, m, deterministic) 467 } 468 func (m *BlockDetails) XXX_Merge(src proto.Message) { 469 xxx_messageInfo_BlockDetails.Merge(m, src) 470 } 471 func (m *BlockDetails) XXX_Size() int { 472 return xxx_messageInfo_BlockDetails.Size(m) 473 } 474 func (m *BlockDetails) XXX_DiscardUnknown() { 475 xxx_messageInfo_BlockDetails.DiscardUnknown(m) 476 } 477 478 var xxx_messageInfo_BlockDetails proto.InternalMessageInfo 479 480 func (m *BlockDetails) GetItems() []*BlockDetail { 481 if m != nil { 482 return m.Items 483 } 484 return nil 485 } 486 487 // resp 488 type Headers struct { 489 Items []*Header `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 490 XXX_NoUnkeyedLiteral struct{} `json:"-"` 491 XXX_unrecognized []byte `json:"-"` 492 XXX_sizecache int32 `json:"-"` 493 } 494 495 func (m *Headers) Reset() { *m = Headers{} } 496 func (m *Headers) String() string { return proto.CompactTextString(m) } 497 func (*Headers) ProtoMessage() {} 498 func (*Headers) Descriptor() ([]byte, []int) { 499 return fileDescriptor_e9ac6287ce250c9a, []int{7} 500 } 501 502 func (m *Headers) XXX_Unmarshal(b []byte) error { 503 return xxx_messageInfo_Headers.Unmarshal(m, b) 504 } 505 func (m *Headers) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 506 return xxx_messageInfo_Headers.Marshal(b, m, deterministic) 507 } 508 func (m *Headers) XXX_Merge(src proto.Message) { 509 xxx_messageInfo_Headers.Merge(m, src) 510 } 511 func (m *Headers) XXX_Size() int { 512 return xxx_messageInfo_Headers.Size(m) 513 } 514 func (m *Headers) XXX_DiscardUnknown() { 515 xxx_messageInfo_Headers.DiscardUnknown(m) 516 } 517 518 var xxx_messageInfo_Headers proto.InternalMessageInfo 519 520 func (m *Headers) GetItems() []*Header { 521 if m != nil { 522 return m.Items 523 } 524 return nil 525 } 526 527 type HeadersPid struct { 528 Pid string `protobuf:"bytes,1,opt,name=pid,proto3" json:"pid,omitempty"` 529 Headers *Headers `protobuf:"bytes,2,opt,name=headers,proto3" json:"headers,omitempty"` 530 XXX_NoUnkeyedLiteral struct{} `json:"-"` 531 XXX_unrecognized []byte `json:"-"` 532 XXX_sizecache int32 `json:"-"` 533 } 534 535 func (m *HeadersPid) Reset() { *m = HeadersPid{} } 536 func (m *HeadersPid) String() string { return proto.CompactTextString(m) } 537 func (*HeadersPid) ProtoMessage() {} 538 func (*HeadersPid) Descriptor() ([]byte, []int) { 539 return fileDescriptor_e9ac6287ce250c9a, []int{8} 540 } 541 542 func (m *HeadersPid) XXX_Unmarshal(b []byte) error { 543 return xxx_messageInfo_HeadersPid.Unmarshal(m, b) 544 } 545 func (m *HeadersPid) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 546 return xxx_messageInfo_HeadersPid.Marshal(b, m, deterministic) 547 } 548 func (m *HeadersPid) XXX_Merge(src proto.Message) { 549 xxx_messageInfo_HeadersPid.Merge(m, src) 550 } 551 func (m *HeadersPid) XXX_Size() int { 552 return xxx_messageInfo_HeadersPid.Size(m) 553 } 554 func (m *HeadersPid) XXX_DiscardUnknown() { 555 xxx_messageInfo_HeadersPid.DiscardUnknown(m) 556 } 557 558 var xxx_messageInfo_HeadersPid proto.InternalMessageInfo 559 560 func (m *HeadersPid) GetPid() string { 561 if m != nil { 562 return m.Pid 563 } 564 return "" 565 } 566 567 func (m *HeadersPid) GetHeaders() *Headers { 568 if m != nil { 569 return m.Headers 570 } 571 return nil 572 } 573 574 //区块视图 575 // head : 区块头信息 576 // txCount :区块上交易个数 577 // txHashes : 区块上交易的哈希列表 578 type BlockOverview struct { 579 Head *Header `protobuf:"bytes,1,opt,name=head,proto3" json:"head,omitempty"` 580 TxCount int64 `protobuf:"varint,2,opt,name=txCount,proto3" json:"txCount,omitempty"` 581 TxHashes [][]byte `protobuf:"bytes,3,rep,name=txHashes,proto3" json:"txHashes,omitempty"` 582 XXX_NoUnkeyedLiteral struct{} `json:"-"` 583 XXX_unrecognized []byte `json:"-"` 584 XXX_sizecache int32 `json:"-"` 585 } 586 587 func (m *BlockOverview) Reset() { *m = BlockOverview{} } 588 func (m *BlockOverview) String() string { return proto.CompactTextString(m) } 589 func (*BlockOverview) ProtoMessage() {} 590 func (*BlockOverview) Descriptor() ([]byte, []int) { 591 return fileDescriptor_e9ac6287ce250c9a, []int{9} 592 } 593 594 func (m *BlockOverview) XXX_Unmarshal(b []byte) error { 595 return xxx_messageInfo_BlockOverview.Unmarshal(m, b) 596 } 597 func (m *BlockOverview) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 598 return xxx_messageInfo_BlockOverview.Marshal(b, m, deterministic) 599 } 600 func (m *BlockOverview) XXX_Merge(src proto.Message) { 601 xxx_messageInfo_BlockOverview.Merge(m, src) 602 } 603 func (m *BlockOverview) XXX_Size() int { 604 return xxx_messageInfo_BlockOverview.Size(m) 605 } 606 func (m *BlockOverview) XXX_DiscardUnknown() { 607 xxx_messageInfo_BlockOverview.DiscardUnknown(m) 608 } 609 610 var xxx_messageInfo_BlockOverview proto.InternalMessageInfo 611 612 func (m *BlockOverview) GetHead() *Header { 613 if m != nil { 614 return m.Head 615 } 616 return nil 617 } 618 619 func (m *BlockOverview) GetTxCount() int64 { 620 if m != nil { 621 return m.TxCount 622 } 623 return 0 624 } 625 626 func (m *BlockOverview) GetTxHashes() [][]byte { 627 if m != nil { 628 return m.TxHashes 629 } 630 return nil 631 } 632 633 //区块详细信息 634 // block : 区块信息 635 // receipts :区块上所有交易的收据信息列表 636 type BlockDetail struct { 637 Block *Block `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"` 638 Receipts []*ReceiptData `protobuf:"bytes,2,rep,name=receipts,proto3" json:"receipts,omitempty"` 639 KV []*KeyValue `protobuf:"bytes,3,rep,name=KV,proto3" json:"KV,omitempty"` 640 PrevStatusHash []byte `protobuf:"bytes,4,opt,name=prevStatusHash,proto3" json:"prevStatusHash,omitempty"` 641 XXX_NoUnkeyedLiteral struct{} `json:"-"` 642 XXX_unrecognized []byte `json:"-"` 643 XXX_sizecache int32 `json:"-"` 644 } 645 646 func (m *BlockDetail) Reset() { *m = BlockDetail{} } 647 func (m *BlockDetail) String() string { return proto.CompactTextString(m) } 648 func (*BlockDetail) ProtoMessage() {} 649 func (*BlockDetail) Descriptor() ([]byte, []int) { 650 return fileDescriptor_e9ac6287ce250c9a, []int{10} 651 } 652 653 func (m *BlockDetail) XXX_Unmarshal(b []byte) error { 654 return xxx_messageInfo_BlockDetail.Unmarshal(m, b) 655 } 656 func (m *BlockDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 657 return xxx_messageInfo_BlockDetail.Marshal(b, m, deterministic) 658 } 659 func (m *BlockDetail) XXX_Merge(src proto.Message) { 660 xxx_messageInfo_BlockDetail.Merge(m, src) 661 } 662 func (m *BlockDetail) XXX_Size() int { 663 return xxx_messageInfo_BlockDetail.Size(m) 664 } 665 func (m *BlockDetail) XXX_DiscardUnknown() { 666 xxx_messageInfo_BlockDetail.DiscardUnknown(m) 667 } 668 669 var xxx_messageInfo_BlockDetail proto.InternalMessageInfo 670 671 func (m *BlockDetail) GetBlock() *Block { 672 if m != nil { 673 return m.Block 674 } 675 return nil 676 } 677 678 func (m *BlockDetail) GetReceipts() []*ReceiptData { 679 if m != nil { 680 return m.Receipts 681 } 682 return nil 683 } 684 685 func (m *BlockDetail) GetKV() []*KeyValue { 686 if m != nil { 687 return m.KV 688 } 689 return nil 690 } 691 692 func (m *BlockDetail) GetPrevStatusHash() []byte { 693 if m != nil { 694 return m.PrevStatusHash 695 } 696 return nil 697 } 698 699 type Receipts struct { 700 Receipts []*Receipt `protobuf:"bytes,1,rep,name=receipts,proto3" json:"receipts,omitempty"` 701 XXX_NoUnkeyedLiteral struct{} `json:"-"` 702 XXX_unrecognized []byte `json:"-"` 703 XXX_sizecache int32 `json:"-"` 704 } 705 706 func (m *Receipts) Reset() { *m = Receipts{} } 707 func (m *Receipts) String() string { return proto.CompactTextString(m) } 708 func (*Receipts) ProtoMessage() {} 709 func (*Receipts) Descriptor() ([]byte, []int) { 710 return fileDescriptor_e9ac6287ce250c9a, []int{11} 711 } 712 713 func (m *Receipts) XXX_Unmarshal(b []byte) error { 714 return xxx_messageInfo_Receipts.Unmarshal(m, b) 715 } 716 func (m *Receipts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 717 return xxx_messageInfo_Receipts.Marshal(b, m, deterministic) 718 } 719 func (m *Receipts) XXX_Merge(src proto.Message) { 720 xxx_messageInfo_Receipts.Merge(m, src) 721 } 722 func (m *Receipts) XXX_Size() int { 723 return xxx_messageInfo_Receipts.Size(m) 724 } 725 func (m *Receipts) XXX_DiscardUnknown() { 726 xxx_messageInfo_Receipts.DiscardUnknown(m) 727 } 728 729 var xxx_messageInfo_Receipts proto.InternalMessageInfo 730 731 func (m *Receipts) GetReceipts() []*Receipt { 732 if m != nil { 733 return m.Receipts 734 } 735 return nil 736 } 737 738 type ReceiptCheckTxList struct { 739 Errs []string `protobuf:"bytes,1,rep,name=errs,proto3" json:"errs,omitempty"` 740 XXX_NoUnkeyedLiteral struct{} `json:"-"` 741 XXX_unrecognized []byte `json:"-"` 742 XXX_sizecache int32 `json:"-"` 743 } 744 745 func (m *ReceiptCheckTxList) Reset() { *m = ReceiptCheckTxList{} } 746 func (m *ReceiptCheckTxList) String() string { return proto.CompactTextString(m) } 747 func (*ReceiptCheckTxList) ProtoMessage() {} 748 func (*ReceiptCheckTxList) Descriptor() ([]byte, []int) { 749 return fileDescriptor_e9ac6287ce250c9a, []int{12} 750 } 751 752 func (m *ReceiptCheckTxList) XXX_Unmarshal(b []byte) error { 753 return xxx_messageInfo_ReceiptCheckTxList.Unmarshal(m, b) 754 } 755 func (m *ReceiptCheckTxList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 756 return xxx_messageInfo_ReceiptCheckTxList.Marshal(b, m, deterministic) 757 } 758 func (m *ReceiptCheckTxList) XXX_Merge(src proto.Message) { 759 xxx_messageInfo_ReceiptCheckTxList.Merge(m, src) 760 } 761 func (m *ReceiptCheckTxList) XXX_Size() int { 762 return xxx_messageInfo_ReceiptCheckTxList.Size(m) 763 } 764 func (m *ReceiptCheckTxList) XXX_DiscardUnknown() { 765 xxx_messageInfo_ReceiptCheckTxList.DiscardUnknown(m) 766 } 767 768 var xxx_messageInfo_ReceiptCheckTxList proto.InternalMessageInfo 769 770 func (m *ReceiptCheckTxList) GetErrs() []string { 771 if m != nil { 772 return m.Errs 773 } 774 return nil 775 } 776 777 //区块链状态 778 // currentHeight : 区块最新高度 779 // mempoolSize :内存池大小 780 // msgQueueSize : 消息队列大小 781 type ChainStatus struct { 782 CurrentHeight int64 `protobuf:"varint,1,opt,name=currentHeight,proto3" json:"currentHeight,omitempty"` 783 MempoolSize int64 `protobuf:"varint,2,opt,name=mempoolSize,proto3" json:"mempoolSize,omitempty"` 784 MsgQueueSize int64 `protobuf:"varint,3,opt,name=msgQueueSize,proto3" json:"msgQueueSize,omitempty"` 785 XXX_NoUnkeyedLiteral struct{} `json:"-"` 786 XXX_unrecognized []byte `json:"-"` 787 XXX_sizecache int32 `json:"-"` 788 } 789 790 func (m *ChainStatus) Reset() { *m = ChainStatus{} } 791 func (m *ChainStatus) String() string { return proto.CompactTextString(m) } 792 func (*ChainStatus) ProtoMessage() {} 793 func (*ChainStatus) Descriptor() ([]byte, []int) { 794 return fileDescriptor_e9ac6287ce250c9a, []int{13} 795 } 796 797 func (m *ChainStatus) XXX_Unmarshal(b []byte) error { 798 return xxx_messageInfo_ChainStatus.Unmarshal(m, b) 799 } 800 func (m *ChainStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 801 return xxx_messageInfo_ChainStatus.Marshal(b, m, deterministic) 802 } 803 func (m *ChainStatus) XXX_Merge(src proto.Message) { 804 xxx_messageInfo_ChainStatus.Merge(m, src) 805 } 806 func (m *ChainStatus) XXX_Size() int { 807 return xxx_messageInfo_ChainStatus.Size(m) 808 } 809 func (m *ChainStatus) XXX_DiscardUnknown() { 810 xxx_messageInfo_ChainStatus.DiscardUnknown(m) 811 } 812 813 var xxx_messageInfo_ChainStatus proto.InternalMessageInfo 814 815 func (m *ChainStatus) GetCurrentHeight() int64 { 816 if m != nil { 817 return m.CurrentHeight 818 } 819 return 0 820 } 821 822 func (m *ChainStatus) GetMempoolSize() int64 { 823 if m != nil { 824 return m.MempoolSize 825 } 826 return 0 827 } 828 829 func (m *ChainStatus) GetMsgQueueSize() int64 { 830 if m != nil { 831 return m.MsgQueueSize 832 } 833 return 0 834 } 835 836 //获取区块信息 837 // start : 获取区块的开始高度 838 // end :获取区块的结束高度 839 // Isdetail : 是否需要获取区块的详细信息 840 // pid : peer列表 841 type ReqBlocks struct { 842 Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` 843 End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` 844 IsDetail bool `protobuf:"varint,3,opt,name=isDetail,proto3" json:"isDetail,omitempty"` 845 Pid []string `protobuf:"bytes,4,rep,name=pid,proto3" json:"pid,omitempty"` 846 XXX_NoUnkeyedLiteral struct{} `json:"-"` 847 XXX_unrecognized []byte `json:"-"` 848 XXX_sizecache int32 `json:"-"` 849 } 850 851 func (m *ReqBlocks) Reset() { *m = ReqBlocks{} } 852 func (m *ReqBlocks) String() string { return proto.CompactTextString(m) } 853 func (*ReqBlocks) ProtoMessage() {} 854 func (*ReqBlocks) Descriptor() ([]byte, []int) { 855 return fileDescriptor_e9ac6287ce250c9a, []int{14} 856 } 857 858 func (m *ReqBlocks) XXX_Unmarshal(b []byte) error { 859 return xxx_messageInfo_ReqBlocks.Unmarshal(m, b) 860 } 861 func (m *ReqBlocks) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 862 return xxx_messageInfo_ReqBlocks.Marshal(b, m, deterministic) 863 } 864 func (m *ReqBlocks) XXX_Merge(src proto.Message) { 865 xxx_messageInfo_ReqBlocks.Merge(m, src) 866 } 867 func (m *ReqBlocks) XXX_Size() int { 868 return xxx_messageInfo_ReqBlocks.Size(m) 869 } 870 func (m *ReqBlocks) XXX_DiscardUnknown() { 871 xxx_messageInfo_ReqBlocks.DiscardUnknown(m) 872 } 873 874 var xxx_messageInfo_ReqBlocks proto.InternalMessageInfo 875 876 func (m *ReqBlocks) GetStart() int64 { 877 if m != nil { 878 return m.Start 879 } 880 return 0 881 } 882 883 func (m *ReqBlocks) GetEnd() int64 { 884 if m != nil { 885 return m.End 886 } 887 return 0 888 } 889 890 func (m *ReqBlocks) GetIsDetail() bool { 891 if m != nil { 892 return m.IsDetail 893 } 894 return false 895 } 896 897 func (m *ReqBlocks) GetPid() []string { 898 if m != nil { 899 return m.Pid 900 } 901 return nil 902 } 903 904 type MempoolSize struct { 905 Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"` 906 XXX_NoUnkeyedLiteral struct{} `json:"-"` 907 XXX_unrecognized []byte `json:"-"` 908 XXX_sizecache int32 `json:"-"` 909 } 910 911 func (m *MempoolSize) Reset() { *m = MempoolSize{} } 912 func (m *MempoolSize) String() string { return proto.CompactTextString(m) } 913 func (*MempoolSize) ProtoMessage() {} 914 func (*MempoolSize) Descriptor() ([]byte, []int) { 915 return fileDescriptor_e9ac6287ce250c9a, []int{15} 916 } 917 918 func (m *MempoolSize) XXX_Unmarshal(b []byte) error { 919 return xxx_messageInfo_MempoolSize.Unmarshal(m, b) 920 } 921 func (m *MempoolSize) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 922 return xxx_messageInfo_MempoolSize.Marshal(b, m, deterministic) 923 } 924 func (m *MempoolSize) XXX_Merge(src proto.Message) { 925 xxx_messageInfo_MempoolSize.Merge(m, src) 926 } 927 func (m *MempoolSize) XXX_Size() int { 928 return xxx_messageInfo_MempoolSize.Size(m) 929 } 930 func (m *MempoolSize) XXX_DiscardUnknown() { 931 xxx_messageInfo_MempoolSize.DiscardUnknown(m) 932 } 933 934 var xxx_messageInfo_MempoolSize proto.InternalMessageInfo 935 936 func (m *MempoolSize) GetSize() int64 { 937 if m != nil { 938 return m.Size 939 } 940 return 0 941 } 942 943 type ReplyBlockHeight struct { 944 Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` 945 XXX_NoUnkeyedLiteral struct{} `json:"-"` 946 XXX_unrecognized []byte `json:"-"` 947 XXX_sizecache int32 `json:"-"` 948 } 949 950 func (m *ReplyBlockHeight) Reset() { *m = ReplyBlockHeight{} } 951 func (m *ReplyBlockHeight) String() string { return proto.CompactTextString(m) } 952 func (*ReplyBlockHeight) ProtoMessage() {} 953 func (*ReplyBlockHeight) Descriptor() ([]byte, []int) { 954 return fileDescriptor_e9ac6287ce250c9a, []int{16} 955 } 956 957 func (m *ReplyBlockHeight) XXX_Unmarshal(b []byte) error { 958 return xxx_messageInfo_ReplyBlockHeight.Unmarshal(m, b) 959 } 960 func (m *ReplyBlockHeight) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 961 return xxx_messageInfo_ReplyBlockHeight.Marshal(b, m, deterministic) 962 } 963 func (m *ReplyBlockHeight) XXX_Merge(src proto.Message) { 964 xxx_messageInfo_ReplyBlockHeight.Merge(m, src) 965 } 966 func (m *ReplyBlockHeight) XXX_Size() int { 967 return xxx_messageInfo_ReplyBlockHeight.Size(m) 968 } 969 func (m *ReplyBlockHeight) XXX_DiscardUnknown() { 970 xxx_messageInfo_ReplyBlockHeight.DiscardUnknown(m) 971 } 972 973 var xxx_messageInfo_ReplyBlockHeight proto.InternalMessageInfo 974 975 func (m *ReplyBlockHeight) GetHeight() int64 { 976 if m != nil { 977 return m.Height 978 } 979 return 0 980 } 981 982 //区块体信息 983 // txs : 区块上所有交易列表 984 // receipts :区块上所有交易的收据信息列表 985 // mainHash : 主链区块hash,平行链使用 986 // mainHeight :主链区块高度,平行链使用 987 // hash : 本链区块hash 988 // height :本链区块高度 989 type BlockBody struct { 990 Txs []*Transaction `protobuf:"bytes,1,rep,name=txs,proto3" json:"txs,omitempty"` 991 Receipts []*ReceiptData `protobuf:"bytes,2,rep,name=receipts,proto3" json:"receipts,omitempty"` 992 MainHash []byte `protobuf:"bytes,3,opt,name=mainHash,proto3" json:"mainHash,omitempty"` 993 MainHeight int64 `protobuf:"varint,4,opt,name=mainHeight,proto3" json:"mainHeight,omitempty"` 994 Hash []byte `protobuf:"bytes,5,opt,name=hash,proto3" json:"hash,omitempty"` 995 Height int64 `protobuf:"varint,6,opt,name=height,proto3" json:"height,omitempty"` 996 XXX_NoUnkeyedLiteral struct{} `json:"-"` 997 XXX_unrecognized []byte `json:"-"` 998 XXX_sizecache int32 `json:"-"` 999 } 1000 1001 func (m *BlockBody) Reset() { *m = BlockBody{} } 1002 func (m *BlockBody) String() string { return proto.CompactTextString(m) } 1003 func (*BlockBody) ProtoMessage() {} 1004 func (*BlockBody) Descriptor() ([]byte, []int) { 1005 return fileDescriptor_e9ac6287ce250c9a, []int{17} 1006 } 1007 1008 func (m *BlockBody) XXX_Unmarshal(b []byte) error { 1009 return xxx_messageInfo_BlockBody.Unmarshal(m, b) 1010 } 1011 func (m *BlockBody) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1012 return xxx_messageInfo_BlockBody.Marshal(b, m, deterministic) 1013 } 1014 func (m *BlockBody) XXX_Merge(src proto.Message) { 1015 xxx_messageInfo_BlockBody.Merge(m, src) 1016 } 1017 func (m *BlockBody) XXX_Size() int { 1018 return xxx_messageInfo_BlockBody.Size(m) 1019 } 1020 func (m *BlockBody) XXX_DiscardUnknown() { 1021 xxx_messageInfo_BlockBody.DiscardUnknown(m) 1022 } 1023 1024 var xxx_messageInfo_BlockBody proto.InternalMessageInfo 1025 1026 func (m *BlockBody) GetTxs() []*Transaction { 1027 if m != nil { 1028 return m.Txs 1029 } 1030 return nil 1031 } 1032 1033 func (m *BlockBody) GetReceipts() []*ReceiptData { 1034 if m != nil { 1035 return m.Receipts 1036 } 1037 return nil 1038 } 1039 1040 func (m *BlockBody) GetMainHash() []byte { 1041 if m != nil { 1042 return m.MainHash 1043 } 1044 return nil 1045 } 1046 1047 func (m *BlockBody) GetMainHeight() int64 { 1048 if m != nil { 1049 return m.MainHeight 1050 } 1051 return 0 1052 } 1053 1054 func (m *BlockBody) GetHash() []byte { 1055 if m != nil { 1056 return m.Hash 1057 } 1058 return nil 1059 } 1060 1061 func (m *BlockBody) GetHeight() int64 { 1062 if m != nil { 1063 return m.Height 1064 } 1065 return 0 1066 } 1067 1068 //区块回执 1069 // receipts :区块上所有交易的收据信息列表 1070 // hash : 本链区块hash 1071 // height :本链区块高度 1072 type BlockReceipt struct { 1073 Receipts []*ReceiptData `protobuf:"bytes,1,rep,name=receipts,proto3" json:"receipts,omitempty"` 1074 Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"` 1075 Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"` 1076 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1077 XXX_unrecognized []byte `json:"-"` 1078 XXX_sizecache int32 `json:"-"` 1079 } 1080 1081 func (m *BlockReceipt) Reset() { *m = BlockReceipt{} } 1082 func (m *BlockReceipt) String() string { return proto.CompactTextString(m) } 1083 func (*BlockReceipt) ProtoMessage() {} 1084 func (*BlockReceipt) Descriptor() ([]byte, []int) { 1085 return fileDescriptor_e9ac6287ce250c9a, []int{18} 1086 } 1087 1088 func (m *BlockReceipt) XXX_Unmarshal(b []byte) error { 1089 return xxx_messageInfo_BlockReceipt.Unmarshal(m, b) 1090 } 1091 func (m *BlockReceipt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1092 return xxx_messageInfo_BlockReceipt.Marshal(b, m, deterministic) 1093 } 1094 func (m *BlockReceipt) XXX_Merge(src proto.Message) { 1095 xxx_messageInfo_BlockReceipt.Merge(m, src) 1096 } 1097 func (m *BlockReceipt) XXX_Size() int { 1098 return xxx_messageInfo_BlockReceipt.Size(m) 1099 } 1100 func (m *BlockReceipt) XXX_DiscardUnknown() { 1101 xxx_messageInfo_BlockReceipt.DiscardUnknown(m) 1102 } 1103 1104 var xxx_messageInfo_BlockReceipt proto.InternalMessageInfo 1105 1106 func (m *BlockReceipt) GetReceipts() []*ReceiptData { 1107 if m != nil { 1108 return m.Receipts 1109 } 1110 return nil 1111 } 1112 1113 func (m *BlockReceipt) GetHash() []byte { 1114 if m != nil { 1115 return m.Hash 1116 } 1117 return nil 1118 } 1119 1120 func (m *BlockReceipt) GetHeight() int64 { 1121 if m != nil { 1122 return m.Height 1123 } 1124 return 0 1125 } 1126 1127 // 区块追赶主链状态,用于判断本节点区块是否已经同步好 1128 type IsCaughtUp struct { 1129 Iscaughtup bool `protobuf:"varint,1,opt,name=Iscaughtup,proto3" json:"Iscaughtup,omitempty"` 1130 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1131 XXX_unrecognized []byte `json:"-"` 1132 XXX_sizecache int32 `json:"-"` 1133 } 1134 1135 func (m *IsCaughtUp) Reset() { *m = IsCaughtUp{} } 1136 func (m *IsCaughtUp) String() string { return proto.CompactTextString(m) } 1137 func (*IsCaughtUp) ProtoMessage() {} 1138 func (*IsCaughtUp) Descriptor() ([]byte, []int) { 1139 return fileDescriptor_e9ac6287ce250c9a, []int{19} 1140 } 1141 1142 func (m *IsCaughtUp) XXX_Unmarshal(b []byte) error { 1143 return xxx_messageInfo_IsCaughtUp.Unmarshal(m, b) 1144 } 1145 func (m *IsCaughtUp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1146 return xxx_messageInfo_IsCaughtUp.Marshal(b, m, deterministic) 1147 } 1148 func (m *IsCaughtUp) XXX_Merge(src proto.Message) { 1149 xxx_messageInfo_IsCaughtUp.Merge(m, src) 1150 } 1151 func (m *IsCaughtUp) XXX_Size() int { 1152 return xxx_messageInfo_IsCaughtUp.Size(m) 1153 } 1154 func (m *IsCaughtUp) XXX_DiscardUnknown() { 1155 xxx_messageInfo_IsCaughtUp.DiscardUnknown(m) 1156 } 1157 1158 var xxx_messageInfo_IsCaughtUp proto.InternalMessageInfo 1159 1160 func (m *IsCaughtUp) GetIscaughtup() bool { 1161 if m != nil { 1162 return m.Iscaughtup 1163 } 1164 return false 1165 } 1166 1167 // ntp时钟状态 1168 type IsNtpClockSync struct { 1169 Isntpclocksync bool `protobuf:"varint,1,opt,name=isntpclocksync,proto3" json:"isntpclocksync,omitempty"` 1170 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1171 XXX_unrecognized []byte `json:"-"` 1172 XXX_sizecache int32 `json:"-"` 1173 } 1174 1175 func (m *IsNtpClockSync) Reset() { *m = IsNtpClockSync{} } 1176 func (m *IsNtpClockSync) String() string { return proto.CompactTextString(m) } 1177 func (*IsNtpClockSync) ProtoMessage() {} 1178 func (*IsNtpClockSync) Descriptor() ([]byte, []int) { 1179 return fileDescriptor_e9ac6287ce250c9a, []int{20} 1180 } 1181 1182 func (m *IsNtpClockSync) XXX_Unmarshal(b []byte) error { 1183 return xxx_messageInfo_IsNtpClockSync.Unmarshal(m, b) 1184 } 1185 func (m *IsNtpClockSync) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1186 return xxx_messageInfo_IsNtpClockSync.Marshal(b, m, deterministic) 1187 } 1188 func (m *IsNtpClockSync) XXX_Merge(src proto.Message) { 1189 xxx_messageInfo_IsNtpClockSync.Merge(m, src) 1190 } 1191 func (m *IsNtpClockSync) XXX_Size() int { 1192 return xxx_messageInfo_IsNtpClockSync.Size(m) 1193 } 1194 func (m *IsNtpClockSync) XXX_DiscardUnknown() { 1195 xxx_messageInfo_IsNtpClockSync.DiscardUnknown(m) 1196 } 1197 1198 var xxx_messageInfo_IsNtpClockSync proto.InternalMessageInfo 1199 1200 func (m *IsNtpClockSync) GetIsntpclocksync() bool { 1201 if m != nil { 1202 return m.Isntpclocksync 1203 } 1204 return false 1205 } 1206 1207 type ChainExecutor struct { 1208 Driver string `protobuf:"bytes,1,opt,name=driver,proto3" json:"driver,omitempty"` 1209 FuncName string `protobuf:"bytes,2,opt,name=funcName,proto3" json:"funcName,omitempty"` 1210 StateHash []byte `protobuf:"bytes,3,opt,name=stateHash,proto3" json:"stateHash,omitempty"` 1211 Param []byte `protobuf:"bytes,4,opt,name=param,proto3" json:"param,omitempty"` 1212 //扩展字段,用于额外的用途 1213 Extra []byte `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"` 1214 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1215 XXX_unrecognized []byte `json:"-"` 1216 XXX_sizecache int32 `json:"-"` 1217 } 1218 1219 func (m *ChainExecutor) Reset() { *m = ChainExecutor{} } 1220 func (m *ChainExecutor) String() string { return proto.CompactTextString(m) } 1221 func (*ChainExecutor) ProtoMessage() {} 1222 func (*ChainExecutor) Descriptor() ([]byte, []int) { 1223 return fileDescriptor_e9ac6287ce250c9a, []int{21} 1224 } 1225 1226 func (m *ChainExecutor) XXX_Unmarshal(b []byte) error { 1227 return xxx_messageInfo_ChainExecutor.Unmarshal(m, b) 1228 } 1229 func (m *ChainExecutor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1230 return xxx_messageInfo_ChainExecutor.Marshal(b, m, deterministic) 1231 } 1232 func (m *ChainExecutor) XXX_Merge(src proto.Message) { 1233 xxx_messageInfo_ChainExecutor.Merge(m, src) 1234 } 1235 func (m *ChainExecutor) XXX_Size() int { 1236 return xxx_messageInfo_ChainExecutor.Size(m) 1237 } 1238 func (m *ChainExecutor) XXX_DiscardUnknown() { 1239 xxx_messageInfo_ChainExecutor.DiscardUnknown(m) 1240 } 1241 1242 var xxx_messageInfo_ChainExecutor proto.InternalMessageInfo 1243 1244 func (m *ChainExecutor) GetDriver() string { 1245 if m != nil { 1246 return m.Driver 1247 } 1248 return "" 1249 } 1250 1251 func (m *ChainExecutor) GetFuncName() string { 1252 if m != nil { 1253 return m.FuncName 1254 } 1255 return "" 1256 } 1257 1258 func (m *ChainExecutor) GetStateHash() []byte { 1259 if m != nil { 1260 return m.StateHash 1261 } 1262 return nil 1263 } 1264 1265 func (m *ChainExecutor) GetParam() []byte { 1266 if m != nil { 1267 return m.Param 1268 } 1269 return nil 1270 } 1271 1272 func (m *ChainExecutor) GetExtra() []byte { 1273 if m != nil { 1274 return m.Extra 1275 } 1276 return nil 1277 } 1278 1279 // 通过block hash记录block的操作类型及add/del:1/2 1280 type BlockSequence struct { 1281 Hash []byte `protobuf:"bytes,1,opt,name=Hash,proto3" json:"Hash,omitempty"` 1282 Type int64 `protobuf:"varint,2,opt,name=Type,proto3" json:"Type,omitempty"` 1283 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1284 XXX_unrecognized []byte `json:"-"` 1285 XXX_sizecache int32 `json:"-"` 1286 } 1287 1288 func (m *BlockSequence) Reset() { *m = BlockSequence{} } 1289 func (m *BlockSequence) String() string { return proto.CompactTextString(m) } 1290 func (*BlockSequence) ProtoMessage() {} 1291 func (*BlockSequence) Descriptor() ([]byte, []int) { 1292 return fileDescriptor_e9ac6287ce250c9a, []int{22} 1293 } 1294 1295 func (m *BlockSequence) XXX_Unmarshal(b []byte) error { 1296 return xxx_messageInfo_BlockSequence.Unmarshal(m, b) 1297 } 1298 func (m *BlockSequence) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1299 return xxx_messageInfo_BlockSequence.Marshal(b, m, deterministic) 1300 } 1301 func (m *BlockSequence) XXX_Merge(src proto.Message) { 1302 xxx_messageInfo_BlockSequence.Merge(m, src) 1303 } 1304 func (m *BlockSequence) XXX_Size() int { 1305 return xxx_messageInfo_BlockSequence.Size(m) 1306 } 1307 func (m *BlockSequence) XXX_DiscardUnknown() { 1308 xxx_messageInfo_BlockSequence.DiscardUnknown(m) 1309 } 1310 1311 var xxx_messageInfo_BlockSequence proto.InternalMessageInfo 1312 1313 func (m *BlockSequence) GetHash() []byte { 1314 if m != nil { 1315 return m.Hash 1316 } 1317 return nil 1318 } 1319 1320 func (m *BlockSequence) GetType() int64 { 1321 if m != nil { 1322 return m.Type 1323 } 1324 return 0 1325 } 1326 1327 // resp 1328 type BlockSequences struct { 1329 Items []*BlockSequence `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 1330 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1331 XXX_unrecognized []byte `json:"-"` 1332 XXX_sizecache int32 `json:"-"` 1333 } 1334 1335 func (m *BlockSequences) Reset() { *m = BlockSequences{} } 1336 func (m *BlockSequences) String() string { return proto.CompactTextString(m) } 1337 func (*BlockSequences) ProtoMessage() {} 1338 func (*BlockSequences) Descriptor() ([]byte, []int) { 1339 return fileDescriptor_e9ac6287ce250c9a, []int{23} 1340 } 1341 1342 func (m *BlockSequences) XXX_Unmarshal(b []byte) error { 1343 return xxx_messageInfo_BlockSequences.Unmarshal(m, b) 1344 } 1345 func (m *BlockSequences) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1346 return xxx_messageInfo_BlockSequences.Marshal(b, m, deterministic) 1347 } 1348 func (m *BlockSequences) XXX_Merge(src proto.Message) { 1349 xxx_messageInfo_BlockSequences.Merge(m, src) 1350 } 1351 func (m *BlockSequences) XXX_Size() int { 1352 return xxx_messageInfo_BlockSequences.Size(m) 1353 } 1354 func (m *BlockSequences) XXX_DiscardUnknown() { 1355 xxx_messageInfo_BlockSequences.DiscardUnknown(m) 1356 } 1357 1358 var xxx_messageInfo_BlockSequences proto.InternalMessageInfo 1359 1360 func (m *BlockSequences) GetItems() []*BlockSequence { 1361 if m != nil { 1362 return m.Items 1363 } 1364 return nil 1365 } 1366 1367 //平行链区块详细信息 1368 // blockdetail : 区块详细信息 1369 // sequence :区块序列号 1370 // isSync:写数据库时是否需要刷盘 1371 type ParaChainBlockDetail struct { 1372 Blockdetail *BlockDetail `protobuf:"bytes,1,opt,name=blockdetail,proto3" json:"blockdetail,omitempty"` 1373 Sequence int64 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"` 1374 IsSync bool `protobuf:"varint,3,opt,name=isSync,proto3" json:"isSync,omitempty"` 1375 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1376 XXX_unrecognized []byte `json:"-"` 1377 XXX_sizecache int32 `json:"-"` 1378 } 1379 1380 func (m *ParaChainBlockDetail) Reset() { *m = ParaChainBlockDetail{} } 1381 func (m *ParaChainBlockDetail) String() string { return proto.CompactTextString(m) } 1382 func (*ParaChainBlockDetail) ProtoMessage() {} 1383 func (*ParaChainBlockDetail) Descriptor() ([]byte, []int) { 1384 return fileDescriptor_e9ac6287ce250c9a, []int{24} 1385 } 1386 1387 func (m *ParaChainBlockDetail) XXX_Unmarshal(b []byte) error { 1388 return xxx_messageInfo_ParaChainBlockDetail.Unmarshal(m, b) 1389 } 1390 func (m *ParaChainBlockDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1391 return xxx_messageInfo_ParaChainBlockDetail.Marshal(b, m, deterministic) 1392 } 1393 func (m *ParaChainBlockDetail) XXX_Merge(src proto.Message) { 1394 xxx_messageInfo_ParaChainBlockDetail.Merge(m, src) 1395 } 1396 func (m *ParaChainBlockDetail) XXX_Size() int { 1397 return xxx_messageInfo_ParaChainBlockDetail.Size(m) 1398 } 1399 func (m *ParaChainBlockDetail) XXX_DiscardUnknown() { 1400 xxx_messageInfo_ParaChainBlockDetail.DiscardUnknown(m) 1401 } 1402 1403 var xxx_messageInfo_ParaChainBlockDetail proto.InternalMessageInfo 1404 1405 func (m *ParaChainBlockDetail) GetBlockdetail() *BlockDetail { 1406 if m != nil { 1407 return m.Blockdetail 1408 } 1409 return nil 1410 } 1411 1412 func (m *ParaChainBlockDetail) GetSequence() int64 { 1413 if m != nil { 1414 return m.Sequence 1415 } 1416 return 0 1417 } 1418 1419 func (m *ParaChainBlockDetail) GetIsSync() bool { 1420 if m != nil { 1421 return m.IsSync 1422 } 1423 return false 1424 } 1425 1426 // 定义para交易结构 1427 type ParaTxDetails struct { 1428 Items []*ParaTxDetail `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 1429 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1430 XXX_unrecognized []byte `json:"-"` 1431 XXX_sizecache int32 `json:"-"` 1432 } 1433 1434 func (m *ParaTxDetails) Reset() { *m = ParaTxDetails{} } 1435 func (m *ParaTxDetails) String() string { return proto.CompactTextString(m) } 1436 func (*ParaTxDetails) ProtoMessage() {} 1437 func (*ParaTxDetails) Descriptor() ([]byte, []int) { 1438 return fileDescriptor_e9ac6287ce250c9a, []int{25} 1439 } 1440 1441 func (m *ParaTxDetails) XXX_Unmarshal(b []byte) error { 1442 return xxx_messageInfo_ParaTxDetails.Unmarshal(m, b) 1443 } 1444 func (m *ParaTxDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1445 return xxx_messageInfo_ParaTxDetails.Marshal(b, m, deterministic) 1446 } 1447 func (m *ParaTxDetails) XXX_Merge(src proto.Message) { 1448 xxx_messageInfo_ParaTxDetails.Merge(m, src) 1449 } 1450 func (m *ParaTxDetails) XXX_Size() int { 1451 return xxx_messageInfo_ParaTxDetails.Size(m) 1452 } 1453 func (m *ParaTxDetails) XXX_DiscardUnknown() { 1454 xxx_messageInfo_ParaTxDetails.DiscardUnknown(m) 1455 } 1456 1457 var xxx_messageInfo_ParaTxDetails proto.InternalMessageInfo 1458 1459 func (m *ParaTxDetails) GetItems() []*ParaTxDetail { 1460 if m != nil { 1461 return m.Items 1462 } 1463 return nil 1464 } 1465 1466 // type:平行链交易所在区块add/del操作,方便平行链回滚 1467 // header:平行链交易所在区块头信息 1468 // txDetails:本区块中指定title平行链的所有交易 1469 // proofs:对应平行链子roothash的存在证明路径 1470 // childHash:此平行链交易的子roothash 1471 // index:对应平行链子roothash在整个区块中的索引 1472 type ParaTxDetail struct { 1473 Type int64 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"` 1474 Header *Header `protobuf:"bytes,2,opt,name=header,proto3" json:"header,omitempty"` 1475 TxDetails []*TxDetail `protobuf:"bytes,3,rep,name=txDetails,proto3" json:"txDetails,omitempty"` 1476 ChildHash []byte `protobuf:"bytes,4,opt,name=childHash,proto3" json:"childHash,omitempty"` 1477 Index uint32 `protobuf:"varint,5,opt,name=index,proto3" json:"index,omitempty"` 1478 Proofs [][]byte `protobuf:"bytes,6,rep,name=proofs,proto3" json:"proofs,omitempty"` 1479 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1480 XXX_unrecognized []byte `json:"-"` 1481 XXX_sizecache int32 `json:"-"` 1482 } 1483 1484 func (m *ParaTxDetail) Reset() { *m = ParaTxDetail{} } 1485 func (m *ParaTxDetail) String() string { return proto.CompactTextString(m) } 1486 func (*ParaTxDetail) ProtoMessage() {} 1487 func (*ParaTxDetail) Descriptor() ([]byte, []int) { 1488 return fileDescriptor_e9ac6287ce250c9a, []int{26} 1489 } 1490 1491 func (m *ParaTxDetail) XXX_Unmarshal(b []byte) error { 1492 return xxx_messageInfo_ParaTxDetail.Unmarshal(m, b) 1493 } 1494 func (m *ParaTxDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1495 return xxx_messageInfo_ParaTxDetail.Marshal(b, m, deterministic) 1496 } 1497 func (m *ParaTxDetail) XXX_Merge(src proto.Message) { 1498 xxx_messageInfo_ParaTxDetail.Merge(m, src) 1499 } 1500 func (m *ParaTxDetail) XXX_Size() int { 1501 return xxx_messageInfo_ParaTxDetail.Size(m) 1502 } 1503 func (m *ParaTxDetail) XXX_DiscardUnknown() { 1504 xxx_messageInfo_ParaTxDetail.DiscardUnknown(m) 1505 } 1506 1507 var xxx_messageInfo_ParaTxDetail proto.InternalMessageInfo 1508 1509 func (m *ParaTxDetail) GetType() int64 { 1510 if m != nil { 1511 return m.Type 1512 } 1513 return 0 1514 } 1515 1516 func (m *ParaTxDetail) GetHeader() *Header { 1517 if m != nil { 1518 return m.Header 1519 } 1520 return nil 1521 } 1522 1523 func (m *ParaTxDetail) GetTxDetails() []*TxDetail { 1524 if m != nil { 1525 return m.TxDetails 1526 } 1527 return nil 1528 } 1529 1530 func (m *ParaTxDetail) GetChildHash() []byte { 1531 if m != nil { 1532 return m.ChildHash 1533 } 1534 return nil 1535 } 1536 1537 func (m *ParaTxDetail) GetIndex() uint32 { 1538 if m != nil { 1539 return m.Index 1540 } 1541 return 0 1542 } 1543 1544 func (m *ParaTxDetail) GetProofs() [][]byte { 1545 if m != nil { 1546 return m.Proofs 1547 } 1548 return nil 1549 } 1550 1551 //交易的详情: 1552 // index:本交易在block中索引值,用于proof的证明 1553 // tx:本交易内容 1554 // receipt:本交易在主链的执行回执 1555 // proofs:本交易hash在block中merkel中的路径 1556 type TxDetail struct { 1557 Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` 1558 Tx *Transaction `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"` 1559 Receipt *ReceiptData `protobuf:"bytes,3,opt,name=receipt,proto3" json:"receipt,omitempty"` 1560 Proofs [][]byte `protobuf:"bytes,4,rep,name=proofs,proto3" json:"proofs,omitempty"` 1561 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1562 XXX_unrecognized []byte `json:"-"` 1563 XXX_sizecache int32 `json:"-"` 1564 } 1565 1566 func (m *TxDetail) Reset() { *m = TxDetail{} } 1567 func (m *TxDetail) String() string { return proto.CompactTextString(m) } 1568 func (*TxDetail) ProtoMessage() {} 1569 func (*TxDetail) Descriptor() ([]byte, []int) { 1570 return fileDescriptor_e9ac6287ce250c9a, []int{27} 1571 } 1572 1573 func (m *TxDetail) XXX_Unmarshal(b []byte) error { 1574 return xxx_messageInfo_TxDetail.Unmarshal(m, b) 1575 } 1576 func (m *TxDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1577 return xxx_messageInfo_TxDetail.Marshal(b, m, deterministic) 1578 } 1579 func (m *TxDetail) XXX_Merge(src proto.Message) { 1580 xxx_messageInfo_TxDetail.Merge(m, src) 1581 } 1582 func (m *TxDetail) XXX_Size() int { 1583 return xxx_messageInfo_TxDetail.Size(m) 1584 } 1585 func (m *TxDetail) XXX_DiscardUnknown() { 1586 xxx_messageInfo_TxDetail.DiscardUnknown(m) 1587 } 1588 1589 var xxx_messageInfo_TxDetail proto.InternalMessageInfo 1590 1591 func (m *TxDetail) GetIndex() uint32 { 1592 if m != nil { 1593 return m.Index 1594 } 1595 return 0 1596 } 1597 1598 func (m *TxDetail) GetTx() *Transaction { 1599 if m != nil { 1600 return m.Tx 1601 } 1602 return nil 1603 } 1604 1605 func (m *TxDetail) GetReceipt() *ReceiptData { 1606 if m != nil { 1607 return m.Receipt 1608 } 1609 return nil 1610 } 1611 1612 func (m *TxDetail) GetProofs() [][]byte { 1613 if m != nil { 1614 return m.Proofs 1615 } 1616 return nil 1617 } 1618 1619 //通过seq区间和title请求平行链的交易 1620 type ReqParaTxByTitle struct { 1621 Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` 1622 End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` 1623 Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"` 1624 IsSeq bool `protobuf:"varint,4,opt,name=isSeq,proto3" json:"isSeq,omitempty"` 1625 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1626 XXX_unrecognized []byte `json:"-"` 1627 XXX_sizecache int32 `json:"-"` 1628 } 1629 1630 func (m *ReqParaTxByTitle) Reset() { *m = ReqParaTxByTitle{} } 1631 func (m *ReqParaTxByTitle) String() string { return proto.CompactTextString(m) } 1632 func (*ReqParaTxByTitle) ProtoMessage() {} 1633 func (*ReqParaTxByTitle) Descriptor() ([]byte, []int) { 1634 return fileDescriptor_e9ac6287ce250c9a, []int{28} 1635 } 1636 1637 func (m *ReqParaTxByTitle) XXX_Unmarshal(b []byte) error { 1638 return xxx_messageInfo_ReqParaTxByTitle.Unmarshal(m, b) 1639 } 1640 func (m *ReqParaTxByTitle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1641 return xxx_messageInfo_ReqParaTxByTitle.Marshal(b, m, deterministic) 1642 } 1643 func (m *ReqParaTxByTitle) XXX_Merge(src proto.Message) { 1644 xxx_messageInfo_ReqParaTxByTitle.Merge(m, src) 1645 } 1646 func (m *ReqParaTxByTitle) XXX_Size() int { 1647 return xxx_messageInfo_ReqParaTxByTitle.Size(m) 1648 } 1649 func (m *ReqParaTxByTitle) XXX_DiscardUnknown() { 1650 xxx_messageInfo_ReqParaTxByTitle.DiscardUnknown(m) 1651 } 1652 1653 var xxx_messageInfo_ReqParaTxByTitle proto.InternalMessageInfo 1654 1655 func (m *ReqParaTxByTitle) GetStart() int64 { 1656 if m != nil { 1657 return m.Start 1658 } 1659 return 0 1660 } 1661 1662 func (m *ReqParaTxByTitle) GetEnd() int64 { 1663 if m != nil { 1664 return m.End 1665 } 1666 return 0 1667 } 1668 1669 func (m *ReqParaTxByTitle) GetTitle() string { 1670 if m != nil { 1671 return m.Title 1672 } 1673 return "" 1674 } 1675 1676 func (m *ReqParaTxByTitle) GetIsSeq() bool { 1677 if m != nil { 1678 return m.IsSeq 1679 } 1680 return false 1681 } 1682 1683 //导出block文件头信息 1684 type FileHeader struct { 1685 StartHeight int64 `protobuf:"varint,1,opt,name=startHeight,proto3" json:"startHeight,omitempty"` 1686 Driver string `protobuf:"bytes,2,opt,name=driver,proto3" json:"driver,omitempty"` 1687 Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"` 1688 TestNet bool `protobuf:"varint,4,opt,name=testNet,proto3" json:"testNet,omitempty"` 1689 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1690 XXX_unrecognized []byte `json:"-"` 1691 XXX_sizecache int32 `json:"-"` 1692 } 1693 1694 func (m *FileHeader) Reset() { *m = FileHeader{} } 1695 func (m *FileHeader) String() string { return proto.CompactTextString(m) } 1696 func (*FileHeader) ProtoMessage() {} 1697 func (*FileHeader) Descriptor() ([]byte, []int) { 1698 return fileDescriptor_e9ac6287ce250c9a, []int{29} 1699 } 1700 1701 func (m *FileHeader) XXX_Unmarshal(b []byte) error { 1702 return xxx_messageInfo_FileHeader.Unmarshal(m, b) 1703 } 1704 func (m *FileHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1705 return xxx_messageInfo_FileHeader.Marshal(b, m, deterministic) 1706 } 1707 func (m *FileHeader) XXX_Merge(src proto.Message) { 1708 xxx_messageInfo_FileHeader.Merge(m, src) 1709 } 1710 func (m *FileHeader) XXX_Size() int { 1711 return xxx_messageInfo_FileHeader.Size(m) 1712 } 1713 func (m *FileHeader) XXX_DiscardUnknown() { 1714 xxx_messageInfo_FileHeader.DiscardUnknown(m) 1715 } 1716 1717 var xxx_messageInfo_FileHeader proto.InternalMessageInfo 1718 1719 func (m *FileHeader) GetStartHeight() int64 { 1720 if m != nil { 1721 return m.StartHeight 1722 } 1723 return 0 1724 } 1725 1726 func (m *FileHeader) GetDriver() string { 1727 if m != nil { 1728 return m.Driver 1729 } 1730 return "" 1731 } 1732 1733 func (m *FileHeader) GetTitle() string { 1734 if m != nil { 1735 return m.Title 1736 } 1737 return "" 1738 } 1739 1740 func (m *FileHeader) GetTestNet() bool { 1741 if m != nil { 1742 return m.TestNet 1743 } 1744 return false 1745 } 1746 1747 //存储block高度和hash 1748 type EndBlock struct { 1749 Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` 1750 Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"` 1751 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1752 XXX_unrecognized []byte `json:"-"` 1753 XXX_sizecache int32 `json:"-"` 1754 } 1755 1756 func (m *EndBlock) Reset() { *m = EndBlock{} } 1757 func (m *EndBlock) String() string { return proto.CompactTextString(m) } 1758 func (*EndBlock) ProtoMessage() {} 1759 func (*EndBlock) Descriptor() ([]byte, []int) { 1760 return fileDescriptor_e9ac6287ce250c9a, []int{30} 1761 } 1762 1763 func (m *EndBlock) XXX_Unmarshal(b []byte) error { 1764 return xxx_messageInfo_EndBlock.Unmarshal(m, b) 1765 } 1766 func (m *EndBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1767 return xxx_messageInfo_EndBlock.Marshal(b, m, deterministic) 1768 } 1769 func (m *EndBlock) XXX_Merge(src proto.Message) { 1770 xxx_messageInfo_EndBlock.Merge(m, src) 1771 } 1772 func (m *EndBlock) XXX_Size() int { 1773 return xxx_messageInfo_EndBlock.Size(m) 1774 } 1775 func (m *EndBlock) XXX_DiscardUnknown() { 1776 xxx_messageInfo_EndBlock.DiscardUnknown(m) 1777 } 1778 1779 var xxx_messageInfo_EndBlock proto.InternalMessageInfo 1780 1781 func (m *EndBlock) GetHeight() int64 { 1782 if m != nil { 1783 return m.Height 1784 } 1785 return 0 1786 } 1787 1788 func (m *EndBlock) GetHash() []byte { 1789 if m != nil { 1790 return m.Hash 1791 } 1792 return nil 1793 } 1794 1795 //通过seq获取区块的header信息 1796 type HeaderSeq struct { 1797 Num int64 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"` 1798 Seq *BlockSequence `protobuf:"bytes,2,opt,name=seq,proto3" json:"seq,omitempty"` 1799 Header *Header `protobuf:"bytes,3,opt,name=header,proto3" json:"header,omitempty"` 1800 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1801 XXX_unrecognized []byte `json:"-"` 1802 XXX_sizecache int32 `json:"-"` 1803 } 1804 1805 func (m *HeaderSeq) Reset() { *m = HeaderSeq{} } 1806 func (m *HeaderSeq) String() string { return proto.CompactTextString(m) } 1807 func (*HeaderSeq) ProtoMessage() {} 1808 func (*HeaderSeq) Descriptor() ([]byte, []int) { 1809 return fileDescriptor_e9ac6287ce250c9a, []int{31} 1810 } 1811 1812 func (m *HeaderSeq) XXX_Unmarshal(b []byte) error { 1813 return xxx_messageInfo_HeaderSeq.Unmarshal(m, b) 1814 } 1815 func (m *HeaderSeq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1816 return xxx_messageInfo_HeaderSeq.Marshal(b, m, deterministic) 1817 } 1818 func (m *HeaderSeq) XXX_Merge(src proto.Message) { 1819 xxx_messageInfo_HeaderSeq.Merge(m, src) 1820 } 1821 func (m *HeaderSeq) XXX_Size() int { 1822 return xxx_messageInfo_HeaderSeq.Size(m) 1823 } 1824 func (m *HeaderSeq) XXX_DiscardUnknown() { 1825 xxx_messageInfo_HeaderSeq.DiscardUnknown(m) 1826 } 1827 1828 var xxx_messageInfo_HeaderSeq proto.InternalMessageInfo 1829 1830 func (m *HeaderSeq) GetNum() int64 { 1831 if m != nil { 1832 return m.Num 1833 } 1834 return 0 1835 } 1836 1837 func (m *HeaderSeq) GetSeq() *BlockSequence { 1838 if m != nil { 1839 return m.Seq 1840 } 1841 return nil 1842 } 1843 1844 func (m *HeaderSeq) GetHeader() *Header { 1845 if m != nil { 1846 return m.Header 1847 } 1848 return nil 1849 } 1850 1851 //批量推送区块的header信息 1852 type HeaderSeqs struct { 1853 Seqs []*HeaderSeq `protobuf:"bytes,1,rep,name=seqs,proto3" json:"seqs,omitempty"` 1854 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1855 XXX_unrecognized []byte `json:"-"` 1856 XXX_sizecache int32 `json:"-"` 1857 } 1858 1859 func (m *HeaderSeqs) Reset() { *m = HeaderSeqs{} } 1860 func (m *HeaderSeqs) String() string { return proto.CompactTextString(m) } 1861 func (*HeaderSeqs) ProtoMessage() {} 1862 func (*HeaderSeqs) Descriptor() ([]byte, []int) { 1863 return fileDescriptor_e9ac6287ce250c9a, []int{32} 1864 } 1865 1866 func (m *HeaderSeqs) XXX_Unmarshal(b []byte) error { 1867 return xxx_messageInfo_HeaderSeqs.Unmarshal(m, b) 1868 } 1869 func (m *HeaderSeqs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1870 return xxx_messageInfo_HeaderSeqs.Marshal(b, m, deterministic) 1871 } 1872 func (m *HeaderSeqs) XXX_Merge(src proto.Message) { 1873 xxx_messageInfo_HeaderSeqs.Merge(m, src) 1874 } 1875 func (m *HeaderSeqs) XXX_Size() int { 1876 return xxx_messageInfo_HeaderSeqs.Size(m) 1877 } 1878 func (m *HeaderSeqs) XXX_DiscardUnknown() { 1879 xxx_messageInfo_HeaderSeqs.DiscardUnknown(m) 1880 } 1881 1882 var xxx_messageInfo_HeaderSeqs proto.InternalMessageInfo 1883 1884 func (m *HeaderSeqs) GetSeqs() []*HeaderSeq { 1885 if m != nil { 1886 return m.Seqs 1887 } 1888 return nil 1889 } 1890 1891 //记录本平行链所在区块的信息以及子根hash值 1892 // childHash:平行链子roothash值 1893 // startIndex:此平行链的第一笔交易的index索引值 1894 // childHashIndex:此平行链子roothash在本区块中的索引值 1895 // txCount:此平行链交易的个数 1896 type HeightPara struct { 1897 Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` 1898 Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` 1899 Hash []byte `protobuf:"bytes,3,opt,name=hash,proto3" json:"hash,omitempty"` 1900 ChildHash []byte `protobuf:"bytes,4,opt,name=childHash,proto3" json:"childHash,omitempty"` 1901 StartIndex int32 `protobuf:"varint,5,opt,name=startIndex,proto3" json:"startIndex,omitempty"` 1902 ChildHashIndex uint32 `protobuf:"varint,6,opt,name=childHashIndex,proto3" json:"childHashIndex,omitempty"` 1903 TxCount int32 `protobuf:"varint,7,opt,name=txCount,proto3" json:"txCount,omitempty"` 1904 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1905 XXX_unrecognized []byte `json:"-"` 1906 XXX_sizecache int32 `json:"-"` 1907 } 1908 1909 func (m *HeightPara) Reset() { *m = HeightPara{} } 1910 func (m *HeightPara) String() string { return proto.CompactTextString(m) } 1911 func (*HeightPara) ProtoMessage() {} 1912 func (*HeightPara) Descriptor() ([]byte, []int) { 1913 return fileDescriptor_e9ac6287ce250c9a, []int{33} 1914 } 1915 1916 func (m *HeightPara) XXX_Unmarshal(b []byte) error { 1917 return xxx_messageInfo_HeightPara.Unmarshal(m, b) 1918 } 1919 func (m *HeightPara) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1920 return xxx_messageInfo_HeightPara.Marshal(b, m, deterministic) 1921 } 1922 func (m *HeightPara) XXX_Merge(src proto.Message) { 1923 xxx_messageInfo_HeightPara.Merge(m, src) 1924 } 1925 func (m *HeightPara) XXX_Size() int { 1926 return xxx_messageInfo_HeightPara.Size(m) 1927 } 1928 func (m *HeightPara) XXX_DiscardUnknown() { 1929 xxx_messageInfo_HeightPara.DiscardUnknown(m) 1930 } 1931 1932 var xxx_messageInfo_HeightPara proto.InternalMessageInfo 1933 1934 func (m *HeightPara) GetHeight() int64 { 1935 if m != nil { 1936 return m.Height 1937 } 1938 return 0 1939 } 1940 1941 func (m *HeightPara) GetTitle() string { 1942 if m != nil { 1943 return m.Title 1944 } 1945 return "" 1946 } 1947 1948 func (m *HeightPara) GetHash() []byte { 1949 if m != nil { 1950 return m.Hash 1951 } 1952 return nil 1953 } 1954 1955 func (m *HeightPara) GetChildHash() []byte { 1956 if m != nil { 1957 return m.ChildHash 1958 } 1959 return nil 1960 } 1961 1962 func (m *HeightPara) GetStartIndex() int32 { 1963 if m != nil { 1964 return m.StartIndex 1965 } 1966 return 0 1967 } 1968 1969 func (m *HeightPara) GetChildHashIndex() uint32 { 1970 if m != nil { 1971 return m.ChildHashIndex 1972 } 1973 return 0 1974 } 1975 1976 func (m *HeightPara) GetTxCount() int32 { 1977 if m != nil { 1978 return m.TxCount 1979 } 1980 return 0 1981 } 1982 1983 type HeightParas struct { 1984 Items []*HeightPara `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 1985 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1986 XXX_unrecognized []byte `json:"-"` 1987 XXX_sizecache int32 `json:"-"` 1988 } 1989 1990 func (m *HeightParas) Reset() { *m = HeightParas{} } 1991 func (m *HeightParas) String() string { return proto.CompactTextString(m) } 1992 func (*HeightParas) ProtoMessage() {} 1993 func (*HeightParas) Descriptor() ([]byte, []int) { 1994 return fileDescriptor_e9ac6287ce250c9a, []int{34} 1995 } 1996 1997 func (m *HeightParas) XXX_Unmarshal(b []byte) error { 1998 return xxx_messageInfo_HeightParas.Unmarshal(m, b) 1999 } 2000 func (m *HeightParas) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2001 return xxx_messageInfo_HeightParas.Marshal(b, m, deterministic) 2002 } 2003 func (m *HeightParas) XXX_Merge(src proto.Message) { 2004 xxx_messageInfo_HeightParas.Merge(m, src) 2005 } 2006 func (m *HeightParas) XXX_Size() int { 2007 return xxx_messageInfo_HeightParas.Size(m) 2008 } 2009 func (m *HeightParas) XXX_DiscardUnknown() { 2010 xxx_messageInfo_HeightParas.DiscardUnknown(m) 2011 } 2012 2013 var xxx_messageInfo_HeightParas proto.InternalMessageInfo 2014 2015 func (m *HeightParas) GetItems() []*HeightPara { 2016 if m != nil { 2017 return m.Items 2018 } 2019 return nil 2020 } 2021 2022 //记录平行链第一笔交易的index,以及平行链的roothash 2023 // title:子链名字,主链的默认是main 2024 // startIndex:子链第一笔交易的索引 2025 // childHash:子链的根hash 2026 // txCount:子链交易的数量 2027 type ChildChain struct { 2028 Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` 2029 StartIndex int32 `protobuf:"varint,2,opt,name=startIndex,proto3" json:"startIndex,omitempty"` 2030 ChildHash []byte `protobuf:"bytes,3,opt,name=childHash,proto3" json:"childHash,omitempty"` 2031 TxCount int32 `protobuf:"varint,4,opt,name=txCount,proto3" json:"txCount,omitempty"` 2032 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2033 XXX_unrecognized []byte `json:"-"` 2034 XXX_sizecache int32 `json:"-"` 2035 } 2036 2037 func (m *ChildChain) Reset() { *m = ChildChain{} } 2038 func (m *ChildChain) String() string { return proto.CompactTextString(m) } 2039 func (*ChildChain) ProtoMessage() {} 2040 func (*ChildChain) Descriptor() ([]byte, []int) { 2041 return fileDescriptor_e9ac6287ce250c9a, []int{35} 2042 } 2043 2044 func (m *ChildChain) XXX_Unmarshal(b []byte) error { 2045 return xxx_messageInfo_ChildChain.Unmarshal(m, b) 2046 } 2047 func (m *ChildChain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2048 return xxx_messageInfo_ChildChain.Marshal(b, m, deterministic) 2049 } 2050 func (m *ChildChain) XXX_Merge(src proto.Message) { 2051 xxx_messageInfo_ChildChain.Merge(m, src) 2052 } 2053 func (m *ChildChain) XXX_Size() int { 2054 return xxx_messageInfo_ChildChain.Size(m) 2055 } 2056 func (m *ChildChain) XXX_DiscardUnknown() { 2057 xxx_messageInfo_ChildChain.DiscardUnknown(m) 2058 } 2059 2060 var xxx_messageInfo_ChildChain proto.InternalMessageInfo 2061 2062 func (m *ChildChain) GetTitle() string { 2063 if m != nil { 2064 return m.Title 2065 } 2066 return "" 2067 } 2068 2069 func (m *ChildChain) GetStartIndex() int32 { 2070 if m != nil { 2071 return m.StartIndex 2072 } 2073 return 0 2074 } 2075 2076 func (m *ChildChain) GetChildHash() []byte { 2077 if m != nil { 2078 return m.ChildHash 2079 } 2080 return nil 2081 } 2082 2083 func (m *ChildChain) GetTxCount() int32 { 2084 if m != nil { 2085 return m.TxCount 2086 } 2087 return 0 2088 } 2089 2090 //通过指定title以及height翻页获取拥有此title交易的区块高度列表 2091 type ReqHeightByTitle struct { 2092 Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` 2093 Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` 2094 Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"` 2095 Direction int32 `protobuf:"varint,4,opt,name=direction,proto3" json:"direction,omitempty"` 2096 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2097 XXX_unrecognized []byte `json:"-"` 2098 XXX_sizecache int32 `json:"-"` 2099 } 2100 2101 func (m *ReqHeightByTitle) Reset() { *m = ReqHeightByTitle{} } 2102 func (m *ReqHeightByTitle) String() string { return proto.CompactTextString(m) } 2103 func (*ReqHeightByTitle) ProtoMessage() {} 2104 func (*ReqHeightByTitle) Descriptor() ([]byte, []int) { 2105 return fileDescriptor_e9ac6287ce250c9a, []int{36} 2106 } 2107 2108 func (m *ReqHeightByTitle) XXX_Unmarshal(b []byte) error { 2109 return xxx_messageInfo_ReqHeightByTitle.Unmarshal(m, b) 2110 } 2111 func (m *ReqHeightByTitle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2112 return xxx_messageInfo_ReqHeightByTitle.Marshal(b, m, deterministic) 2113 } 2114 func (m *ReqHeightByTitle) XXX_Merge(src proto.Message) { 2115 xxx_messageInfo_ReqHeightByTitle.Merge(m, src) 2116 } 2117 func (m *ReqHeightByTitle) XXX_Size() int { 2118 return xxx_messageInfo_ReqHeightByTitle.Size(m) 2119 } 2120 func (m *ReqHeightByTitle) XXX_DiscardUnknown() { 2121 xxx_messageInfo_ReqHeightByTitle.DiscardUnknown(m) 2122 } 2123 2124 var xxx_messageInfo_ReqHeightByTitle proto.InternalMessageInfo 2125 2126 func (m *ReqHeightByTitle) GetHeight() int64 { 2127 if m != nil { 2128 return m.Height 2129 } 2130 return 0 2131 } 2132 2133 func (m *ReqHeightByTitle) GetTitle() string { 2134 if m != nil { 2135 return m.Title 2136 } 2137 return "" 2138 } 2139 2140 func (m *ReqHeightByTitle) GetCount() int32 { 2141 if m != nil { 2142 return m.Count 2143 } 2144 return 0 2145 } 2146 2147 func (m *ReqHeightByTitle) GetDirection() int32 { 2148 if m != nil { 2149 return m.Direction 2150 } 2151 return 0 2152 } 2153 2154 type ReplyHeightByTitle struct { 2155 Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` 2156 Items []*BlockInfo `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` 2157 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2158 XXX_unrecognized []byte `json:"-"` 2159 XXX_sizecache int32 `json:"-"` 2160 } 2161 2162 func (m *ReplyHeightByTitle) Reset() { *m = ReplyHeightByTitle{} } 2163 func (m *ReplyHeightByTitle) String() string { return proto.CompactTextString(m) } 2164 func (*ReplyHeightByTitle) ProtoMessage() {} 2165 func (*ReplyHeightByTitle) Descriptor() ([]byte, []int) { 2166 return fileDescriptor_e9ac6287ce250c9a, []int{37} 2167 } 2168 2169 func (m *ReplyHeightByTitle) XXX_Unmarshal(b []byte) error { 2170 return xxx_messageInfo_ReplyHeightByTitle.Unmarshal(m, b) 2171 } 2172 func (m *ReplyHeightByTitle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2173 return xxx_messageInfo_ReplyHeightByTitle.Marshal(b, m, deterministic) 2174 } 2175 func (m *ReplyHeightByTitle) XXX_Merge(src proto.Message) { 2176 xxx_messageInfo_ReplyHeightByTitle.Merge(m, src) 2177 } 2178 func (m *ReplyHeightByTitle) XXX_Size() int { 2179 return xxx_messageInfo_ReplyHeightByTitle.Size(m) 2180 } 2181 func (m *ReplyHeightByTitle) XXX_DiscardUnknown() { 2182 xxx_messageInfo_ReplyHeightByTitle.DiscardUnknown(m) 2183 } 2184 2185 var xxx_messageInfo_ReplyHeightByTitle proto.InternalMessageInfo 2186 2187 func (m *ReplyHeightByTitle) GetTitle() string { 2188 if m != nil { 2189 return m.Title 2190 } 2191 return "" 2192 } 2193 2194 func (m *ReplyHeightByTitle) GetItems() []*BlockInfo { 2195 if m != nil { 2196 return m.Items 2197 } 2198 return nil 2199 } 2200 2201 // title平行链交易所在主链区块的信息 2202 type BlockInfo struct { 2203 Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"` 2204 Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"` 2205 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2206 XXX_unrecognized []byte `json:"-"` 2207 XXX_sizecache int32 `json:"-"` 2208 } 2209 2210 func (m *BlockInfo) Reset() { *m = BlockInfo{} } 2211 func (m *BlockInfo) String() string { return proto.CompactTextString(m) } 2212 func (*BlockInfo) ProtoMessage() {} 2213 func (*BlockInfo) Descriptor() ([]byte, []int) { 2214 return fileDescriptor_e9ac6287ce250c9a, []int{38} 2215 } 2216 2217 func (m *BlockInfo) XXX_Unmarshal(b []byte) error { 2218 return xxx_messageInfo_BlockInfo.Unmarshal(m, b) 2219 } 2220 func (m *BlockInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2221 return xxx_messageInfo_BlockInfo.Marshal(b, m, deterministic) 2222 } 2223 func (m *BlockInfo) XXX_Merge(src proto.Message) { 2224 xxx_messageInfo_BlockInfo.Merge(m, src) 2225 } 2226 func (m *BlockInfo) XXX_Size() int { 2227 return xxx_messageInfo_BlockInfo.Size(m) 2228 } 2229 func (m *BlockInfo) XXX_DiscardUnknown() { 2230 xxx_messageInfo_BlockInfo.DiscardUnknown(m) 2231 } 2232 2233 var xxx_messageInfo_BlockInfo proto.InternalMessageInfo 2234 2235 func (m *BlockInfo) GetHeight() int64 { 2236 if m != nil { 2237 return m.Height 2238 } 2239 return 0 2240 } 2241 2242 func (m *BlockInfo) GetHash() []byte { 2243 if m != nil { 2244 return m.Hash 2245 } 2246 return nil 2247 } 2248 2249 //通过高度列表和title获取平行链交易 2250 type ReqParaTxByHeight struct { 2251 Items []int64 `protobuf:"varint,1,rep,packed,name=items,proto3" json:"items,omitempty"` 2252 Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` 2253 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2254 XXX_unrecognized []byte `json:"-"` 2255 XXX_sizecache int32 `json:"-"` 2256 } 2257 2258 func (m *ReqParaTxByHeight) Reset() { *m = ReqParaTxByHeight{} } 2259 func (m *ReqParaTxByHeight) String() string { return proto.CompactTextString(m) } 2260 func (*ReqParaTxByHeight) ProtoMessage() {} 2261 func (*ReqParaTxByHeight) Descriptor() ([]byte, []int) { 2262 return fileDescriptor_e9ac6287ce250c9a, []int{39} 2263 } 2264 2265 func (m *ReqParaTxByHeight) XXX_Unmarshal(b []byte) error { 2266 return xxx_messageInfo_ReqParaTxByHeight.Unmarshal(m, b) 2267 } 2268 func (m *ReqParaTxByHeight) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2269 return xxx_messageInfo_ReqParaTxByHeight.Marshal(b, m, deterministic) 2270 } 2271 func (m *ReqParaTxByHeight) XXX_Merge(src proto.Message) { 2272 xxx_messageInfo_ReqParaTxByHeight.Merge(m, src) 2273 } 2274 func (m *ReqParaTxByHeight) XXX_Size() int { 2275 return xxx_messageInfo_ReqParaTxByHeight.Size(m) 2276 } 2277 func (m *ReqParaTxByHeight) XXX_DiscardUnknown() { 2278 xxx_messageInfo_ReqParaTxByHeight.DiscardUnknown(m) 2279 } 2280 2281 var xxx_messageInfo_ReqParaTxByHeight proto.InternalMessageInfo 2282 2283 func (m *ReqParaTxByHeight) GetItems() []int64 { 2284 if m != nil { 2285 return m.Items 2286 } 2287 return nil 2288 } 2289 2290 func (m *ReqParaTxByHeight) GetTitle() string { 2291 if m != nil { 2292 return m.Title 2293 } 2294 return "" 2295 } 2296 2297 //用于比较最优区块的消息结构 2298 type CmpBlock struct { 2299 Block *Block `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"` 2300 CmpHash []byte `protobuf:"bytes,2,opt,name=cmpHash,proto3" json:"cmpHash,omitempty"` 2301 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2302 XXX_unrecognized []byte `json:"-"` 2303 XXX_sizecache int32 `json:"-"` 2304 } 2305 2306 func (m *CmpBlock) Reset() { *m = CmpBlock{} } 2307 func (m *CmpBlock) String() string { return proto.CompactTextString(m) } 2308 func (*CmpBlock) ProtoMessage() {} 2309 func (*CmpBlock) Descriptor() ([]byte, []int) { 2310 return fileDescriptor_e9ac6287ce250c9a, []int{40} 2311 } 2312 2313 func (m *CmpBlock) XXX_Unmarshal(b []byte) error { 2314 return xxx_messageInfo_CmpBlock.Unmarshal(m, b) 2315 } 2316 func (m *CmpBlock) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2317 return xxx_messageInfo_CmpBlock.Marshal(b, m, deterministic) 2318 } 2319 func (m *CmpBlock) XXX_Merge(src proto.Message) { 2320 xxx_messageInfo_CmpBlock.Merge(m, src) 2321 } 2322 func (m *CmpBlock) XXX_Size() int { 2323 return xxx_messageInfo_CmpBlock.Size(m) 2324 } 2325 func (m *CmpBlock) XXX_DiscardUnknown() { 2326 xxx_messageInfo_CmpBlock.DiscardUnknown(m) 2327 } 2328 2329 var xxx_messageInfo_CmpBlock proto.InternalMessageInfo 2330 2331 func (m *CmpBlock) GetBlock() *Block { 2332 if m != nil { 2333 return m.Block 2334 } 2335 return nil 2336 } 2337 2338 func (m *CmpBlock) GetCmpHash() []byte { 2339 if m != nil { 2340 return m.CmpHash 2341 } 2342 return nil 2343 } 2344 2345 // BlockBodys 2346 type BlockBodys struct { 2347 Items []*BlockBody `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` 2348 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2349 XXX_unrecognized []byte `json:"-"` 2350 XXX_sizecache int32 `json:"-"` 2351 } 2352 2353 func (m *BlockBodys) Reset() { *m = BlockBodys{} } 2354 func (m *BlockBodys) String() string { return proto.CompactTextString(m) } 2355 func (*BlockBodys) ProtoMessage() {} 2356 func (*BlockBodys) Descriptor() ([]byte, []int) { 2357 return fileDescriptor_e9ac6287ce250c9a, []int{41} 2358 } 2359 2360 func (m *BlockBodys) XXX_Unmarshal(b []byte) error { 2361 return xxx_messageInfo_BlockBodys.Unmarshal(m, b) 2362 } 2363 func (m *BlockBodys) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2364 return xxx_messageInfo_BlockBodys.Marshal(b, m, deterministic) 2365 } 2366 func (m *BlockBodys) XXX_Merge(src proto.Message) { 2367 xxx_messageInfo_BlockBodys.Merge(m, src) 2368 } 2369 func (m *BlockBodys) XXX_Size() int { 2370 return xxx_messageInfo_BlockBodys.Size(m) 2371 } 2372 func (m *BlockBodys) XXX_DiscardUnknown() { 2373 xxx_messageInfo_BlockBodys.DiscardUnknown(m) 2374 } 2375 2376 var xxx_messageInfo_BlockBodys proto.InternalMessageInfo 2377 2378 func (m *BlockBodys) GetItems() []*BlockBody { 2379 if m != nil { 2380 return m.Items 2381 } 2382 return nil 2383 } 2384 2385 // ChunkRecords 2386 type ChunkRecords struct { 2387 Infos []*ChunkInfo `protobuf:"bytes,1,rep,name=infos,proto3" json:"infos,omitempty"` 2388 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2389 XXX_unrecognized []byte `json:"-"` 2390 XXX_sizecache int32 `json:"-"` 2391 } 2392 2393 func (m *ChunkRecords) Reset() { *m = ChunkRecords{} } 2394 func (m *ChunkRecords) String() string { return proto.CompactTextString(m) } 2395 func (*ChunkRecords) ProtoMessage() {} 2396 func (*ChunkRecords) Descriptor() ([]byte, []int) { 2397 return fileDescriptor_e9ac6287ce250c9a, []int{42} 2398 } 2399 2400 func (m *ChunkRecords) XXX_Unmarshal(b []byte) error { 2401 return xxx_messageInfo_ChunkRecords.Unmarshal(m, b) 2402 } 2403 func (m *ChunkRecords) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2404 return xxx_messageInfo_ChunkRecords.Marshal(b, m, deterministic) 2405 } 2406 func (m *ChunkRecords) XXX_Merge(src proto.Message) { 2407 xxx_messageInfo_ChunkRecords.Merge(m, src) 2408 } 2409 func (m *ChunkRecords) XXX_Size() int { 2410 return xxx_messageInfo_ChunkRecords.Size(m) 2411 } 2412 func (m *ChunkRecords) XXX_DiscardUnknown() { 2413 xxx_messageInfo_ChunkRecords.DiscardUnknown(m) 2414 } 2415 2416 var xxx_messageInfo_ChunkRecords proto.InternalMessageInfo 2417 2418 func (m *ChunkRecords) GetInfos() []*ChunkInfo { 2419 if m != nil { 2420 return m.Infos 2421 } 2422 return nil 2423 } 2424 2425 // ChunkInfoMsg 用于消息传递 2426 type ChunkInfoMsg struct { 2427 ChunkHash []byte `protobuf:"bytes,1,opt,name=chunkHash,proto3" json:"chunkHash,omitempty"` 2428 Start int64 `protobuf:"varint,2,opt,name=start,proto3" json:"start,omitempty"` 2429 End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end,omitempty"` 2430 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2431 XXX_unrecognized []byte `json:"-"` 2432 XXX_sizecache int32 `json:"-"` 2433 } 2434 2435 func (m *ChunkInfoMsg) Reset() { *m = ChunkInfoMsg{} } 2436 func (m *ChunkInfoMsg) String() string { return proto.CompactTextString(m) } 2437 func (*ChunkInfoMsg) ProtoMessage() {} 2438 func (*ChunkInfoMsg) Descriptor() ([]byte, []int) { 2439 return fileDescriptor_e9ac6287ce250c9a, []int{43} 2440 } 2441 2442 func (m *ChunkInfoMsg) XXX_Unmarshal(b []byte) error { 2443 return xxx_messageInfo_ChunkInfoMsg.Unmarshal(m, b) 2444 } 2445 func (m *ChunkInfoMsg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2446 return xxx_messageInfo_ChunkInfoMsg.Marshal(b, m, deterministic) 2447 } 2448 func (m *ChunkInfoMsg) XXX_Merge(src proto.Message) { 2449 xxx_messageInfo_ChunkInfoMsg.Merge(m, src) 2450 } 2451 func (m *ChunkInfoMsg) XXX_Size() int { 2452 return xxx_messageInfo_ChunkInfoMsg.Size(m) 2453 } 2454 func (m *ChunkInfoMsg) XXX_DiscardUnknown() { 2455 xxx_messageInfo_ChunkInfoMsg.DiscardUnknown(m) 2456 } 2457 2458 var xxx_messageInfo_ChunkInfoMsg proto.InternalMessageInfo 2459 2460 func (m *ChunkInfoMsg) GetChunkHash() []byte { 2461 if m != nil { 2462 return m.ChunkHash 2463 } 2464 return nil 2465 } 2466 2467 func (m *ChunkInfoMsg) GetStart() int64 { 2468 if m != nil { 2469 return m.Start 2470 } 2471 return 0 2472 } 2473 2474 func (m *ChunkInfoMsg) GetEnd() int64 { 2475 if m != nil { 2476 return m.End 2477 } 2478 return 0 2479 } 2480 2481 // ChunkInfo用于记录chunk的信息 2482 type ChunkInfo struct { 2483 ChunkNum int64 `protobuf:"varint,1,opt,name=chunkNum,proto3" json:"chunkNum,omitempty"` 2484 ChunkHash []byte `protobuf:"bytes,2,opt,name=chunkHash,proto3" json:"chunkHash,omitempty"` 2485 Start int64 `protobuf:"varint,3,opt,name=start,proto3" json:"start,omitempty"` 2486 End int64 `protobuf:"varint,4,opt,name=end,proto3" json:"end,omitempty"` 2487 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2488 XXX_unrecognized []byte `json:"-"` 2489 XXX_sizecache int32 `json:"-"` 2490 } 2491 2492 func (m *ChunkInfo) Reset() { *m = ChunkInfo{} } 2493 func (m *ChunkInfo) String() string { return proto.CompactTextString(m) } 2494 func (*ChunkInfo) ProtoMessage() {} 2495 func (*ChunkInfo) Descriptor() ([]byte, []int) { 2496 return fileDescriptor_e9ac6287ce250c9a, []int{44} 2497 } 2498 2499 func (m *ChunkInfo) XXX_Unmarshal(b []byte) error { 2500 return xxx_messageInfo_ChunkInfo.Unmarshal(m, b) 2501 } 2502 func (m *ChunkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2503 return xxx_messageInfo_ChunkInfo.Marshal(b, m, deterministic) 2504 } 2505 func (m *ChunkInfo) XXX_Merge(src proto.Message) { 2506 xxx_messageInfo_ChunkInfo.Merge(m, src) 2507 } 2508 func (m *ChunkInfo) XXX_Size() int { 2509 return xxx_messageInfo_ChunkInfo.Size(m) 2510 } 2511 func (m *ChunkInfo) XXX_DiscardUnknown() { 2512 xxx_messageInfo_ChunkInfo.DiscardUnknown(m) 2513 } 2514 2515 var xxx_messageInfo_ChunkInfo proto.InternalMessageInfo 2516 2517 func (m *ChunkInfo) GetChunkNum() int64 { 2518 if m != nil { 2519 return m.ChunkNum 2520 } 2521 return 0 2522 } 2523 2524 func (m *ChunkInfo) GetChunkHash() []byte { 2525 if m != nil { 2526 return m.ChunkHash 2527 } 2528 return nil 2529 } 2530 2531 func (m *ChunkInfo) GetStart() int64 { 2532 if m != nil { 2533 return m.Start 2534 } 2535 return 0 2536 } 2537 2538 func (m *ChunkInfo) GetEnd() int64 { 2539 if m != nil { 2540 return m.End 2541 } 2542 return 0 2543 } 2544 2545 //获取ChunkRecord信息 2546 // start : 获取Chunk的开始高度 2547 // end :获取Chunk的结束高度 2548 // Isdetail : 是否需要获取所有Chunk Record 信息,false时候获取到chunkNum--->chunkhash的KV对,true获取全部 2549 // pid : peer列表 2550 type ReqChunkRecords struct { 2551 Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` 2552 End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` 2553 IsDetail bool `protobuf:"varint,3,opt,name=isDetail,proto3" json:"isDetail,omitempty"` 2554 Pid []string `protobuf:"bytes,4,rep,name=pid,proto3" json:"pid,omitempty"` 2555 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2556 XXX_unrecognized []byte `json:"-"` 2557 XXX_sizecache int32 `json:"-"` 2558 } 2559 2560 func (m *ReqChunkRecords) Reset() { *m = ReqChunkRecords{} } 2561 func (m *ReqChunkRecords) String() string { return proto.CompactTextString(m) } 2562 func (*ReqChunkRecords) ProtoMessage() {} 2563 func (*ReqChunkRecords) Descriptor() ([]byte, []int) { 2564 return fileDescriptor_e9ac6287ce250c9a, []int{45} 2565 } 2566 2567 func (m *ReqChunkRecords) XXX_Unmarshal(b []byte) error { 2568 return xxx_messageInfo_ReqChunkRecords.Unmarshal(m, b) 2569 } 2570 func (m *ReqChunkRecords) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2571 return xxx_messageInfo_ReqChunkRecords.Marshal(b, m, deterministic) 2572 } 2573 func (m *ReqChunkRecords) XXX_Merge(src proto.Message) { 2574 xxx_messageInfo_ReqChunkRecords.Merge(m, src) 2575 } 2576 func (m *ReqChunkRecords) XXX_Size() int { 2577 return xxx_messageInfo_ReqChunkRecords.Size(m) 2578 } 2579 func (m *ReqChunkRecords) XXX_DiscardUnknown() { 2580 xxx_messageInfo_ReqChunkRecords.DiscardUnknown(m) 2581 } 2582 2583 var xxx_messageInfo_ReqChunkRecords proto.InternalMessageInfo 2584 2585 func (m *ReqChunkRecords) GetStart() int64 { 2586 if m != nil { 2587 return m.Start 2588 } 2589 return 0 2590 } 2591 2592 func (m *ReqChunkRecords) GetEnd() int64 { 2593 if m != nil { 2594 return m.End 2595 } 2596 return 0 2597 } 2598 2599 func (m *ReqChunkRecords) GetIsDetail() bool { 2600 if m != nil { 2601 return m.IsDetail 2602 } 2603 return false 2604 } 2605 2606 func (m *ReqChunkRecords) GetPid() []string { 2607 if m != nil { 2608 return m.Pid 2609 } 2610 return nil 2611 } 2612 2613 type PushSubscribeReq struct { 2614 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2615 URL string `protobuf:"bytes,2,opt,name=URL,proto3" json:"URL,omitempty"` 2616 Encode string `protobuf:"bytes,3,opt,name=encode,proto3" json:"encode,omitempty"` 2617 LastSequence int64 `protobuf:"varint,4,opt,name=lastSequence,proto3" json:"lastSequence,omitempty"` 2618 LastHeight int64 `protobuf:"varint,5,opt,name=lastHeight,proto3" json:"lastHeight,omitempty"` 2619 LastBlockHash string `protobuf:"bytes,6,opt,name=lastBlockHash,proto3" json:"lastBlockHash,omitempty"` 2620 // 0:代表区块;1:代表区块头信息;2:代表交易回执 2621 Type int32 `protobuf:"varint,7,opt,name=type,proto3" json:"type,omitempty"` 2622 //允许订阅多个类型的交易回执 2623 Contract map[string]bool `protobuf:"bytes,8,rep,name=contract,proto3" json:"contract,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` 2624 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2625 XXX_unrecognized []byte `json:"-"` 2626 XXX_sizecache int32 `json:"-"` 2627 } 2628 2629 func (m *PushSubscribeReq) Reset() { *m = PushSubscribeReq{} } 2630 func (m *PushSubscribeReq) String() string { return proto.CompactTextString(m) } 2631 func (*PushSubscribeReq) ProtoMessage() {} 2632 func (*PushSubscribeReq) Descriptor() ([]byte, []int) { 2633 return fileDescriptor_e9ac6287ce250c9a, []int{46} 2634 } 2635 2636 func (m *PushSubscribeReq) XXX_Unmarshal(b []byte) error { 2637 return xxx_messageInfo_PushSubscribeReq.Unmarshal(m, b) 2638 } 2639 func (m *PushSubscribeReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2640 return xxx_messageInfo_PushSubscribeReq.Marshal(b, m, deterministic) 2641 } 2642 func (m *PushSubscribeReq) XXX_Merge(src proto.Message) { 2643 xxx_messageInfo_PushSubscribeReq.Merge(m, src) 2644 } 2645 func (m *PushSubscribeReq) XXX_Size() int { 2646 return xxx_messageInfo_PushSubscribeReq.Size(m) 2647 } 2648 func (m *PushSubscribeReq) XXX_DiscardUnknown() { 2649 xxx_messageInfo_PushSubscribeReq.DiscardUnknown(m) 2650 } 2651 2652 var xxx_messageInfo_PushSubscribeReq proto.InternalMessageInfo 2653 2654 func (m *PushSubscribeReq) GetName() string { 2655 if m != nil { 2656 return m.Name 2657 } 2658 return "" 2659 } 2660 2661 func (m *PushSubscribeReq) GetURL() string { 2662 if m != nil { 2663 return m.URL 2664 } 2665 return "" 2666 } 2667 2668 func (m *PushSubscribeReq) GetEncode() string { 2669 if m != nil { 2670 return m.Encode 2671 } 2672 return "" 2673 } 2674 2675 func (m *PushSubscribeReq) GetLastSequence() int64 { 2676 if m != nil { 2677 return m.LastSequence 2678 } 2679 return 0 2680 } 2681 2682 func (m *PushSubscribeReq) GetLastHeight() int64 { 2683 if m != nil { 2684 return m.LastHeight 2685 } 2686 return 0 2687 } 2688 2689 func (m *PushSubscribeReq) GetLastBlockHash() string { 2690 if m != nil { 2691 return m.LastBlockHash 2692 } 2693 return "" 2694 } 2695 2696 func (m *PushSubscribeReq) GetType() int32 { 2697 if m != nil { 2698 return m.Type 2699 } 2700 return 0 2701 } 2702 2703 func (m *PushSubscribeReq) GetContract() map[string]bool { 2704 if m != nil { 2705 return m.Contract 2706 } 2707 return nil 2708 } 2709 2710 type PushWithStatus struct { 2711 Push *PushSubscribeReq `protobuf:"bytes,1,opt,name=push,proto3" json:"push,omitempty"` 2712 Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"` 2713 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2714 XXX_unrecognized []byte `json:"-"` 2715 XXX_sizecache int32 `json:"-"` 2716 } 2717 2718 func (m *PushWithStatus) Reset() { *m = PushWithStatus{} } 2719 func (m *PushWithStatus) String() string { return proto.CompactTextString(m) } 2720 func (*PushWithStatus) ProtoMessage() {} 2721 func (*PushWithStatus) Descriptor() ([]byte, []int) { 2722 return fileDescriptor_e9ac6287ce250c9a, []int{47} 2723 } 2724 2725 func (m *PushWithStatus) XXX_Unmarshal(b []byte) error { 2726 return xxx_messageInfo_PushWithStatus.Unmarshal(m, b) 2727 } 2728 func (m *PushWithStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2729 return xxx_messageInfo_PushWithStatus.Marshal(b, m, deterministic) 2730 } 2731 func (m *PushWithStatus) XXX_Merge(src proto.Message) { 2732 xxx_messageInfo_PushWithStatus.Merge(m, src) 2733 } 2734 func (m *PushWithStatus) XXX_Size() int { 2735 return xxx_messageInfo_PushWithStatus.Size(m) 2736 } 2737 func (m *PushWithStatus) XXX_DiscardUnknown() { 2738 xxx_messageInfo_PushWithStatus.DiscardUnknown(m) 2739 } 2740 2741 var xxx_messageInfo_PushWithStatus proto.InternalMessageInfo 2742 2743 func (m *PushWithStatus) GetPush() *PushSubscribeReq { 2744 if m != nil { 2745 return m.Push 2746 } 2747 return nil 2748 } 2749 2750 func (m *PushWithStatus) GetStatus() int32 { 2751 if m != nil { 2752 return m.Status 2753 } 2754 return 0 2755 } 2756 2757 type PushSubscribes struct { 2758 Pushes []*PushSubscribeReq `protobuf:"bytes,1,rep,name=pushes,proto3" json:"pushes,omitempty"` 2759 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2760 XXX_unrecognized []byte `json:"-"` 2761 XXX_sizecache int32 `json:"-"` 2762 } 2763 2764 func (m *PushSubscribes) Reset() { *m = PushSubscribes{} } 2765 func (m *PushSubscribes) String() string { return proto.CompactTextString(m) } 2766 func (*PushSubscribes) ProtoMessage() {} 2767 func (*PushSubscribes) Descriptor() ([]byte, []int) { 2768 return fileDescriptor_e9ac6287ce250c9a, []int{48} 2769 } 2770 2771 func (m *PushSubscribes) XXX_Unmarshal(b []byte) error { 2772 return xxx_messageInfo_PushSubscribes.Unmarshal(m, b) 2773 } 2774 func (m *PushSubscribes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2775 return xxx_messageInfo_PushSubscribes.Marshal(b, m, deterministic) 2776 } 2777 func (m *PushSubscribes) XXX_Merge(src proto.Message) { 2778 xxx_messageInfo_PushSubscribes.Merge(m, src) 2779 } 2780 func (m *PushSubscribes) XXX_Size() int { 2781 return xxx_messageInfo_PushSubscribes.Size(m) 2782 } 2783 func (m *PushSubscribes) XXX_DiscardUnknown() { 2784 xxx_messageInfo_PushSubscribes.DiscardUnknown(m) 2785 } 2786 2787 var xxx_messageInfo_PushSubscribes proto.InternalMessageInfo 2788 2789 func (m *PushSubscribes) GetPushes() []*PushSubscribeReq { 2790 if m != nil { 2791 return m.Pushes 2792 } 2793 return nil 2794 } 2795 2796 type ReplySubscribePush struct { 2797 IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` 2798 Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` 2799 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2800 XXX_unrecognized []byte `json:"-"` 2801 XXX_sizecache int32 `json:"-"` 2802 } 2803 2804 func (m *ReplySubscribePush) Reset() { *m = ReplySubscribePush{} } 2805 func (m *ReplySubscribePush) String() string { return proto.CompactTextString(m) } 2806 func (*ReplySubscribePush) ProtoMessage() {} 2807 func (*ReplySubscribePush) Descriptor() ([]byte, []int) { 2808 return fileDescriptor_e9ac6287ce250c9a, []int{49} 2809 } 2810 2811 func (m *ReplySubscribePush) XXX_Unmarshal(b []byte) error { 2812 return xxx_messageInfo_ReplySubscribePush.Unmarshal(m, b) 2813 } 2814 func (m *ReplySubscribePush) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2815 return xxx_messageInfo_ReplySubscribePush.Marshal(b, m, deterministic) 2816 } 2817 func (m *ReplySubscribePush) XXX_Merge(src proto.Message) { 2818 xxx_messageInfo_ReplySubscribePush.Merge(m, src) 2819 } 2820 func (m *ReplySubscribePush) XXX_Size() int { 2821 return xxx_messageInfo_ReplySubscribePush.Size(m) 2822 } 2823 func (m *ReplySubscribePush) XXX_DiscardUnknown() { 2824 xxx_messageInfo_ReplySubscribePush.DiscardUnknown(m) 2825 } 2826 2827 var xxx_messageInfo_ReplySubscribePush proto.InternalMessageInfo 2828 2829 func (m *ReplySubscribePush) GetIsOk() bool { 2830 if m != nil { 2831 return m.IsOk 2832 } 2833 return false 2834 } 2835 2836 func (m *ReplySubscribePush) GetMsg() string { 2837 if m != nil { 2838 return m.Msg 2839 } 2840 return "" 2841 } 2842 2843 func init() { 2844 proto.RegisterType((*Header)(nil), "types.Header") 2845 proto.RegisterType((*Block)(nil), "types.Block") 2846 proto.RegisterType((*Blocks)(nil), "types.Blocks") 2847 proto.RegisterType((*BlockSeq)(nil), "types.BlockSeq") 2848 proto.RegisterType((*BlockSeqs)(nil), "types.BlockSeqs") 2849 proto.RegisterType((*BlockPid)(nil), "types.BlockPid") 2850 proto.RegisterType((*BlockDetails)(nil), "types.BlockDetails") 2851 proto.RegisterType((*Headers)(nil), "types.Headers") 2852 proto.RegisterType((*HeadersPid)(nil), "types.HeadersPid") 2853 proto.RegisterType((*BlockOverview)(nil), "types.BlockOverview") 2854 proto.RegisterType((*BlockDetail)(nil), "types.BlockDetail") 2855 proto.RegisterType((*Receipts)(nil), "types.Receipts") 2856 proto.RegisterType((*ReceiptCheckTxList)(nil), "types.ReceiptCheckTxList") 2857 proto.RegisterType((*ChainStatus)(nil), "types.ChainStatus") 2858 proto.RegisterType((*ReqBlocks)(nil), "types.ReqBlocks") 2859 proto.RegisterType((*MempoolSize)(nil), "types.MempoolSize") 2860 proto.RegisterType((*ReplyBlockHeight)(nil), "types.ReplyBlockHeight") 2861 proto.RegisterType((*BlockBody)(nil), "types.BlockBody") 2862 proto.RegisterType((*BlockReceipt)(nil), "types.BlockReceipt") 2863 proto.RegisterType((*IsCaughtUp)(nil), "types.IsCaughtUp") 2864 proto.RegisterType((*IsNtpClockSync)(nil), "types.IsNtpClockSync") 2865 proto.RegisterType((*ChainExecutor)(nil), "types.ChainExecutor") 2866 proto.RegisterType((*BlockSequence)(nil), "types.BlockSequence") 2867 proto.RegisterType((*BlockSequences)(nil), "types.BlockSequences") 2868 proto.RegisterType((*ParaChainBlockDetail)(nil), "types.ParaChainBlockDetail") 2869 proto.RegisterType((*ParaTxDetails)(nil), "types.ParaTxDetails") 2870 proto.RegisterType((*ParaTxDetail)(nil), "types.ParaTxDetail") 2871 proto.RegisterType((*TxDetail)(nil), "types.TxDetail") 2872 proto.RegisterType((*ReqParaTxByTitle)(nil), "types.ReqParaTxByTitle") 2873 proto.RegisterType((*FileHeader)(nil), "types.FileHeader") 2874 proto.RegisterType((*EndBlock)(nil), "types.EndBlock") 2875 proto.RegisterType((*HeaderSeq)(nil), "types.HeaderSeq") 2876 proto.RegisterType((*HeaderSeqs)(nil), "types.HeaderSeqs") 2877 proto.RegisterType((*HeightPara)(nil), "types.HeightPara") 2878 proto.RegisterType((*HeightParas)(nil), "types.HeightParas") 2879 proto.RegisterType((*ChildChain)(nil), "types.ChildChain") 2880 proto.RegisterType((*ReqHeightByTitle)(nil), "types.ReqHeightByTitle") 2881 proto.RegisterType((*ReplyHeightByTitle)(nil), "types.ReplyHeightByTitle") 2882 proto.RegisterType((*BlockInfo)(nil), "types.BlockInfo") 2883 proto.RegisterType((*ReqParaTxByHeight)(nil), "types.ReqParaTxByHeight") 2884 proto.RegisterType((*CmpBlock)(nil), "types.CmpBlock") 2885 proto.RegisterType((*BlockBodys)(nil), "types.BlockBodys") 2886 proto.RegisterType((*ChunkRecords)(nil), "types.ChunkRecords") 2887 proto.RegisterType((*ChunkInfoMsg)(nil), "types.ChunkInfoMsg") 2888 proto.RegisterType((*ChunkInfo)(nil), "types.ChunkInfo") 2889 proto.RegisterType((*ReqChunkRecords)(nil), "types.ReqChunkRecords") 2890 proto.RegisterType((*PushSubscribeReq)(nil), "types.PushSubscribeReq") 2891 proto.RegisterMapType((map[string]bool)(nil), "types.PushSubscribeReq.ContractEntry") 2892 proto.RegisterType((*PushWithStatus)(nil), "types.PushWithStatus") 2893 proto.RegisterType((*PushSubscribes)(nil), "types.PushSubscribes") 2894 proto.RegisterType((*ReplySubscribePush)(nil), "types.ReplySubscribePush") 2895 } 2896 2897 func init() { 2898 proto.RegisterFile("blockchain.proto", fileDescriptor_e9ac6287ce250c9a) 2899 } 2900 2901 var fileDescriptor_e9ac6287ce250c9a = []byte{ 2902 // 1800 bytes of a gzipped FileDescriptorProto 2903 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0x5f, 0x8f, 0x1b, 0x49, 2904 0x11, 0xd7, 0xcc, 0xd8, 0x5e, 0xbb, 0xbc, 0xde, 0xdb, 0x0c, 0x2b, 0xb0, 0x56, 0x70, 0xb7, 0xd7, 2905 0xe4, 0x82, 0x09, 0xc1, 0x41, 0xbb, 0xa7, 0x5c, 0x14, 0x90, 0xe0, 0xe2, 0x04, 0xed, 0x2a, 0x77, 2906 0xb9, 0x30, 0xbb, 0x09, 0x12, 0x6f, 0xb3, 0xe3, 0x5e, 0x7b, 0x58, 0xcf, 0x1f, 0x4f, 0xf7, 0x2c, 2907 0xf6, 0x3d, 0xf1, 0x8c, 0xc4, 0x17, 0x41, 0x7c, 0x0c, 0x5e, 0x78, 0xb9, 0xaf, 0xc0, 0x57, 0x41, 2908 0x55, 0xdd, 0x3d, 0xd3, 0xe3, 0x78, 0x43, 0x22, 0xc4, 0x03, 0x6f, 0x5d, 0xd5, 0x55, 0x5d, 0xbf, 2909 0xaa, 0xae, 0xaa, 0xae, 0x19, 0xd8, 0xbf, 0x5c, 0x64, 0xd1, 0x75, 0x34, 0x0f, 0xe3, 0x74, 0x9c, 2910 0x17, 0x99, 0xcc, 0xfc, 0xb6, 0x5c, 0xe7, 0x5c, 0x1c, 0xde, 0x91, 0x45, 0x98, 0x8a, 0x30, 0x92, 2911 0x71, 0xa6, 0x77, 0x0e, 0x77, 0xa3, 0x2c, 0x49, 0x0c, 0xc5, 0xfe, 0xee, 0x42, 0xe7, 0x94, 0x87, 2912 0x53, 0x5e, 0xf8, 0x43, 0xd8, 0xb9, 0xe1, 0x85, 0x88, 0xb3, 0x74, 0xe8, 0x1c, 0x39, 0x23, 0x2f, 2913 0x30, 0xa4, 0xff, 0x31, 0x40, 0x1e, 0x16, 0x3c, 0x95, 0xa7, 0xa1, 0x98, 0x0f, 0xdd, 0x23, 0x67, 2914 0xb4, 0x1b, 0x58, 0x1c, 0xff, 0xfb, 0xd0, 0x91, 0x2b, 0xda, 0xf3, 0x68, 0x4f, 0x53, 0xfe, 0x0f, 2915 0xa1, 0x27, 0x64, 0x28, 0x39, 0x6d, 0xb5, 0x68, 0xab, 0x66, 0xa0, 0xd6, 0x9c, 0xc7, 0xb3, 0xb9, 2916 0x1c, 0xb6, 0xc9, 0x9c, 0xa6, 0x50, 0x8b, 0xdc, 0xb9, 0x88, 0x13, 0x3e, 0xec, 0xd0, 0x56, 0xcd, 2917 0x40, 0x94, 0x72, 0x35, 0xc9, 0xca, 0x54, 0x0e, 0x7b, 0x0a, 0xa5, 0x26, 0x7d, 0x1f, 0x5a, 0x73, 2918 0x34, 0x04, 0x64, 0x88, 0xd6, 0x88, 0x7c, 0x1a, 0x5f, 0x5d, 0xc5, 0x51, 0xb9, 0x90, 0xeb, 0x61, 2919 0xff, 0xc8, 0x19, 0x0d, 0x02, 0x8b, 0xe3, 0x8f, 0xa1, 0x27, 0xe2, 0x59, 0x1a, 0xca, 0xb2, 0xe0, 2920 0xc3, 0xee, 0x91, 0x33, 0xea, 0x1f, 0xef, 0x8f, 0x29, 0x74, 0xe3, 0x73, 0xc3, 0x0f, 0x6a, 0x11, 2921 0xf6, 0x2f, 0x17, 0xda, 0x4f, 0x11, 0xcb, 0xff, 0x49, 0xb4, 0xfe, 0x93, 0xff, 0x87, 0xd0, 0x4d, 2922 0xc2, 0x38, 0x25, 0x93, 0xbb, 0x64, 0xb2, 0xa2, 0x51, 0x97, 0xd6, 0xca, 0xea, 0x80, 0x8e, 0xb6, 2923 0x38, 0x1f, 0x1a, 0x3b, 0xff, 0x2e, 0x78, 0x72, 0x25, 0x86, 0x3b, 0x47, 0xde, 0xa8, 0x7f, 0xec, 2924 0x6b, 0xc9, 0x8b, 0x3a, 0x3f, 0x03, 0xdc, 0x66, 0x0f, 0xa0, 0x43, 0x01, 0x16, 0x3e, 0x83, 0x76, 2925 0x2c, 0x79, 0x22, 0x86, 0x0e, 0x69, 0xec, 0x6a, 0x0d, 0xda, 0x0d, 0xd4, 0x16, 0xcb, 0xa1, 0x4b, 2926 0xf4, 0x39, 0x5f, 0xfa, 0xfb, 0xe0, 0xa5, 0x65, 0xa2, 0x6f, 0x03, 0x97, 0xfe, 0x3d, 0xf0, 0x04, 2927 0x5f, 0xd2, 0x15, 0xf4, 0x8f, 0x0f, 0x6c, 0xfd, 0x73, 0xbe, 0x2c, 0x79, 0x1a, 0xf1, 0x00, 0x05, 2928 0xfc, 0xfb, 0xd0, 0x99, 0x72, 0x19, 0xc6, 0x0b, 0xba, 0x91, 0x1a, 0x1c, 0x89, 0x3e, 0xa3, 0x9d, 2929 0x40, 0x4b, 0xb0, 0x5f, 0x40, 0xcf, 0x9c, 0x20, 0xfc, 0x1f, 0x43, 0x4b, 0xf0, 0xa5, 0x41, 0xf8, 2930 0xd1, 0x86, 0x85, 0x80, 0x36, 0xd9, 0x6f, 0x34, 0xc6, 0x57, 0xf1, 0x14, 0x31, 0xe6, 0xf1, 0x94, 2931 0x30, 0xf6, 0x02, 0x5c, 0xa2, 0x97, 0x74, 0x5d, 0x1a, 0xe5, 0x86, 0x97, 0xb4, 0xc5, 0x1e, 0xc3, 2932 0xae, 0x05, 0x45, 0xf8, 0xa3, 0x66, 0x64, 0xb6, 0xc1, 0xd5, 0xf1, 0x19, 0xc3, 0x8e, 0xaa, 0x6e, 2933 0xc4, 0xda, 0x50, 0x1a, 0x68, 0x25, 0xb5, 0x6d, 0xe4, 0x4f, 0x01, 0xb4, 0xfc, 0x76, 0xb4, 0x23, 2934 0xd8, 0x99, 0xab, 0x7d, 0x8d, 0x77, 0xaf, 0x71, 0x8c, 0x08, 0xcc, 0x36, 0x9b, 0xc3, 0x80, 0xf0, 2935 0x7c, 0x73, 0xc3, 0x8b, 0x9b, 0x98, 0xff, 0xc9, 0xff, 0x14, 0x5a, 0xb8, 0x47, 0xa7, 0xbd, 0x65, 2936 0x9e, 0xb6, 0xec, 0xda, 0x76, 0x9b, 0xb5, 0x7d, 0x08, 0x5d, 0x55, 0x25, 0x5c, 0x0c, 0xbd, 0x23, 2937 0x0f, 0xf3, 0xd4, 0xd0, 0xec, 0x6f, 0x0e, 0xf4, 0x2d, 0xd7, 0xeb, 0x88, 0x3a, 0xb7, 0x46, 0xd4, 2938 0x1f, 0x43, 0xb7, 0xe0, 0x11, 0x8f, 0x73, 0x89, 0x8e, 0xd8, 0x41, 0x0c, 0x14, 0xfb, 0x59, 0x28, 2939 0xc3, 0xa0, 0x92, 0xf1, 0x3f, 0x01, 0xf7, 0xc5, 0x1b, 0xb2, 0x5c, 0x5f, 0xf3, 0x0b, 0xbe, 0x7e, 2940 0x13, 0x2e, 0x4a, 0x1e, 0xb8, 0x2f, 0xde, 0xf8, 0xf7, 0x60, 0x2f, 0x2f, 0xf8, 0xcd, 0xb9, 0x0c, 2941 0x65, 0x29, 0xac, 0x0a, 0xde, 0xe0, 0xb2, 0x47, 0xd0, 0x0d, 0xcc, 0xa1, 0xf7, 0x2d, 0x10, 0xea, 2942 0x52, 0xf6, 0x9a, 0x20, 0x6a, 0x00, 0x6c, 0x04, 0xbe, 0x66, 0x4e, 0xe6, 0x3c, 0xba, 0xbe, 0x58, 2943 0x7d, 0x15, 0x0b, 0x6a, 0x79, 0xbc, 0x28, 0x94, 0x76, 0x2f, 0xa0, 0x35, 0x5b, 0x43, 0x7f, 0x82, 2944 0x0f, 0x81, 0x32, 0xea, 0xdf, 0x85, 0x41, 0x54, 0x16, 0xd4, 0x7c, 0x54, 0x21, 0xab, 0xfa, 0x68, 2945 0x32, 0xfd, 0x23, 0xe8, 0x27, 0x3c, 0xc9, 0xb3, 0x6c, 0x71, 0x1e, 0x7f, 0xcb, 0x75, 0xf4, 0x6d, 2946 0x96, 0xcf, 0x60, 0x37, 0x11, 0xb3, 0xdf, 0x95, 0xbc, 0xe4, 0x24, 0xe2, 0x91, 0x48, 0x83, 0xc7, 2947 0x42, 0xe8, 0x05, 0x7c, 0xa9, 0xcb, 0xf7, 0x00, 0xda, 0x42, 0x86, 0x85, 0x31, 0xa8, 0x08, 0x4c, 2948 0x29, 0x9e, 0x4e, 0xb5, 0x01, 0x5c, 0xe2, 0xd5, 0xc6, 0xe2, 0x59, 0x5d, 0x7e, 0xdd, 0xa0, 0xa2, 2949 0x4d, 0x02, 0xb6, 0xc8, 0x3d, 0x5c, 0xb2, 0x4f, 0xa1, 0xff, 0xb5, 0x85, 0xca, 0x87, 0x96, 0x40, 2950 0x34, 0xca, 0x06, 0xad, 0xd9, 0x7d, 0xd8, 0x0f, 0x78, 0xbe, 0x58, 0x13, 0x0e, 0xed, 0x5f, 0xdd, 2951 0x3d, 0x1d, 0xbb, 0x7b, 0xb2, 0x7f, 0x3a, 0xba, 0x9c, 0x9f, 0x66, 0xd3, 0xb5, 0xe9, 0x50, 0xce, 2952 0x3b, 0x3b, 0xd4, 0x07, 0xe7, 0x8e, 0xdd, 0x63, 0xbd, 0x77, 0xf6, 0xd8, 0xd6, 0x5b, 0x3d, 0xd6, 2953 0xbc, 0x69, 0x6d, 0xeb, 0x4d, 0xab, 0x7d, 0xe9, 0x34, 0x7c, 0xf9, 0xa3, 0xee, 0x12, 0x1a, 0x45, 2954 0x03, 0xa7, 0xf3, 0x1e, 0x38, 0x8d, 0x2d, 0x77, 0xab, 0x2d, 0xaf, 0x61, 0xeb, 0x01, 0xc0, 0x99, 2955 0x98, 0x84, 0xe5, 0x6c, 0x2e, 0x5f, 0xe7, 0xe8, 0xc5, 0x99, 0x88, 0x88, 0x2a, 0x73, 0x8a, 0x70, 2956 0x37, 0xb0, 0x38, 0xec, 0x31, 0xec, 0x9d, 0x89, 0x97, 0x32, 0x9f, 0x50, 0x63, 0x5c, 0xa7, 0x11, 2957 0x96, 0x4b, 0x2c, 0x52, 0x99, 0x47, 0x94, 0x2b, 0xeb, 0x34, 0xd2, 0x5a, 0x1b, 0x5c, 0xf6, 0x57, 2958 0x07, 0x06, 0x94, 0xcd, 0xcf, 0x57, 0x3c, 0x2a, 0x65, 0x56, 0x20, 0xa2, 0x69, 0x11, 0xdf, 0xf0, 2959 0x42, 0xb7, 0x25, 0x4d, 0x61, 0x94, 0xaf, 0xca, 0x34, 0x7a, 0x19, 0x26, 0x2a, 0x7d, 0x7b, 0x41, 2960 0x45, 0x37, 0x5f, 0x56, 0x6f, 0xf3, 0x65, 0x3d, 0x80, 0x76, 0x1e, 0x16, 0x61, 0xa2, 0x2b, 0x56, 2961 0x11, 0xc8, 0xe5, 0x2b, 0x59, 0x84, 0x3a, 0xf4, 0x8a, 0x60, 0x5f, 0xe8, 0xae, 0x66, 0xde, 0x0f, 2962 0x0c, 0x1a, 0x9d, 0xea, 0xa8, 0xa0, 0xd1, 0x81, 0x3e, 0xb4, 0x2e, 0xd6, 0xb9, 0xa9, 0x22, 0x5a, 2963 0xb3, 0x5f, 0xc1, 0x5e, 0x43, 0x11, 0xab, 0xbf, 0xd1, 0x8f, 0xb7, 0x3f, 0x4f, 0xba, 0x2d, 0xff, 2964 0xd9, 0x81, 0x83, 0x57, 0x61, 0x11, 0x52, 0x28, 0xec, 0x5e, 0xf7, 0x39, 0xf4, 0xa9, 0xa1, 0xe9, 2965 0xe7, 0xcb, 0xb9, 0xf5, 0xf9, 0xb2, 0xc5, 0x30, 0x56, 0x42, 0x5b, 0xd0, 0x20, 0x2b, 0x1a, 0xe3, 2966 0x1b, 0x0b, 0xbc, 0x23, 0x5d, 0x8c, 0x9a, 0x62, 0x4f, 0x60, 0x80, 0x08, 0x2e, 0x56, 0xe6, 0x11, 2967 0xfa, 0x69, 0x13, 0xff, 0xf7, 0xb4, 0x51, 0x5b, 0xc8, 0xc0, 0xff, 0x87, 0x03, 0xbb, 0x36, 0x1f, 2968 0x23, 0x84, 0xd2, 0xa6, 0x6c, 0x71, 0xed, 0x7f, 0x86, 0xa9, 0x86, 0x8f, 0x81, 0x7e, 0x59, 0x36, 2969 0x5e, 0x08, 0xbd, 0xe9, 0xff, 0x1c, 0x7a, 0xd2, 0x60, 0xd8, 0x68, 0xc8, 0x95, 0xd9, 0x5a, 0x02, 2970 0xaf, 0x3e, 0x9a, 0xc7, 0x8b, 0xa9, 0x3d, 0x54, 0x55, 0x0c, 0xbc, 0xe4, 0x38, 0x9d, 0xf2, 0x15, 2971 0x5d, 0xf2, 0x20, 0x50, 0x04, 0x86, 0x20, 0x2f, 0xb2, 0xec, 0x4a, 0x0c, 0x3b, 0xf4, 0xd4, 0x68, 2972 0x8a, 0xfd, 0xc5, 0x81, 0x6e, 0xe5, 0x42, 0xa5, 0xea, 0xd8, 0xaa, 0x0c, 0x5c, 0xb9, 0xd2, 0x0e, 2973 0x6c, 0x6b, 0x20, 0xae, 0x5c, 0xf9, 0x0f, 0x60, 0x47, 0xd7, 0xdc, 0xc6, 0xb8, 0x61, 0x97, 0xa5, 2974 0x11, 0xb1, 0xc0, 0xb4, 0x1a, 0x60, 0xae, 0xb0, 0xcb, 0x2d, 0x55, 0x54, 0x9f, 0xae, 0x2f, 0x62, 2975 0xb9, 0xe0, 0xef, 0xdd, 0x72, 0x0f, 0xa0, 0x2d, 0x51, 0x81, 0xec, 0xf7, 0x02, 0x45, 0x90, 0x47, 2976 0xe2, 0x9c, 0x2f, 0x29, 0x4c, 0xdd, 0x40, 0x11, 0xec, 0x06, 0xe0, 0xb7, 0xf1, 0x82, 0xeb, 0x6f, 2977 0x84, 0x23, 0xe8, 0xd3, 0xa1, 0x8d, 0xb7, 0xc4, 0x66, 0x59, 0xf5, 0xe9, 0x36, 0xea, 0x73, 0xbb, 2978 0x4d, 0x7c, 0xf1, 0xb9, 0x90, 0x2f, 0xb9, 0xd4, 0x56, 0x0d, 0x89, 0x0f, 0xe5, 0xf3, 0x74, 0xaa, 2979 0x66, 0xed, 0x5b, 0xba, 0xf7, 0xb6, 0x8e, 0xc5, 0x16, 0xd0, 0x53, 0x58, 0xff, 0xbb, 0x91, 0xb0, 2980 0xce, 0x46, 0xef, 0x1d, 0xd9, 0xc8, 0x8e, 0xcd, 0xbc, 0x44, 0xe3, 0xe0, 0xdd, 0xc6, 0x38, 0xb8, 2981 0xdf, 0x50, 0xa9, 0xe7, 0xc1, 0xef, 0x1c, 0x54, 0x42, 0x07, 0xf0, 0xf6, 0x6e, 0x75, 0xae, 0x0a, 2982 0x98, 0x6b, 0x07, 0xcc, 0xb8, 0xec, 0x59, 0x4d, 0xfa, 0xdd, 0x39, 0xfe, 0x31, 0x00, 0xdd, 0xcf, 2983 0x59, 0x95, 0xe8, 0xed, 0xc0, 0xe2, 0x60, 0x2b, 0xae, 0x84, 0x95, 0x4c, 0x87, 0x32, 0x7a, 0x83, 2984 0x6b, 0x0f, 0x67, 0x3b, 0x74, 0x88, 0x21, 0xd9, 0x23, 0xe8, 0xd7, 0xfe, 0x08, 0xff, 0x27, 0xcd, 2985 0xc6, 0x70, 0xa7, 0x0a, 0x83, 0x11, 0x31, 0x6d, 0xe1, 0x5b, 0x80, 0x09, 0xda, 0xa0, 0xae, 0x56, 2986 0xfb, 0xeb, 0xd8, 0xfe, 0x36, 0xd1, 0xbb, 0x6f, 0xa1, 0x6f, 0xf8, 0xee, 0x6d, 0xfa, 0x6e, 0x61, 2987 0x6e, 0x35, 0x31, 0x4b, 0x2a, 0x1f, 0x85, 0xc9, 0x94, 0xcf, 0x87, 0xdd, 0xc4, 0x01, 0xb4, 0x23, 2988 0x3a, 0xd9, 0xa3, 0x93, 0x15, 0x81, 0x78, 0xa6, 0x71, 0xc1, 0xa9, 0xda, 0xb5, 0xcd, 0x9a, 0xc1, 2989 0x02, 0x9c, 0xe2, 0xf2, 0xc5, 0xba, 0x69, 0x77, 0xbb, 0xe7, 0xf7, 0x4c, 0x18, 0xdd, 0x46, 0x36, 2990 0x51, 0xae, 0x9e, 0xa5, 0x57, 0x99, 0x89, 0xe2, 0x17, 0x7a, 0x82, 0x41, 0xde, 0x07, 0x55, 0xca, 2991 0xaf, 0xe1, 0x8e, 0xd5, 0x41, 0x4e, 0x2b, 0x5f, 0xeb, 0xcb, 0xf3, 0xb4, 0x8d, 0xed, 0x11, 0x60, 2992 0xa7, 0xd0, 0x9d, 0x24, 0xb9, 0x2a, 0xd1, 0xf7, 0x19, 0xba, 0x87, 0xb0, 0x13, 0x25, 0xb9, 0xf5, 2993 0x55, 0x6c, 0x48, 0xf6, 0x39, 0x40, 0x35, 0x85, 0x89, 0xda, 0x73, 0xe7, 0x6d, 0xcf, 0x51, 0xc2, 2994 0x78, 0xfe, 0x08, 0x76, 0x27, 0xf3, 0x32, 0xc5, 0x81, 0x27, 0x2b, 0xa6, 0x4a, 0x2f, 0xbd, 0xca, 2995 0x36, 0xf5, 0x48, 0x46, 0x47, 0x0c, 0xb7, 0xd9, 0x85, 0xd6, 0x43, 0xde, 0xd7, 0x62, 0xa6, 0x72, 2996 0xa8, 0x4c, 0xaf, 0xad, 0x87, 0xbc, 0x66, 0xd4, 0x4d, 0xd5, 0xdd, 0xd2, 0x54, 0xbd, 0xaa, 0xa9, 2997 0xb2, 0x04, 0x7a, 0xd5, 0xa9, 0xf8, 0xc2, 0xd2, 0x09, 0x2f, 0xab, 0xee, 0x53, 0xd1, 0x4d, 0x73, 2998 0xee, 0xad, 0xe6, 0xbc, 0x2d, 0xe6, 0x5a, 0xb5, 0xb9, 0x19, 0x7c, 0x14, 0xf0, 0x65, 0xc3, 0xff, 2999 0xff, 0xcd, 0xc4, 0xfd, 0x9d, 0x0b, 0xfb, 0xaf, 0x4a, 0x31, 0x3f, 0x2f, 0x2f, 0x45, 0x54, 0xc4, 3000 0x97, 0x3c, 0xe0, 0x4b, 0xcc, 0xa7, 0x14, 0x27, 0x2d, 0x95, 0xb1, 0xb4, 0x46, 0xd5, 0xd7, 0xc1, 3001 0x57, 0x3a, 0x45, 0x70, 0x89, 0xd9, 0xc8, 0xd3, 0x28, 0x9b, 0x9a, 0xa6, 0xaf, 0x29, 0xfc, 0x96, 3002 0x58, 0x84, 0x42, 0x9a, 0x8e, 0xab, 0xdd, 0x6a, 0xf0, 0xb0, 0xf0, 0x91, 0x3e, 0xb5, 0xff, 0x79, 3003 0x58, 0x1c, 0xfc, 0xae, 0x41, 0x4a, 0x0d, 0xf9, 0x18, 0xc9, 0x0e, 0x99, 0x68, 0x32, 0xab, 0x41, 3004 0x43, 0x75, 0x2c, 0x35, 0x68, 0x7c, 0x09, 0xdd, 0x28, 0x4b, 0x65, 0x11, 0x46, 0x72, 0xd8, 0xa5, 3005 0x4c, 0xf9, 0xcc, 0xcc, 0x2e, 0x1b, 0x6e, 0x8e, 0x27, 0x5a, 0xee, 0x79, 0x2a, 0x8b, 0x75, 0x50, 3006 0xa9, 0x1d, 0xfe, 0x12, 0x06, 0x8d, 0x2d, 0xf4, 0xfd, 0x9a, 0xaf, 0xcd, 0x97, 0xf2, 0x35, 0x5f, 3007 0xe3, 0x65, 0xdc, 0xe0, 0xd7, 0x21, 0xc5, 0xa3, 0x1b, 0x28, 0xe2, 0x89, 0xfb, 0xd8, 0x61, 0xaf, 3008 0x61, 0x0f, 0x0d, 0xfd, 0x3e, 0x96, 0x73, 0xfd, 0x8d, 0xf6, 0x33, 0x68, 0xe5, 0xa5, 0xce, 0xbd, 3009 0xfe, 0xf1, 0x0f, 0x6e, 0x41, 0x13, 0x90, 0x10, 0x06, 0x55, 0x90, 0x9a, 0xee, 0x86, 0x9a, 0x62, 3010 0x5f, 0xaa, 0x63, 0x2b, 0x0d, 0xe1, 0x3f, 0x84, 0x0e, 0x6a, 0x70, 0x53, 0x10, 0xb7, 0x1e, 0xac, 3011 0xc5, 0xd8, 0x13, 0xdd, 0x9e, 0xaa, 0x4d, 0x94, 0xc4, 0x18, 0xc6, 0xe2, 0x9b, 0x6b, 0x3d, 0xa1, 3012 0xd3, 0x1a, 0xfd, 0x4d, 0xc4, 0xcc, 0xdc, 0x75, 0x22, 0x66, 0x4f, 0x3f, 0xf9, 0xc3, 0x8f, 0x66, 3013 0xb1, 0x9c, 0x97, 0x97, 0xe3, 0x28, 0x4b, 0x1e, 0x9e, 0x9c, 0x44, 0xe9, 0x43, 0xfa, 0x1f, 0x79, 3014 0x72, 0xf2, 0x90, 0xac, 0x5e, 0x76, 0xe8, 0x87, 0xe3, 0xc9, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 3015 0xd5, 0x6a, 0x77, 0xb7, 0xac, 0x14, 0x00, 0x00, 3016 }