241 txs
242 calls
constructor
constructor(address _treasury, address _nft, address _usdt, address _mto)
functions
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
MTO
viewfunction MTO() view returns (address)
MTOPriceByUSDT
viewfunction MTOPriceByUSDT() view returns (uint256)
nft
viewfunction nft() view returns (address)
PriceDenominator
viewfunction PriceDenominator() view returns (uint256)
rabate
viewfunction rabate() view returns (uint256)
sales
viewfunction sales(uint8) view returns (uint8 nftType, uint256 price, uint256 total)
SETPRICE_ROLE
viewfunction SETPRICE_ROLE() view returns (bytes32)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
treasury
viewfunction treasury() view returns (address)
USDT
viewfunction USDT() view returns (address)
batchMint
nonpayablefunction batchMint(address recipient, uint256 total, uint8 nftType)
buy
nonpayablefunction buy(uint8 nftType, bool payMTO, address referrer)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setMTOPrice
nonpayablefunction setMTOPrice(uint256 _price)
setRebate
nonpayablefunction setRebate(uint256 _rate)
setSale
nonpayablefunction setSale(uint8 nftType, uint256 price, uint256 total)
setTreasury
nonpayablefunction setTreasury(address _treasury)
events
Bought
event Bought(address indexed buyer, address referrer, uint8 nftType, uint256 tokenId)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
No errors.
creation bytecode
0x6080604052600a6006553480156200001657600080fd5b50604051620023923803806200239283398181016040528101906200003c91906200035e565b83600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001556000801b336200019160201b60201c565b620001877ff870135902c5dcbc5f453f4a2b060fc514a9219ca376f6a199d6f8d93a7b2955336200019160201b60201c565b50505050620003d0565b620001a382826200028260201b60201c565b6200027e57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000223620002ec60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200032682620002f9565b9050919050565b620003388162000319565b81146200034457600080fd5b50565b60008151905062000358816200032d565b92915050565b600080600080608085870312156200037b576200037a620002f4565b5b60006200038b8782880162000347565b94505060206200039e8782880162000347565b9350506040620003b18782880162000347565b9250506060620003c48782880162000347565b91505092959194509250565b611fb280620003e06000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806391d14854116100b8578063ccda29fe1161007c578063ccda29fe14610369578063d009abb214610385578063d0620b01146103a3578063d547741f146103bf578063f0f44260146103db578063f832dabe146103f757610142565b806391d14854146102ad578063a217fddf146102dd578063c1f90b85146102fb578063c54e44eb1461032d578063c68d8ee11461034b57610142565b806347ccca021161010a57806347ccca02146101fd5780635bb25f051461021b5780635d6f340d1461023957806361d027b3146102555780636dcd975414610273578063777b30151461029157610142565b806301ffc9a71461014757806322a7a7d514610177578063248a9ca3146101955780632f2ff15d146101c557806336568abe146101e1575b600080fd5b610161600480360381019061015c91906113f1565b610413565b60405161016e9190611439565b60405180910390f35b61017f61048d565b60405161018c919061146d565b60405180910390f35b6101af60048036038101906101aa91906114be565b610493565b6040516101bc91906114fa565b60405180910390f35b6101df60048036038101906101da9190611573565b6104b2565b005b6101fb60048036038101906101f69190611573565b6104d3565b005b610205610556565b60405161021291906115c2565b60405180910390f35b61022361057c565b60405161023091906115c2565b60405180910390f35b610253600480360381019061024e9190611642565b6105a2565b005b61025d610602565b60405161026a91906115c2565b60405180910390f35b61027b610628565b604051610288919061146d565b60405180910390f35b6102ab60048036038101906102a69190611695565b61062d565b005b6102c760048036038101906102c29190611573565b610662565b6040516102d49190611439565b60405180910390f35b6102e56106cc565b6040516102f291906114fa565b60405180910390f35b610315600480360381019061031091906116c2565b6106d3565b604051610324939291906116fe565b60405180910390f35b61033561070a565b60405161034291906115c2565b60405180910390f35b610353610730565b60405161036091906114fa565b60405180910390f35b610383600480360381019061037e9190611735565b610754565b005b61038d610792565b60405161039a919061146d565b60405180910390f35b6103bd60048036038101906103b89190611695565b610798565b005b6103d960048036038101906103d49190611573565b6107f4565b005b6103f560048036038101906103f09190611788565b610815565b005b610411600480360381019061040c91906117e1565b610867565b005b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610486575061048582610b41565b5b9050919050565b60055481565b6000806000838152602001908152602001600020600101549050919050565b6104bb82610493565b6104c481610bab565b6104ce8383610bbf565b505050565b6104db610c9f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610548576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053f906118b7565b60405180910390fd5b6105528282610ca7565b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000801b6105af81610bab565b6000600860008660ff1660ff1681526020019081526020016000209050848160000160006101000a81548160ff021916908360ff1602179055508381600101819055508281600201819055505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606481565b7ff870135902c5dcbc5f453f4a2b060fc514a9219ca376f6a199d6f8d93a7b295561065781610bab565b816005819055505050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b81565b60086020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154908060020154905083565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7ff870135902c5dcbc5f453f4a2b060fc514a9219ca376f6a199d6f8d93a7b295581565b6000801b61076181610bab565b60005b8381101561078b5761077885600085610d88565b808061078390611906565b915050610764565b5050505050565b60065481565b6000801b6107a581610bab565b60648211156107e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e0906119c0565b60405180910390fd5b816006819055505050565b6107fd82610493565b61080681610bab565b6108108383610ca7565b505050565b6000801b61082281610bab565b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600860008560ff1660ff168152602001908152602001600020905060008160020154116108cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c290611a2c565b60405180910390fd5b60006108d5610c9f565b90508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093c90611abe565b60405180910390fd5b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614610a5f5783600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508390505b600083600101541115610b14578415610ad9576000600554606464e8d4a510008660010154610a8e9190611ade565b610a989190611ade565b610aa29190611b4f565b9050610ad2600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828585610f0d565b5050610b13565b600083600101549050610b10600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828585610f0d565b50505b5b826002016000815480929190610b2990611b80565b9190505550610b39828288610d88565b505050505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610bbc81610bb7610c9f565b6110a6565b50565b610bc98282610662565b610c9b57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610c40610c9f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600033905090565b610cb18282610662565b15610d8457600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610d29610c9f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166340d097c3846040518263ffffffff1660e01b8152600401610de391906115c2565b600060405180830381600087803b158015610dfd57600080fd5b505af1158015610e11573d6000803e3d6000fd5b5050505060006001600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16629a9b7b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea99190611bbe565b610eb39190611beb565b90508373ffffffffffffffffffffffffffffffffffffffff167f18dea01b8dbdfb9357210ced5b3b1cec8afd130724a4e4a8e9412da83d970c80848484604051610eff93929190611c1f565b60405180910390a250505050565b600080849050600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610ff6576000606460065483610f599190611ade565b610f639190611b4f565b90508082610f719190611beb565b91508673ffffffffffffffffffffffffffffffffffffffff166323b872dd8686846040518463ffffffff1660e01b8152600401610fb093929190611c56565b6020604051808303816000875af1158015610fcf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff39190611ca2565b50505b8573ffffffffffffffffffffffffffffffffffffffff166323b872dd85600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518463ffffffff1660e01b815260040161105593929190611c56565b6020604051808303816000875af1158015611074573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110989190611ca2565b506001915050949350505050565b6110b08282610662565b611127576110bd8161112b565b6110cb8360001c6020611158565b6040516020016110dc929190611dd8565b6040516020818303038152906040526040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111e9190611e5c565b60405180910390fd5b5050565b60606111518273ffffffffffffffffffffffffffffffffffffffff16601460ff16611158565b9050919050565b60606000600283600261116b9190611ade565b6111759190611e7e565b67ffffffffffffffff81111561118e5761118d611eb2565b5b6040519080825280601f01601f1916602001820160405280156111c05781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106111f8576111f7611ee1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061125c5761125b611ee1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261129c9190611ade565b6112a69190611e7e565b90505b6001811115611346577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106112e8576112e7611ee1565b5b1a60f81b8282815181106112ff576112fe611ee1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061133f90611b80565b90506112a9565b506000841461138a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138190611f5c565b60405180910390fd5b8091505092915050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6113ce81611399565b81146113d957600080fd5b50565b6000813590506113eb816113c5565b92915050565b60006020828403121561140757611406611394565b5b6000611415848285016113dc565b91505092915050565b60008115159050919050565b6114338161141e565b82525050565b600060208201905061144e600083018461142a565b92915050565b6000819050919050565b61146781611454565b82525050565b6000602082019050611482600083018461145e565b92915050565b6000819050919050565b61149b81611488565b81146114a657600080fd5b50565b6000813590506114b881611492565b92915050565b6000602082840312156114d4576114d3611394565b5b60006114e2848285016114a9565b91505092915050565b6114f481611488565b82525050565b600060208201905061150f60008301846114eb565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061154082611515565b9050919050565b61155081611535565b811461155b57600080fd5b50565b60008135905061156d81611547565b92915050565b6000806040838503121561158a57611589611394565b5b6000611598858286016114a9565b92505060206115a98582860161155e565b9150509250929050565b6115bc81611535565b82525050565b60006020820190506115d760008301846115b3565b92915050565b600060ff82169050919050565b6115f3816115dd565b81146115fe57600080fd5b50565b600081359050611610816115ea565b92915050565b61161f81611454565b811461162a57600080fd5b50565b60008135905061163c81611616565b92915050565b60008060006060848603121561165b5761165a611394565b5b600061166986828701611601565b935050602061167a8682870161162d565b925050604061168b8682870161162d565b9150509250925092565b6000602082840312156116ab576116aa611394565b5b60006116b98482850161162d565b91505092915050565b6000602082840312156116d8576116d7611394565b5b60006116e684828501611601565b91505092915050565b6116f8816115dd565b82525050565b600060608201905061171360008301866116ef565b611720602083018561145e565b61172d604083018461145e565b949350505050565b60008060006060848603121561174e5761174d611394565b5b600061175c8682870161155e565b935050602061176d8682870161162d565b925050604061177e86828701611601565b9150509250925092565b60006020828403121561179e5761179d611394565b5b60006117ac8482850161155e565b91505092915050565b6117be8161141e565b81146117c957600080fd5b50565b6000813590506117db816117b5565b92915050565b6000806000606084860312156117fa576117f9611394565b5b600061180886828701611601565b9350506020611819868287016117cc565b925050604061182a8682870161155e565b9150509250925092565b600082825260208201905092915050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b60006118a1602f83611834565b91506118ac82611845565b604082019050919050565b600060208201905081810360008301526118d081611894565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061191182611454565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611943576119426118d7565b5b600182019050919050565b7f4d6574656f724e46544d61726b65743a20726174652063616e74206265206f7660008201527f6572203130302500000000000000000000000000000000000000000000000000602082015250565b60006119aa602783611834565b91506119b58261194e565b604082019050919050565b600060208201905081810360008301526119d98161199d565b9050919050565b7f4d6574656f724e46544d61726b65743a20736f6c64206f757400000000000000600082015250565b6000611a16601983611834565b9150611a21826119e0565b602082019050919050565b60006020820190508181036000830152611a4581611a09565b9050919050565b7f4d6574656f724e46544d61726b65743a2072656665727265722063616e74206260008201527f652073656c660000000000000000000000000000000000000000000000000000602082015250565b6000611aa8602683611834565b9150611ab382611a4c565b604082019050919050565b60006020820190508181036000830152611ad781611a9b565b9050919050565b6000611ae982611454565b9150611af483611454565b9250828202611b0281611454565b91508282048414831517611b1957611b186118d7565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611b5a82611454565b9150611b6583611454565b925082611b7557611b74611b20565b5b828204905092915050565b6000611b8b82611454565b915060008203611b9e57611b9d6118d7565b5b600182039050919050565b600081519050611bb881611616565b92915050565b600060208284031215611bd457611bd3611394565b5b6000611be284828501611ba9565b91505092915050565b6000611bf682611454565b9150611c0183611454565b9250828203905081811115611c1957611c186118d7565b5b92915050565b6000606082019050611c3460008301866115b3565b611c4160208301856116ef565b611c4e604083018461145e565b949350505050565b6000606082019050611c6b60008301866115b3565b611c7860208301856115b3565b611c85604083018461145e565b949350505050565b600081519050611c9c816117b5565b92915050565b600060208284031215611cb857611cb7611394565b5b6000611cc684828501611c8d565b91505092915050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000611d10601783611ccf565b9150611d1b82611cda565b601782019050919050565b600081519050919050565b60005b83811015611d4f578082015181840152602081019050611d34565b60008484015250505050565b6000611d6682611d26565b611d708185611ccf565b9350611d80818560208601611d31565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000611dc2601183611ccf565b9150611dcd82611d8c565b601182019050919050565b6000611de382611d03565b9150611def8285611d5b565b9150611dfa82611db5565b9150611e068284611d5b565b91508190509392505050565b6000601f19601f8301169050919050565b6000611e2e82611d26565b611e388185611834565b9350611e48818560208601611d31565b611e5181611e12565b840191505092915050565b60006020820190508181036000830152611e768184611e23565b905092915050565b6000611e8982611454565b9150611e9483611454565b9250828201905080821115611eac57611eab6118d7565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000611f46602083611834565b9150611f5182611f10565b602082019050919050565b60006020820190508181036000830152611f7581611f39565b905091905056fea2646970667358221220b028672215c9115ab98915fa9510d216065be54db852a6e734a863cee51725fa64736f6c63430008120033000000000000000000000000970ae197e200b3d3d8c8262f4b20bd3281e882e5000000000000000000000000ee84098824def0e26bcc41610703bf4fc714e321000000000000000000000000c2132d05d31c914a87c6611c10748aeb04b58e8f000000000000000000000000c83c39b33331b23912fe7b3f17d8ec970cfe868b