1 tx
2 calls
constructor
No constructor.
functions
buildSalesConfigForPremint
viewfunction buildSalesConfigForPremint(tuple config) view returns (tuple)
computePaidMintRewards
purefunction computePaidMintRewards(uint256 totalReward) pure returns (tuple)
computeReward
purefunction computeReward(uint256 totalReward, uint256 rewardPct) pure returns (uint256)
computeTotalReward
viewfunction computeTotalReward(uint256 totalValue) view returns (uint256)
contractName
purefunction contractName() pure returns (string)
contractURI
purefunction contractURI() pure returns (string)
contractVersion
purefunction contractVersion() pure returns (string)
ethRewardAmount
viewfunction ethRewardAmount() view returns (uint256)
getCreateReferral
viewfunction getCreateReferral(address tokenContract, uint256 tokenId) view returns (address createReferral)
getERC20MinterConfig
viewfunction getERC20MinterConfig() view returns (tuple)
getFirstMinter
viewfunction getFirstMinter(address tokenContract, uint256 tokenId) view returns (address firstMinter)
getMintedPerWallet
viewfunction getMintedPerWallet(address tokenContract, uint256 tokenId, address wallet) view returns (uint256)
minterConfig
viewfunction minterConfig() view returns (address zoraRewardRecipientAddress, uint256 rewardRecipientPercentage, uint256 ethReward)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
requestMint
purefunction requestMint(address, uint256, uint256, uint256, bytes) pure returns (tuple)
sale
viewfunction sale(address tokenContract, uint256 tokenId) view returns (tuple)
supportsInterface
purefunction supportsInterface(bytes4 interfaceId) pure returns (bool)
totalRewardPct
viewfunction totalRewardPct() view returns (uint256)
acceptOwnership
nonpayablefunction acceptOwnership()
cancelOwnershipTransfer
nonpayablefunction cancelOwnershipTransfer()
initialize
nonpayablefunction initialize(address _zoraRewardRecipientAddress, address _owner, uint256 _rewardPct, uint256 _ethReward)
mint
payablefunction mint(address mintTo, uint256 quantity, address tokenAddress, uint256 tokenId, uint256 totalValue, address currency, address mintReferral, string comment) payable
resetSale
nonpayablefunction resetSale(uint256 tokenId)
resignOwnership
nonpayablefunction resignOwnership()
safeTransferOwnership
nonpayablefunction safeTransferOwnership(address _newOwner)
setERC20MinterConfig
nonpayablefunction setERC20MinterConfig(tuple config)
setPremintSale
nonpayablefunction setPremintSale(uint256 tokenId, bytes encodedPremintSalesConfig)
setSale
nonpayablefunction setSale(uint256 tokenId, tuple salesConfig)
transferOwnership
nonpayablefunction transferOwnership(address _newOwner)
events
ERC20MinterConfigSet
event ERC20MinterConfigSet((address zoraRewardRecipientAddress, uint256 rewardRecipientPercentage, uint256 ethReward) config)
ERC20RewardsDeposit
event ERC20RewardsDeposit(address indexed createReferral, address indexed mintReferral, address indexed firstMinter, address zora, address collection, address currency, uint256 tokenId, uint256 createReferralReward, uint256 mintReferralReward, uint256 firstMinterReward, uint256 zoraReward)
Initialized
event Initialized(uint8 version)
MintComment
event MintComment(address indexed sender, address indexed tokenContract, uint256 indexed tokenId, uint256 quantity, string comment)
OwnerCanceled
event OwnerCanceled(address indexed owner, address indexed canceledOwner)
OwnerPending
event OwnerPending(address indexed owner, address indexed pendingOwner)
OwnerUpdated
event OwnerUpdated(address indexed prevOwner, address indexed newOwner)
SaleSet
event SaleSet(address indexed mediaContract, uint256 indexed tokenId, (uint64 saleStart, uint64 saleEnd, uint64 maxTokensPerAddress, uint256 pricePerToken, address fundsRecipient, address currency) salesConfig)
errors
AddressZero
error AddressZero()
ERC20TransferSlippage
error ERC20TransferSlippage()
FailedToSendEthReward
error FailedToSendEthReward()
INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED
error INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED()
INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING
error INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING()
InvalidCurrency
error InvalidCurrency()
InvalidETHValue
error InvalidETHValue(uint256 expectedValue, uint256 actualValue)
InvalidValue
error InvalidValue()
ONLY_OWNER
error ONLY_OWNER()
ONLY_PENDING_OWNER
error ONLY_PENDING_OWNER()
OWNER_CANNOT_BE_ZERO_ADDRESS
error OWNER_CANNOT_BE_ZERO_ADDRESS()
PricePerTokenTooLow
error PricePerTokenTooLow()
RequestMintInvalidUseMint
error RequestMintInvalidUseMint()
SaleEnded
error SaleEnded()
SaleHasNotStarted
error SaleHasNotStarted()
UserExceedsMintLimit
error UserExceedsMintLimit(address user, uint256 limit, uint256 requestedAmount)
WrongValueSent
error WrongValueSent()
creation bytecode
0x6080806040523461001b576001600055611da290816100218239f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c90816301ffc9a71461133c5750806319b45c4f146112715780632206a675146111df57806323452b9c1461117d5780632492f8871461112a5780632f8dccbc146110ee578063395db2cd1461107f5780634132239b1461105b5780635c046084146110155780635d759bd814610fed578063611efc0914610f4557806362b6024514610f275780636890e5b314610ea457806375d0c0dc14610e5f57806379ba509714610e075780637b49ff2c14610db25780638da5cb5b14610d8957806396325a5a14610d6b578063a0a8e46014610d2d578063a8094d0514610c82578063ac973d5b14610c48578063ce35b8af14610b96578063e1bf91e914610b32578063e2ebba2914610b02578063e30c397814610ad9578063e8a3d48514610a6d578063eb990c591461090c578063ed0c7091146108aa578063f2fde38b146108465763f54f216a1461016b57600080fd5b610100366003190112610843576101806114a4565b6101886114ba565b906101916114d0565b6101996114e6565b9060e4356001600160401b03811161083f576101b9903690600401611565565b92909160028754146107fa57600287556039546101d860243582611634565b34036107d057506001600160a01b038681168852603a60209081526040808a206064358b52909152882060038101805490949193921680159081156107bc575b506107aa5761022d6024356001850154611634565b608435036107985782546001600160401b0381164210610786576001600160401b038160401c1642116107745760801c6001600160401b031680610699575b506040516370a0823160e01b81523060048201526020816024816001600160a01b0387165afa9081156105fd578a91610663575b506102e46040516323b872dd60e01b60208201523360248201523060448201526084356064820152606481526102d581611419565b6001600160a01b0385166118c9565b6040516370a0823160e01b8152306004820152906020826024816001600160a01b0388165afa918215610658578b9261061e575b506103269060843590611647565b0361060c576001600160a01b0388163b156106085760405163611c68f760e11b815260018060a01b03881660048201526064356024820152602435604482015260806064820152896084820152898160a481838d60018060a01b03165af180156105fd576105ce575b50888080809360646103a5603854608435611634565b049581908d6103b389611661565b936103c06064358361172e565b926103cd606435846117b9565b916001600160a01b0316156105bb575b85517f6d43fd9d85f88450d1b777b5e7d58dec9b8dd36d77bf01bc5e5423d4a92d22469261010092909161041b90876001600160a01b038416611889565b606088015161043490836001600160a01b038416611889565b602088015161044d90886001600160a01b038416611889565b603754604089015161046c916001600160a01b03908116908416611889565b60018060a01b03603754169780516020820151906040606084015193015193604051988c8a5260018060a01b031660208a015260018060a01b031660408901526064356060890152608088015260a087015260c086015260e085015260018060a01b03169460018060a01b03169360018060a01b031692a434906204baf0f16104f36119be565b50156105a9579154600290910154610528926001600160a01b0392831692919091169061052290608435611654565b91611889565b81610536575b846001815580f35b7fb9490aee663998179ad13f9e1c1eb6189c71ad1a9ec87f33ad2766f98d9a268a90826040519160243583526040602084015281604084015260608301378083016060908101879052606435956001600160a01b03908116951693601f01601f191682018290030190a43880808061052e565b6040516377ca954d60e01b8152600490fd5b6037546001600160a01b031694506103dd565b6001600160401b03819a929a116105e957604052973861038f565b634e487b7160e01b82526041600452602482fd5b6040513d8c823e3d90fd5b8880fd5b60405163dc5b522d60e01b8152600490fd5b9091506020813d602011610650575b8161063a6020938361146a565b8101031261064c575190610326610318565b8a80fd5b3d915061062d565b6040513d8d823e3d90fd5b90506020813d602011610691575b8161067e6020938361146a565b8101031261068d5751386102a0565b8980fd5b3d9150610671565b6001600160a01b038981168b52600160209081526040808d206064358e528252808d20928b16808e52929091528b2080546106d79060243590611647565b905560018060a01b038a168b52600160205260408b206064358c5260205260408b20818c526020528160408c205411610710575061026c565b61077060408c8b938d60018060a01b031682526001602052828220606435835260205282822090825260205220546040519384936338b6455960e21b855260048501604091949392606082019560018060a01b0316825260208201520152565b0390fd5b604051630bd8a3eb60e01b8152600490fd5b6040516374626dc160e11b8152600490fd5b604051632f4613eb60e01b8152600490fd5b604051631eb3268560e31b8152600490fd5b6001600160a01b0384161415905038610218565b6107df60449160243590611634565b60405190633d2eb44d60e01b82526004820152346024820152fd5b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b8580fd5b80fd5b5034610843576020366003190112610843576108606114a4565b6001600160a01b0381811615610898576002541633036108865761088390611d02565b80f35b60405163d238ed5960e01b8152600490fd5b604051631627621f60e11b8152600490fd5b50346108435780600319360112610843576002546001600160a01b0380821633819003610886578390600080516020611d4d8339815191528280a36001600160a01b0319918216600255600354908116610902578280f35b1660035538808280f35b5034610843576080366003190112610843576109266114a4565b6001600160a01b036024358181169290839003610a695760369283549260ff8460081c16159384801590610a5d575b80610a45575b610a335760ff198116600117865584610a22575b5081156108985760ff855460081c1615610a1157600280546001600160a01b031916831790556040516109d293909287600080516020611d4d8339815191528180a36109ba836113cd565b16815260443560208201526064356040820152611c54565b6109da575080f35b61ff001981541690557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b6040516296bfb160e81b8152600490fd5b61ffff19166101011785553861096f565b604051633d5c224160e11b8152600490fd5b50303b15158061095b5750600160ff8216141561095b565b5060ff81161515610955565b8380fd5b5034610843578060031936011261084357610ad5604051610a8d816113cd565b602981527f68747470733a2f2f6769746875622e636f6d2f6f75727a6f72612f7a6f72612d60208201526870726f746f636f6c2f60b81b604082015260405191829182611592565b0390f35b50346108435780600319360112610843576003546040516001600160a01b039091168152602090f35b50346108435760403660031901126108435760206305f5e100610b29602435600435611634565b04604051908152f35b503461084357806003193601126108435760408051610b50816113cd565b8281528260208201520152610ad5604051610b6a816113cd565b6037546001600160a01b03168152603854602082015260395460408083019190915251918291826115db565b50346108435760e03660031901126108435760c0366023190112610843576040516001600160401b039060c0810182811182821017610c34576040526024358281168103610a695781526044358281168103610a695760208201526064359182168203610c30576108839160408201526084356060820152610c166114d0565b6080820152610c236114e6565b60a0820152600435611a8e565b8280fd5b634e487b7160e01b84526041600452602484fd5b5034610843576040366003190112610843576020610c70610c676114a4565b602435906117b9565b6040516001600160a01b039091168152f35b5034610843576040366003190112610843576024356001600160401b038111610d2957610cb560a0913690600401611565565b9080929181010312610d2957610d2161088391610d17608060405192610cda84611419565b610ce38161148b565b8452610cf16020820161148b565b602085015260408101356040850152610d0c606082016114fc565b6060850152016114fc565b6080820152611bcc565b600435611a8e565b5080fd5b5034610843578060031936011261084357610ad5604051610d4d8161144f565b60058152640322e302e360dc1b602082015260405191829182611592565b50346108435780600319360112610843576020603954604051908152f35b50346108435780600319360112610843576002546040516001600160a01b039091168152602090f35b5034610843576060366003190112610843576040602091610dd16114a4565b610dd96114ba565b6001600160a01b03918216835260018552838320602435845285528383209116825283522054604051908152f35b50346108435780600319360112610843576003546001600160a01b039081163303610e4d57339060025416600080516020611d4d8339815191528380a361088333611d02565b60405163065cd53160e01b8152600490fd5b5034610843578060031936011261084357610ad5604051610e7f8161144f565b600c81526b22a92199181026b4b73a32b960a11b602082015260405191829182611592565b50346108435760a036600319011261084357610ebe6114a4565b506001600160401b03608435818111610c3057610edf903690600401611565565b505060405190604082019082821090821117610f1357906020916040526060815201526004604051639274ec1d60e01b8152fd5b634e487b7160e01b83526041600452602483fd5b50346108435780600319360112610843576020603854604051908152f35b503461084357604036600319011261084357610ad5906040610f656114a4565b91610f6e611b9a565b506001600160a01b039283168152603a602090815282822060243583529052206040519190600390610f9f846113fe565b80546001600160401b03908181168652818160401c16602087015260801c1660408501526001810154606085015282600282015416608085015201541660a082015260405191829182611510565b5034610843576040366003190112610843576020610c7061100c6114a4565b6024359061172e565b5034610843576020366003190112610843576080611034600435611661565b60606040519180518352602081015160208401526040810151604084015201516060820152f35b50346108435760203660031901126108435760206064610b29603854600435611634565b5034610843576020366003190112610843576001600160a01b03806110a26114a4565b16908115610898576002541680330361088657600380546001600160a01b031916831790557f4f2638f5949b9614ef8d5e268cb51348ad7f434a34812bf64b6e95014fbd357e8380a380f35b5034610843578060031936011261084357603754603854603954604080516001600160a01b039094168452602084019290925290820152606090f35b503461084357606036600319011261084357604051611148816113cd565b6111506114a4565b8152602435602082015260443560408201526002546001600160a01b031633036108865761088390611c54565b50346108435780600319360112610843576002546001600160a01b039081163381900361088657600354918216907f682679deecef4dcd49674845cc1e3a075fea9073680aa445a8207d5a4bdea3da8480a36001600160a01b03191660035580f35b50346108435760a036600319011261084357604051906111fe82611419565b6001600160401b036004358181168103610c305783526024359081168103610d2957602083015260443560408301526001600160a01b03906064358281168103610d29576060840152608435918216820361084357610ad561126584846080820152611bcc565b60405191829182611510565b503461084357602080600319360112610d295760043590338352603a8152604083208284528152826003604082208281558260018201558260028201550155338352603a8152604083208284528152604083206040519181546001600160401b03918282168552828260401c169085015260801c16604083015260018101546060830152600360018060a01b039182600282015416608085015201541660a08201527f5a10ca3dd9f8e42a050c7f379d07bacd686570baf0b1c8574362fc474a9aa1a060c03392a380f35b905034610d29576020366003190112610d295760043563ffffffff60e01b8116809103610c305760209250631ed27fcb60e21b81149081156113c8575b811561139f575b811561138e575b5015158152f35b63a8094d0560e01b14905038611387565b9050636890e5b360e01b811480156113b8575b90611380565b506301ffc9a760e01b81146113b2565b611379565b606081019081106001600160401b038211176113e857604052565b634e487b7160e01b600052604160045260246000fd5b60c081019081106001600160401b038211176113e857604052565b60a081019081106001600160401b038211176113e857604052565b608081019081106001600160401b038211176113e857604052565b604081019081106001600160401b038211176113e857604052565b90601f801991011681019081106001600160401b038211176113e857604052565b35906001600160401b038216820361149f57565b600080fd5b600435906001600160a01b038216820361149f57565b604435906001600160a01b038216820361149f57565b60a435906001600160a01b038216820361149f57565b60c435906001600160a01b038216820361149f57565b35906001600160a01b038216820361149f57565b91909160a060c08201936001600160401b0380825116845280602083015116602085015260408201511660408401526060810151606084015281600180821b0391826080820151166080860152015116910152565b9181601f8401121561149f578235916001600160401b03831161149f576020838186019501011161149f57565b6020808252825181830181905290939260005b8281106115c757505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016115a5565b81516001600160a01b03168152602080830151908201526040918201519181019190915260600190565b906301b3f7089182810292818404149015171561161e57565b634e487b7160e01b600052601160045260246000fd5b8181029291811591840414171561161e57565b9190820180921161161e57565b9190820391821161161e57565b60609060405161167081611434565b600092818480935282602082015282604082015201526305f5e100918261169683611605565b0492806116a284611605565b049162d91c14908185029185830414851517156116fb575004916116d9906116d3846116ce8588611647565b611647565b90611654565b90604051936116e785611434565b845260208401526040830152606082015290565b634e487b7160e01b81526011600452602490fd5b9081602091031261149f57516001600160a01b038116810361149f5790565b604051637dafae4d60e01b81526004810192909252600092916001600160a01b03916020908290602490829086165afa60009181611789575b50611781575b50808316156117795750565b603754169150565b92503861176d565b6117ab91925060203d81116117b2575b6117a3818361146a565b81019061170f565b9038611767565b503d611799565b6040516327aee0c960e21b8152600481018390526001600160a01b03929091602091908416908284602481855afa6000948161186a575b5061180057505050506037541690565b909192949385161561181157505050565b82939450602460409392935180948193631793810160e21b835260048301525afa91821561185e5760009261184557505090565b61185b9250803d106117b2576117a3818361146a565b90565b6040513d6000823e3d90fd5b611882919550843d86116117b2576117a3818361146a565b93386117f0565b60405163a9059cbb60e01b60208201526001600160a01b0390921660248301526044808301939093529181526118c7916118c282611434565b6118c9565b565b60018060a01b0316906119286040516118e18161144f565b6020938482527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564858301526000808587829751910182855af16119226119be565b916119fd565b80519182159184831561199a575b5050509050156119435750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b919381809450010312610d2957820151908115158203610843575080388084611936565b3d156119f8573d906001600160401b0382116113e857604051916119ec601f8201601f19166020018461146a565b82523d6000602084013e565b606090565b91929015611a5f5750815115611a11575090565b3b15611a1a5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015611a725750805190602001fd5b60405162461bcd60e51b81529081906107709060048301611592565b9060a0810160018060a01b03611aa681835116611ce0565b6080830190611ab781835116611ce0565b60608401612710815110611b885760039033600052603a6020526040600020876000526020526040600020906001600160401b038751168254906001600160401b0360401b60208a015160401b16906001600160401b0360801b60408b015160801b169260018060c01b031916171717825551600182015582600282019451169360018060a01b0319948582541617905501925116908254161790557f5a10ca3dd9f8e42a050c7f379d07bacd686570baf0b1c8574362fc474a9aa1a060405180611b83339482611510565b0390a3565b60405163106bbccb60e31b8152600490fd5b60405190611ba7826113fe565b8160a06000918281528260208201528260408201528260608201528260808201520152565b611bd4611b9a565b506001600160401b0380421691818151166000908015600014611c43575050815b8060208301511660408301519160018060a01b03608081606087015116950151169460405196611c24886113fe565b875216602086015260408501526060840152608083015260a082015290565b8401908382116116fb575091611bf5565b80516001600160a01b0390611c6a908216611ce0565b60208201916064835111611cce577f50f3599c2143c70cf6332b9db855f5f08c572597a947ff20d91fc7d6e5df6b2092611cc99282511660018060a01b03196037541617603755516038556040810151603955604051918291826115db565b0390a1565b604051632a9ffab760e21b8152600490fd5b6001600160a01b031615611cf057565b604051639fabe1c160e01b8152600490fd5b600254906001600160a01b0390811680828416600080516020611d4d833981519152600080a36001600160a01b031992831617600255600354908116611d46575050565b1660035556fe8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76a26469706673582212205f0ef7be50378e0e9924bc682efc751bd8332e16f7875437ca77e9f7253ddaee64736f6c63430008110033