x
68
{ parameter (or
(pair %claim (string %hash)
(pair (bool %claim_origination)
(pair (bool %claim_copyright)
(pair (bool %claim_innovation)
(pair (option %claim_message string)
(option %claimed_on_behalf_of string))))))
(string %withdraw_claim)) ;
storage (pair (map %metadata string string)
(big_map %proofs (pair (address %claimant) (string %hash))
(pair (bool %claim_origination)
(pair (bool %claim_copyright)
(pair (bool %claim_innovation)
(pair (option %claim_message string)
(option %claimed_on_behalf_of string))))))) ;
code { UNPAIR ;
IF_LEFT
{ PUSH mutez 0 ;
AMOUNT ;
COMPARE ;
EQ ;
IF {} { PUSH string "NONZERO_AMOUNT" ; FAILWITH } ;
SWAP ;
DUP ;
CDR ;
DIG 2 ;
DUP ;
GET 10 ;
SWAP ;
DUP ;
GET 9 ;
SWAP ;
DUP ;
GET 7 ;
SWAP ;
DUP ;
GET 5 ;
SWAP ;
DUP ;
DUG 7 ;
GET 3 ;
PAIR 5 ;
SOME ;
DIG 3 ;
CAR ;
SOURCE ;
PAIR ;
UPDATE ;
UPDATE 2 }
{ PUSH mutez 0 ;
AMOUNT ;
COMPARE ;
EQ ;
IF {} { PUSH string "NONZERO_AMOUNT" ; FAILWITH } ;
SWAP ;
DUP ;
CDR ;
NONE (pair bool
(pair bool (pair bool (pair (option string) (option string))))) ;
DIG 3 ;
SOURCE ;
PAIR ;
UPDATE ;
UPDATE 2 } ;
NIL operation ;
PAIR } ;
view "has_claim" (pair (address %claimant) (string %hash)) bool
{ UNPAIR ; SWAP ; CDR ; SWAP ; MEM ; IF { PUSH bool True } { PUSH bool False } } }