@taqueria/plugin-contract-types 0.0.0-pr-91-a8fa7172

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/Readme.md +212 -0
  2. package/example/contracts/example-contract-1.tz +1409 -0
  3. package/example/contracts/example-contract-2.tz +798 -0
  4. package/example/contracts/example-contract-3.json +7080 -0
  5. package/example/contracts/example-contract-4.tz +1374 -0
  6. package/example/contracts/example-contract-5.tz +1424 -0
  7. package/example/contracts/example-contract-6.tz +675 -0
  8. package/example/contracts/example-contract-7.tz +384 -0
  9. package/example/contracts/example-contract-8.tz +28 -0
  10. package/example/contracts/example-contract-9.tz +1010 -0
  11. package/example/example-usage-type-utilities.ts +35 -0
  12. package/example/example-usage.ts +410 -0
  13. package/example/types-file/example-contract-1.code.ts +6 -0
  14. package/example/types-file/example-contract-1.types.ts +87 -0
  15. package/example/types-file/example-contract-2.code.ts +6 -0
  16. package/example/types-file/example-contract-2.types.ts +122 -0
  17. package/example/types-file/example-contract-4.code.ts +6 -0
  18. package/example/types-file/example-contract-4.types.ts +97 -0
  19. package/example/types-file/example-contract-5.code.ts +6 -0
  20. package/example/types-file/example-contract-5.types.ts +173 -0
  21. package/example/types-file/example-contract-6.code.ts +6 -0
  22. package/example/types-file/example-contract-6.types.ts +122 -0
  23. package/example/types-file/example-contract-7.code.ts +6 -0
  24. package/example/types-file/example-contract-7.types.ts +78 -0
  25. package/example/types-file/example-contract-8.code.ts +6 -0
  26. package/example/types-file/example-contract-8.types.ts +86 -0
  27. package/example/types-file/example-contract-9.code.ts +6 -0
  28. package/example/types-file/example-contract-9.types.ts +29 -0
  29. package/example/types-file/type-aliases.ts +81 -0
  30. package/example/types-file/type-utils.ts +36 -0
  31. package/index.js +969 -0
  32. package/index.js.map +1 -0
  33. package/index.ts +32 -0
  34. package/package.json +55 -0
  35. package/run.ts +3 -0
  36. package/src/cli-process.ts +111 -0
  37. package/src/cli.ts +34 -0
  38. package/src/generator/common.ts +21 -0
  39. package/src/generator/contract-name.ts +6 -0
  40. package/src/generator/contract-parser.ts +358 -0
  41. package/src/generator/process.ts +66 -0
  42. package/src/generator/schema-output.ts +54 -0
  43. package/src/generator/typescript-output.ts +239 -0
  44. package/src/taquito-contract-type-generator.ts +4 -0
  45. package/src/type-aliases-file-content.ts +83 -0
  46. package/src/type-aliases.ts +80 -0
  47. package/src/type-utils-file-content.ts +38 -0
  48. package/src/type-utils.ts +35 -0
  49. package/tasks.ts +127 -0
  50. package/test/generator.spec.ts +69 -0
  51. package/tsconfig.json +13 -0
@@ -0,0 +1,1409 @@
1
+ { parameter
2
+ (or (or (or (or %admin (or (unit %confirm_admin) (bool %pause)) (address %set_admin))
3
+ (nat %bid))
4
+ (or (nat %cancel)
5
+ (pair %configure
6
+ (mutez %opening_price)
7
+ (pair (nat %min_raise_percent)
8
+ (pair (mutez %min_raise)
9
+ (pair (nat %round_time)
10
+ (pair (nat %extend_time)
11
+ (pair (list %asset
12
+ (pair (address %fa2_address) (list %fa2_batch (pair (nat %token_id) (nat %amount)))))
13
+ (pair (timestamp %start_time) (timestamp %end_time))))))))))
14
+ (nat %resolve)) ;
15
+ storage
16
+ (pair (option %pauseable_admin
17
+ (pair (pair (address %admin) (bool %paused)) (option %pending_admin address)))
18
+ (pair (nat %current_id)
19
+ (pair (nat %max_auction_time)
20
+ (pair (nat %max_config_to_start_time)
21
+ (big_map %auctions
22
+ nat
23
+ (pair (address %seller)
24
+ (pair (mutez %current_bid)
25
+ (pair (timestamp %start_time)
26
+ (pair (timestamp %last_bid_time)
27
+ (pair (int %round_time)
28
+ (pair (int %extend_time)
29
+ (pair (list %asset
30
+ (pair (address %fa2_address) (list %fa2_batch (pair (nat %token_id) (nat %amount)))))
31
+ (pair (nat %min_raise_percent)
32
+ (pair (mutez %min_raise) (pair (timestamp %end_time) (address %highest_bidder)))))))))))))))) ;
33
+ code { LAMBDA
34
+ (option (pair (pair address bool) (option address)))
35
+ (lambda (option string) unit)
36
+ { LAMBDA
37
+ (pair (option (pair (pair address bool) (option address))) (option string))
38
+ unit
39
+ { DUP ;
40
+ CDR ;
41
+ SWAP ;
42
+ CAR ;
43
+ IF_NONE
44
+ { DROP ; UNIT }
45
+ { CAR ;
46
+ CAR ;
47
+ SENDER ;
48
+ COMPARE ;
49
+ NEQ ;
50
+ IF { IF_NONE
51
+ { PUSH string "NOT_AN_ADMIN" ; FAILWITH }
52
+ { PUSH string " " ; CONCAT ; PUSH string "NOT_AN_ADMIN" ; CONCAT ; FAILWITH } }
53
+ { DROP ; UNIT } } } ;
54
+ SWAP ;
55
+ APPLY } ;
56
+ LAMBDA
57
+ (option (pair (pair address bool) (option address)))
58
+ unit
59
+ { IF_NONE
60
+ { UNIT }
61
+ { CAR ; CDR ; IF { PUSH string "PAUSED" ; FAILWITH } { UNIT } } } ;
62
+ LAMBDA
63
+ (pair bool string)
64
+ unit
65
+ { UNPAIR ; NOT ; IF { FAILWITH } { DROP ; UNIT } } ;
66
+ LAMBDA
67
+ (pair (pair (list (pair address (list (pair nat nat)))) address) address)
68
+ (list operation)
69
+ { UNPAIR ;
70
+ UNPAIR ;
71
+ MAP { DIG 2 ;
72
+ DUP ;
73
+ DUG 3 ;
74
+ DIG 2 ;
75
+ DUP ;
76
+ DUG 3 ;
77
+ PAIR ;
78
+ LAMBDA
79
+ (pair (pair address address) (pair address (list (pair nat nat))))
80
+ operation
81
+ { DUP ;
82
+ CDR ;
83
+ SWAP ;
84
+ CAR ;
85
+ DUP ;
86
+ CDR ;
87
+ SWAP ;
88
+ CAR ;
89
+ DIG 2 ;
90
+ DUP ;
91
+ DUG 3 ;
92
+ CDR ;
93
+ MAP { DIG 2 ; DUP ; DUG 3 ; PAIR } ;
94
+ DIG 2 ;
95
+ DROP ;
96
+ NIL (pair address (list (pair address (pair nat nat)))) ;
97
+ SWAP ;
98
+ DIG 2 ;
99
+ PAIR ;
100
+ CONS ;
101
+ SWAP ;
102
+ CAR ;
103
+ CONTRACT %transfer
104
+ (list (pair (address %from_)
105
+ (list %txs (pair (address %to_) (pair (nat %token_id) (nat %amount)))))) ;
106
+ IF_NONE { PUSH string "Invalid FA2 Address" ; FAILWITH } {} ;
107
+ PUSH mutez 0 ;
108
+ DIG 2 ;
109
+ TRANSFER_TOKENS } ;
110
+ SWAP ;
111
+ APPLY ;
112
+ SWAP ;
113
+ EXEC } ;
114
+ SWAP ;
115
+ DROP ;
116
+ SWAP ;
117
+ DROP } ;
118
+ LAMBDA
119
+ (pair nat
120
+ (pair (option (pair (pair address bool) (option address)))
121
+ (pair nat
122
+ (pair nat
123
+ (pair nat
124
+ (big_map
125
+ nat
126
+ (pair address
127
+ (pair mutez
128
+ (pair timestamp
129
+ (pair timestamp
130
+ (pair int
131
+ (pair int
132
+ (pair (list (pair address (list (pair nat nat))))
133
+ (pair nat (pair mutez (pair timestamp address))))))))))))))))
134
+ (pair address
135
+ (pair mutez
136
+ (pair timestamp
137
+ (pair timestamp
138
+ (pair int
139
+ (pair int
140
+ (pair (list (pair address (list (pair nat nat))))
141
+ (pair nat (pair mutez (pair timestamp address))))))))))
142
+ { UNPAIR ;
143
+ SWAP ;
144
+ CDR ;
145
+ CDR ;
146
+ CDR ;
147
+ CDR ;
148
+ SWAP ;
149
+ GET ;
150
+ IF_NONE
151
+ { PUSH string "Auction does not exist for given asset_id" ; FAILWITH }
152
+ {} } ;
153
+ LAMBDA
154
+ address
155
+ (contract unit)
156
+ { CONTRACT unit ;
157
+ IF_NONE
158
+ { PUSH string "Return address does not resolve to contract" ; FAILWITH }
159
+ {} } ;
160
+ LAMBDA
161
+ (pair address
162
+ (pair mutez
163
+ (pair timestamp
164
+ (pair timestamp
165
+ (pair int
166
+ (pair int
167
+ (pair (list (pair address (list (pair nat nat))))
168
+ (pair nat (pair mutez (pair timestamp address))))))))))
169
+ bool
170
+ { DUP ;
171
+ CDR ;
172
+ CDR ;
173
+ CDR ;
174
+ CDR ;
175
+ CAR ;
176
+ SWAP ;
177
+ DUP ;
178
+ DUG 2 ;
179
+ CDR ;
180
+ CDR ;
181
+ CDR ;
182
+ CAR ;
183
+ ADD ;
184
+ NOW ;
185
+ COMPARE ;
186
+ GT ;
187
+ SWAP ;
188
+ CDR ;
189
+ CDR ;
190
+ CDR ;
191
+ CDR ;
192
+ CDR ;
193
+ CDR ;
194
+ CDR ;
195
+ CDR ;
196
+ CDR ;
197
+ CAR ;
198
+ NOW ;
199
+ COMPARE ;
200
+ GE ;
201
+ OR } ;
202
+ DIG 7 ;
203
+ UNPAIR ;
204
+ IF_LEFT
205
+ { IF_LEFT
206
+ { DIG 5 ;
207
+ DROP ;
208
+ IF_LEFT
209
+ { DIG 2 ;
210
+ DROP ;
211
+ DIG 2 ;
212
+ DROP ;
213
+ DIG 2 ;
214
+ DROP ;
215
+ DIG 3 ;
216
+ DROP ;
217
+ PUSH string "Amount must be 0mutez" ;
218
+ PUSH mutez 0 ;
219
+ AMOUNT ;
220
+ COMPARE ;
221
+ EQ ;
222
+ PAIR ;
223
+ DIG 3 ;
224
+ SWAP ;
225
+ EXEC ;
226
+ DROP ;
227
+ SWAP ;
228
+ DUP ;
229
+ DUG 2 ;
230
+ CAR ;
231
+ SWAP ;
232
+ IF_LEFT
233
+ { IF_LEFT
234
+ { DROP ;
235
+ DIG 2 ;
236
+ DROP ;
237
+ IF_NONE
238
+ { PUSH string "NO_ADMIN_CAPABILITIES_CONFIGURED" ; FAILWITH }
239
+ { DUP ;
240
+ CDR ;
241
+ IF_NONE
242
+ { DROP ; PUSH string "NO_PENDING_ADMIN" ; FAILWITH }
243
+ { SENDER ;
244
+ COMPARE ;
245
+ EQ ;
246
+ IF { NONE address ; SWAP ; CAR ; CDR ; SENDER ; PAIR ; PAIR ; SOME }
247
+ { DROP ; PUSH string "NOT_A_PENDING_ADMIN" ; FAILWITH } } } ;
248
+ NIL operation ;
249
+ PAIR }
250
+ { SWAP ;
251
+ DUP ;
252
+ DUG 2 ;
253
+ DIG 4 ;
254
+ SWAP ;
255
+ EXEC ;
256
+ DROP ;
257
+ SWAP ;
258
+ IF_NONE
259
+ { DROP ; PUSH string "NO_ADMIN_CAPABILITIES_CONFIGURED" ; FAILWITH }
260
+ { DUP ; CDR ; DUG 2 ; CAR ; CAR ; PAIR ; PAIR ; SOME } ;
261
+ NIL operation ;
262
+ PAIR } }
263
+ { SWAP ;
264
+ DUP ;
265
+ DUG 2 ;
266
+ DIG 4 ;
267
+ SWAP ;
268
+ EXEC ;
269
+ DROP ;
270
+ SWAP ;
271
+ IF_NONE
272
+ { DROP ; PUSH string "NO_ADMIN_CAPABILITIES_CONFIGURED" ; FAILWITH }
273
+ { SWAP ; SOME ; SWAP ; CAR ; PAIR ; SOME } ;
274
+ NIL operation ;
275
+ PAIR } ;
276
+ UNPAIR ;
277
+ DIG 2 ;
278
+ CDR ;
279
+ DIG 2 ;
280
+ PAIR ;
281
+ SWAP ;
282
+ PAIR }
283
+ { DIG 7 ;
284
+ DROP ;
285
+ SWAP ;
286
+ DUP ;
287
+ DUG 2 ;
288
+ SWAP ;
289
+ DUP ;
290
+ DUG 2 ;
291
+ PAIR ;
292
+ DIG 5 ;
293
+ SWAP ;
294
+ EXEC ;
295
+ PUSH string "Bidder must be an implicit account" ;
296
+ SOURCE ;
297
+ SENDER ;
298
+ COMPARE ;
299
+ EQ ;
300
+ PAIR ;
301
+ DIG 6 ;
302
+ DUP ;
303
+ DUG 7 ;
304
+ SWAP ;
305
+ EXEC ;
306
+ DROP ;
307
+ DIG 2 ;
308
+ DUP ;
309
+ DUG 3 ;
310
+ CAR ;
311
+ DIG 7 ;
312
+ SWAP ;
313
+ EXEC ;
314
+ DROP ;
315
+ PUSH string "Auction must be in progress" ;
316
+ SWAP ;
317
+ DUP ;
318
+ DUG 2 ;
319
+ DIG 5 ;
320
+ SWAP ;
321
+ EXEC ;
322
+ NOT ;
323
+ DIG 2 ;
324
+ DUP ;
325
+ DUG 3 ;
326
+ CDR ;
327
+ CDR ;
328
+ CAR ;
329
+ NOW ;
330
+ COMPARE ;
331
+ GE ;
332
+ AND ;
333
+ PAIR ;
334
+ DIG 5 ;
335
+ DUP ;
336
+ DUG 6 ;
337
+ SWAP ;
338
+ EXEC ;
339
+ DROP ;
340
+ PUSH string "Seller cannot place a bid" ;
341
+ SWAP ;
342
+ DUP ;
343
+ DUG 2 ;
344
+ CAR ;
345
+ SENDER ;
346
+ COMPARE ;
347
+ NEQ ;
348
+ PAIR ;
349
+ DIG 5 ;
350
+ SWAP ;
351
+ EXEC ;
352
+ DROP ;
353
+ DUP ;
354
+ CAR ;
355
+ SWAP ;
356
+ DUP ;
357
+ DUG 2 ;
358
+ CDR ;
359
+ CDR ;
360
+ CDR ;
361
+ CDR ;
362
+ CDR ;
363
+ CDR ;
364
+ CDR ;
365
+ CDR ;
366
+ CDR ;
367
+ CDR ;
368
+ COMPARE ;
369
+ EQ ;
370
+ SWAP ;
371
+ DUP ;
372
+ DUG 2 ;
373
+ CDR ;
374
+ CAR ;
375
+ AMOUNT ;
376
+ COMPARE ;
377
+ GE ;
378
+ AND ;
379
+ SWAP ;
380
+ DUP ;
381
+ DUG 2 ;
382
+ CDR ;
383
+ CDR ;
384
+ CDR ;
385
+ CDR ;
386
+ CDR ;
387
+ CDR ;
388
+ CDR ;
389
+ CDR ;
390
+ CAR ;
391
+ DIG 2 ;
392
+ DUP ;
393
+ DUG 3 ;
394
+ CDR ;
395
+ CAR ;
396
+ ADD ;
397
+ AMOUNT ;
398
+ COMPARE ;
399
+ GE ;
400
+ PUSH nat 100 ;
401
+ DIG 3 ;
402
+ DUP ;
403
+ DUG 4 ;
404
+ CDR ;
405
+ CAR ;
406
+ DIG 4 ;
407
+ DUP ;
408
+ DUG 5 ;
409
+ CDR ;
410
+ CDR ;
411
+ CDR ;
412
+ CDR ;
413
+ CDR ;
414
+ CDR ;
415
+ CDR ;
416
+ CAR ;
417
+ MUL ;
418
+ EDIV ;
419
+ IF_NONE
420
+ { PUSH string "DIVISION_BY_ZERO" ; FAILWITH }
421
+ { UNPAIR ;
422
+ PUSH mutez 0 ;
423
+ DIG 2 ;
424
+ COMPARE ;
425
+ GT ;
426
+ IF { PUSH mutez 1 ; ADD } {} } ;
427
+ DIG 3 ;
428
+ DUP ;
429
+ DUG 4 ;
430
+ CDR ;
431
+ CAR ;
432
+ ADD ;
433
+ AMOUNT ;
434
+ COMPARE ;
435
+ GE ;
436
+ OR ;
437
+ OR ;
438
+ NOT ;
439
+ IF { NOW ;
440
+ SWAP ;
441
+ DUP ;
442
+ DUG 2 ;
443
+ CDR ;
444
+ CDR ;
445
+ CDR ;
446
+ CAR ;
447
+ DIG 2 ;
448
+ DUP ;
449
+ DUG 3 ;
450
+ CDR ;
451
+ CDR ;
452
+ CDR ;
453
+ CDR ;
454
+ CDR ;
455
+ CDR ;
456
+ CDR ;
457
+ CDR ;
458
+ CDR ;
459
+ CDR ;
460
+ PAIR ;
461
+ AMOUNT ;
462
+ DIG 3 ;
463
+ DUP ;
464
+ DUG 4 ;
465
+ CDR ;
466
+ CAR ;
467
+ PAIR ;
468
+ PAIR ;
469
+ PAIR ;
470
+ PUSH string "Invalid Bid amount" ;
471
+ PAIR ;
472
+ FAILWITH }
473
+ {} ;
474
+ DUP ;
475
+ CDR ;
476
+ CDR ;
477
+ CDR ;
478
+ CDR ;
479
+ CDR ;
480
+ CDR ;
481
+ CDR ;
482
+ CDR ;
483
+ CDR ;
484
+ CDR ;
485
+ DIG 4 ;
486
+ SWAP ;
487
+ EXEC ;
488
+ SWAP ;
489
+ DUP ;
490
+ DUG 2 ;
491
+ CDR ;
492
+ CAR ;
493
+ UNIT ;
494
+ TRANSFER_TOKENS ;
495
+ SWAP ;
496
+ DUP ;
497
+ DUG 2 ;
498
+ CDR ;
499
+ CDR ;
500
+ CDR ;
501
+ CDR ;
502
+ CDR ;
503
+ CAR ;
504
+ NOW ;
505
+ DIG 3 ;
506
+ DUP ;
507
+ DUG 4 ;
508
+ CDR ;
509
+ CDR ;
510
+ CDR ;
511
+ CDR ;
512
+ CDR ;
513
+ CDR ;
514
+ CDR ;
515
+ CDR ;
516
+ CDR ;
517
+ CAR ;
518
+ SUB ;
519
+ COMPARE ;
520
+ LE ;
521
+ IF { SWAP ; DUP ; DUG 2 ; CDR ; CDR ; CDR ; CDR ; CDR ; CAR ; NOW ; ADD }
522
+ { SWAP ;
523
+ DUP ;
524
+ DUG 2 ;
525
+ CDR ;
526
+ CDR ;
527
+ CDR ;
528
+ CDR ;
529
+ CDR ;
530
+ CDR ;
531
+ CDR ;
532
+ CDR ;
533
+ CDR ;
534
+ CAR } ;
535
+ DIG 2 ;
536
+ DUP ;
537
+ DUG 3 ;
538
+ CDR ;
539
+ CDR ;
540
+ AMOUNT ;
541
+ PAIR ;
542
+ DIG 3 ;
543
+ CAR ;
544
+ PAIR ;
545
+ SENDER ;
546
+ SWAP ;
547
+ DUP ;
548
+ DUG 2 ;
549
+ CDR ;
550
+ CDR ;
551
+ CDR ;
552
+ CDR ;
553
+ CDR ;
554
+ CDR ;
555
+ CDR ;
556
+ CDR ;
557
+ CDR ;
558
+ CAR ;
559
+ PAIR ;
560
+ SWAP ;
561
+ DUP ;
562
+ DUG 2 ;
563
+ CDR ;
564
+ CDR ;
565
+ CDR ;
566
+ CDR ;
567
+ CDR ;
568
+ CDR ;
569
+ CDR ;
570
+ CDR ;
571
+ CAR ;
572
+ PAIR ;
573
+ SWAP ;
574
+ DUP ;
575
+ DUG 2 ;
576
+ CDR ;
577
+ CDR ;
578
+ CDR ;
579
+ CDR ;
580
+ CDR ;
581
+ CDR ;
582
+ CDR ;
583
+ CAR ;
584
+ PAIR ;
585
+ SWAP ;
586
+ DUP ;
587
+ DUG 2 ;
588
+ CDR ;
589
+ CDR ;
590
+ CDR ;
591
+ CDR ;
592
+ CDR ;
593
+ CDR ;
594
+ CAR ;
595
+ PAIR ;
596
+ SWAP ;
597
+ DUP ;
598
+ DUG 2 ;
599
+ CDR ;
600
+ CDR ;
601
+ CDR ;
602
+ CDR ;
603
+ CDR ;
604
+ CAR ;
605
+ PAIR ;
606
+ SWAP ;
607
+ DUP ;
608
+ DUG 2 ;
609
+ CDR ;
610
+ CDR ;
611
+ CDR ;
612
+ CDR ;
613
+ CAR ;
614
+ PAIR ;
615
+ SWAP ;
616
+ DUP ;
617
+ DUG 2 ;
618
+ CDR ;
619
+ CDR ;
620
+ CDR ;
621
+ CAR ;
622
+ PAIR ;
623
+ SWAP ;
624
+ DUP ;
625
+ DUG 2 ;
626
+ CDR ;
627
+ CDR ;
628
+ CAR ;
629
+ PAIR ;
630
+ SWAP ;
631
+ DUP ;
632
+ DUG 2 ;
633
+ CDR ;
634
+ CAR ;
635
+ PAIR ;
636
+ SWAP ;
637
+ CAR ;
638
+ PAIR ;
639
+ DUP ;
640
+ CDR ;
641
+ CDR ;
642
+ CDR ;
643
+ CDR ;
644
+ NOW ;
645
+ PAIR ;
646
+ SWAP ;
647
+ DUP ;
648
+ DUG 2 ;
649
+ CDR ;
650
+ CDR ;
651
+ CAR ;
652
+ PAIR ;
653
+ SWAP ;
654
+ DUP ;
655
+ DUG 2 ;
656
+ CDR ;
657
+ CAR ;
658
+ PAIR ;
659
+ SWAP ;
660
+ CAR ;
661
+ PAIR ;
662
+ DUP ;
663
+ CDR ;
664
+ CDR ;
665
+ CDR ;
666
+ CDR ;
667
+ CDR ;
668
+ CDR ;
669
+ CDR ;
670
+ CDR ;
671
+ CDR ;
672
+ CDR ;
673
+ DIG 2 ;
674
+ PAIR ;
675
+ SWAP ;
676
+ DUP ;
677
+ DUG 2 ;
678
+ CDR ;
679
+ CDR ;
680
+ CDR ;
681
+ CDR ;
682
+ CDR ;
683
+ CDR ;
684
+ CDR ;
685
+ CDR ;
686
+ CAR ;
687
+ PAIR ;
688
+ SWAP ;
689
+ DUP ;
690
+ DUG 2 ;
691
+ CDR ;
692
+ CDR ;
693
+ CDR ;
694
+ CDR ;
695
+ CDR ;
696
+ CDR ;
697
+ CDR ;
698
+ CAR ;
699
+ PAIR ;
700
+ SWAP ;
701
+ DUP ;
702
+ DUG 2 ;
703
+ CDR ;
704
+ CDR ;
705
+ CDR ;
706
+ CDR ;
707
+ CDR ;
708
+ CDR ;
709
+ CAR ;
710
+ PAIR ;
711
+ SWAP ;
712
+ DUP ;
713
+ DUG 2 ;
714
+ CDR ;
715
+ CDR ;
716
+ CDR ;
717
+ CDR ;
718
+ CDR ;
719
+ CAR ;
720
+ PAIR ;
721
+ SWAP ;
722
+ DUP ;
723
+ DUG 2 ;
724
+ CDR ;
725
+ CDR ;
726
+ CDR ;
727
+ CDR ;
728
+ CAR ;
729
+ PAIR ;
730
+ SWAP ;
731
+ DUP ;
732
+ DUG 2 ;
733
+ CDR ;
734
+ CDR ;
735
+ CDR ;
736
+ CAR ;
737
+ PAIR ;
738
+ SWAP ;
739
+ DUP ;
740
+ DUG 2 ;
741
+ CDR ;
742
+ CDR ;
743
+ CAR ;
744
+ PAIR ;
745
+ SWAP ;
746
+ DUP ;
747
+ DUG 2 ;
748
+ CDR ;
749
+ CAR ;
750
+ PAIR ;
751
+ SWAP ;
752
+ CAR ;
753
+ PAIR ;
754
+ DIG 3 ;
755
+ DUP ;
756
+ DUG 4 ;
757
+ CDR ;
758
+ CDR ;
759
+ CDR ;
760
+ CDR ;
761
+ SWAP ;
762
+ SOME ;
763
+ DIG 3 ;
764
+ UPDATE ;
765
+ DIG 2 ;
766
+ DUP ;
767
+ DUG 3 ;
768
+ CDR ;
769
+ CDR ;
770
+ CDR ;
771
+ CAR ;
772
+ PAIR ;
773
+ DIG 2 ;
774
+ DUP ;
775
+ DUG 3 ;
776
+ CDR ;
777
+ CDR ;
778
+ CAR ;
779
+ PAIR ;
780
+ DIG 2 ;
781
+ DUP ;
782
+ DUG 3 ;
783
+ CDR ;
784
+ CAR ;
785
+ PAIR ;
786
+ DIG 2 ;
787
+ CAR ;
788
+ PAIR ;
789
+ NIL operation ;
790
+ DIG 2 ;
791
+ CONS ;
792
+ PAIR } }
793
+ { IF_LEFT
794
+ { DIG 8 ;
795
+ DROP ;
796
+ SWAP ;
797
+ DUP ;
798
+ DUG 2 ;
799
+ CAR ;
800
+ DIG 8 ;
801
+ SWAP ;
802
+ EXEC ;
803
+ DROP ;
804
+ SWAP ;
805
+ DUP ;
806
+ DUG 2 ;
807
+ SWAP ;
808
+ DUP ;
809
+ DUG 2 ;
810
+ PAIR ;
811
+ DIG 5 ;
812
+ SWAP ;
813
+ EXEC ;
814
+ PUSH string "Only seller can cancel auction" ;
815
+ SWAP ;
816
+ DUP ;
817
+ DUG 2 ;
818
+ CAR ;
819
+ SENDER ;
820
+ COMPARE ;
821
+ EQ ;
822
+ PAIR ;
823
+ DIG 7 ;
824
+ DUP ;
825
+ DUG 8 ;
826
+ SWAP ;
827
+ EXEC ;
828
+ DROP ;
829
+ PUSH string "Auction must not have ended" ;
830
+ SWAP ;
831
+ DUP ;
832
+ DUG 2 ;
833
+ DIG 5 ;
834
+ SWAP ;
835
+ EXEC ;
836
+ NOT ;
837
+ PAIR ;
838
+ DIG 6 ;
839
+ DUP ;
840
+ DUG 7 ;
841
+ SWAP ;
842
+ EXEC ;
843
+ DROP ;
844
+ PUSH string "Amount must be 0mutez" ;
845
+ PUSH mutez 0 ;
846
+ AMOUNT ;
847
+ COMPARE ;
848
+ EQ ;
849
+ PAIR ;
850
+ DIG 6 ;
851
+ SWAP ;
852
+ EXEC ;
853
+ DROP ;
854
+ DUP ;
855
+ CAR ;
856
+ SELF_ADDRESS ;
857
+ DIG 2 ;
858
+ DUP ;
859
+ DUG 3 ;
860
+ CDR ;
861
+ CDR ;
862
+ CDR ;
863
+ CDR ;
864
+ CDR ;
865
+ CDR ;
866
+ CAR ;
867
+ PAIR ;
868
+ PAIR ;
869
+ DIG 5 ;
870
+ SWAP ;
871
+ EXEC ;
872
+ SWAP ;
873
+ DUP ;
874
+ DUG 2 ;
875
+ CDR ;
876
+ CDR ;
877
+ CDR ;
878
+ CDR ;
879
+ CDR ;
880
+ CDR ;
881
+ CDR ;
882
+ CDR ;
883
+ CDR ;
884
+ CDR ;
885
+ DIG 5 ;
886
+ SWAP ;
887
+ EXEC ;
888
+ DIG 2 ;
889
+ CDR ;
890
+ CAR ;
891
+ UNIT ;
892
+ TRANSFER_TOKENS ;
893
+ DIG 3 ;
894
+ DUP ;
895
+ DUG 4 ;
896
+ CDR ;
897
+ CDR ;
898
+ CDR ;
899
+ CDR ;
900
+ DIG 3 ;
901
+ NONE (pair address
902
+ (pair mutez
903
+ (pair timestamp
904
+ (pair timestamp
905
+ (pair int
906
+ (pair int
907
+ (pair (list (pair address (list (pair nat nat))))
908
+ (pair nat (pair mutez (pair timestamp address)))))))))) ;
909
+ SWAP ;
910
+ UPDATE ;
911
+ DIG 3 ;
912
+ DUP ;
913
+ DUG 4 ;
914
+ CDR ;
915
+ CDR ;
916
+ CDR ;
917
+ CAR ;
918
+ PAIR ;
919
+ DIG 3 ;
920
+ DUP ;
921
+ DUG 4 ;
922
+ CDR ;
923
+ CDR ;
924
+ CAR ;
925
+ PAIR ;
926
+ DIG 3 ;
927
+ DUP ;
928
+ DUG 4 ;
929
+ CDR ;
930
+ CAR ;
931
+ PAIR ;
932
+ DIG 3 ;
933
+ CAR ;
934
+ PAIR ;
935
+ DUG 2 ;
936
+ CONS ;
937
+ PAIR }
938
+ { DIG 2 ;
939
+ DROP ;
940
+ DIG 2 ;
941
+ DROP ;
942
+ DIG 2 ;
943
+ DROP ;
944
+ NONE string ;
945
+ DIG 2 ;
946
+ DUP ;
947
+ DUG 3 ;
948
+ CAR ;
949
+ DIG 7 ;
950
+ SWAP ;
951
+ EXEC ;
952
+ SWAP ;
953
+ EXEC ;
954
+ DROP ;
955
+ SWAP ;
956
+ DUP ;
957
+ DUG 2 ;
958
+ CAR ;
959
+ DIG 5 ;
960
+ SWAP ;
961
+ EXEC ;
962
+ DROP ;
963
+ PUSH string "end_time must be after start_time" ;
964
+ SWAP ;
965
+ DUP ;
966
+ DUG 2 ;
967
+ CDR ;
968
+ CDR ;
969
+ CDR ;
970
+ CDR ;
971
+ CDR ;
972
+ CDR ;
973
+ CAR ;
974
+ DIG 2 ;
975
+ DUP ;
976
+ DUG 3 ;
977
+ CDR ;
978
+ CDR ;
979
+ CDR ;
980
+ CDR ;
981
+ CDR ;
982
+ CDR ;
983
+ CDR ;
984
+ COMPARE ;
985
+ GT ;
986
+ PAIR ;
987
+ DIG 4 ;
988
+ DUP ;
989
+ DUG 5 ;
990
+ SWAP ;
991
+ EXEC ;
992
+ DROP ;
993
+ PUSH string "Auction time must be less than max_auction_time" ;
994
+ DIG 2 ;
995
+ DUP ;
996
+ DUG 3 ;
997
+ CDR ;
998
+ CDR ;
999
+ CAR ;
1000
+ DIG 2 ;
1001
+ DUP ;
1002
+ DUG 3 ;
1003
+ CDR ;
1004
+ CDR ;
1005
+ CDR ;
1006
+ CDR ;
1007
+ CDR ;
1008
+ CDR ;
1009
+ CAR ;
1010
+ DIG 3 ;
1011
+ DUP ;
1012
+ DUG 4 ;
1013
+ CDR ;
1014
+ CDR ;
1015
+ CDR ;
1016
+ CDR ;
1017
+ CDR ;
1018
+ CDR ;
1019
+ CDR ;
1020
+ SUB ;
1021
+ ABS ;
1022
+ COMPARE ;
1023
+ LE ;
1024
+ PAIR ;
1025
+ DIG 4 ;
1026
+ DUP ;
1027
+ DUG 5 ;
1028
+ SWAP ;
1029
+ EXEC ;
1030
+ DROP ;
1031
+ PUSH string "Start_time must not have already passed" ;
1032
+ NOW ;
1033
+ DIG 2 ;
1034
+ DUP ;
1035
+ DUG 3 ;
1036
+ CDR ;
1037
+ CDR ;
1038
+ CDR ;
1039
+ CDR ;
1040
+ CDR ;
1041
+ CDR ;
1042
+ CAR ;
1043
+ COMPARE ;
1044
+ GE ;
1045
+ PAIR ;
1046
+ DIG 4 ;
1047
+ DUP ;
1048
+ DUG 5 ;
1049
+ SWAP ;
1050
+ EXEC ;
1051
+ DROP ;
1052
+ PUSH string
1053
+ "start_time must not be greater than the sum of current time and max_config_to_start_time" ;
1054
+ DIG 2 ;
1055
+ DUP ;
1056
+ DUG 3 ;
1057
+ CDR ;
1058
+ CDR ;
1059
+ CDR ;
1060
+ CAR ;
1061
+ NOW ;
1062
+ DIG 3 ;
1063
+ DUP ;
1064
+ DUG 4 ;
1065
+ CDR ;
1066
+ CDR ;
1067
+ CDR ;
1068
+ CDR ;
1069
+ CDR ;
1070
+ CDR ;
1071
+ CAR ;
1072
+ SUB ;
1073
+ ABS ;
1074
+ COMPARE ;
1075
+ LE ;
1076
+ PAIR ;
1077
+ DIG 4 ;
1078
+ DUP ;
1079
+ DUG 5 ;
1080
+ SWAP ;
1081
+ EXEC ;
1082
+ DROP ;
1083
+ PUSH string "Opening price must be greater than 0mutez" ;
1084
+ PUSH mutez 0 ;
1085
+ DIG 2 ;
1086
+ DUP ;
1087
+ DUG 3 ;
1088
+ CAR ;
1089
+ COMPARE ;
1090
+ GT ;
1091
+ PAIR ;
1092
+ DIG 4 ;
1093
+ DUP ;
1094
+ DUG 5 ;
1095
+ SWAP ;
1096
+ EXEC ;
1097
+ DROP ;
1098
+ PUSH string "Amount must be equal to opening_price" ;
1099
+ SWAP ;
1100
+ DUP ;
1101
+ DUG 2 ;
1102
+ CAR ;
1103
+ AMOUNT ;
1104
+ COMPARE ;
1105
+ EQ ;
1106
+ PAIR ;
1107
+ DIG 4 ;
1108
+ DUP ;
1109
+ DUG 5 ;
1110
+ SWAP ;
1111
+ EXEC ;
1112
+ DROP ;
1113
+ PUSH string "Round_time must be greater than 0 seconds" ;
1114
+ PUSH nat 0 ;
1115
+ DIG 2 ;
1116
+ DUP ;
1117
+ DUG 3 ;
1118
+ CDR ;
1119
+ CDR ;
1120
+ CDR ;
1121
+ CAR ;
1122
+ COMPARE ;
1123
+ GT ;
1124
+ PAIR ;
1125
+ DIG 4 ;
1126
+ SWAP ;
1127
+ EXEC ;
1128
+ DROP ;
1129
+ SENDER ;
1130
+ SWAP ;
1131
+ DUP ;
1132
+ DUG 2 ;
1133
+ CDR ;
1134
+ CDR ;
1135
+ CDR ;
1136
+ CDR ;
1137
+ CDR ;
1138
+ CDR ;
1139
+ CDR ;
1140
+ PAIR ;
1141
+ SWAP ;
1142
+ DUP ;
1143
+ DUG 2 ;
1144
+ CDR ;
1145
+ CDR ;
1146
+ CAR ;
1147
+ PAIR ;
1148
+ SWAP ;
1149
+ DUP ;
1150
+ DUG 2 ;
1151
+ CDR ;
1152
+ CAR ;
1153
+ PAIR ;
1154
+ SWAP ;
1155
+ DUP ;
1156
+ DUG 2 ;
1157
+ CDR ;
1158
+ CDR ;
1159
+ CDR ;
1160
+ CDR ;
1161
+ CDR ;
1162
+ CAR ;
1163
+ PAIR ;
1164
+ SWAP ;
1165
+ DUP ;
1166
+ DUG 2 ;
1167
+ CDR ;
1168
+ CDR ;
1169
+ CDR ;
1170
+ CDR ;
1171
+ CAR ;
1172
+ INT ;
1173
+ PAIR ;
1174
+ SWAP ;
1175
+ DUP ;
1176
+ DUG 2 ;
1177
+ CDR ;
1178
+ CDR ;
1179
+ CDR ;
1180
+ CAR ;
1181
+ INT ;
1182
+ PAIR ;
1183
+ SWAP ;
1184
+ DUP ;
1185
+ DUG 2 ;
1186
+ CDR ;
1187
+ CDR ;
1188
+ CDR ;
1189
+ CDR ;
1190
+ CDR ;
1191
+ CDR ;
1192
+ CAR ;
1193
+ PAIR ;
1194
+ SWAP ;
1195
+ DUP ;
1196
+ DUG 2 ;
1197
+ CDR ;
1198
+ CDR ;
1199
+ CDR ;
1200
+ CDR ;
1201
+ CDR ;
1202
+ CDR ;
1203
+ CAR ;
1204
+ PAIR ;
1205
+ SWAP ;
1206
+ DUP ;
1207
+ DUG 2 ;
1208
+ CAR ;
1209
+ PAIR ;
1210
+ SENDER ;
1211
+ PAIR ;
1212
+ SELF_ADDRESS ;
1213
+ SENDER ;
1214
+ DIG 3 ;
1215
+ CDR ;
1216
+ CDR ;
1217
+ CDR ;
1218
+ CDR ;
1219
+ CDR ;
1220
+ CAR ;
1221
+ PAIR ;
1222
+ PAIR ;
1223
+ DIG 3 ;
1224
+ SWAP ;
1225
+ EXEC ;
1226
+ DIG 2 ;
1227
+ DUP ;
1228
+ DUG 3 ;
1229
+ CDR ;
1230
+ CDR ;
1231
+ CDR ;
1232
+ CDR ;
1233
+ DIG 2 ;
1234
+ SOME ;
1235
+ DIG 3 ;
1236
+ DUP ;
1237
+ DUG 4 ;
1238
+ CDR ;
1239
+ CAR ;
1240
+ UPDATE ;
1241
+ DIG 2 ;
1242
+ DUP ;
1243
+ DUG 3 ;
1244
+ CDR ;
1245
+ CDR ;
1246
+ CDR ;
1247
+ CAR ;
1248
+ PAIR ;
1249
+ DIG 2 ;
1250
+ DUP ;
1251
+ DUG 3 ;
1252
+ CDR ;
1253
+ CDR ;
1254
+ CAR ;
1255
+ PAIR ;
1256
+ DIG 2 ;
1257
+ DUP ;
1258
+ DUG 3 ;
1259
+ CDR ;
1260
+ CAR ;
1261
+ PAIR ;
1262
+ DIG 2 ;
1263
+ DUP ;
1264
+ DUG 3 ;
1265
+ CAR ;
1266
+ PAIR ;
1267
+ DUP ;
1268
+ CDR ;
1269
+ CDR ;
1270
+ PUSH nat 1 ;
1271
+ DIG 4 ;
1272
+ CDR ;
1273
+ CAR ;
1274
+ ADD ;
1275
+ PAIR ;
1276
+ SWAP ;
1277
+ CAR ;
1278
+ PAIR ;
1279
+ SWAP ;
1280
+ PAIR } } }
1281
+ { DIG 8 ;
1282
+ DROP ;
1283
+ SWAP ;
1284
+ DUP ;
1285
+ DUG 2 ;
1286
+ CAR ;
1287
+ DIG 8 ;
1288
+ SWAP ;
1289
+ EXEC ;
1290
+ DROP ;
1291
+ SWAP ;
1292
+ DUP ;
1293
+ DUG 2 ;
1294
+ SWAP ;
1295
+ DUP ;
1296
+ DUG 2 ;
1297
+ PAIR ;
1298
+ DIG 5 ;
1299
+ SWAP ;
1300
+ EXEC ;
1301
+ PUSH string "Auction must have ended" ;
1302
+ SWAP ;
1303
+ DUP ;
1304
+ DUG 2 ;
1305
+ DIG 5 ;
1306
+ SWAP ;
1307
+ EXEC ;
1308
+ PAIR ;
1309
+ DIG 6 ;
1310
+ DUP ;
1311
+ DUG 7 ;
1312
+ SWAP ;
1313
+ EXEC ;
1314
+ DROP ;
1315
+ PUSH string "Amount must be 0mutez" ;
1316
+ PUSH mutez 0 ;
1317
+ AMOUNT ;
1318
+ COMPARE ;
1319
+ EQ ;
1320
+ PAIR ;
1321
+ DIG 6 ;
1322
+ SWAP ;
1323
+ EXEC ;
1324
+ DROP ;
1325
+ DUP ;
1326
+ CDR ;
1327
+ CDR ;
1328
+ CDR ;
1329
+ CDR ;
1330
+ CDR ;
1331
+ CDR ;
1332
+ CDR ;
1333
+ CDR ;
1334
+ CDR ;
1335
+ CDR ;
1336
+ SELF_ADDRESS ;
1337
+ DIG 2 ;
1338
+ DUP ;
1339
+ DUG 3 ;
1340
+ CDR ;
1341
+ CDR ;
1342
+ CDR ;
1343
+ CDR ;
1344
+ CDR ;
1345
+ CDR ;
1346
+ CAR ;
1347
+ PAIR ;
1348
+ PAIR ;
1349
+ DIG 5 ;
1350
+ SWAP ;
1351
+ EXEC ;
1352
+ SWAP ;
1353
+ DUP ;
1354
+ DUG 2 ;
1355
+ CAR ;
1356
+ DIG 5 ;
1357
+ SWAP ;
1358
+ EXEC ;
1359
+ DIG 2 ;
1360
+ CDR ;
1361
+ CAR ;
1362
+ UNIT ;
1363
+ TRANSFER_TOKENS ;
1364
+ DIG 3 ;
1365
+ DUP ;
1366
+ DUG 4 ;
1367
+ CDR ;
1368
+ CDR ;
1369
+ CDR ;
1370
+ CDR ;
1371
+ DIG 3 ;
1372
+ NONE (pair address
1373
+ (pair mutez
1374
+ (pair timestamp
1375
+ (pair timestamp
1376
+ (pair int
1377
+ (pair int
1378
+ (pair (list (pair address (list (pair nat nat))))
1379
+ (pair nat (pair mutez (pair timestamp address)))))))))) ;
1380
+ SWAP ;
1381
+ UPDATE ;
1382
+ DIG 3 ;
1383
+ DUP ;
1384
+ DUG 4 ;
1385
+ CDR ;
1386
+ CDR ;
1387
+ CDR ;
1388
+ CAR ;
1389
+ PAIR ;
1390
+ DIG 3 ;
1391
+ DUP ;
1392
+ DUG 4 ;
1393
+ CDR ;
1394
+ CDR ;
1395
+ CAR ;
1396
+ PAIR ;
1397
+ DIG 3 ;
1398
+ DUP ;
1399
+ DUG 4 ;
1400
+ CDR ;
1401
+ CAR ;
1402
+ PAIR ;
1403
+ DIG 3 ;
1404
+ CAR ;
1405
+ PAIR ;
1406
+ DUG 2 ;
1407
+ CONS ;
1408
+ PAIR } } }
1409
+