0 txs
0 calls
constructor
constructor(address ownerAddress_, address curatorRewardsContract_) payable
functions
artistReward
viewfunction artistReward() view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256 balance)
computeMintReward
viewfunction computeMintReward(uint256 quantity_, uint256 mintFee_) view returns (uint256)
curateReward
viewfunction curateReward() view returns (uint256)
curatorRewardsContract
viewfunction curatorRewardsContract() view returns (address)
eip712Domain
viewfunction eip712Domain() view returns (bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)
hashTypedData
viewfunction hashTypedData(bytes32 structHash) view returns (bytes32)
nonces
viewfunction nonces(address account) view returns (uint256 nonce)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
referralReward
viewfunction referralReward() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
verifyReward
viewfunction verifyReward() view returns (uint256)
WITHDRAW_TYPEHASH
viewfunction WITHDRAW_TYPEHASH() view returns (bytes32)
acceptOwnership
nonpayablefunction acceptOwnership()
deposit
payablefunction deposit(address to, bytes4 reason, string comment) payable
depositBatch
payablefunction depositBatch(address[] recipients, uint256[] amounts, bytes4[] reasons, string comment) payable
depositRewards
payablefunction depositRewards(uint256 credentialId_, uint256 quantity_, address artist_, uint256 artistReward_, uint256 mintFee_, address mintReferral_, uint256 mintReferralReward_, address verifier_, uint256 verifierReward_, uint256 curateReward_) payable
handleRewardsAndGetValueSent
payablefunction handleRewardsAndGetValueSent(uint256 credentialId_, uint256 quantity_, uint256 mintFee_, address artist_, address mintReferral_, address verifier_) payable
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateArtistReward
nonpayablefunction updateArtistReward(uint256 newArtistReward_)
updateCurateReward
nonpayablefunction updateCurateReward(uint256 newCurateReward_)
updateReferralReward
nonpayablefunction updateReferralReward(uint256 newReferralReward_)
updateVerifierReward
nonpayablefunction updateVerifierReward(uint256 newVerifyReward_)
withdraw
nonpayablefunction withdraw(address to, uint256 amount)
withdrawFor
nonpayablefunction withdrawFor(address to, uint256 amount)
withdrawWithSig
nonpayablefunction withdrawWithSig(address from, address to, uint256 amount, uint256 deadline, bytes sig)
events
ArtistRewardUpdated
event ArtistRewardUpdated(uint256 artistReward)
CurateRewardUpdated
event CurateRewardUpdated(uint256 curateReward)
Deposit
event Deposit(address indexed from, address indexed to, bytes4 indexed reason, uint256 amount, string comment)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
ReferralRewardUpdated
event ReferralRewardUpdated(uint256 referralReward)
RewardsDeposit
event RewardsDeposit(uint256 credentialId, address indexed artist, address indexed mintReferral, address indexed verifier, address from, uint256 artistReward, uint256 mintReferralReward, uint256 verifierReward, uint256 curateReward)
VerifierRewardUpdated
event VerifierRewardUpdated(uint256 verifierReward)
Withdraw
event Withdraw(address indexed from, address indexed to, uint256 amount)
errors
ArrayLengthMismatch
error ArrayLengthMismatch()
InvalidAddressZero
error InvalidAddressZero()
InvalidDeposit
error InvalidDeposit()
InvalidSignature
error InvalidSignature()
InvalidWithdraw
error InvalidWithdraw()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SignatureDeadlineExpired
error SignatureDeadlineExpired()
TransferFailed
error TransferFailed()
creation bytecode
0x610120604052655af3107a4000600555652d79883d2000600655655af3107a4000600755655af3107a400060085560405162001f7038038062001f708339810160408190526200004f9162000216565b306080524660a052816060806200009c604080518082018252600b81526a504849205265776172647360a81b602080830191909152825180840190935260018352603160f81b9083015291565b815160209283012081519183019190912060c082905260e0819052604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8152938401929092529082015246606082015230608082015260a090206101005250506001600160a01b0381166200012e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620001398162000189565b506001600160a01b0381166200016257604051630863a45360e11b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055506200024e565b600380546001600160a01b0319169055620001a481620001a7565b50565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146200021157600080fd5b919050565b600080604083850312156200022a57600080fd5b6200023583620001f9565b91506200024560208401620001f9565b90509250929050565b60805160a05160c05160e05161010051611cdd62000293600039600061138c0152600061144601526000611420015260006113d0015260006113ad0152611cdd6000f3fe6080604052600436106101a35760003560e01c80638da5cb5b116100e0578063dbda52ae11610084578063f2fde38b11610061578063f2fde38b14610499578063f3fef3a3146104b9578063f69bce24146104d9578063f7f8266f146104ef57005b8063dbda52ae14610448578063e30c39781461045b578063e554e1ad1461047957005b806399b37143116100bd57806399b37143146103d2578063b3d83e9e146103e8578063ce91e02614610408578063db518db21461042857005b80638da5cb5b1461036057806390db33f91461039257806395b61987146103b257005b80636575f6aa1161014757806376c5d7581161012457806376c5d758146102c257806379ba5097146102f65780637ecebe001461030b57806384b0196e1461033857005b80636575f6aa1461026057806370a0823114610280578063715018a6146102ad57005b80632f431378116101805780632f43137814610204578063300def9514610217578063470a2d831461022a5780634d6836741461024a57005b80630baf4711146101ac57806318160ddd146101cc578063266de7d5146101ee57005b366101aa57005b005b3480156101b857600080fd5b506101aa6101c73660046116fb565b610502565b3480156101d857600080fd5b50475b6040519081526020015b60405180910390f35b3480156101fa57600080fd5b506101db60055481565b6101aa610212366004611773565b6106fb565b6101aa610225366004611817565b6107db565b34801561023657600080fd5b506101db6102453660046118db565b6109f8565b34801561025657600080fd5b506101db60065481565b34801561026c57600080fd5b506101db61027b3660046118fd565b610a42565b34801561028c57600080fd5b506101db61029b366004611916565b60016020526000908152604090205481565b3480156102b957600080fd5b506101aa610a4d565b3480156102ce57600080fd5b506101db7f7b35c0715842c169bbf11116e8d20b2e74dacbd860d36ad5e47c3d88c15be55b81565b34801561030257600080fd5b506101aa610a61565b34801561031757600080fd5b506101db610326366004611916565b60006020819052908152604090205481565b34801561034457600080fd5b5061034d610ac3565b6040516101e59796959493929190611995565b34801561036c57600080fd5b506002546001600160a01b03165b6040516001600160a01b0390911681526020016101e5565b34801561039e57600080fd5b506101aa6103ad3660046118fd565b610b6c565b3480156103be57600080fd5b506101aa6103cd3660046118fd565b610bb0565b3480156103de57600080fd5b506101db60085481565b3480156103f457600080fd5b506101aa6104033660046118fd565b610bed565b34801561041457600080fd5b5060045461037a906001600160a01b031681565b34801561043457600080fd5b506101aa610443366004611a4a565b610c2a565b6101aa610456366004611a74565b610d63565b34801561046757600080fd5b506003546001600160a01b031661037a565b34801561048557600080fd5b506101aa6104943660046118fd565b610fe2565b3480156104a557600080fd5b506101aa6104b4366004611916565b61101f565b3480156104c557600080fd5b506101aa6104d4366004611a4a565b6110a8565b3480156104e557600080fd5b506101db60075481565b6101aa6104fd366004611b2d565b6111f4565b8242111561053c576040517f5a9165ff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038616600090815260208190526040812080546105789289928992899290919061056c83611bbd565b919050558787876112d4565b6105ae576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0385166105ee576040517f10c748a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83600003610612576001600160a01b03861660009081526001602052604090205493505b6001600160a01b038616600090815260016020526040902054841115610664576040517f35411d8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0386166000908152600160205260408120805486929061068c908490611bf5565b92505081905550846001600160a01b0316866001600160a01b03167f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb866040516106d891815260200190565b60405180910390a36106f36001600160a01b0386168561136e565b505050505050565b6001600160a01b03821661070d578291505b6005546006546007546008546040517fdbda52ae000000000000000000000000000000000000000000000000000000008152600481018b9052602481018a90526001600160a01b03808916604483015260648201959095526084810189905284871660a482015260c481019390935292841660e4830152610104820152610124810191909152309063dbda52ae903490610144016000604051808303818588803b1580156107ba57600080fd5b505af11580156107ce573d6000803e3d6000fd5b5050505050505050505050565b8685811415806107eb5750808414155b15610822576040517fa24a13a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b8281101561085c5788888281811061084057610840611c08565b90506020020135826108529190611c37565b9150600101610826565b50803414610896576040517fb2e532de00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b828110156107ce5760008b8b838181106108b5576108b5611c08565b90506020020160208101906108ca9190611916565b905060008a8a848181106108e0576108e0611c08565b60200291909101359150506001600160a01b03821661092b576040517f10c748a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03821660009081526001602052604081208054839290610953908490611c37565b90915550899050888481811061096b5761096b611c08565b90506020020160208101906109809190611c4a565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916826001600160a01b0316336001600160a01b03167f5b769452a2090142e059af5137c5b92a3e966cfb03b794cd01ac195d196c0001848b8b6040516109e693929190611c65565b60405180910390a45050600101610899565b600060085460075460065484600554610a119190611c37565b610a1b9190611c37565b610a259190611c37565b610a2f9190611c37565b610a399084611cb9565b90505b92915050565b6000610a3c8261138a565b610a556114a2565b610a5f60006114e8565b565b60035433906001600160a01b03168114610ab7576040517f118cdaa70000000000000000000000000000000000000000000000000000000081526001600160a01b03821660048201526024015b60405180910390fd5b610ac0816114e8565b50565b7f0f000000000000000000000000000000000000000000000000000000000000006060806000808083610b5a604080518082018252600b81527f50484920526577617264730000000000000000000000000000000000000000006020808301919091528251808401909352600183527f31000000000000000000000000000000000000000000000000000000000000009083015291565b97989097965046955030945091925090565b610b746114a2565b60088190556040518181527fc41431aa34d5b806afe40e84f68f2f3050737a113fb296d3d8c27aabcd3e3817906020015b60405180910390a150565b610bb86114a2565b60078190556040518181527f22f48507214d6a9ad700c36f02d4581584c003af2c61de79ca4c4c49621705b790602001610ba5565b610bf56114a2565b60058190556040518181527f4e30bbba2993e5a3e0f27562ad1a4dc5675526646c57288524b69e53f969363a90602001610ba5565b6001600160a01b038216610c6a576040517f10c748a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600003610c8d57506001600160a01b0381166000908152600160205260409020545b6001600160a01b038216600090815260016020526040902054811115610cdf576040517f35411d8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03821660009081526001602052604081208054839290610d07908490611bf5565b90915550506040518181526001600160a01b0383169081907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9060200160405180910390a3610d5f6001600160a01b0383168261136e565b5050565b88818386610d718a8c611c37565b610d7b9190611c37565b610d859190611c37565b610d8f9190611c37565b610d999190611cb9565b610da38a886109f8565b14610dda576040517fb2e532de00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03881615610e2c5788610df48789611c37565b610dfe9190611cb9565b6001600160a01b03891660009081526001602052604081208054909190610e26908490611c37565b90915550505b6001600160a01b03851615610e7357610e458985611cb9565b6001600160a01b03861660009081526001602052604081208054909190610e6d908490611c37565b90915550505b6001600160a01b03831615610eba57610e8c8983611cb9565b6001600160a01b03841660009081526001602052604081208054909190610eb4908490611c37565b90915550505b6004546001600160a01b031663e2bbb158610ed58b84611cb9565b8c610ee08d86611cb9565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b168152600481019290925260248201526044016000604051808303818588803b158015610f3557600080fd5b505af1158015610f49573d6000803e3d6000fd5b5050505050826001600160a01b0316856001600160a01b0316896001600160a01b03167fe78852faf5bb6cd43e32604bd61f825bcc1e2296827f7092b1c7cad8f548436f8d338b8d610f9b9190611c37565b604080519384526001600160a01b03909216602084015290820152606081018990526080810187905260a0810186905260c00160405180910390a450505050505050505050565b610fea6114a2565b60068190556040518181527f1f8e6077362b190f5e703f6aaa66b587a8b3a9c0c66035073808d52b95c2f4d990602001610ba5565b6110276114a2565b600380546001600160a01b0383167fffffffffffffffffffffffff000000000000000000000000000000000000000090911681179091556110706002546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6001600160a01b0382166110e8576040517f10c748a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33600082900361110e576001600160a01b03811660009081526001602052604090205491505b6001600160a01b038116600090815260016020526040902054821115611160576040517f35411d8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03811660009081526001602052604081208054849290611188908490611bf5565b92505081905550826001600160a01b0316816001600160a01b03167f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb846040516111d491815260200190565b60405180910390a36111ef6001600160a01b0384168361136e565b505050565b6001600160a01b038416611234576040517f10c748a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0384166000908152600160205260408120805434929061125c908490611c37565b90915550506040517fffffffff000000000000000000000000000000000000000000000000000000008416906001600160a01b0386169033907f5b769452a2090142e059af5137c5b92a3e966cfb03b794cd01ac195d196c0001906112c690349088908890611c65565b60405180910390a450505050565b604080517f7b35c0715842c169bbf11116e8d20b2e74dacbd860d36ad5e47c3d88c15be55b6020808301919091526001600160a01b038a811683850152891660608301526080820188905260a0820187905260c08083018790528351808403909101815260e09092019092528051910120600090816113528261138a565b90506113608a828787611519565b9a9950505050505050505050565b60003860003884865af1610d5f5763b12d13eb6000526004601cfd5b7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000030147f000000000000000000000000000000000000000000000000000000000000000046141661147d5750604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81527f000000000000000000000000000000000000000000000000000000000000000060208201527f00000000000000000000000000000000000000000000000000000000000000009181019190915246606082015230608082015260a090205b67190100000000000060005280601a5281603a52604260182090506000603a52919050565b6002546001600160a01b03163314610a5f576040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152602401610aae565b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055610ac08161162c565b6001600160a01b03909316926000841561162457604051846000526040830361159d5760208481013560ff81901c601b01825285356040527f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16606052600160806000825afa805187183d151761159b57506000606052604052506001611624565b505b604183036115e057604084013560001a602052604084604037602060016080600060015afa805187183d15176115de57506000606052604052506001611624565b505b600060605280604052631626ba7e60e01b80825285600483015260248201604081528460448401528486606485013760208160648701858b5afa9051909114169150505b949350505050565b600280546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80356001600160a01b03811681146116ad57600080fd5b919050565b60008083601f8401126116c457600080fd5b50813567ffffffffffffffff8111156116dc57600080fd5b6020830191508360208285010111156116f457600080fd5b9250929050565b60008060008060008060a0878903121561171457600080fd5b61171d87611696565b955061172b60208801611696565b94506040870135935060608701359250608087013567ffffffffffffffff81111561175557600080fd5b61176189828a016116b2565b979a9699509497509295939492505050565b60008060008060008060c0878903121561178c57600080fd5b8635955060208701359450604087013593506117aa60608801611696565b92506117b860808801611696565b91506117c660a08801611696565b90509295509295509295565b60008083601f8401126117e457600080fd5b50813567ffffffffffffffff8111156117fc57600080fd5b6020830191508360208260051b85010111156116f457600080fd5b6000806000806000806000806080898b03121561183357600080fd5b883567ffffffffffffffff8082111561184b57600080fd5b6118578c838d016117d2565b909a50985060208b013591508082111561187057600080fd5b61187c8c838d016117d2565b909850965060408b013591508082111561189557600080fd5b6118a18c838d016117d2565b909650945060608b01359150808211156118ba57600080fd5b506118c78b828c016116b2565b999c989b5096995094979396929594505050565b600080604083850312156118ee57600080fd5b50508035926020909101359150565b60006020828403121561190f57600080fd5b5035919050565b60006020828403121561192857600080fd5b610a3982611696565b6000815180845260005b818110156119575760208185018101518683018201520161193b565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b7fff00000000000000000000000000000000000000000000000000000000000000881681526000602060e060208401526119d260e084018a611931565b83810360408501526119e4818a611931565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b81811015611a3857835183529284019291840191600101611a1c565b50909c9b505050505050505050505050565b60008060408385031215611a5d57600080fd5b611a6683611696565b946020939093013593505050565b6000806000806000806000806000806101408b8d031215611a9457600080fd5b8a35995060208b01359850611aab60408c01611696565b975060608b0135965060808b01359550611ac760a08c01611696565b945060c08b01359350611adc60e08c01611696565b92506101008b013591506101208b013590509295989b9194979a5092959850565b80357fffffffff00000000000000000000000000000000000000000000000000000000811681146116ad57600080fd5b60008060008060608587031215611b4357600080fd5b611b4c85611696565b9350611b5a60208601611afd565b9250604085013567ffffffffffffffff811115611b7657600080fd5b611b82878288016116b2565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611bee57611bee611b8e565b5060010190565b81810381811115610a3c57610a3c611b8e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b80820180821115610a3c57610a3c611b8e565b600060208284031215611c5c57600080fd5b610a3982611afd565b83815260406020820152816040820152818360608301376000818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b8082028115828204841417610a3c57610a3c611b8e56fea164736f6c6343000817000a0000000000000000000000006d83cac25cfacdc7035bed947b92b64e6a8b80900000000000000000000000006d83cac25cfacdc7035bed947b92b64e6a8b8090