Referenced contracts
x
2728
{ UNPAIR ; IF_LEFT { IF_LEFT { IF_LEFT { IF_LEFT { DROP ; PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP ; GET 3 ; GET 5 ; IF_NONE { PUSH string "NO_SUPERADMIN_PROPOSED" ; FAILWITH } { DROP } ; DUP ; GET 3 ; GET 5 ; IF_NONE { PUSH int 478 ; FAILWITH } {} ; SENDER ; COMPARE ; EQ ; IF {} { PUSH string "NOT_PROPOSED_SUPERADMIN" ; FAILWITH } ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; CAR ; SENDER ; NONE address ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; NIL operation ; DUP 2 ; GET 3 ; GET 6 ; SENDER ; PAIR ; EMIT %superadmin_accepted (pair (address %new_superadmin) (address %old_superadmin)) ; CONS } { NIL (pair (pair address nat) nat) ; DUP 2 ; CAR ; ITER { DUP 4 ; GET 9 ; DUP 2 ; CDR ; MEM ; IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ; SWAP ; DUP 4 ; CAR ; CAR ; GET 6 ; DUP 3 ; CDR ; DUP 4 ; CAR ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; DIG 2 ; PAIR ; CONS } ; NIL operation ; DIG 2 ; CDR ; PUSH mutez 0 ; DIG 3 ; TRANSFER_TOKENS ; CONS } } { IF_LEFT { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; MEM ; IF {} { PUSH string "LISTING_NOT_FOUND" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET ; IF_NONE { PUSH int 734 ; FAILWITH } {} ; GET 5 ; CDR ; SENDER ; COMPARE ; EQ ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF { PUSH bool True } { DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM } ; IF {} { PUSH string "NOT_AUTHORIZED_TO_CANCEL" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET ; IF_NONE { PUSH int 734 ; FAILWITH } {} ; CAR ; CAR ; CAR ; CAR ; IF {} { PUSH string "LISTING_ALREADY_INACTIVE" ; FAILWITH } ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP ; DUP 7 ; DUP ; DUG 2 ; GET ; IF_NONE { PUSH int 746 ; FAILWITH } {} ; UNPAIR ; UNPAIR ; UNPAIR ; CDR ; PUSH bool False ; PAIR ; PAIR ; PAIR ; PAIR ; SOME ; SWAP ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; DUP 2 ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DIG 6 ; CAR ; GET 3 ; CAR ; DUP 7 ; GET ; IF_NONE { PUSH int 734 ; FAILWITH } {} ; SOME ; DUP 7 ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; NIL operation ; DUP 2 ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; GET ; IF_NONE { PUSH int 734 ; FAILWITH } {} ; GET 5 ; CDR ; PAIR ; DUP 4 ; CAR ; GET 3 ; CAR ; DIG 3 ; GET ; IF_NONE { PUSH int 734 ; FAILWITH } {} ; CAR ; GET 3 ; CDR ; SENDER ; PAIR ; PAIR ; EMIT %listing_canceled (pair (pair (address %canceled_by) (nat %editions_sold)) (pair (address %seller) (nat %token_id))) ; CONS } { DUP 2 ; GET 3 ; CAR ; CDR ; IF { PUSH string "CONTRACT_PAUSED" ; FAILWITH } {} ; PUSH nat 0 ; DUP 2 ; CDR ; COMPARE ; GT ; IF {} { PUSH string "ZERO_AMOUNT_NOT_ALLOWED" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; MEM ; IF {} { PUSH string "COLLECT_ID_NOT_FOUND" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; CAR ; CAR ; IF {} { PUSH string "LISTING_NOT_ACTIVE" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 7 ; IF { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH bool False } { DROP ; PUSH bool True } } { PUSH bool False } ; IF { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; GET 4 ; IF_NONE { PUSH bool True } { DROP ; PUSH bool False } } { PUSH bool False } ; IF { SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP ; DUP 7 ; CAR ; DUP ; DUG 2 ; GET ; IF_NONE { PUSH int 774 ; FAILWITH } {} ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; CAR ; NOW ; SOME ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; SOME ; SWAP ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP } {} ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 9 ; NOW ; COMPARE ; GE ; IF {} { PUSH string "LISTING_NOT_STARTED" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE {} { DROP ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 7 ; IF { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; GET 4 ; IF_NONE { PUSH string "SALE_NOT_STARTED" ; FAILWITH } { DROP } } {} ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 349 ; FAILWITH } {} ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 3 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 9 ; ADD ; NOW ; COMPARE ; LT ; IF {} { PUSH string "LISTING_CLOSED" ; FAILWITH } } ; PUSH nat 0 ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 3 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; CAR ; CAR ; COMPARE ; NEQ ; IF { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; CAR ; CAR ; DUP 2 ; CDR ; DUP 4 ; CAR ; CAR ; GET 6 ; DUP 5 ; CAR ; GET 3 ; CAR ; DUP 5 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; SENDER ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; COMPARE ; LE ; IF {} { PUSH string "MAX_EDITIONS_EXCEEDED" ; FAILWITH } } {} ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP ; DUP 7 ; CAR ; DUP ; DUG 2 ; GET ; IF_NONE { PUSH int 785 ; FAILWITH } {} ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; DUP 12 ; CDR ; ADD ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SOME ; SWAP ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; DUP 2 ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DIG 6 ; CAR ; GET 3 ; CAR ; DUP 7 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; SOME ; DUP 7 ; CAR ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 2 ; CDR ; MUL ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "INCORRECT_AMOUNT_SENT" ; FAILWITH } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; GET 3 ; IF_NONE {} { DROP ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; GET 4 ; IF_NONE { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; GET 3 ; IF_NONE { PUSH int 795 ; FAILWITH } {} ; SENDER ; MEM ; IF {} { PUSH string "PRIVATE_SALE" ; FAILWITH } } { DROP ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; GET 4 ; IF_NONE { PUSH int 799 ; FAILWITH } {} ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 3 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 9 ; ADD ; NOW ; COMPARE ; LT ; IF { DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 3 ; GET 3 ; IF_NONE { PUSH int 795 ; FAILWITH } {} ; SENDER ; MEM ; IF {} { PUSH string "NOT_ON_RESERVE_LIST" ; FAILWITH } } {} } } ; DUP 2 ; CAR ; GET 3 ; CAR ; DUP 2 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; CAR ; CDR ; IF_NONE { NIL operation } { DROP ; PUSH bool False ; NIL operation ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; CAR ; CAR ; CDR ; IF_NONE { PUSH int 811 ; FAILWITH } {} ; ITER { DUP 3 ; IF { DROP } { DIG 2 ; DROP ; DUP ; CAR ; CONTRACT %transfer (list (pair (address %from_) (list %txs (pair (address %to_) (pair (nat %token_id) (nat %amount)))))) ; IF_NONE { PUSH string "INVALID_FA2_CONTRACT" ; FAILWITH } { DROP } ; SWAP ; DUP 2 ; CAR ; CONTRACT %transfer (list (pair (address %from_) (list %txs (pair (address %to_) (pair (nat %token_id) (nat %amount)))))) ; IF_NONE { PUSH int 333 ; FAILWITH } {} ; PUSH mutez 0 ; NIL (pair address (list (pair address (pair nat nat)))) ; NIL (pair address (pair nat nat)) ; DUP 6 ; GET 4 ; DIG 6 ; GET 3 ; PUSH address "tz1burnburnburnburnburnburnburjAYjjX" ; PAIR 3 ; CONS ; SENDER ; PAIR ; CONS ; TRANSFER_TOKENS ; CONS ; PUSH bool True ; SWAP } } ; SWAP ; IF {} { PUSH string "BURN_REQUIREMENT_NOT_MET" ; FAILWITH } } ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 3 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 7 ; IF { DUP 3 ; GET 3 ; GET 3 ; SENDER ; MEM ; IF { PUSH string "PENDING_EXISTS" ; FAILWITH } {} ; PUSH nat 0 ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 8 ; ITER { CDR ; SIZE ; ADD } ; DUP 4 ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; DUP 6 ; DUP 9 ; CDR ; DUP 11 ; CAR ; GET 3 ; CAR ; DUP 11 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; SENDER ; PAIR 4 ; DIG 9 ; DROP ; SOME ; SENDER ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; DUG 3 ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 8 ; ITER { NIL (pair address nat) ; DUP 2 ; CDR ; ITER { CAR ; SENDER ; PAIR ; CONS } ; DIG 3 ; DIG 2 ; CAR ; CONTRACT %balance_of (pair (list %requests (pair (address %owner) (nat %token_id))) (contract %callback (list (pair (pair %request (address %owner) (nat %token_id)) (nat %balance))))) ; IF_NONE { PUSH string "FA2_BALANCE_OF_MISSING" ; FAILWITH } {} ; PUSH mutez 0 ; SELF %receive_balance ; DIG 4 ; PAIR ; TRANSFER_TOKENS ; CONS ; SWAP } ; DROP } {} ; DUP 3 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; DUP 8 ; CDR ; DUP 10 ; CAR ; CAR ; GET 6 ; DUP 11 ; CAR ; GET 3 ; CAR ; DUP 11 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; SENDER ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; SOME ; DIG 9 ; CAR ; GET 3 ; CAR ; DUP 10 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; SENDER ; PAIR ; UPDATE ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 2 ; DUP 3 ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP 7 ; CDR ; DUP 9 ; GET 5 ; CAR ; DUP 10 ; CAR ; GET 3 ; CAR ; DUP 10 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; SOME ; DIG 8 ; CAR ; GET 3 ; CAR ; DUP 9 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; DUG 2 ; PUSH mutez 0 ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; COMPARE ; GT ; IF { PUSH mutez 0 ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 5 ; CAR ; ITER { PUSH mutez 0 ; PUSH nat 10000 ; DUP 3 ; CDR ; DUP 8 ; CAR ; GET 3 ; CAR ; DUP 8 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 8 ; CDR ; MUL ; MUL ; EDIV ; IF_NONE { PUSH int 866 ; FAILWITH } {} ; CAR ; COMPARE ; GT ; IF { DIG 2 ; DUP 2 ; CAR ; CONTRACT unit ; IF_NONE { PUSH int 868 ; FAILWITH } {} ; PUSH nat 10000 ; DUP 4 ; CDR ; DUP 8 ; CAR ; GET 3 ; CAR ; DUP 8 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 8 ; CDR ; MUL ; MUL ; EDIV ; IF_NONE { PUSH int 866 ; FAILWITH } {} ; CAR ; UNIT ; TRANSFER_TOKENS ; CONS ; DUG 2 ; SWAP ; PUSH nat 10000 ; DIG 2 ; CDR ; DUP 6 ; CAR ; GET 3 ; CAR ; DUP 6 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 6 ; CDR ; MUL ; MUL ; EDIV ; IF_NONE { PUSH int 866 ; FAILWITH } {} ; CAR ; ADD } { DROP } } ; PUSH mutez 0 ; DUP 2 ; DUP 6 ; CAR ; GET 3 ; CAR ; DUP 6 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 6 ; CDR ; MUL ; SUB_MUTEZ ; IF_NONE { PUSH int 872 ; FAILWITH } {} ; COMPARE ; GT ; IF { SWAP ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 5 ; CDR ; CONTRACT unit ; IF_NONE { PUSH int 874 ; FAILWITH } {} ; DIG 2 ; DUP 5 ; CAR ; GET 3 ; CAR ; DUP 5 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; CAR ; GET 3 ; CAR ; DUP 5 ; CDR ; MUL ; SUB_MUTEZ ; IF_NONE { PUSH int 872 ; FAILWITH } {} ; UNIT ; TRANSFER_TOKENS ; CONS } { DROP } } {} ; AMOUNT ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 4 ; CAR ; GET ; IF_NONE { PUSH int 769 ; FAILWITH } {} ; GET 10 ; PAIR ; SENDER ; DIG 3 ; CDR ; PAIR ; PAIR ; EMIT %collect (pair (pair (nat %amount) (address %collector)) (pair (nat %token_id) (mutez %total_paid))) ; CONS } } } { IF_LEFT { IF_LEFT { DUP 2 ; GET 3 ; CAR ; CDR ; IF { PUSH string "CONTRACT_PAUSED" ; FAILWITH } {} ; PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { DUP 2 ; GET 9 ; DUP 2 ; GET 8 ; MEM ; IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ; DUP 2 ; GET 7 ; DUP 2 ; GET 8 ; MEM ; IF {} { PUSH string "TOKEN_CREATOR_MISSING" ; FAILWITH } ; SENDER ; DUP 3 ; GET 7 ; DUP 3 ; GET 8 ; GET ; IF_NONE { PUSH int 303 ; FAILWITH } {} ; COMPARE ; EQ ; IF {} { PUSH string "NOT_TOKEN_CREATOR_OR_ADMIN" ; FAILWITH } } ; DUP ; CAR ; GET 3 ; CAR ; IF_NONE {} { DROP ; DUP 2 ; CAR ; CAR ; GET 5 ; DUP 2 ; CAR ; GET 3 ; CAR ; IF_NONE { PUSH int 657 ; FAILWITH } {} ; MEM ; IF {} { PUSH string "EVENT_NOT_FOUND" ; FAILWITH } ; DUP 2 ; CAR ; CAR ; GET 5 ; DUP 2 ; CAR ; GET 3 ; CAR ; IF_NONE { PUSH int 657 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 659 ; FAILWITH } {} ; GET 7 ; IF {} { PUSH string "EVENT_DISABLED" ; FAILWITH } ; DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ ; IF { PUSH bool True } { DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM } ; IF { PUSH bool True } { DUP 2 ; CAR ; CAR ; GET 5 ; DUP 2 ; CAR ; GET 3 ; CAR ; IF_NONE { PUSH int 657 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 659 ; FAILWITH } {} ; GET 5 ; SENDER ; MEM } ; IF {} { PUSH string "NOT_EVENT_LISTER" ; FAILWITH } } ; NOW ; DUP 2 ; GET 7 ; COMPARE ; GE ; IF {} { PUSH string "INVALID_START_TIME" ; FAILWITH } ; DUP ; CAR ; CAR ; GET 3 ; IF_NONE {} { DROP ; PUSH nat 3600 ; DUP 2 ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 668 ; FAILWITH } {} ; ISNAT ; IF_NONE { PUSH int 668 ; FAILWITH } {} ; COMPARE ; GE ; IF { PUSH nat 2592000 ; DUP 2 ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 668 ; FAILWITH } {} ; ISNAT ; IF_NONE { PUSH int 669 ; FAILWITH } {} ; COMPARE ; LE } { PUSH bool False } ; IF {} { PUSH string "INVALID_DURATION" ; FAILWITH } } ; PUSH nat 20 ; DUP 2 ; GET 5 ; CAR ; SIZE ; COMPARE ; LE ; IF {} { PUSH string "TOO_MANY_SALE_SPLITS" ; FAILWITH } ; PUSH nat 0 ; EMPTY_SET address ; DUP 3 ; GET 5 ; CAR ; ITER { DUP 2 ; DUP 2 ; CAR ; MEM ; IF { PUSH string "DUPLICATE_SPLIT_ADDRESS" ; FAILWITH } {} ; PUSH address "KT18amZmM5W7qDWVt2pH6uj7sCEd3kbzLrHT" ; DUP 2 ; CAR ; COMPARE ; LT ; IF {} { PUSH string "ONLY_IMPLICIT_ADDRESSES_ALLOWED" ; FAILWITH } ; SWAP ; PUSH bool True ; DUP 3 ; CAR ; UPDATE ; SWAP ; PUSH nat 0 ; DUP 2 ; CDR ; COMPARE ; GT ; IF {} { PUSH string "INVALID_SALE_SPLIT_AMOUNT" ; FAILWITH } ; DIG 2 ; SWAP ; CDR ; ADD ; SWAP } ; PUSH nat 10000 ; DUP 3 ; COMPARE ; EQ ; IF {} { PUSH string "SALE_SPLIT_MUST_BE_100_PERCENT" ; FAILWITH } ; DUP 3 ; GET 3 ; GET 4 ; IF_NONE {} { DROP ; PUSH int 0 ; DUP 4 ; GET 3 ; GET 4 ; IF_NONE { PUSH int 678 ; FAILWITH } {} ; COMPARE ; GT ; IF {} { PUSH string "INVALID_RESERVE_PERIOD" ; FAILWITH } ; DUP 3 ; CAR ; CAR ; GET 3 ; IF_NONE {} { DROP ; DUP 3 ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 668 ; FAILWITH } {} ; DUP 4 ; GET 3 ; GET 4 ; IF_NONE { PUSH int 678 ; FAILWITH } {} ; COMPARE ; LE ; IF {} { PUSH string "RESERVE_PERIOD_TOO_LONG" ; FAILWITH } } ; DUP 3 ; GET 3 ; GET 3 ; IF_NONE { PUSH string "RESERVE_PERIOD_REQUIRES_RESERVE_LIST" ; FAILWITH } { DROP } } ; DUP 3 ; CAR ; GET 3 ; CDR ; IF { PUSH nat 0 ; DUP 4 ; CAR ; GET 5 ; SIZE ; COMPARE ; GT ; IF {} { PUSH string "GATE_TOKENS_REQUIRED" ; FAILWITH } ; DUP 3 ; CAR ; GET 5 ; ITER { PUSH nat 0 ; DUP 2 ; CDR ; SIZE ; COMPARE ; GT ; IF {} { PUSH string "TOKEN_REQS_REQUIRED" ; FAILWITH } ; DUP ; CDR ; ITER { CDR ; PUSH nat 0 ; COMPARE ; LT ; IF {} { PUSH string "INVALID_MIN_BALANCE" ; FAILWITH } } ; DROP } } {} ; DUP 3 ; CAR ; CAR ; CAR ; IF_NONE { DROP 2 } { DROP ; DUP 3 ; CAR ; CAR ; CAR ; IF_NONE { PUSH int 693 ; FAILWITH } {} ; ITER { GET 4 ; PUSH nat 0 ; COMPARE ; LT ; IF {} { PUSH string "BURN_AMOUNT_MUST_BE_POSITIVE" ; FAILWITH } } ; DROP 2 } ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP 6 ; GET 8 ; DUP 7 ; GET 7 ; PAIR ; DUP 7 ; GET 5 ; CDR ; PAIR ; SENDER ; DUP 8 ; GET 5 ; CAR ; PAIR ; PAIR ; DUP 7 ; GET 3 ; GET 4 ; DUP 8 ; GET 3 ; GET 3 ; PAIR ; DUP 8 ; GET 3 ; CAR ; DUP 9 ; CAR ; GET 6 ; PAIR ; PAIR ; PAIR ; DUP 7 ; CAR ; GET 5 ; DUP 8 ; CAR ; GET 3 ; CDR ; PAIR ; DUP 8 ; CAR ; GET 3 ; CAR ; PAIR ; PUSH nat 0 ; DUP 9 ; CAR ; CAR ; GET 4 ; PAIR ; PAIR ; NONE timestamp ; DUP 9 ; CAR ; CAR ; GET 3 ; PAIR ; DUP 9 ; CAR ; CAR ; CAR ; PUSH bool True ; PAIR ; PAIR ; PAIR ; PAIR ; SOME ; DUP 7 ; GET 8 ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; NIL operation ; DUP 2 ; GET 8 ; DUP 3 ; GET 7 ; PAIR ; SENDER ; PAIR ; DIG 2 ; DUP ; CAR ; CAR ; GET 4 ; SWAP ; CAR ; CAR ; GET 3 ; PAIR ; PAIR ; EMIT %listing_created (pair (pair (option %duration int) (mutez %edition_price)) (pair (address %seller) (pair (timestamp %start_time) (nat %token_id)))) ; CONS } { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; GET 3 ; CAR ; CDR ; IF { PUSH string "CONTRACT_PAUSED" ; FAILWITH } {} ; DUP 2 ; CAR ; CAR ; GET 3 ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM } ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { PUSH string "NOT_ALLOWED" ; FAILWITH } ; PUSH nat 30 ; DUP 2 ; SIZE ; COMPARE ; LE ; IF {} { PUSH string "TOO_MANY_TOKENS_IN_BATCH" ; FAILWITH } ; NIL operation ; DUP 2 ; ITER { PUSH nat 50 ; DUP 2 ; CDR ; SIZE ; COMPARE ; LE ; IF {} { PUSH string "TOO_MANY_ROYALTY_RECIPIENTS" ; FAILWITH } ; PUSH nat 0 ; EMPTY_SET address ; DUP 3 ; CDR ; ITER { DUP 2 ; DUP 2 ; CAR ; MEM ; IF { PUSH string "DUPLICATE_SPLIT_ADDRESS" ; FAILWITH } {} ; SWAP ; PUSH bool True ; DUP 3 ; CAR ; UPDATE ; SWAP ; DIG 2 ; SWAP ; CDR ; ADD ; SWAP } ; DROP ; PUSH nat 10000 ; SWAP ; COMPARE ; LE ; IF {} { PUSH string "ROYALTIES_EXCEED_MAX_PERCENTAGE" ; FAILWITH } ; DUP 4 ; CAR ; GET 8 ; DIG 4 ; DUP ; GET 9 ; DUP 4 ; CAR ; DUP 4 ; PAIR ; SOME ; DUP 4 ; UPDATE ; UPDATE 9 ; DUP ; GET 10 ; DUP 4 ; CDR ; SOME ; DUP 4 ; UPDATE ; UPDATE 10 ; DUP ; GET 7 ; SENDER ; SOME ; DUP 4 ; UPDATE ; UPDATE 7 ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; PUSH nat 1 ; ADD ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; DUG 4 ; DIG 2 ; SWAP ; DUP 3 ; CDR ; PAIR ; DIG 2 ; CAR ; SENDER ; PAIR ; PAIR ; EMIT %create_tokens (pair (pair (address %creator) (map %metadata string bytes)) (pair (list %royalties (pair (address %address) (nat %royalties))) (nat %token_id))) ; CONS } ; SWAP ; DROP } } { IF_LEFT { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; NIL operation ; DUP 2 ; ITER { DUP 4 ; GET 9 ; DUP 2 ; CAR ; MEM ; IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ; DUP 4 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 4 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { DUP 4 ; GET 9 ; DUP 2 ; CAR ; MEM ; IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ; DUP 4 ; GET 7 ; DUP 2 ; CAR ; MEM ; IF {} { PUSH string "TOKEN_CREATOR_MISSING" ; FAILWITH } ; SENDER ; DUP 5 ; GET 7 ; DUP 3 ; CAR ; GET ; IF_NONE { PUSH int 303 ; FAILWITH } {} ; COMPARE ; EQ ; IF {} { PUSH string "NOT_TOKEN_CREATOR_OR_ADMIN" ; FAILWITH } } ; DUP ; CDR ; ITER { DUP 5 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; DUP 7 ; CDR ; DIG 11 ; CAR ; CAR ; GET 6 ; DUP 10 ; CAR ; DUP 10 ; CAR ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; SOME ; DUP 9 ; CAR ; DUP 9 ; CAR ; PAIR ; UPDATE ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 4 ; DUP 5 ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; DUP 6 ; CDR ; DIG 10 ; GET 5 ; CAR ; DUP 9 ; CAR ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; SOME ; DUP 8 ; CAR ; UPDATE ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; DUG 4 ; DIG 2 ; DUP 3 ; CAR ; DUP 3 ; CAR ; PAIR ; SENDER ; DIG 3 ; CDR ; PAIR ; PAIR ; EMIT %airdrop (pair (pair (nat %amount) (address %minter)) (pair (address %recipient) (nat %token_id))) ; CONS ; SWAP } ; DROP } ; SWAP ; DROP } { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ ; IF {} { PUSH string "NOT_SUPERADMIN" ; FAILWITH } ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; CDR ; DUP 6 ; SOME ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; NIL operation ; SWAP ; DUP 3 ; GET 3 ; GET 6 ; PAIR ; EMIT %superadmin_proposed (pair (address %current_superadmin) (address %proposed_superadmin)) ; CONS } } } } { IF_LEFT { IF_LEFT { IF_LEFT { NONE address ; DUP 2 ; ITER { DUP 2 ; IF_NONE { SWAP ; DROP ; CAR ; CAR ; SOME } { DROP 2 } } ; DUP ; IF_NONE { PUSH string "NO_RESPONSES" ; FAILWITH } { DROP } ; DUP 3 ; GET 3 ; GET 3 ; DUP 2 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; MEM ; IF {} { PUSH string "NO_PENDING" ; FAILWITH } ; PUSH bool False ; DUP 3 ; ITER { DUP 5 ; CAR ; GET 3 ; CAR ; DUP 6 ; GET 3 ; GET 3 ; DUP 5 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 1031 ; FAILWITH } {} ; GET 3 ; GET ; IF_NONE { PUSH int 1038 ; FAILWITH } {} ; CAR ; GET 8 ; ITER { DUP ; CAR ; SENDER ; COMPARE ; EQ ; IF { DUP ; CDR ; ITER { DUP ; CAR ; DUP 4 ; CAR ; CDR ; COMPARE ; EQ ; IF { DUP ; CDR ; DUP 4 ; CDR ; COMPARE ; GE } { PUSH bool False } ; IF { DIG 3 ; DROP 2 ; PUSH bool True ; DUG 2 } { DROP } } ; DROP } { DROP } } ; DROP } ; IF {} { PUSH string "GATE_BALANCE_LOW" ; FAILWITH } ; SWAP ; SIZE ; DUP 3 ; GET 3 ; GET 3 ; DUP 3 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 1031 ; FAILWITH } {} ; GET 6 ; SUB ; ISNAT ; IF_NONE { PUSH int 1048 ; FAILWITH } {} ; DIG 2 ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; DUP ; DUP 8 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; DUP ; DUG 2 ; GET ; IF_NONE { PUSH int 1048 ; FAILWITH } {} ; DIG 7 ; UPDATE 6 ; SOME ; SWAP ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; PUSH nat 0 ; DUP 3 ; GET 3 ; GET 3 ; DUP 3 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 1031 ; FAILWITH } {} ; GET 6 ; COMPARE ; EQ ; IF { SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; NONE (pair address (pair nat (pair nat nat))) ; DIG 6 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR } { DUP 2 ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; DIG 6 ; GET 3 ; GET 3 ; DUP 7 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; GET ; IF_NONE { PUSH int 1031 ; FAILWITH } {} ; SOME ; DIG 6 ; IF_NONE { PUSH int 1028 ; FAILWITH } {} ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR } ; NIL operation } { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { PUSH string "NOT_ADMIN" ; FAILWITH } ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; CAR ; DUP 5 ; SWAP ; PAIR ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; NIL operation ; SENDER ; DIG 2 ; PAIR ; EMIT %contract_paused (pair (bool %paused) (address %updated_by)) ; CONS } } { IF_LEFT { DUP ; ITER { DUP ; CDR ; ITER { DUP 4 ; CAR ; CAR ; CAR ; CAR ; DUP 2 ; GET 3 ; DUP 3 ; CAR ; PAIR ; MEM ; IF { PUSH string "RESTRICTED_OPERATOR" ; FAILWITH } {} ; DUP 4 ; GET 5 ; CDR ; DUP 2 ; GET 3 ; DUP 3 ; CAR ; PAIR ; MEM ; IF { DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; MEM ; IF { DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; GET 9 ; NOW ; COMPARE ; GE ; IF {} { PUSH string "LISTING_NOT_STARTED" ; FAILWITH } ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE {} { DROP ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; GET 7 ; IF { DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; CAR ; CAR ; GET 4 ; IF_NONE { PUSH string "SALE_NOT_STARTED" ; FAILWITH } { DROP } } {} ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 349 ; FAILWITH } {} ; DUP 5 ; CAR ; GET 3 ; CAR ; DUP 3 ; GET 3 ; GET ; IF_NONE { PUSH int 904 ; FAILWITH } {} ; GET 9 ; ADD ; NOW ; COMPARE ; LT ; IF {} { PUSH string "LISTING_CLOSED" ; FAILWITH } } } {} ; PUSH bool False ; DUP 5 ; CAR ; GET 3 ; CDR ; ITER { DUP 2 ; IF { DROP } { DUP ; DUP 4 ; GET 3 ; SELF_ADDRESS ; PAIR ; VIEW "is_token_locked" bool ; IF_NONE { DROP } { DROP ; SWAP ; IF { DROP ; PUSH bool True } { DUP 2 ; GET 3 ; SELF_ADDRESS ; PAIR ; VIEW "is_token_locked" bool ; IF_NONE { PUSH int 925 ; FAILWITH } {} } } } } ; IF { PUSH string "MARKETPLACE_RESTRICTED" ; FAILWITH } {} } {} ; DUP 4 ; GET 9 ; DUP 2 ; GET 3 ; MEM ; IF {} { PUSH string "FA2_TOKEN_UNDEFINED" ; FAILWITH } ; DUP 2 ; CAR ; SENDER ; COMPARE ; EQ ; IF { PUSH bool True } { DUP 4 ; GET 3 ; CAR ; CAR ; DUP 2 ; GET 3 ; SENDER ; DUP 5 ; CAR ; PAIR 3 ; MEM } ; IF {} { PUSH string "FA2_NOT_OPERATOR" ; FAILWITH } ; PUSH nat 0 ; DUP 2 ; GET 4 ; COMPARE ; GT ; IF { DUP 4 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; DUP 7 ; GET 4 ; DIG 10 ; CAR ; CAR ; GET 6 ; DUP 9 ; GET 3 ; DUP 11 ; CAR ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; SUB ; ISNAT ; IF_NONE { PUSH string "FA2_INSUFFICIENT_BALANCE" ; FAILWITH } {} ; SOME ; DUP 8 ; GET 3 ; DUP 10 ; CAR ; PAIR ; UPDATE ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 3 ; DUP 4 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; DUP 7 ; GET 4 ; DIG 10 ; CAR ; CAR ; GET 6 ; DUP 9 ; GET 3 ; DUP 10 ; CAR ; PAIR ; GET ; IF_NONE { PUSH nat 0 } {} ; ADD ; SOME ; DUP 8 ; GET 3 ; DIG 8 ; CAR ; PAIR ; UPDATE ; SWAP ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 2 } { DROP } } ; DROP } ; DROP ; NIL operation } { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ ; IF {} { PUSH string "NOT_SUPERADMIN" ; FAILWITH } ; DUP ; CAR ; IF_NONE { DUP ; CDR ; IF_NONE { PUSH bool False } { DROP ; PUSH bool True } } { DROP ; PUSH bool True } ; IF {} { PUSH string "NO_CHANGES_SPECIFIED" ; FAILWITH } ; DUP ; CAR ; IF_NONE { NIL operation } { DROP ; NIL operation ; DUP 2 ; CAR ; IF_NONE { PUSH int 519 ; FAILWITH } {} ; ITER { DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; PUSH (option unit) (Some Unit) ; DUP 7 ; UPDATE ; SWAP ; PAIR ; PAIR ; PAIR ; PAIR ; DUG 3 ; EMIT %admin_added address ; CONS } } ; DUP 2 ; CDR ; IF_NONE { SWAP ; DROP } { DROP ; DUP 2 ; CDR ; IF_NONE { PUSH int 525 ; FAILWITH } {} ; ITER { DUP 4 ; CAR ; CAR ; CAR ; CDR ; DUP 2 ; MEM ; IF {} { PUSH string "NOT_AN_ADMIN" ; FAILWITH } ; DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; NONE unit ; DUP 7 ; UPDATE ; SWAP ; PAIR ; PAIR ; PAIR ; PAIR ; DUG 3 ; EMIT %admin_removed address ; CONS } ; SWAP ; DROP } } } } { IF_LEFT { IF_LEFT { PUSH mutez 0 ; AMOUNT ; COMPARE ; EQ ; IF {} { PUSH string "TEZ_TRANSFER" ; FAILWITH } ; DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { PUSH string "NOT_ADMIN" ; FAILWITH } ; DUP ; CAR ; IF_NONE { DUP ; CDR ; IF_NONE { PUSH bool False } { DROP ; PUSH bool True } } { DROP ; PUSH bool True } ; IF {} { PUSH string "NO_CHANGES_SPECIFIED" ; FAILWITH } ; DUP ; CAR ; IF_NONE { NIL operation } { DROP ; NIL operation ; DUP 2 ; CAR ; IF_NONE { PUSH int 407 ; FAILWITH } {} ; ITER { DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; PUSH (option unit) (Some Unit) ; DUP 7 ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 3 ; EMIT %collabs_added address ; CONS } } ; DUP 2 ; CDR ; IF_NONE { SWAP ; DROP } { DROP ; DUP 2 ; CDR ; IF_NONE { PUSH int 415 ; FAILWITH } {} ; ITER { DUP 4 ; CAR ; CAR ; GET 3 ; DUP 2 ; MEM ; IF {} { PUSH string "NOT_AN_COLLAB" ; FAILWITH } ; DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; NONE unit ; DUP 7 ; UPDATE ; PAIR ; SWAP ; PAIR ; PAIR ; PAIR ; DUG 3 ; EMIT %collabs_removed address ; CONS } ; SWAP ; DROP } } { DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { PUSH string "NOT_ADMIN" ; FAILWITH } ; DUP ; ITER { DUP ; GET 3 ; ITER { DUP 2 ; GET 6 ; IF { DUP 2 ; GET 5 ; IF { DIG 3 ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; NONE unit ; DIG 6 ; DUP 8 ; CAR ; PAIR ; UPDATE ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; DUG 2 } { DIG 3 ; UNPAIR ; SWAP ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; PUSH (option unit) (Some Unit) ; DIG 6 ; DUP 8 ; CAR ; PAIR ; UPDATE ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP ; PAIR ; DUG 2 } } { DUP 2 ; GET 5 ; IF { DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; UNPAIR ; NONE unit ; DIG 6 ; DUP 8 ; CAR ; PAIR ; UPDATE ; PAIR ; PAIR ; PAIR ; PAIR ; DUG 2 } { DIG 3 ; UNPAIR ; UNPAIR ; UNPAIR ; UNPAIR ; PUSH (option unit) (Some Unit) ; DIG 6 ; DUP 8 ; CAR ; PAIR ; UPDATE ; PAIR ; PAIR ; PAIR ; PAIR ; DUG 2 } } } ; DROP } ; DROP ; NIL operation } } { IF_LEFT { DUP 2 ; CAR ; CAR ; CAR ; CDR ; SENDER ; MEM ; IF { PUSH bool True } { DUP 2 ; GET 3 ; GET 6 ; SENDER ; COMPARE ; EQ } ; IF {} { PUSH string "NOT_ADMIN" ; FAILWITH } ; DUP ; CAR ; IF_NONE {} { DROP ; DUP ; CAR ; IF_NONE { PUSH int 1103 ; FAILWITH } {} ; ITER { DIG 2 ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; PUSH bool True ; DIG 6 ; UPDATE ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP } } ; DUP ; CDR ; IF_NONE { DROP } { DROP ; DUP ; CDR ; IF_NONE { PUSH int 1108 ; FAILWITH } {} ; ITER { DIG 2 ; UNPAIR ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; SWAP ; PUSH bool False ; DIG 6 ; UPDATE ; SWAP ; PAIR ; PAIR ; SWAP ; PAIR ; PAIR ; SWAP } ; DROP } } { DUP ; ITER { DUP ; IF_LEFT { DUP 4 ; CAR ; CAR ; CAR ; CAR ; DUP 2 ; GET 4 ; DUP 3 ; GET 3 ; PAIR ; MEM ; IF { PUSH string "RESTRICTED_OPERATOR" ; FAILWITH } {} ; DUP 4 ; GET 5 ; CDR ; DUP 2 ; GET 4 ; DUP 3 ; GET 3 ; PAIR ; MEM ; IF { DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; MEM ; IF { DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; GET 9 ; NOW ; COMPARE ; GE ; IF {} { PUSH string "LISTING_NOT_STARTED" ; FAILWITH } ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE { SWAP ; DROP } { DROP ; SWAP ; DROP ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; GET 7 ; IF { DUP 3 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; CAR ; CAR ; GET 4 ; IF_NONE { PUSH string "SALE_NOT_STARTED" ; FAILWITH } { DROP } } {} ; DUP 3 ; CAR ; GET 3 ; CAR ; DUP 2 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; CAR ; CAR ; GET 3 ; IF_NONE { PUSH int 349 ; FAILWITH } {} ; DUP 4 ; CAR ; GET 3 ; CAR ; DUP 3 ; GET 4 ; GET ; IF_NONE { PUSH int 972 ; FAILWITH } {} ; GET 9 ; ADD ; NOW ; COMPARE ; LT ; IF {} { PUSH string "LISTING_CLOSED" ; FAILWITH } } } { SWAP ; DROP } ; PUSH bool False ; DUP 4 ; CAR ; GET 3 ; CDR ; ITER { DUP 2 ; IF { DROP } { DUP ; DUP 4 ; GET 4 ; SELF_ADDRESS ; PAIR ; VIEW "is_token_locked" bool ; IF_NONE { DROP } { DROP ; SWAP ; IF { DROP ; PUSH bool True } { DUP 2 ; GET 4 ; SELF_ADDRESS ; PAIR ; VIEW "is_token_locked" bool ; IF_NONE { PUSH int 992 ; FAILWITH } {} } } } } ; IF { PUSH string "MARKETPLACE_RESTRICTED" ; FAILWITH } {} } { SWAP ; DROP } ; SENDER ; DUP 2 ; CAR ; COMPARE ; EQ ; IF {} { PUSH string "FA2_NOT_OWNER" ; FAILWITH } ; DIG 2 ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; UNPAIR ; PUSH (option unit) (Some Unit) ; DIG 6 ; UPDATE ; PAIR ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP } { SWAP ; DROP ; SENDER ; DUP 2 ; CAR ; COMPARE ; EQ ; IF {} { PUSH string "FA2_NOT_OWNER" ; FAILWITH } ; DIG 2 ; UNPAIR ; SWAP ; UNPAIR ; UNPAIR ; UNPAIR ; NONE unit ; DIG 6 ; UPDATE ; PAIR ; PAIR ; PAIR ; SWAP ; PAIR ; SWAP } } ; DROP } ; NIL operation } } } ; NIL operation ; SWAP ; ITER { CONS } ; PAIR }Constant Info
Address
exprupHGx7njVRFJigrdugDiNe2j
Timestamp
1 Oct'25 12:09
Level
15354817