BCD

Tezos Contract Explorer
Search Networks Deploy
  • Home
  • /
  • Mainnet
  • /
  • Hic et Nunc OBJKTs Legacy
operations (0)
Latest
​x
748
 
1
parameter (or
2
            (or
3
              (pair %balance_of (list %requests (pair (address %owner) (nat %token_id)))
4
                                (contract %callback (list (pair
5
                                                          (pair %request
6
                                                            (address %owner)
7
                                                            (nat %token_id))
8
                                                          (nat %balance)))))
9
              (or
10
                (pair %mint (pair (address %address) (nat %amount))
11
                            (pair (nat %token_id) (map %token_metadata_map string bytes)))
12
                (address %set_administrator)))
13
            (or
14
              (or (bool %set_pause)
15
                  (pair %token_metadata (list %token_ids nat)
16
                                        (lambda %handler
17
                                          (list (pair (nat %token_id)
18
                                                     (map %token_metadata_map string
19
                                                                              bytes)))
20
                                          unit)))
21
              (or
22
                (list %transfer (pair (address %from_)
23
                                     (list %txs (pair (address %to_)
24
                                                     (pair (nat %token_id) (nat %amount))))))
25
                (list %update_operators (or
26
                                         (pair %add_operator (address %owner)
27
                                                             (pair (address %operator)
28
                                                                   (nat %token_id)))
29
                                         (pair %remove_operator (address %owner)
30
                                                                (pair
31
                                                                  (address %operator)
32
                                                                  (nat %token_id))))))));
33
storage (pair
34
          (pair (address %administrator)
35
                (pair (nat %all_tokens) (big_map %ledger (pair address nat) nat)))
36
          (pair
37
            (pair (big_map %metadata string bytes)
38
                  (big_map %operators
39
                    (pair (address %owner) (pair (address %operator) (nat %token_id)))
40
                    unit))
41
            (pair (bool %paused)
42
                  (big_map %token_metadata nat
43
                                           (pair (nat %token_id)
44
                                                 (map %token_metadata_map string bytes))))));
45
code { DUP ;
46
       CDR ;
47
       SWAP ;
48
       CAR ;
49
       IF_LEFT
50
         { IF_LEFT
51
             { SWAP ;
52
               DUP ;
53
               DUG 2 ;
54
               CDR ;
55
               CDR ;
56
               CAR ;
57
               IF { PUSH int 478 ; FAILWITH } {} ;
58
               DUP ;
59
               CAR ;
60
               MAP { DIG 2 ;
61
                     DUP ;
62
                     DUG 3 ;
63
                     CDR ;
64
                     CDR ;
65
                     CDR ;
66
                     SWAP ;
67
                     DUP ;
68
                     DUG 2 ;
69
                     CDR ;
70
                     MEM ;
71
                     IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ;
72
                     DIG 2 ;
73
                     DUP ;
74
                     DUG 3 ;
75
                     CAR ;
76
                     CDR ;
77
                     CDR ;
78
                     SWAP ;
79
                     DUP ;
80
                     CDR ;
81
                     SWAP ;
82
                     DUP ;
83
                     DUG 3 ;
84
                     CAR ;
85
                     PAIR ;
86
                     MEM ;
87
                     IF
88
                       { DIG 2 ;
89
                         DUP ;
90
                         DUG 3 ;
91
                         CAR ;
92
                         CDR ;
93
                         CDR ;
94
                         SWAP ;
95
                         DUP ;
96
                         CDR ;
97
                         SWAP ;
98
                         DUP ;
99
                         DUG 3 ;
100
                         CAR ;
101
                         PAIR ;
102
                         GET ;
103
                         IF_NONE { PUSH int 485 ; FAILWITH } {} ;
104
                         SWAP ;
105
                         PAIR %request %balance }
106
                       { PUSH nat 0 ; SWAP ; PAIR %request %balance } } ;
107
               NIL operation ;
108
               DIG 2 ;
109
               CDR ;
110
               PUSH mutez 0 ;
111
               DIG 3 ;
112
               TRANSFER_TOKENS ;
113
               CONS }
114
             { IF_LEFT
115
                 { SWAP ;
116
                   DUP ;
117
                   DUG 2 ;
118
                   CAR ;
119
                   CAR ;
120
                   SENDER ;
121
                   COMPARE ;
122
                   EQ ;
123
                   IF {} { PUSH int 559 ; FAILWITH } ;
124
                   SWAP ;
125
                   DUP ;
126
                   DUG 2 ;
127
                   DUP ;
128
                   CDR ;
129
                   SWAP ;
130
                   CAR ;
131
                   DUP ;
132
                   CAR ;
133
                   SWAP ;
134
                   CDR ;
135
                   CDR ;
136
                   DIG 4 ;
137
                   CAR ;
138
                   CDR ;
139
                   CAR ;
140
                   DUP ;
141
                   PUSH nat 1 ;
142
                   DIG 6 ;
143
                   DUP ;
144
                   DUG 7 ;
145
                   CDR ;
146
                   CAR ;
147
                   ADD ;
148
                   DUP ;
149
                   DUG 2 ;
150
                   COMPARE ;
151
                   LE ;
152
                   IF { DROP } { SWAP ; DROP } ;
153
                   PAIR ;
154
                   SWAP ;
155
                   PAIR ;
156
                   PAIR ;
157
                   DUP ;
158
                   DUG 2 ;
159
                   CAR ;
160
                   CDR ;
161
                   CDR ;
162
                   SWAP ;
163
                   DUP ;
164
                   CDR ;
165
                   CAR ;
166
                   SWAP ;
167
                   DUP ;
168
                   DUG 3 ;
169
                   CAR ;
170
                   CAR ;
171
                   PAIR ;
172
                   MEM ;
173
                   IF
174
                     { SWAP ;
175
                       DUP ;
176
                       DUG 2 ;
177
                       DUP ;
178
                       CDR ;
179
                       SWAP ;
180
                       CAR ;
181
                       DUP ;
182
                       CAR ;
183
                       SWAP ;
184
                       CDR ;
185
                       DUP ;
186
                       CAR ;
187
                       SWAP ;
188
                       CDR ;
189
                       DUP ;
190
                       DIG 5 ;
191
                       DUP ;
192
                       CDR ;
193
                       CAR ;
194
                       SWAP ;
195
                       DUP ;
196
                       DUG 7 ;
197
                       CAR ;
198
                       CAR ;
199
                       PAIR ;
200
                       DUP ;
201
                       DUG 2 ;
202
                       GET ;
203
                       IF_NONE { PUSH int 571 ; FAILWITH } { DROP } ;
204
                       DIG 5 ;
205
                       DUP ;
206
                       DUG 6 ;
207
                       CAR ;
208
                       CDR ;
209
                       DIG 7 ;
210
                       CAR ;
211
                       CDR ;
212
                       CDR ;
213
                       DIG 7 ;
214
                       DUP ;
215
                       CDR ;
216
                       CAR ;
217
                       SWAP ;
218
                       DUP ;
219
                       DUG 9 ;
220
                       CAR ;
221
                       CAR ;
222
                       PAIR ;
223
                       GET ;
224
                       IF_NONE { PUSH int 571 ; FAILWITH } {} ;
225
                       ADD ;
226
                       SOME ;
227
                       SWAP ;
228
                       UPDATE ;
229
                       SWAP ;
230
                       PAIR ;
231
                       SWAP ;
232
                       PAIR ;
233
                       PAIR ;
234
                       SWAP }
235
                     { SWAP ;
236
                       DUP ;
237
                       CDR ;
238
                       SWAP ;
239
                       CAR ;
240
                       DUP ;
241
                       CAR ;
242
                       SWAP ;
243
                       CDR ;
244
                       DUP ;
245
                       CAR ;
246
                       SWAP ;
247
                       CDR ;
248
                       DIG 4 ;
249
                       DUP ;
250
                       CDR ;
251
                       CAR ;
252
                       SWAP ;
253
                       DUP ;
254
                       DUG 6 ;
255
                       CAR ;
256
                       CAR ;
257
                       PAIR ;
258
                       DIG 5 ;
259
                       DUP ;
260
                       DUG 6 ;
261
                       CAR ;
262
                       CDR ;
263
                       SOME ;
264
                       SWAP ;
265
                       UPDATE ;
266
                       SWAP ;
267
                       PAIR ;
268
                       SWAP ;
269
                       PAIR ;
270
                       PAIR ;
271
                       SWAP } ;
272
                   SWAP ;
273
                   DUP ;
274
                   DUG 2 ;
275
                   CDR ;
276
                   CDR ;
277
                   CDR ;
278
                   SWAP ;
279
                   DUP ;
280
                   DUG 2 ;
281
                   CDR ;
282
                   CAR ;
283
                   MEM ;
284
                   IF
285
                     { DROP }
286
                     { SWAP ;
287
                       DUP ;
288
                       CAR ;
289
                       SWAP ;
290
                       CDR ;
291
                       DUP ;
292
                       CAR ;
293
                       SWAP ;
294
                       CDR ;
295
                       DUP ;
296
                       CAR ;
297
                       SWAP ;
298
                       CDR ;
299
                       DIG 4 ;
300
                       DUP ;
301
                       CDR ;
302
                       CAR ;
303
                       SWAP ;
304
                       DUP ;
305
                       CDR ;
306
                       CDR ;
307
                       SWAP ;
308
                       CDR ;
309
                       CAR ;
310
                       PAIR %token_id %token_metadata_map ;
311
                       SOME ;
312
                       SWAP ;
313
                       UPDATE ;
314
                       SWAP ;
315
                       PAIR ;
316
                       SWAP ;
317
                       PAIR ;
318
                       SWAP ;
319
                       PAIR } }
320
                 { SWAP ;
321
                   DUP ;
322
                   DUG 2 ;
323
                   CAR ;
324
                   CAR ;
325
                   SENDER ;
326
                   COMPARE ;
327
                   EQ ;
328
                   IF {} { PUSH int 544 ; FAILWITH } ;
329
                   SWAP ;
330
                   DUP ;
331
                   CDR ;
332
                   SWAP ;
333
                   CAR ;
334
                   CDR ;
335
                   DIG 2 ;
336
                   PAIR ;
337
                   PAIR } ;
338
               NIL operation } }
339
         { IF_LEFT
340
             { IF_LEFT
341
                 { SWAP ;
342
                   DUP ;
343
                   DUG 2 ;
344
                   CAR ;
345
                   CAR ;
346
                   SENDER ;
347
                   COMPARE ;
348
                   EQ ;
349
                   IF {} { PUSH int 553 ; FAILWITH } ;
350
                   SWAP ;
351
                   DUP ;
352
                   CAR ;
353
                   SWAP ;
354
                   CDR ;
355
                   DUP ;
356
                   CAR ;
357
                   SWAP ;
358
                   CDR ;
359
                   CDR ;
360
                   DIG 3 ;
361
                   PAIR ;
362
                   SWAP ;
363
                   PAIR ;
364
                   SWAP ;
365
                   PAIR }
366
                 { SWAP ;
367
                   DUP ;
368
                   DUG 2 ;
369
                   CDR ;
370
                   CDR ;
371
                   CAR ;
372
                   IF { PUSH int 594 ; FAILWITH } {} ;
373
                   DUP ;
374
                   CDR ;
375
                   SWAP ;
376
                   DUP ;
377
                   DUG 2 ;
378
                   CAR ;
379
                   MAP { DIG 3 ;
380
                         DUP ;
381
                         DUG 4 ;
382
                         CDR ;
383
                         CDR ;
384
                         CDR ;
385
                         SWAP ;
386
                         GET ;
387
                         IF_NONE { PUSH int 604 ; FAILWITH } {} } ;
388
                   DIG 2 ;
389
                   DROP ;
390
                   EXEC ;
391
                   DROP } }
392
             { IF_LEFT
393
                 { SWAP ;
394
                   DUP ;
395
                   DUG 2 ;
396
                   CDR ;
397
                   CDR ;
398
                   CAR ;
399
                   IF { PUSH int 435 ; FAILWITH } {} ;
400
                   DUP ;
401
                   ITER { DUP ;
402
                          CDR ;
403
                          ITER { DIG 3 ;
404
                                 DUP ;
405
                                 DUG 4 ;
406
                                 CAR ;
407
                                 CAR ;
408
                                 SENDER ;
409
                                 COMPARE ;
410
                                 EQ ;
411
                                 IF
412
                                   { PUSH bool True }
413
                                   { SENDER ; DIG 2 ; DUP ; DUG 3 ; CAR ; COMPARE ; EQ } ;
414
                                 IF
415
                                   { PUSH bool True }
416
                                   { DIG 3 ;
417
                                     DUP ;
418
                                     DUG 4 ;
419
                                     CDR ;
420
                                     CAR ;
421
                                     CDR ;
422
                                     SWAP ;
423
                                     DUP ;
424
                                     DUG 2 ;
425
                                     CDR ;
426
                                     CAR ;
427
                                     SENDER ;
428
                                     PAIR %operator %token_id ;
429
                                     DIG 3 ;
430
                                     DUP ;
431
                                     DUG 4 ;
432
                                     CAR ;
433
                                     PAIR %owner ;
434
                                     MEM } ;
435
                                 IF {} { PUSH string "FA2_NOT_OPERATOR" ; FAILWITH } ;
436
                                 DIG 3 ;
437
                                 DUP ;
438
                                 DUG 4 ;
439
                                 CDR ;
440
                                 CDR ;
441
                                 CDR ;
442
                                 SWAP ;
443
                                 DUP ;
444
                                 DUG 2 ;
445
                                 CDR ;
446
                                 CAR ;
447
                                 MEM ;
448
                                 IF
449
                                   {}
450
                                   { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ;
451
                                 DUP ;
452
                                 CDR ;
453
                                 CDR ;
454
                                 PUSH nat 0 ;
455
                                 COMPARE ;
456
                                 LT ;
457
                                 IF
458
                                   { DUP ;
459
                                     CDR ;
460
                                     CDR ;
461
                                     DIG 4 ;
462
                                     DUP ;
463
                                     DUG 5 ;
464
                                     CAR ;
465
                                     CDR ;
466
                                     CDR ;
467
                                     DIG 2 ;
468
                                     DUP ;
469
                                     DUG 3 ;
470
                                     CDR ;
471
                                     CAR ;
472
                                     DIG 4 ;
473
                                     DUP ;
474
                                     DUG 5 ;
475
                                     CAR ;
476
                                     PAIR ;
477
                                     GET ;
478
                                     IF_NONE { PUSH int 462 ; FAILWITH } {} ;
479
                                     COMPARE ;
480
                                     GE ;
481
                                     IF
482
                                       {}
483
                                       { PUSH string "FA2_INSUFFICIENT_BALANCE" ;
484
                                         FAILWITH } ;
485
                                     DIG 3 ;
486
                                     DUP ;
487
                                     DUG 4 ;
488
                                     DUP ;
489
                                     CDR ;
490
                                     SWAP ;
491
                                     CAR ;
492
                                     DUP ;
493
                                     CAR ;
494
                                     SWAP ;
495
                                     CDR ;
496
                                     DUP ;
497
                                     CAR ;
498
                                     SWAP ;
499
                                     CDR ;
500
                                     DUP ;
501
                                     DIG 5 ;
502
                                     DUP ;
503
                                     DUG 6 ;
504
                                     CDR ;
505
                                     CAR ;
506
                                     DIG 7 ;
507
                                     DUP ;
508
                                     DUG 8 ;
509
                                     CAR ;
510
                                     PAIR ;
511
                                     DUP ;
512
                                     DUG 2 ;
513
                                     GET ;
514
                                     IF_NONE { PUSH int 466 ; FAILWITH } { DROP } ;
515
                                     DIG 5 ;
516
                                     DUP ;
517
                                     DUG 6 ;
518
                                     CDR ;
519
                                     CDR ;
520
                                     DIG 9 ;
521
                                     CAR ;
522
                                     CDR ;
523
                                     CDR ;
524
                                     DIG 7 ;
525
                                     DUP ;
526
                                     DUG 8 ;
527
                                     CDR ;
528
                                     CAR ;
529
                                     DIG 9 ;
530
                                     DUP ;
531
                                     DUG 10 ;
532
                                     CAR ;
533
                                     PAIR ;
534
                                     GET ;
535
                                     IF_NONE { PUSH int 466 ; FAILWITH } {} ;
536
                                     SUB ;
537
                                     ISNAT ;
538
                                     IF_NONE { PUSH int 466 ; FAILWITH } {} ;
539
                                     SOME ;
540
                                     SWAP ;
541
                                     UPDATE ;
542
                                     SWAP ;
543
                                     PAIR ;
544
                                     SWAP ;
545
                                     PAIR ;
546
                                     PAIR ;
547
                                     DUP ;
548
                                     DUG 4 ;
549
                                     CAR ;
550
                                     CDR ;
551
                                     CDR ;
552
                                     SWAP ;
553
                                     DUP ;
554
                                     CDR ;
555
                                     CAR ;
556
                                     SWAP ;
557
                                     DUP ;
558
                                     DUG 3 ;
559
                                     CAR ;
560
                                     PAIR ;
561
                                     MEM ;
562
                                     IF
563
                                       { DIG 3 ;
564
                                         DUP ;
565
                                         DUG 4 ;
566
                                         DUP ;
567
                                         CDR ;
568
                                         SWAP ;
569
                                         CAR ;
570
                                         DUP ;
571
                                         CAR ;
572
                                         SWAP ;
573
                                         CDR ;
574
                                         DUP ;
575
                                         CAR ;
576
                                         SWAP ;
577
                                         CDR ;
578
                                         DUP ;
579
                                         DIG 5 ;
580
                                         DUP ;
581
                                         CDR ;
582
                                         CAR ;
583
                                         SWAP ;
584
                                         DUP ;
585
                                         DUG 7 ;
586
                                         CAR ;
587
                                         PAIR ;
588
                                         DUP ;
589
                                         DUG 2 ;
590
                                         GET ;
591
                                         IF_NONE { PUSH int 469 ; FAILWITH } { DROP } ;
592
                                         DIG 5 ;
593
                                         DUP ;
594
                                         DUG 6 ;
595
                                         CDR ;
596
                                         CDR ;
597
                                         DIG 9 ;
598
                                         CAR ;
599
                                         CDR ;
600
                                         CDR ;
601
                                         DIG 7 ;
602
                                         DUP ;
603
                                         CDR ;
604
                                         CAR ;
605
                                         SWAP ;
606
                                         CAR ;
607
                                         PAIR ;
608
                                         GET ;
609
                                         IF_NONE { PUSH int 469 ; FAILWITH } {} ;
610
                                         ADD ;
611
                                         SOME ;
612
                                         SWAP ;
613
                                         UPDATE ;
614
                                         SWAP ;
615
                                         PAIR ;
616
                                         SWAP ;
617
                                         PAIR ;
618
                                         PAIR ;
619
                                         DUG 2 }
620
                                       { DIG 3 ;
621
                                         DUP ;
622
                                         CDR ;
623
                                         SWAP ;
624
                                         CAR ;
625
                                         DUP ;
626
                                         CAR ;
627
                                         SWAP ;
628
                                         CDR ;
629
                                         DUP ;
630
                                         CAR ;
631
                                         SWAP ;
632
                                         CDR ;
633
                                         DIG 4 ;
634
                                         DUP ;
635
                                         CDR ;
636
                                         CAR ;
637
                                         SWAP ;
638
                                         DUP ;
639
                                         DUG 6 ;
640
                                         CAR ;
641
                                         PAIR ;
642
                                         DIG 5 ;
643
                                         CDR ;
644
                                         CDR ;
645
                                         SOME ;
646
                                         SWAP ;
647
                                         UPDATE ;
648
                                         SWAP ;
649
                                         PAIR ;
650
                                         SWAP ;
651
                                         PAIR ;
652
                                         PAIR ;
653
                                         DUG 2 } }
654
                                   { DROP } } ;
655
                          DROP } ;
656
                   DROP }
657
                 { DUP ;
658
                   ITER { IF_LEFT
659
                            { DUP ;
660
                              CAR ;
661
                              SENDER ;
662
                              COMPARE ;
663
                              EQ ;
664
                              IF
665
                                { PUSH bool True }
666
                                { DIG 2 ; DUP ; DUG 3 ; CAR ; CAR ; SENDER ; COMPARE ; EQ } ;
667
                              IF {} { PUSH int 514 ; FAILWITH } ;
668
                              DIG 2 ;
669
                              DUP ;
670
                              CAR ;
671
                              SWAP ;
672
                              CDR ;
673
                              DUP ;
674
                              CDR ;
675
                              SWAP ;
676
                              CAR ;
677
                              DUP ;
678
                              CAR ;
679
                              SWAP ;
680
                              CDR ;
681
                              DIG 4 ;
682
                              DUP ;
683
                              CDR ;
684
                              CDR ;
685
                              SWAP ;
686
                              DUP ;
687
                              DUG 6 ;
688
                              CDR ;
689
                              CAR ;
690
                              PAIR %operator %token_id ;
691
                              DIG 5 ;
692
                              CAR ;
693
                              PAIR %owner ;
694
                              PUSH (option unit) (Some Unit) ;
695
                              SWAP ;
696
                              UPDATE ;
697
                              SWAP ;
698
                              PAIR ;
699
                              PAIR ;
700
                              SWAP ;
701
                              PAIR ;
702
                              SWAP }
703
                            { DUP ;
704
                              CAR ;
705
                              SENDER ;
706
                              COMPARE ;
707
                              EQ ;
708
                              IF
709
                                { PUSH bool True }
710
                                { DIG 2 ; DUP ; DUG 3 ; CAR ; CAR ; SENDER ; COMPARE ; EQ } ;
711
                              IF {} { PUSH int 521 ; FAILWITH } ;
712
                              DIG 2 ;
713
                              DUP ;
714
                              CAR ;
715
                              SWAP ;
716
                              CDR ;
717
                              DUP ;
718
                              CDR ;
719
                              SWAP ;
720
                              CAR ;
721
                              DUP ;
722
                              CAR ;
723
                              SWAP ;
724
                              CDR ;
725
                              NONE unit ;
726
                              DIG 5 ;
727
                              DUP ;
728
                              CDR ;
729
                              CDR ;
730
                              SWAP ;
731
                              DUP ;
732
                              DUG 7 ;
733
                              CDR ;
734
                              CAR ;
735
                              PAIR %operator %token_id ;
736
                              DIG 6 ;
737
                              CAR ;
738
                              PAIR %owner ;
739
                              UPDATE ;
740
                              SWAP ;
741
                              PAIR ;
742
                              PAIR ;
743
                              SWAP ;
744
                              PAIR ;
745
                              SWAP } } ;
746
                   DROP } } ;
747
           NIL operation } ;
748
       PAIR }