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