OSDN Git Service

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