OSDN Git Service

votetx output (#62)
[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         AssetDefinition
16         ValueSource
17         ValueDestination
18         BlockHeader
19         TxHeader
20         TxVerifyResult
21         TransactionStatus
22         Mux
23         Coinbase
24         IntraChainOutput
25         CrossChainOutput
26         VoteOutput
27         Retirement
28         Issuance
29         Spend
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 AssetDefinition struct {
182         IssuanceProgram *Program `protobuf:"bytes,1,opt,name=issuance_program,json=issuanceProgram" json:"issuance_program,omitempty"`
183         Data            *Hash    `protobuf:"bytes,2,opt,name=data" json:"data,omitempty"`
184 }
185
186 func (m *AssetDefinition) Reset()                    { *m = AssetDefinition{} }
187 func (m *AssetDefinition) String() string            { return proto.CompactTextString(m) }
188 func (*AssetDefinition) ProtoMessage()               {}
189 func (*AssetDefinition) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
190
191 func (m *AssetDefinition) GetIssuanceProgram() *Program {
192         if m != nil {
193                 return m.IssuanceProgram
194         }
195         return nil
196 }
197
198 func (m *AssetDefinition) GetData() *Hash {
199         if m != nil {
200                 return m.Data
201         }
202         return nil
203 }
204
205 type ValueSource struct {
206         Ref      *Hash        `protobuf:"bytes,1,opt,name=ref" json:"ref,omitempty"`
207         Value    *AssetAmount `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
208         Position uint64       `protobuf:"varint,3,opt,name=position" json:"position,omitempty"`
209 }
210
211 func (m *ValueSource) Reset()                    { *m = ValueSource{} }
212 func (m *ValueSource) String() string            { return proto.CompactTextString(m) }
213 func (*ValueSource) ProtoMessage()               {}
214 func (*ValueSource) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
215
216 func (m *ValueSource) GetRef() *Hash {
217         if m != nil {
218                 return m.Ref
219         }
220         return nil
221 }
222
223 func (m *ValueSource) GetValue() *AssetAmount {
224         if m != nil {
225                 return m.Value
226         }
227         return nil
228 }
229
230 func (m *ValueSource) GetPosition() uint64 {
231         if m != nil {
232                 return m.Position
233         }
234         return 0
235 }
236
237 type ValueDestination struct {
238         Ref      *Hash        `protobuf:"bytes,1,opt,name=ref" json:"ref,omitempty"`
239         Value    *AssetAmount `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
240         Position uint64       `protobuf:"varint,3,opt,name=position" json:"position,omitempty"`
241 }
242
243 func (m *ValueDestination) Reset()                    { *m = ValueDestination{} }
244 func (m *ValueDestination) String() string            { return proto.CompactTextString(m) }
245 func (*ValueDestination) ProtoMessage()               {}
246 func (*ValueDestination) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
247
248 func (m *ValueDestination) GetRef() *Hash {
249         if m != nil {
250                 return m.Ref
251         }
252         return nil
253 }
254
255 func (m *ValueDestination) GetValue() *AssetAmount {
256         if m != nil {
257                 return m.Value
258         }
259         return nil
260 }
261
262 func (m *ValueDestination) GetPosition() uint64 {
263         if m != nil {
264                 return m.Position
265         }
266         return 0
267 }
268
269 type BlockHeader struct {
270         Version               uint64             `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
271         Height                uint64             `protobuf:"varint,2,opt,name=height" json:"height,omitempty"`
272         PreviousBlockId       *Hash              `protobuf:"bytes,3,opt,name=previous_block_id,json=previousBlockId" json:"previous_block_id,omitempty"`
273         Timestamp             uint64             `protobuf:"varint,4,opt,name=timestamp" json:"timestamp,omitempty"`
274         TransactionsRoot      *Hash              `protobuf:"bytes,5,opt,name=transactions_root,json=transactionsRoot" json:"transactions_root,omitempty"`
275         TransactionStatusHash *Hash              `protobuf:"bytes,6,opt,name=transaction_status_hash,json=transactionStatusHash" json:"transaction_status_hash,omitempty"`
276         TransactionStatus     *TransactionStatus `protobuf:"bytes,7,opt,name=transaction_status,json=transactionStatus" json:"transaction_status,omitempty"`
277         WitnessArguments      [][]byte           `protobuf:"bytes,8,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
278 }
279
280 func (m *BlockHeader) Reset()                    { *m = BlockHeader{} }
281 func (m *BlockHeader) String() string            { return proto.CompactTextString(m) }
282 func (*BlockHeader) ProtoMessage()               {}
283 func (*BlockHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
284
285 func (m *BlockHeader) GetVersion() uint64 {
286         if m != nil {
287                 return m.Version
288         }
289         return 0
290 }
291
292 func (m *BlockHeader) GetHeight() uint64 {
293         if m != nil {
294                 return m.Height
295         }
296         return 0
297 }
298
299 func (m *BlockHeader) GetPreviousBlockId() *Hash {
300         if m != nil {
301                 return m.PreviousBlockId
302         }
303         return nil
304 }
305
306 func (m *BlockHeader) GetTimestamp() uint64 {
307         if m != nil {
308                 return m.Timestamp
309         }
310         return 0
311 }
312
313 func (m *BlockHeader) GetTransactionsRoot() *Hash {
314         if m != nil {
315                 return m.TransactionsRoot
316         }
317         return nil
318 }
319
320 func (m *BlockHeader) GetTransactionStatusHash() *Hash {
321         if m != nil {
322                 return m.TransactionStatusHash
323         }
324         return nil
325 }
326
327 func (m *BlockHeader) GetTransactionStatus() *TransactionStatus {
328         if m != nil {
329                 return m.TransactionStatus
330         }
331         return nil
332 }
333
334 func (m *BlockHeader) GetWitnessArguments() [][]byte {
335         if m != nil {
336                 return m.WitnessArguments
337         }
338         return nil
339 }
340
341 type TxHeader struct {
342         Version        uint64  `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
343         SerializedSize uint64  `protobuf:"varint,2,opt,name=serialized_size,json=serializedSize" json:"serialized_size,omitempty"`
344         TimeRange      uint64  `protobuf:"varint,3,opt,name=time_range,json=timeRange" json:"time_range,omitempty"`
345         ResultIds      []*Hash `protobuf:"bytes,4,rep,name=result_ids,json=resultIds" json:"result_ids,omitempty"`
346 }
347
348 func (m *TxHeader) Reset()                    { *m = TxHeader{} }
349 func (m *TxHeader) String() string            { return proto.CompactTextString(m) }
350 func (*TxHeader) ProtoMessage()               {}
351 func (*TxHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
352
353 func (m *TxHeader) GetVersion() uint64 {
354         if m != nil {
355                 return m.Version
356         }
357         return 0
358 }
359
360 func (m *TxHeader) GetSerializedSize() uint64 {
361         if m != nil {
362                 return m.SerializedSize
363         }
364         return 0
365 }
366
367 func (m *TxHeader) GetTimeRange() uint64 {
368         if m != nil {
369                 return m.TimeRange
370         }
371         return 0
372 }
373
374 func (m *TxHeader) GetResultIds() []*Hash {
375         if m != nil {
376                 return m.ResultIds
377         }
378         return nil
379 }
380
381 type TxVerifyResult struct {
382         StatusFail bool `protobuf:"varint,1,opt,name=status_fail,json=statusFail" json:"status_fail,omitempty"`
383 }
384
385 func (m *TxVerifyResult) Reset()                    { *m = TxVerifyResult{} }
386 func (m *TxVerifyResult) String() string            { return proto.CompactTextString(m) }
387 func (*TxVerifyResult) ProtoMessage()               {}
388 func (*TxVerifyResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
389
390 func (m *TxVerifyResult) GetStatusFail() bool {
391         if m != nil {
392                 return m.StatusFail
393         }
394         return false
395 }
396
397 type TransactionStatus struct {
398         Version      uint64            `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
399         VerifyStatus []*TxVerifyResult `protobuf:"bytes,2,rep,name=verify_status,json=verifyStatus" json:"verify_status,omitempty"`
400 }
401
402 func (m *TransactionStatus) Reset()                    { *m = TransactionStatus{} }
403 func (m *TransactionStatus) String() string            { return proto.CompactTextString(m) }
404 func (*TransactionStatus) ProtoMessage()               {}
405 func (*TransactionStatus) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
406
407 func (m *TransactionStatus) GetVersion() uint64 {
408         if m != nil {
409                 return m.Version
410         }
411         return 0
412 }
413
414 func (m *TransactionStatus) GetVerifyStatus() []*TxVerifyResult {
415         if m != nil {
416                 return m.VerifyStatus
417         }
418         return nil
419 }
420
421 type Mux struct {
422         Sources             []*ValueSource      `protobuf:"bytes,1,rep,name=sources" json:"sources,omitempty"`
423         Program             *Program            `protobuf:"bytes,2,opt,name=program" json:"program,omitempty"`
424         WitnessDestinations []*ValueDestination `protobuf:"bytes,3,rep,name=witness_destinations,json=witnessDestinations" json:"witness_destinations,omitempty"`
425         WitnessArguments    [][]byte            `protobuf:"bytes,4,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
426 }
427
428 func (m *Mux) Reset()                    { *m = Mux{} }
429 func (m *Mux) String() string            { return proto.CompactTextString(m) }
430 func (*Mux) ProtoMessage()               {}
431 func (*Mux) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
432
433 func (m *Mux) GetSources() []*ValueSource {
434         if m != nil {
435                 return m.Sources
436         }
437         return nil
438 }
439
440 func (m *Mux) GetProgram() *Program {
441         if m != nil {
442                 return m.Program
443         }
444         return nil
445 }
446
447 func (m *Mux) GetWitnessDestinations() []*ValueDestination {
448         if m != nil {
449                 return m.WitnessDestinations
450         }
451         return nil
452 }
453
454 func (m *Mux) GetWitnessArguments() [][]byte {
455         if m != nil {
456                 return m.WitnessArguments
457         }
458         return nil
459 }
460
461 type Coinbase struct {
462         WitnessDestination *ValueDestination `protobuf:"bytes,1,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
463         Arbitrary          []byte            `protobuf:"bytes,2,opt,name=arbitrary,proto3" json:"arbitrary,omitempty"`
464 }
465
466 func (m *Coinbase) Reset()                    { *m = Coinbase{} }
467 func (m *Coinbase) String() string            { return proto.CompactTextString(m) }
468 func (*Coinbase) ProtoMessage()               {}
469 func (*Coinbase) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
470
471 func (m *Coinbase) GetWitnessDestination() *ValueDestination {
472         if m != nil {
473                 return m.WitnessDestination
474         }
475         return nil
476 }
477
478 func (m *Coinbase) GetArbitrary() []byte {
479         if m != nil {
480                 return m.Arbitrary
481         }
482         return nil
483 }
484
485 type IntraChainOutput struct {
486         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
487         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
488         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
489 }
490
491 func (m *IntraChainOutput) Reset()                    { *m = IntraChainOutput{} }
492 func (m *IntraChainOutput) String() string            { return proto.CompactTextString(m) }
493 func (*IntraChainOutput) ProtoMessage()               {}
494 func (*IntraChainOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
495
496 func (m *IntraChainOutput) GetSource() *ValueSource {
497         if m != nil {
498                 return m.Source
499         }
500         return nil
501 }
502
503 func (m *IntraChainOutput) GetControlProgram() *Program {
504         if m != nil {
505                 return m.ControlProgram
506         }
507         return nil
508 }
509
510 func (m *IntraChainOutput) GetOrdinal() uint64 {
511         if m != nil {
512                 return m.Ordinal
513         }
514         return 0
515 }
516
517 type CrossChainOutput struct {
518         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
519         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
520         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
521 }
522
523 func (m *CrossChainOutput) Reset()                    { *m = CrossChainOutput{} }
524 func (m *CrossChainOutput) String() string            { return proto.CompactTextString(m) }
525 func (*CrossChainOutput) ProtoMessage()               {}
526 func (*CrossChainOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
527
528 func (m *CrossChainOutput) GetSource() *ValueSource {
529         if m != nil {
530                 return m.Source
531         }
532         return nil
533 }
534
535 func (m *CrossChainOutput) GetControlProgram() *Program {
536         if m != nil {
537                 return m.ControlProgram
538         }
539         return nil
540 }
541
542 func (m *CrossChainOutput) GetOrdinal() uint64 {
543         if m != nil {
544                 return m.Ordinal
545         }
546         return 0
547 }
548
549 type VoteOutput struct {
550         Source         *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
551         ControlProgram *Program     `protobuf:"bytes,2,opt,name=control_program,json=controlProgram" json:"control_program,omitempty"`
552         Ordinal        uint64       `protobuf:"varint,3,opt,name=ordinal" json:"ordinal,omitempty"`
553         Vote           []byte       `protobuf:"bytes,4,opt,name=vote,proto3" json:"vote,omitempty"`
554 }
555
556 func (m *VoteOutput) Reset()                    { *m = VoteOutput{} }
557 func (m *VoteOutput) String() string            { return proto.CompactTextString(m) }
558 func (*VoteOutput) ProtoMessage()               {}
559 func (*VoteOutput) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
560
561 func (m *VoteOutput) GetSource() *ValueSource {
562         if m != nil {
563                 return m.Source
564         }
565         return nil
566 }
567
568 func (m *VoteOutput) GetControlProgram() *Program {
569         if m != nil {
570                 return m.ControlProgram
571         }
572         return nil
573 }
574
575 func (m *VoteOutput) GetOrdinal() uint64 {
576         if m != nil {
577                 return m.Ordinal
578         }
579         return 0
580 }
581
582 func (m *VoteOutput) GetVote() []byte {
583         if m != nil {
584                 return m.Vote
585         }
586         return nil
587 }
588
589 type Retirement struct {
590         Source  *ValueSource `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
591         Ordinal uint64       `protobuf:"varint,2,opt,name=ordinal" json:"ordinal,omitempty"`
592 }
593
594 func (m *Retirement) Reset()                    { *m = Retirement{} }
595 func (m *Retirement) String() string            { return proto.CompactTextString(m) }
596 func (*Retirement) ProtoMessage()               {}
597 func (*Retirement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
598
599 func (m *Retirement) GetSource() *ValueSource {
600         if m != nil {
601                 return m.Source
602         }
603         return nil
604 }
605
606 func (m *Retirement) GetOrdinal() uint64 {
607         if m != nil {
608                 return m.Ordinal
609         }
610         return 0
611 }
612
613 type Issuance struct {
614         NonceHash              *Hash             `protobuf:"bytes,1,opt,name=nonce_hash,json=nonceHash" json:"nonce_hash,omitempty"`
615         Value                  *AssetAmount      `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
616         WitnessDestination     *ValueDestination `protobuf:"bytes,3,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
617         WitnessAssetDefinition *AssetDefinition  `protobuf:"bytes,4,opt,name=witness_asset_definition,json=witnessAssetDefinition" json:"witness_asset_definition,omitempty"`
618         WitnessArguments       [][]byte          `protobuf:"bytes,5,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
619         Ordinal                uint64            `protobuf:"varint,6,opt,name=ordinal" json:"ordinal,omitempty"`
620 }
621
622 func (m *Issuance) Reset()                    { *m = Issuance{} }
623 func (m *Issuance) String() string            { return proto.CompactTextString(m) }
624 func (*Issuance) ProtoMessage()               {}
625 func (*Issuance) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
626
627 func (m *Issuance) GetNonceHash() *Hash {
628         if m != nil {
629                 return m.NonceHash
630         }
631         return nil
632 }
633
634 func (m *Issuance) GetValue() *AssetAmount {
635         if m != nil {
636                 return m.Value
637         }
638         return nil
639 }
640
641 func (m *Issuance) GetWitnessDestination() *ValueDestination {
642         if m != nil {
643                 return m.WitnessDestination
644         }
645         return nil
646 }
647
648 func (m *Issuance) GetWitnessAssetDefinition() *AssetDefinition {
649         if m != nil {
650                 return m.WitnessAssetDefinition
651         }
652         return nil
653 }
654
655 func (m *Issuance) GetWitnessArguments() [][]byte {
656         if m != nil {
657                 return m.WitnessArguments
658         }
659         return nil
660 }
661
662 func (m *Issuance) GetOrdinal() uint64 {
663         if m != nil {
664                 return m.Ordinal
665         }
666         return 0
667 }
668
669 type Spend struct {
670         SpentOutputId      *Hash             `protobuf:"bytes,1,opt,name=spent_output_id,json=spentOutputId" json:"spent_output_id,omitempty"`
671         WitnessDestination *ValueDestination `protobuf:"bytes,2,opt,name=witness_destination,json=witnessDestination" json:"witness_destination,omitempty"`
672         WitnessArguments   [][]byte          `protobuf:"bytes,3,rep,name=witness_arguments,json=witnessArguments,proto3" json:"witness_arguments,omitempty"`
673         Ordinal            uint64            `protobuf:"varint,4,opt,name=ordinal" json:"ordinal,omitempty"`
674 }
675
676 func (m *Spend) Reset()                    { *m = Spend{} }
677 func (m *Spend) String() string            { return proto.CompactTextString(m) }
678 func (*Spend) ProtoMessage()               {}
679 func (*Spend) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
680
681 func (m *Spend) GetSpentOutputId() *Hash {
682         if m != nil {
683                 return m.SpentOutputId
684         }
685         return nil
686 }
687
688 func (m *Spend) GetWitnessDestination() *ValueDestination {
689         if m != nil {
690                 return m.WitnessDestination
691         }
692         return nil
693 }
694
695 func (m *Spend) GetWitnessArguments() [][]byte {
696         if m != nil {
697                 return m.WitnessArguments
698         }
699         return nil
700 }
701
702 func (m *Spend) GetOrdinal() uint64 {
703         if m != nil {
704                 return m.Ordinal
705         }
706         return 0
707 }
708
709 func init() {
710         proto.RegisterType((*Hash)(nil), "bc.Hash")
711         proto.RegisterType((*Program)(nil), "bc.Program")
712         proto.RegisterType((*AssetID)(nil), "bc.AssetID")
713         proto.RegisterType((*AssetAmount)(nil), "bc.AssetAmount")
714         proto.RegisterType((*AssetDefinition)(nil), "bc.AssetDefinition")
715         proto.RegisterType((*ValueSource)(nil), "bc.ValueSource")
716         proto.RegisterType((*ValueDestination)(nil), "bc.ValueDestination")
717         proto.RegisterType((*BlockHeader)(nil), "bc.BlockHeader")
718         proto.RegisterType((*TxHeader)(nil), "bc.TxHeader")
719         proto.RegisterType((*TxVerifyResult)(nil), "bc.TxVerifyResult")
720         proto.RegisterType((*TransactionStatus)(nil), "bc.TransactionStatus")
721         proto.RegisterType((*Mux)(nil), "bc.Mux")
722         proto.RegisterType((*Coinbase)(nil), "bc.Coinbase")
723         proto.RegisterType((*IntraChainOutput)(nil), "bc.IntraChainOutput")
724         proto.RegisterType((*CrossChainOutput)(nil), "bc.CrossChainOutput")
725         proto.RegisterType((*VoteOutput)(nil), "bc.VoteOutput")
726         proto.RegisterType((*Retirement)(nil), "bc.Retirement")
727         proto.RegisterType((*Issuance)(nil), "bc.Issuance")
728         proto.RegisterType((*Spend)(nil), "bc.Spend")
729 }
730
731 func init() { proto.RegisterFile("bc.proto", fileDescriptor0) }
732
733 var fileDescriptor0 = []byte{
734         // 943 bytes of a gzipped FileDescriptorProto
735         0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x56, 0xcd, 0x6e, 0x23, 0x45,
736         0x10, 0x96, 0xc7, 0x13, 0xdb, 0x29, 0x67, 0xe3, 0xb8, 0xb3, 0xbb, 0x8c, 0x56, 0x8b, 0x88, 0x46,
737         0x5a, 0xb2, 0x08, 0x29, 0x4a, 0x9c, 0x05, 0x2e, 0x1c, 0x08, 0x09, 0xcb, 0xfa, 0x10, 0x2d, 0xea,
738         0x44, 0xb9, 0x8e, 0xda, 0x9e, 0xb6, 0xdd, 0x62, 0x3c, 0x6d, 0xba, 0x7b, 0x86, 0x6c, 0x5e, 0x81,
739         0x33, 0x07, 0x9e, 0x84, 0x47, 0xe0, 0xc4, 0x33, 0x81, 0xba, 0xa6, 0xc7, 0x1e, 0xff, 0x64, 0x7f,
740         0x84, 0x10, 0xdc, 0xa6, 0x7e, 0xfa, 0xab, 0xaa, 0xaf, 0xab, 0xaa, 0x07, 0x5a, 0x83, 0xe1, 0xd1,
741         0x4c, 0x49, 0x23, 0x89, 0x37, 0x18, 0x86, 0x2f, 0xc1, 0x7f, 0xc5, 0xf4, 0x84, 0xec, 0x82, 0x97,
742         0x1f, 0x07, 0xb5, 0x83, 0xda, 0xf3, 0x06, 0xf5, 0xf2, 0x63, 0x94, 0x4f, 0x02, 0xcf, 0xc9, 0x27,
743         0x28, 0xf7, 0x82, 0xba, 0x93, 0x7b, 0x28, 0x9f, 0x06, 0xbe, 0x93, 0x4f, 0xc3, 0xaf, 0xa1, 0xf9,
744         0x83, 0x92, 0x63, 0xc5, 0xa6, 0xe4, 0x63, 0x80, 0x7c, 0x1a, 0xe5, 0x5c, 0x69, 0x21, 0x53, 0x84,
745         0xf4, 0xe9, 0x76, 0x3e, 0xbd, 0x29, 0x14, 0x84, 0x80, 0x3f, 0x94, 0x31, 0x47, 0xec, 0x1d, 0x8a,
746         0xdf, 0x61, 0x1f, 0x9a, 0x67, 0x5a, 0x73, 0xd3, 0xbf, 0xf8, 0xc7, 0x89, 0x5c, 0x42, 0x1b, 0xa1,
747         0xce, 0xa6, 0x32, 0x4b, 0x0d, 0xf9, 0x14, 0x5a, 0xcc, 0x8a, 0x91, 0x88, 0x11, 0xb4, 0xdd, 0x6b,
748         0x1f, 0x0d, 0x86, 0x47, 0x2e, 0x1a, 0x6d, 0xa2, 0xb1, 0x1f, 0x93, 0xc7, 0xd0, 0x60, 0x78, 0x02,
749         0x43, 0xf9, 0xd4, 0x49, 0xe1, 0x18, 0x3a, 0xe8, 0x7b, 0xc1, 0x47, 0x22, 0x15, 0xc6, 0x16, 0xf0,
750         0x25, 0xec, 0x09, 0xad, 0x33, 0x96, 0x0e, 0x79, 0x34, 0x2b, 0x6a, 0xae, 0x42, 0x3b, 0x1a, 0x68,
751         0xa7, 0x74, 0x2a, 0x79, 0x79, 0x0a, 0x7e, 0xcc, 0x0c, 0xc3, 0x00, 0xed, 0x5e, 0xcb, 0xfa, 0x5a,
752         0xea, 0x29, 0x6a, 0xc3, 0x04, 0xda, 0x37, 0x2c, 0xc9, 0xf8, 0x95, 0xcc, 0xd4, 0x90, 0x93, 0x27,
753         0x50, 0x57, 0x7c, 0xe4, 0x70, 0x17, 0xbe, 0x56, 0x49, 0x9e, 0xc1, 0x56, 0x6e, 0x5d, 0x1d, 0x52,
754         0x67, 0x5e, 0x50, 0x51, 0x33, 0x2d, 0xac, 0xe4, 0x09, 0xb4, 0x66, 0x52, 0x63, 0xce, 0xc8, 0x97,
755         0x4f, 0xe7, 0x72, 0xf8, 0x13, 0xec, 0x61, 0xb4, 0x0b, 0xae, 0x8d, 0x48, 0x19, 0xd6, 0xf5, 0x2f,
756         0x87, 0xfc, 0xcb, 0x83, 0xf6, 0xb7, 0x89, 0x1c, 0xfe, 0xf8, 0x8a, 0xb3, 0x98, 0x2b, 0x12, 0x40,
757         0x73, 0xb9, 0x47, 0x4a, 0xd1, 0xde, 0xc5, 0x84, 0x8b, 0xf1, 0x64, 0x7e, 0x17, 0x85, 0x44, 0x5e,
758         0x40, 0x77, 0xa6, 0x78, 0x2e, 0x64, 0xa6, 0xa3, 0x81, 0x45, 0xb2, 0x97, 0x5a, 0x5f, 0x49, 0xb7,
759         0x53, 0xba, 0x60, 0xac, 0x7e, 0x4c, 0x9e, 0xc2, 0xb6, 0x11, 0x53, 0xae, 0x0d, 0x9b, 0xce, 0xb0,
760         0x4f, 0x7c, 0xba, 0x50, 0x90, 0x2f, 0xa0, 0x6b, 0x14, 0x4b, 0x35, 0x1b, 0xda, 0x24, 0x75, 0xa4,
761         0xa4, 0x34, 0xc1, 0xd6, 0x0a, 0xe6, 0x5e, 0xd5, 0x85, 0x4a, 0x69, 0xc8, 0x37, 0xf0, 0x51, 0x45,
762         0x17, 0x69, 0xc3, 0x4c, 0xa6, 0xa3, 0x09, 0xd3, 0x93, 0xa0, 0xb1, 0x72, 0xf8, 0x51, 0xc5, 0xf1,
763         0x0a, 0xfd, 0x70, 0xe0, 0x2e, 0x80, 0xac, 0x23, 0x04, 0x4d, 0x3c, 0xfc, 0xc8, 0x1e, 0xbe, 0x5e,
764         0x3d, 0x46, 0xbb, 0x6b, 0x48, 0xe4, 0x73, 0xe8, 0xfe, 0x2c, 0x4c, 0xca, 0xb5, 0x8e, 0x98, 0x1a,
765         0x67, 0x53, 0x9e, 0x1a, 0x1d, 0xb4, 0x0e, 0xea, 0xcf, 0x77, 0xe8, 0x9e, 0x33, 0x9c, 0x95, 0xfa,
766         0xf0, 0xd7, 0x1a, 0xb4, 0xae, 0x6f, 0xdf, 0x49, 0xff, 0x21, 0x74, 0x34, 0x57, 0x82, 0x25, 0xe2,
767         0x8e, 0xc7, 0x91, 0x16, 0x77, 0xdc, 0xdd, 0xc3, 0xee, 0x42, 0x7d, 0x25, 0xee, 0xb8, 0x1d, 0x74,
768         0x4b, 0x64, 0xa4, 0x58, 0x3a, 0xe6, 0xee, 0xbe, 0x91, 0x5a, 0x6a, 0x15, 0xe4, 0x10, 0x40, 0x71,
769         0x9d, 0x25, 0x76, 0xf6, 0x74, 0xe0, 0x1f, 0xd4, 0x97, 0x68, 0xd9, 0x2e, 0x6c, 0xfd, 0x58, 0x87,
770         0x27, 0xb0, 0x7b, 0x7d, 0x7b, 0xc3, 0x95, 0x18, 0xbd, 0xa1, 0xa8, 0x24, 0x9f, 0x40, 0xdb, 0x51,
771         0x3a, 0x62, 0x22, 0xc1, 0x04, 0x5b, 0x14, 0x0a, 0xd5, 0x4b, 0x26, 0x92, 0x70, 0x04, 0xdd, 0x35,
772         0x7e, 0xde, 0x52, 0xd2, 0x57, 0xf0, 0x20, 0x47, 0xfc, 0x92, 0x67, 0x0f, 0xb3, 0x21, 0xc8, 0xf3,
773         0x52, 0x68, 0xba, 0x53, 0x38, 0x16, 0x90, 0xe1, 0x9f, 0x35, 0xa8, 0x5f, 0x66, 0xb7, 0xe4, 0x33,
774         0x68, 0x6a, 0x1c, 0x4c, 0x1d, 0xd4, 0xf0, 0x28, 0x4e, 0x40, 0x65, 0x60, 0x69, 0x69, 0x27, 0xcf,
775         0xa0, 0x59, 0x6e, 0x05, 0x6f, 0x7d, 0x2b, 0x94, 0x36, 0xf2, 0x3d, 0x3c, 0x2c, 0x6f, 0x2e, 0x5e,
776         0x0c, 0xa1, 0x0e, 0xea, 0x08, 0xff, 0x70, 0x0e, 0x5f, 0x99, 0x50, 0xba, 0xef, 0x4e, 0x54, 0x74,
777         0xf7, 0xb4, 0x80, 0x7f, 0x4f, 0x0b, 0x48, 0x68, 0x9d, 0x4b, 0x91, 0x0e, 0x98, 0xe6, 0xe4, 0x3b,
778         0xd8, 0xdf, 0x90, 0x81, 0x9b, 0xff, 0xcd, 0x09, 0x90, 0xf5, 0x04, 0xec, 0x7c, 0x31, 0x35, 0x10,
779         0x46, 0x31, 0xf5, 0xc6, 0x2d, 0xf5, 0x85, 0x22, 0xfc, 0xa5, 0x06, 0x7b, 0xfd, 0xd4, 0x28, 0x76,
780         0x3e, 0x61, 0x22, 0x7d, 0x9d, 0x99, 0x59, 0x66, 0xc8, 0x21, 0x34, 0x0a, 0xb6, 0x5c, 0xb0, 0x35,
781         0x32, 0x9d, 0x99, 0xbc, 0x80, 0xce, 0x50, 0xa6, 0x46, 0xc9, 0x24, 0x7a, 0x0b, 0xa7, 0xbb, 0xce,
782         0xa7, 0x5c, 0xb4, 0x01, 0x34, 0xa5, 0x8a, 0x45, 0xca, 0x12, 0xd7, 0x94, 0xa5, 0x88, 0xd9, 0x9c,
783         0x2b, 0xa9, 0xf5, 0xff, 0x22, 0x9b, 0xdf, 0x6a, 0x00, 0x37, 0xd2, 0xf0, 0xff, 0x38, 0x0f, 0xfb,
784         0x22, 0xe7, 0xd2, 0x70, 0x5c, 0x8e, 0x3b, 0x14, 0xbf, 0xc3, 0xd7, 0x00, 0x94, 0x1b, 0xa1, 0xb8,
785         0xed, 0x9b, 0xf7, 0x4f, 0xad, 0x12, 0xc4, 0x5b, 0x2e, 0xf6, 0x77, 0x0f, 0x5a, 0x7d, 0xf7, 0x22,
786         0xda, 0xd5, 0x90, 0x4a, 0xfb, 0x7e, 0xe2, 0xc6, 0x5c, 0x7d, 0x71, 0xb6, 0xd1, 0x86, 0x5b, 0xf2,
787         0x3d, 0xdf, 0x9d, 0x7b, 0x5a, 0xb9, 0xfe, 0x81, 0xad, 0x7c, 0x09, 0xc1, 0x7c, 0x94, 0xf0, 0xa7,
788         0x21, 0x9e, 0xbf, 0xfa, 0x48, 0x4e, 0xbb, 0xb7, 0x3f, 0x4f, 0x60, 0xf1, 0x43, 0x40, 0x1f, 0x97,
789         0x63, 0xb6, 0xf2, 0xa3, 0xb0, 0x71, 0x32, 0xb7, 0x36, 0x4f, 0x66, 0x95, 0xb9, 0xc6, 0x32, 0x73,
790         0x7f, 0xd4, 0x60, 0xeb, 0x6a, 0xc6, 0xd3, 0x98, 0x1c, 0x43, 0x47, 0xcf, 0x78, 0x6a, 0x22, 0x89,
791         0x1d, 0xb3, 0xf8, 0xa7, 0x59, 0x70, 0xf7, 0x00, 0x1d, 0x8a, 0x8e, 0xea, 0xc7, 0xf7, 0x11, 0xe3,
792         0x7d, 0x20, 0x31, 0x1b, 0x2b, 0xa9, 0xbf, 0xbb, 0x12, 0x7f, 0xa9, 0x92, 0x41, 0x03, 0xff, 0x3b,
793         0x4f, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x9e, 0xe2, 0x40, 0x89, 0x83, 0x0a, 0x00, 0x00,
794 }