OSDN Git Service

add cancel vote (#172)
[bytom/vapor.git] / protocol / bc / bc.pb.go
1 // Code generated by protoc-gen-go. DO NOT EDIT.
2 // source: bc.proto
3
4 /*
5 Package bc is a generated protocol buffer package.
6
7 It is generated from these files:
8         bc.proto
9
10 It has these top-level messages:
11         Hash
12         Program
13         AssetID
14         AssetAmount
15         ValueSource
16         ValueDestination
17         BlockHeader
18         TxHeader
19         TxVerifyResult
20         TransactionStatus
21         Mux
22         Coinbase
23         IntraChainOutput
24         CrossChainOutput
25         VoteOutput
26         VetoInput
27         Retirement
28         Spend
29         CrossChainInput
30 */
31 package bc
32
33 import proto "github.com/golang/protobuf/proto"
34 import fmt "fmt"
35 import math "math"
36
37 // Reference imports to suppress errors if they are not otherwise used.
38 var _ = proto.Marshal
39 var _ = fmt.Errorf
40 var _ = math.Inf
41
42 // This is a compile-time assertion to ensure that this generated file
43 // is compatible with the proto package it is being compiled against.
44 // A compilation error at this line likely means your copy of the
45 // proto package needs to be updated.
46 const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
47
48 type Hash struct {
49         V0 uint64 `protobuf:"fixed64,1,opt,name=v0" json:"v0,omitempty"`
50         V1 uint64 `protobuf:"fixed64,2,opt,name=v1" json:"v1,omitempty"`
51         V2 uint64 `protobuf:"fixed64,3,opt,name=v2" json:"v2,omitempty"`
52         V3 uint64 `protobuf:"fixed64,4,opt,name=v3" json:"v3,omitempty"`
53 }
54
55 func (m *Hash) Reset()                    { *m = Hash{} }
56 func (m *Hash) String() string            { return proto.CompactTextString(m) }
57 func (*Hash) ProtoMessage()               {}
58 func (*Hash) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
59
60 func (m *Hash) GetV0() uint64 {
61         if m != nil {
62                 return m.V0
63         }
64         return 0
65 }
66
67 func (m *Hash) GetV1() uint64 {
68         if m != nil {
69                 return m.V1
70         }
71         return 0
72 }
73
74 func (m *Hash) GetV2() uint64 {
75         if m != nil {
76                 return m.V2
77         }
78         return 0
79 }
80
81 func (m *Hash) GetV3() uint64 {
82         if m != nil {
83                 return m.V3
84         }
85         return 0
86 }
87
88 type Program struct {
89         VmVersion uint64 `protobuf:"varint,1,opt,name=vm_version,json=vmVersion" json:"vm_version,omitempty"`
90         Code      []byte `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
91 }
92
93 func (m *Program) Reset()                    { *m = Program{} }
94 func (m *Program) String() string            { return proto.CompactTextString(m) }
95 func (*Program) ProtoMessage()               {}
96 func (*Program) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
97
98 func (m *Program) GetVmVersion() uint64 {
99         if m != nil {
100                 return m.VmVersion
101         }
102         return 0
103 }
104
105 func (m *Program) GetCode() []byte {
106         if m != nil {
107                 return m.Code
108         }
109         return nil
110 }
111
112 // This message type duplicates Hash, above. One alternative is to
113 // embed a Hash inside an AssetID. But it's useful for AssetID to be
114 // plain old data (without pointers). Another alternative is use Hash
115 // in any protobuf types where an AssetID is called for, but it's
116 // preferable to have type safety.
117 type AssetID struct {
118         V0 uint64 `protobuf:"fixed64,1,opt,name=v0" json:"v0,omitempty"`
119         V1 uint64 `protobuf:"fixed64,2,opt,name=v1" json:"v1,omitempty"`
120         V2 uint64 `protobuf:"fixed64,3,opt,name=v2" json:"v2,omitempty"`
121         V3 uint64 `protobuf:"fixed64,4,opt,name=v3" json:"v3,omitempty"`
122 }
123
124 func (m *AssetID) Reset()                    { *m = AssetID{} }
125 func (m *AssetID) String() string            { return proto.CompactTextString(m) }
126 func (*AssetID) ProtoMessage()               {}
127 func (*AssetID) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
128
129 func (m *AssetID) GetV0() uint64 {
130         if m != nil {
131                 return m.V0
132         }
133         return 0
134 }
135
136 func (m *AssetID) GetV1() uint64 {
137         if m != nil {
138                 return m.V1
139         }
140         return 0
141 }
142
143 func (m *AssetID) GetV2() uint64 {
144         if m != nil {
145                 return m.V2
146         }
147         return 0
148 }
149
150 func (m *AssetID) GetV3() uint64 {
151         if m != nil {
152                 return m.V3
153         }
154         return 0
155 }
156
157 type AssetAmount struct {
158         AssetId *AssetID `protobuf:"bytes,1,opt,name=asset_id,json=assetId" json:"asset_id,omitempty"`
159         Amount  uint64   `protobuf:"varint,2,opt,name=amount" json:"amount,omitempty"`
160 }
161
162 func (m *AssetAmount) Reset()                    { *m = AssetAmount{} }
163 func (m *AssetAmount) String() string            { return proto.CompactTextString(m) }
164 func (*AssetAmount) ProtoMessage()               {}
165 func (*AssetAmount) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
166
167 func (m *AssetAmount) GetAssetId() *AssetID {
168         if m != nil {
169                 return m.AssetId
170         }
171         return nil
172 }
173
174 func (m *AssetAmount) GetAmount() uint64 {
175         if m != nil {
176                 return m.Amount
177         }
178         return 0
179 }
180
181 type ValueSource struct {
182         Ref      *Hash        `protobuf:"bytes,1,opt,name=ref" json:"ref,omitempty"`
183         Value    *AssetAmount `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
184         Position uint64       `protobuf:"varint,3,opt,name=position" json:"position,omitempty"`
185 }
186
187 func (m *ValueSource) Reset()                    { *m = ValueSource{} }
188 func (m *ValueSource) String() string            { return proto.CompactTextString(m) }
189 func (*ValueSource) ProtoMessage()               {}
190 func (*ValueSource) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
191
192 func (m *ValueSource) GetRef() *Hash {
193         if m != nil {
194                 return m.Ref
195         }
196         return nil
197 }
198
199 func (m *ValueSource) GetValue() *AssetAmount {
200         if m != nil {
201                 return m.Value
202         }
203         return nil
204 }
205
206 func (m *ValueSource) GetPosition() uint64 {
207         if m != nil {
208                 return m.Position
209         }
210         return 0
211 }
212
213 type ValueDestination struct {
214         Ref      *Hash        `protobuf:"bytes,1,opt,name=ref" json:"ref,omitempty"`
215         Value    *AssetAmount `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
216         Position uint64       `protobuf:"varint,3,opt,name=position" json:"position,omitempty"`
217 }
218
219 func (m *ValueDestination) Reset()                    { *m = ValueDestination{} }
220 func (m *ValueDestination) String() string            { return proto.CompactTextString(m) }
221 func (*ValueDestination) ProtoMessage()               {}
222 func (*ValueDestination) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
223
224 func (m *ValueDestination) GetRef() *Hash {
225         if m != nil {
226                 return m.Ref
227         }
228         return nil
229 }
230
231 func (m *ValueDestination) GetValue() *AssetAmount {
232         if m != nil {
233                 return m.Value
234         }
235         return nil
236 }
237
238 func (m *ValueDestination) GetPosition() uint64 {
239         if m != nil {
240                 return m.Position
241         }
242         return 0
243 }
244
245 type BlockHeader struct {
246         Version               uint64             `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
247         Height                uint64             `protobuf:"varint,2,opt,name=height" json:"height,omitempty"`
248         PreviousBlockId       *Hash              `protobuf:"bytes,3,opt,name=previous_block_id,json=previousBlockId" json:"previous_block_id,omitempty"`
249         Timestamp             uint64             `protobuf:"varint,4,opt,name=timestamp" json:"timestamp,omitempty"`
250         TransactionsRoot      *Hash              `protobuf:"bytes,5,opt,name=transactions_root,json=transactionsRoot" json:"transactions_root,omitempty"`
251         TransactionStatusHash *Hash              `protobuf:"bytes,6,opt,name=transaction_status_hash,json=transactionStatusHash" json:"transaction_status_hash,omitempty"`
252         TransactionStatus     *TransactionStatus `protobuf:"bytes,7,opt,name=transaction_status,json=transactionStatus" json:"transaction_status,omitempty"`
253         WitnessArguments      [][]byte           `protobuf:"bytes,8,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
254 }
255
256 func (m *BlockHeader) Reset()                    { *m = BlockHeader{} }
257 func (m *BlockHeader) String() string            { return proto.CompactTextString(m) }
258 func (*BlockHeader) ProtoMessage()               {}
259 func (*BlockHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
260
261 func (m *BlockHeader) GetVersion() uint64 {
262         if m != nil {
263                 return m.Version
264         }
265         return 0
266 }
267
268 func (m *BlockHeader) GetHeight() uint64 {
269         if m != nil {
270                 return m.Height
271         }
272         return 0
273 }
274
275 func (m *BlockHeader) GetPreviousBlockId() *Hash {
276         if m != nil {
277                 return m.PreviousBlockId
278         }
279         return nil
280 }
281
282 func (m *BlockHeader) GetTimestamp() uint64 {
283         if m != nil {
284                 return m.Timestamp
285         }
286         return 0
287 }
288
289 func (m *BlockHeader) GetTransactionsRoot() *Hash {
290         if m != nil {
291                 return m.TransactionsRoot
292         }
293         return nil
294 }
295
296 func (m *BlockHeader) GetTransactionStatusHash() *Hash {
297         if m != nil {
298                 return m.TransactionStatusHash
299         }
300         return nil
301 }
302
303 func (m *BlockHeader) GetTransactionStatus() *TransactionStatus {
304         if m != nil {
305                 return m.TransactionStatus
306         }
307         return nil
308 }
309
310 func (m *BlockHeader) GetWitnessArguments() [][]byte {
311         if m != nil {
312                 return m.WitnessArguments
313         }
314         return nil
315 }
316
317 type TxHeader struct {
318         Version        uint64  `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
319         SerializedSize uint64  `protobuf:"varint,2,opt,name=serialized_size,json=serializedSize" json:"serialized_size,omitempty"`
320         TimeRange      uint64  `protobuf:"varint,3,opt,name=time_range,json=timeRange" json:"time_range,omitempty"`
321         ResultIds      []*Hash `protobuf:"bytes,4,rep,name=result_ids,json=resultIds" json:"result_ids,omitempty"`
322 }
323
324 func (m *TxHeader) Reset()                    { *m = TxHeader{} }
325 func (m *TxHeader) String() string            { return proto.CompactTextString(m) }
326 func (*TxHeader) ProtoMessage()               {}
327 func (*TxHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
328
329 func (m *TxHeader) GetVersion() uint64 {
330         if m != nil {
331                 return m.Version
332         }
333         return 0
334 }
335
336 func (m *TxHeader) GetSerializedSize() uint64 {
337         if m != nil {
338                 return m.SerializedSize
339         }
340         return 0
341 }
342
343 func (m *TxHeader) GetTimeRange() uint64 {
344         if m != nil {
345                 return m.TimeRange
346         }
347         return 0
348 }
349
350 func (m *TxHeader) GetResultIds() []*Hash {
351         if m != nil {
352                 return m.ResultIds
353         }
354         return nil
355 }
356
357 type TxVerifyResult struct {
358         StatusFail bool `protobuf:"varint,1,opt,name=status_fail,json=statusFail" json:"status_fail,omitempty"`
359 }
360
361 func (m *TxVerifyResult) Reset()                    { *m = TxVerifyResult{} }
362 func (m *TxVerifyResult) String() string            { return proto.CompactTextString(m) }
363 func (*TxVerifyResult) ProtoMessage()               {}
364 func (*TxVerifyResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
365
366 func (m *TxVerifyResult) GetStatusFail() bool {
367         if m != nil {
368                 return m.StatusFail
369         }
370         return false
371 }
372
373 type TransactionStatus struct {
374         Version      uint64            `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
375         VerifyStatus []*TxVerifyResult `protobuf:"bytes,2,rep,name=verify_status,json=verifyStatus" json:"verify_status,omitempty"`
376 }
377
378 func (m *TransactionStatus) Reset()                    { *m = TransactionStatus{} }
379 func (m *TransactionStatus) String() string            { return proto.CompactTextString(m) }
380 func (*TransactionStatus) ProtoMessage()               {}
381 func (*TransactionStatus) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
382
383 func (m *TransactionStatus) GetVersion() uint64 {
384         if m != nil {
385                 return m.Version
386         }
387         return 0
388 }
389
390 func (m *TransactionStatus) GetVerifyStatus() []*TxVerifyResult {
391         if m != nil {
392                 return m.VerifyStatus
393         }
394         return nil
395 }
396
397 type Mux struct {
398         Sources             []*ValueSource      `protobuf:"bytes,1,rep,name=sources" json:"sources,omitempty"`
399         Program             *Program            `protobuf:"bytes,2,opt,name=program" json:"program,omitempty"`
400         WitnessDestinations []*ValueDestination `protobuf:"bytes,3,rep,name=witness_destinations,json=witnessDestinations" json:"witness_destinations,omitempty"`
401         WitnessArguments    [][]byte            `protobuf:"bytes,4,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
402 }
403
404 func (m *Mux) Reset()                    { *m = Mux{} }
405 func (m *Mux) String() string            { return proto.CompactTextString(m) }
406 func (*Mux) ProtoMessage()               {}
407 func (*Mux) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
408
409 func (m *Mux) GetSources() []*ValueSource {
410         if m != nil {
411                 return m.Sources
412         }
413         return nil
414 }
415
416 func (m *Mux) GetProgram() *Program {
417         if m != nil {
418                 return m.Program
419         }
420         return nil
421 }
422
423 func (m *Mux) GetWitnessDestinations() []*ValueDestination {
424         if m != nil {
425                 return m.WitnessDestinations
426         }
427         return nil
428 }
429
430 func (m *Mux) GetWitnessArguments() [][]byte {
431         if m != nil {
432                 return m.WitnessArguments
433         }
434         return nil
435 }
436
437 type Coinbase struct {
438         WitnessDestination *ValueDestination `protobuf:"bytes,1,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
439         Arbitrary          []byte            `protobuf:"bytes,2,opt,name=arbitrary,proto3" json:"arbitrary,omitempty"`
440 }
441
442 func (m *Coinbase) Reset()                    { *m = Coinbase{} }
443 func (m *Coinbase) String() string            { return proto.CompactTextString(m) }
444 func (*Coinbase) ProtoMessage()               {}
445 func (*Coinbase) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
446
447 func (m *Coinbase) GetWitnessDestination() *ValueDestination {
448         if m != nil {
449                 return m.WitnessDestination
450         }
451         return nil
452 }
453
454 func (m *Coinbase) GetArbitrary() []byte {
455         if m != nil {
456                 return m.Arbitrary
457         }
458         return nil
459 }
460
461 type IntraChainOutput struct {
462         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
463         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
464         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
465 }
466
467 func (m *IntraChainOutput) Reset()                    { *m = IntraChainOutput{} }
468 func (m *IntraChainOutput) String() string            { return proto.CompactTextString(m) }
469 func (*IntraChainOutput) ProtoMessage()               {}
470 func (*IntraChainOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
471
472 func (m *IntraChainOutput) GetSource() *ValueSource {
473         if m != nil {
474                 return m.Source
475         }
476         return nil
477 }
478
479 func (m *IntraChainOutput) GetControlProgram() *Program {
480         if m != nil {
481                 return m.ControlProgram
482         }
483         return nil
484 }
485
486 func (m *IntraChainOutput) GetOrdinal() uint64 {
487         if m != nil {
488                 return m.Ordinal
489         }
490         return 0
491 }
492
493 type CrossChainOutput struct {
494         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
495         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
496         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
497 }
498
499 func (m *CrossChainOutput) Reset()                    { *m = CrossChainOutput{} }
500 func (m *CrossChainOutput) String() string            { return proto.CompactTextString(m) }
501 func (*CrossChainOutput) ProtoMessage()               {}
502 func (*CrossChainOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
503
504 func (m *CrossChainOutput) GetSource() *ValueSource {
505         if m != nil {
506                 return m.Source
507         }
508         return nil
509 }
510
511 func (m *CrossChainOutput) GetControlProgram() *Program {
512         if m != nil {
513                 return m.ControlProgram
514         }
515         return nil
516 }
517
518 func (m *CrossChainOutput) GetOrdinal() uint64 {
519         if m != nil {
520                 return m.Ordinal
521         }
522         return 0
523 }
524
525 type VoteOutput struct {
526         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
527         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
528         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
529         Vote           []byte       `protobuf:"bytes,4,opt,name=vote,proto3" json:"vote,omitempty"`
530 }
531
532 func (m *VoteOutput) Reset()                    { *m = VoteOutput{} }
533 func (m *VoteOutput) String() string            { return proto.CompactTextString(m) }
534 func (*VoteOutput) ProtoMessage()               {}
535 func (*VoteOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
536
537 func (m *VoteOutput) GetSource() *ValueSource {
538         if m != nil {
539                 return m.Source
540         }
541         return nil
542 }
543
544 func (m *VoteOutput) GetControlProgram() *Program {
545         if m != nil {
546                 return m.ControlProgram
547         }
548         return nil
549 }
550
551 func (m *VoteOutput) GetOrdinal() uint64 {
552         if m != nil {
553                 return m.Ordinal
554         }
555         return 0
556 }
557
558 func (m *VoteOutput) GetVote() []byte {
559         if m != nil {
560                 return m.Vote
561         }
562         return nil
563 }
564
565 type VetoInput struct {
566         SpentOutputId      *Hash             `protobuf:"bytes,1,opt,name=spent_output_id,json=spentOutputId" json:"spent_output_id,omitempty"`
567         WitnessDestination *ValueDestination `protobuf:"bytes,2,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
568         WitnessArguments   [][]byte          `protobuf:"bytes,3,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
569         Ordinal            uint64            `protobuf:"varint,4,opt,name=ordinal" json:"ordinal,omitempty"`
570 }
571
572 func (m *VetoInput) Reset()                    { *m = VetoInput{} }
573 func (m *VetoInput) String() string            { return proto.CompactTextString(m) }
574 func (*VetoInput) ProtoMessage()               {}
575 func (*VetoInput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
576
577 func (m *VetoInput) GetSpentOutputId() *Hash {
578         if m != nil {
579                 return m.SpentOutputId
580         }
581         return nil
582 }
583
584 func (m *VetoInput) GetWitnessDestination() *ValueDestination {
585         if m != nil {
586                 return m.WitnessDestination
587         }
588         return nil
589 }
590
591 func (m *VetoInput) GetWitnessArguments() [][]byte {
592         if m != nil {
593                 return m.WitnessArguments
594         }
595         return nil
596 }
597
598 func (m *VetoInput) GetOrdinal() uint64 {
599         if m != nil {
600                 return m.Ordinal
601         }
602         return 0
603 }
604
605 type Retirement struct {
606         Source  *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
607         Ordinal uint64       `protobuf:"varint,2,opt,name=ordinal" json:"ordinal,omitempty"`
608 }
609
610 func (m *Retirement) Reset()                    { *m = Retirement{} }
611 func (m *Retirement) String() string            { return proto.CompactTextString(m) }
612 func (*Retirement) ProtoMessage()               {}
613 func (*Retirement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
614
615 func (m *Retirement) GetSource() *ValueSource {
616         if m != nil {
617                 return m.Source
618         }
619         return nil
620 }
621
622 func (m *Retirement) GetOrdinal() uint64 {
623         if m != nil {
624                 return m.Ordinal
625         }
626         return 0
627 }
628
629 type Spend struct {
630         SpentOutputId      *Hash             `protobuf:"bytes,1,opt,name=spent_output_id,json=spentOutputId" json:"spent_output_id,omitempty"`
631         WitnessDestination *ValueDestination `protobuf:"bytes,2,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
632         WitnessArguments   [][]byte          `protobuf:"bytes,3,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
633         Ordinal            uint64            `protobuf:"varint,4,opt,name=ordinal" json:"ordinal,omitempty"`
634 }
635
636 func (m *Spend) Reset()                    { *m = Spend{} }
637 func (m *Spend) String() string            { return proto.CompactTextString(m) }
638 func (*Spend) ProtoMessage()               {}
639 func (*Spend) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
640
641 func (m *Spend) GetSpentOutputId() *Hash {
642         if m != nil {
643                 return m.SpentOutputId
644         }
645         return nil
646 }
647
648 func (m *Spend) GetWitnessDestination() *ValueDestination {
649         if m != nil {
650                 return m.WitnessDestination
651         }
652         return nil
653 }
654
655 func (m *Spend) GetWitnessArguments() [][]byte {
656         if m != nil {
657                 return m.WitnessArguments
658         }
659         return nil
660 }
661
662 func (m *Spend) GetOrdinal() uint64 {
663         if m != nil {
664                 return m.Ordinal
665         }
666         return 0
667 }
668
669 type CrossChainInput struct {
670         MainchainOutputId  *Hash             `protobuf:"bytes,1,opt,name=mainchain_output_id,json=mainchainOutputId" json:"mainchain_output_id,omitempty"`
671         Value              *AssetAmount      `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
672         WitnessDestination *ValueDestination `protobuf:"bytes,3,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
673         ControlProgram     *Program          `protobuf:"bytes,4,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
674         WitnessArguments   [][]byte          `protobuf:"bytes,5,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
675         Ordinal            uint64            `protobuf:"varint,6,opt,name=ordinal" json:"ordinal,omitempty"`
676 }
677
678 func (m *CrossChainInput) Reset()                    { *m = CrossChainInput{} }
679 func (m *CrossChainInput) String() string            { return proto.CompactTextString(m) }
680 func (*CrossChainInput) ProtoMessage()               {}
681 func (*CrossChainInput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
682
683 func (m *CrossChainInput) GetMainchainOutputId() *Hash {
684         if m != nil {
685                 return m.MainchainOutputId
686         }
687         return nil
688 }
689
690 func (m *CrossChainInput) GetValue() *AssetAmount {
691         if m != nil {
692                 return m.Value
693         }
694         return nil
695 }
696
697 func (m *CrossChainInput) GetWitnessDestination() *ValueDestination {
698         if m != nil {
699                 return m.WitnessDestination
700         }
701         return nil
702 }
703
704 func (m *CrossChainInput) GetControlProgram() *Program {
705         if m != nil {
706                 return m.ControlProgram
707         }
708         return nil
709 }
710
711 func (m *CrossChainInput) GetWitnessArguments() [][]byte {
712         if m != nil {
713                 return m.WitnessArguments
714         }
715         return nil
716 }
717
718 func (m *CrossChainInput) GetOrdinal() uint64 {
719         if m != nil {
720                 return m.Ordinal
721         }
722         return 0
723 }
724
725 func init() {
726         proto.RegisterType((*Hash)(nil), "bc.Hash")
727         proto.RegisterType((*Program)(nil), "bc.Program")
728         proto.RegisterType((*AssetID)(nil), "bc.AssetID")
729         proto.RegisterType((*AssetAmount)(nil), "bc.AssetAmount")
730         proto.RegisterType((*ValueSource)(nil), "bc.ValueSource")
731         proto.RegisterType((*ValueDestination)(nil), "bc.ValueDestination")
732         proto.RegisterType((*BlockHeader)(nil), "bc.BlockHeader")
733         proto.RegisterType((*TxHeader)(nil), "bc.TxHeader")
734         proto.RegisterType((*TxVerifyResult)(nil), "bc.TxVerifyResult")
735         proto.RegisterType((*TransactionStatus)(nil), "bc.TransactionStatus")
736         proto.RegisterType((*Mux)(nil), "bc.Mux")
737         proto.RegisterType((*Coinbase)(nil), "bc.Coinbase")
738         proto.RegisterType((*IntraChainOutput)(nil), "bc.IntraChainOutput")
739         proto.RegisterType((*CrossChainOutput)(nil), "bc.CrossChainOutput")
740         proto.RegisterType((*VoteOutput)(nil), "bc.VoteOutput")
741         proto.RegisterType((*VetoInput)(nil), "bc.VetoInput")
742         proto.RegisterType((*Retirement)(nil), "bc.Retirement")
743         proto.RegisterType((*Spend)(nil), "bc.Spend")
744         proto.RegisterType((*CrossChainInput)(nil), "bc.CrossChainInput")
745 }
746
747 func init() { proto.RegisterFile("bc.proto", fileDescriptor0) }
748
749 var fileDescriptor0 = []byte{
750         // 898 bytes of a gzipped FileDescriptorProto
751         0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x56, 0xdd, 0x6e, 0x23, 0x35,
752         0x14, 0x56, 0x66, 0xa6, 0x49, 0x7a, 0xd2, 0x6d, 0x1a, 0x77, 0x17, 0x46, 0x2b, 0x10, 0xd5, 0x48,
753         0x4b, 0x17, 0x21, 0x55, 0xfd, 0x59, 0x04, 0x17, 0x5c, 0x50, 0x5a, 0x96, 0xcd, 0xc5, 0x6a, 0x91,
754         0x5b, 0xe5, 0x76, 0xe4, 0xcc, 0xb8, 0x8d, 0xc5, 0x64, 0x1c, 0x6c, 0xcf, 0xd0, 0xed, 0x2b, 0x70,
755         0xcd, 0x05, 0x2f, 0xc2, 0x2b, 0x70, 0x81, 0x78, 0x26, 0x90, 0xcf, 0x78, 0xf2, 0xd3, 0xa4, 0xed,
756         0x56, 0x08, 0x01, 0x77, 0x39, 0xc7, 0xc7, 0xdf, 0xf9, 0xfc, 0xf9, 0x7c, 0x9e, 0x40, 0x7b, 0x98,
757         0xec, 0x4d, 0x94, 0x34, 0x92, 0x78, 0xc3, 0x24, 0x7a, 0x09, 0xc1, 0x2b, 0xa6, 0x47, 0x64, 0x13,
758         0xbc, 0x72, 0x3f, 0x6c, 0xec, 0x34, 0x9e, 0x37, 0xa9, 0x57, 0xee, 0x63, 0x7c, 0x10, 0x7a, 0x2e,
759         0x3e, 0xc0, 0xf8, 0x30, 0xf4, 0x5d, 0x7c, 0x88, 0xf1, 0x51, 0x18, 0xb8, 0xf8, 0x28, 0xfa, 0x12,
760         0x5a, 0xdf, 0x29, 0x79, 0xa9, 0xd8, 0x98, 0x7c, 0x08, 0x50, 0x8e, 0xe3, 0x92, 0x2b, 0x2d, 0x64,
761         0x8e, 0x90, 0x01, 0x5d, 0x2f, 0xc7, 0x83, 0x2a, 0x41, 0x08, 0x04, 0x89, 0x4c, 0x39, 0x62, 0x6f,
762         0x50, 0xfc, 0x1d, 0xf5, 0xa1, 0x75, 0xac, 0x35, 0x37, 0xfd, 0xd3, 0xbf, 0x4d, 0xe4, 0x35, 0x74,
763         0x10, 0xea, 0x78, 0x2c, 0x8b, 0xdc, 0x90, 0x8f, 0xa1, 0xcd, 0x6c, 0x18, 0x8b, 0x14, 0x41, 0x3b,
764         0x87, 0x9d, 0xbd, 0x61, 0xb2, 0xe7, 0xba, 0xd1, 0x16, 0x2e, 0xf6, 0x53, 0xf2, 0x1e, 0x34, 0x19,
765         0xee, 0xc0, 0x56, 0x01, 0x75, 0x51, 0x94, 0x41, 0x67, 0xc0, 0xb2, 0x82, 0x9f, 0xc9, 0x42, 0x25,
766         0x9c, 0x3c, 0x05, 0x5f, 0xf1, 0x0b, 0x87, 0xd4, 0xb6, 0x48, 0x56, 0x3d, 0x6a, 0x93, 0xe4, 0x19,
767         0xac, 0x95, 0xb6, 0x14, 0x11, 0x3a, 0x87, 0xdd, 0x69, 0x9f, 0x8a, 0x0a, 0xad, 0x56, 0xc9, 0x53,
768         0x68, 0x4f, 0xa4, 0x16, 0xc6, 0x8a, 0xe3, 0x63, 0xaf, 0x69, 0x1c, 0xfd, 0x00, 0x5b, 0xd8, 0xed,
769         0x94, 0x6b, 0x23, 0x72, 0x66, 0x73, 0xff, 0x74, 0xcb, 0x3f, 0x3d, 0xe8, 0x7c, 0x9d, 0xc9, 0xe4,
770         0xfb, 0x57, 0x9c, 0xa5, 0x5c, 0x91, 0x10, 0x5a, 0x8b, 0x57, 0x57, 0x87, 0x56, 0xa2, 0x11, 0x17,
771         0x97, 0xa3, 0xa9, 0x44, 0x55, 0x44, 0x5e, 0x40, 0x6f, 0xa2, 0x78, 0x29, 0x64, 0xa1, 0xe3, 0xa1,
772         0x45, 0xb2, 0x5a, 0xfb, 0x37, 0xe8, 0x76, 0xeb, 0x12, 0xec, 0xd5, 0x4f, 0xc9, 0x07, 0xb0, 0x6e,
773         0xc4, 0x98, 0x6b, 0xc3, 0xc6, 0x13, 0xbc, 0xbe, 0x80, 0xce, 0x12, 0xe4, 0x33, 0xe8, 0x19, 0xc5,
774         0x72, 0xcd, 0x12, 0x4b, 0x52, 0xc7, 0x4a, 0x4a, 0x13, 0xae, 0xdd, 0xc0, 0xdc, 0x9a, 0x2f, 0xa1,
775         0x52, 0x1a, 0xf2, 0x15, 0xbc, 0x3f, 0x97, 0x8b, 0xb5, 0x61, 0xa6, 0xd0, 0xf1, 0x88, 0xe9, 0x51,
776         0xd8, 0xbc, 0xb1, 0xf9, 0xc9, 0x5c, 0xe1, 0x19, 0xd6, 0xa1, 0x0f, 0x4e, 0x81, 0x2c, 0x23, 0x84,
777         0x2d, 0xdc, 0xfc, 0xc4, 0x6e, 0x3e, 0xbf, 0xb9, 0x8d, 0xf6, 0x96, 0x90, 0xc8, 0xa7, 0xd0, 0xfb,
778         0x51, 0x98, 0x9c, 0x6b, 0x1d, 0x33, 0x75, 0x59, 0x8c, 0x79, 0x6e, 0x74, 0xd8, 0xde, 0xf1, 0x9f,
779         0x6f, 0xd0, 0x2d, 0xb7, 0x70, 0x5c, 0xe7, 0xa3, 0x9f, 0x1b, 0xd0, 0x3e, 0xbf, 0xba, 0x57, 0xfe,
780         0x5d, 0xe8, 0x6a, 0xae, 0x04, 0xcb, 0xc4, 0x35, 0x4f, 0x63, 0x2d, 0xae, 0xb9, 0xbb, 0x87, 0xcd,
781         0x59, 0xfa, 0x4c, 0x5c, 0x73, 0xeb, 0x3f, 0x2b, 0x64, 0xac, 0x58, 0x7e, 0xc9, 0xdd, 0x7d, 0xa3,
782         0xb4, 0xd4, 0x26, 0xc8, 0x2e, 0x80, 0xe2, 0xba, 0xc8, 0xac, 0x25, 0x74, 0x18, 0xec, 0xf8, 0x0b,
783         0xb2, 0xac, 0x57, 0x6b, 0xfd, 0x54, 0x47, 0x07, 0xb0, 0x79, 0x7e, 0x35, 0xe0, 0x4a, 0x5c, 0xbc,
784         0xa5, 0x98, 0x24, 0x1f, 0x41, 0xc7, 0x49, 0x7a, 0xc1, 0x44, 0x86, 0x04, 0xdb, 0x14, 0xaa, 0xd4,
785         0x4b, 0x26, 0xb2, 0xe8, 0x02, 0x7a, 0x4b, 0xfa, 0xdc, 0x71, 0xa4, 0xcf, 0xe1, 0x51, 0x89, 0xf8,
786         0xb5, 0xce, 0x1e, 0xb2, 0x21, 0xa8, 0xf3, 0x42, 0x6b, 0xba, 0x51, 0x15, 0x56, 0x90, 0xd1, 0x1f,
787         0x0d, 0xf0, 0x5f, 0x17, 0x57, 0xe4, 0x13, 0x68, 0x69, 0x34, 0xa6, 0x0e, 0x1b, 0xb8, 0x15, 0x1d,
788         0x30, 0x67, 0x58, 0x5a, 0xaf, 0x93, 0x67, 0xd0, 0x9a, 0x54, 0x0f, 0x94, 0x33, 0x0b, 0xbe, 0x03,
789         0xee, 0xcd, 0xa2, 0xf5, 0x1a, 0xf9, 0x16, 0x1e, 0xd7, 0x37, 0x97, 0xce, 0x4c, 0xa8, 0x43, 0x1f,
790         0xe1, 0x1f, 0x4f, 0xe1, 0xe7, 0x1c, 0x4a, 0xb7, 0xdd, 0x8e, 0xb9, 0xdc, 0x2d, 0x23, 0x10, 0xdc,
791         0x32, 0x02, 0x12, 0xda, 0x27, 0x52, 0xe4, 0x43, 0xa6, 0x39, 0xf9, 0x06, 0xb6, 0x57, 0x30, 0x70,
792         0xfe, 0x5f, 0x4d, 0x80, 0x2c, 0x13, 0xb0, 0xfe, 0x62, 0x6a, 0x28, 0x8c, 0x62, 0xea, 0xad, 0x7b,
793         0x6b, 0x67, 0x89, 0xe8, 0xa7, 0x06, 0x6c, 0xf5, 0x73, 0xa3, 0xd8, 0xc9, 0x88, 0x89, 0xfc, 0x4d,
794         0x61, 0x26, 0x85, 0x21, 0xbb, 0xd0, 0xac, 0xd4, 0x72, 0xcd, 0x96, 0xc4, 0x74, 0xcb, 0xe4, 0x05,
795         0x74, 0x13, 0x99, 0x1b, 0x25, 0xb3, 0xf8, 0x0e, 0x4d, 0x37, 0x5d, 0x4d, 0xfd, 0x5d, 0x08, 0xa1,
796         0x25, 0x55, 0x2a, 0x72, 0x96, 0xb9, 0xa1, 0xac, 0x43, 0x64, 0x73, 0xa2, 0xa4, 0xd6, 0xff, 0x09,
797         0x36, 0xbf, 0x34, 0x00, 0x06, 0xd2, 0xf0, 0x7f, 0x99, 0x87, 0xfd, 0x50, 0x96, 0xd2, 0x70, 0x7c,
798         0x1c, 0x37, 0x28, 0xfe, 0x8e, 0x7e, 0x6f, 0xc0, 0xfa, 0x80, 0x1b, 0xd9, 0xcf, 0x2d, 0xb5, 0x7d,
799         0xe8, 0xea, 0x09, 0xcf, 0x4d, 0x2c, 0x91, 0xea, 0xec, 0x1b, 0x37, 0xf3, 0xf3, 0x23, 0x2c, 0xa8,
800         0x8e, 0xd2, 0x4f, 0x6f, 0x1b, 0x2e, 0xef, 0x81, 0xc3, 0xb5, 0x72, 0xb8, 0xfd, 0xd5, 0xc3, 0x3d,
801         0x7f, 0xc2, 0x60, 0x51, 0xe9, 0x37, 0x00, 0x94, 0x1b, 0xa1, 0xb8, 0x2d, 0x7c, 0x77, 0xa1, 0xe7,
802         0x00, 0xbd, 0x45, 0xc0, 0xdf, 0x1a, 0xb0, 0x76, 0x36, 0xe1, 0x79, 0xfa, 0xbf, 0x97, 0xe6, 0x57,
803         0x0f, 0xba, 0x33, 0x4b, 0x54, 0xd7, 0xfd, 0x05, 0x6c, 0x8f, 0x99, 0xc8, 0x13, 0x9b, 0xb9, 0xe3,
804         0x5c, 0xbd, 0x69, 0xd1, 0xf4, 0x6c, 0xef, 0xf8, 0x3f, 0xe1, 0x16, 0x09, 0xfc, 0x07, 0x4a, 0xb0,
805         0xc2, 0x08, 0xc1, 0xfd, 0x46, 0x58, 0x29, 0xdc, 0xda, 0xfd, 0xc2, 0x35, 0x17, 0x84, 0x1b, 0x36,
806         0xf1, 0xbf, 0xed, 0xd1, 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xd2, 0x80, 0xe2, 0xa6, 0xe7, 0x0a,
807         0x00, 0x00,
808 }