BCD

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