BCD

Tezos Contract Explorer
Search Networks Deploy
  • Home
  • /
  • Ghostnet
  • /
  • KT1NuBh...UNa2
operations (1)Storage Code Interact Tokens Fork Views Statistics Details
Latest
​x
59
 
1
{ parameter (or (lambda %lambda unit (list operation)) (option %update_admin address)) ;
2
  storage (pair (pair %admin (address %current) (option %pending address))
3
                (address %whitelist_contract)) ;
4
  code { PUSH string "SENDER_NOT_ADMIN" ;
5
         SWAP ;
6
         UNPAIR ;
7
         IF_LEFT
8
           { DUP 2 ;
9
             CAR ;
10
             CAR ;
11
             SENDER ;
12
             COMPARE ;
13
             NEQ ;
14
             IF { DIG 2 ; FAILWITH } { DIG 2 ; DROP } ;
15
             SWAP ;
16
             UNIT ;
17
             DIG 2 ;
18
             SWAP ;
19
             EXEC ;
20
             PAIR }
21
           { DUP 2 ;
22
             CDR ;
23
             NIL address ;
24
             SENDER ;
25
             CONS ;
26
             VIEW "are_whitelisted" bool ;
27
             IF_NONE { PUSH string "CALL_ARE_WHITELISED_VIEW_FAILED" ; FAILWITH } {} ;
28
             IF
29
               { DUP 2 ;
30
                 CAR ;
31
                 SWAP ;
32
                 IF_NONE
33
                   { DIG 2 ;
34
                     DROP ;
35
                     CDR ;
36
                     IF_NONE
37
                       { PUSH string "NO_PENDING_ADMIN" ; FAILWITH }
38
                       { DUP ;
39
                         SENDER ;
40
                         COMPARE ;
41
                         NEQ ;
42
                         IF
43
                           { DROP ; PUSH string "NOT_PENDING_ADMIN" ; FAILWITH }
44
                           { NONE address ; SWAP ; PAIR } } }
45
                   { DUP 2 ;
46
                     CAR ;
47
                     SENDER ;
48
                     COMPARE ;
49
                     NEQ ;
50
                     IF { DIG 3 ; FAILWITH } { DIG 3 ; DROP } ;
51
                     SOME ;
52
                     UPDATE 2 } ;
53
                 NIL operation ;
54
                 DUG 2 ;
55
                 UPDATE 1 ;
56
                 SWAP ;
57
                 PAIR }
58
               { DROP 3 ; PUSH string "ADDRESS_NOT_WHITELISTED" ; FAILWITH } } } ;
59
  view "admin" unit address { CDR ; CAR ; CAR } }