BCD

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