11 txs
11 calls
constructor
constructor(address _currency, address _owner, address _authority)
functions
allowedTokens
viewfunction allowedTokens(address) view returns (uint8)
authority
viewfunction authority() view returns (address)
currency
viewfunction currency() view returns (address)
listings
viewfunction listings(uint256) view returns (address owner, address token, uint256 id, uint256 amount, uint256 price)
owner
viewfunction owner() view returns (address)
allowToken
nonpayablefunction allowToken(address token, uint8 nftType)
buyERC1155
nonpayablefunction buyERC1155(uint256 id)
buyERC20
nonpayablefunction buyERC20(uint256 id)
buyERC721
nonpayablefunction buyERC721(uint256 id)
cancelERC1155
nonpayablefunction cancelERC1155(uint256 id)
cancelERC20
nonpayablefunction cancelERC20(uint256 id)
cancelERC721
nonpayablefunction cancelERC721(uint256 id)
createListing
nonpayablefunction createListing(address token, uint256 id, uint256 amount, uint256 price)
listERC1155
nonpayablefunction listERC1155(address token, uint256 id, uint256 amount, uint256 price)
listERC20
nonpayablefunction listERC20(address token, uint256 amount, uint256 price)
listERC721
nonpayablefunction listERC721(address token, uint256 id, uint256 price)
onERC1155BatchReceived
nonpayablefunction onERC1155BatchReceived(address, address, uint256[], uint256[], bytes) returns (bytes4)
onERC1155Received
nonpayablefunction onERC1155Received(address, address, uint256, uint256, bytes) returns (bytes4)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
setAuthority
nonpayablefunction setAuthority(address newAuthority)
setCurrency
nonpayablefunction setCurrency(address _currency)
setOwner
nonpayablefunction setOwner(address newOwner)
events
AllowToken
event AllowToken(address indexed token, uint8 nftType)
AuthorityUpdated
event AuthorityUpdated(address indexed user, address indexed newAuthority)
ItemBought
event ItemBought(uint256 indexed id)
ItemCancelled
event ItemCancelled(uint256 indexed id)
ItemListed
event ItemListed(address indexed token, uint256 indexed id, uint256 indexed listingId, address owner, uint256 amount, uint256 price)
OwnerUpdated
event OwnerUpdated(address indexed user, address indexed newOwner)
SetCurrency
event SetCurrency(address currency)
errors
No errors.
creation bytecode
0x608060405260006005553480156200001657600080fd5b50604051620020ef380380620020ef83398101604081905262000039916200010f565b600080546001600160a01b03199081166001600160a01b0385811691821784556001805490931690851617909155604051849284929133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7691a36040516001600160a01b0382169033907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b7638998019890600090a35050600280546001600160a01b0319166001600160a01b03949094169390931790925550620001639050565b6001600160a01b03811681146200010c57600080fd5b50565b6000806000606084860312156200012557600080fd5b83516200013281620000f6565b60208501519093506200014581620000f6565b60408501519092506200015881620000f6565b809150509250925092565b611f7c80620001736000396000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c8063944cce5b116100d8578063e5a6b10f1161008c578063f1962bcf11610066578063f1962bcf14610462578063f23a6e6114610475578063ff94e88b146104ae57600080fd5b8063e5a6b10f146103ff578063e744092e1461041f578063e8d9b52f1461044f57600080fd5b8063bc197c81116100bd578063bc197c811461030d578063bf7e214f14610348578063de74e57b1461036857600080fd5b8063944cce5b146102e7578063bb391311146102fa57600080fd5b8063549ef0d11161013a5780637a9e5e4b116101145780637a9e5e4b1461027c578063878741971461028f5780638da5cb5b146102a257600080fd5b8063549ef0d1146102435780636a2b45231461025657806370cdec3d1461026957600080fd5b8063150b7a021161016b578063150b7a02146101af5780632f84c3911461021d5780635280af1d1461023057600080fd5b80630dcdf8481461018757806313af40351461019c575b600080fd5b61019a610195366004611b69565b6104c1565b005b61019a6101aa366004611ba7565b61065b565b6101e76101bd366004611c14565b7f150b7a020000000000000000000000000000000000000000000000000000000095945050505050565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b61019a61022b366004611ba7565b61075f565b61019a61023e366004611c87565b61086c565b61019a610251366004611cbc565b6109af565b61019a610264366004611b69565b610aff565b61019a610277366004611cf9565b610d68565b61019a61028a366004611ba7565b610e79565b61019a61029d366004611c87565b610fd6565b6000546102c29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610214565b61019a6102f5366004611b69565b611094565b61019a610308366004611b69565b611298565b6101e761031b366004611d79565b7fbc197c810000000000000000000000000000000000000000000000000000000098975050505050505050565b6001546102c29073ffffffffffffffffffffffffffffffffffffffff1681565b6103bf610376366004611b69565b60046020819052600091825260409091208054600182015460028301546003840154939094015473ffffffffffffffffffffffffffffffffffffffff9283169492909116929085565b6040805173ffffffffffffffffffffffffffffffffffffffff9687168152959094166020860152928401919091526060830152608082015260a001610214565b6002546102c29073ffffffffffffffffffffffffffffffffffffffff1681565b61044261042d366004611ba7565b60036020526000908152604090205460ff1681565b6040516102149190611e67565b61019a61045d366004611cf9565b61143a565b61019a610470366004611b69565b611590565b6101e7610483366004611ea8565b7ff23a6e61000000000000000000000000000000000000000000000000000000009695505050505050565b61019a6104bc366004611b69565b611774565b600081815260046020526040902060018082015473ffffffffffffffffffffffffffffffffffffffff1660009081526003602081905260409091205460ff169081111561051057610510611e38565b1461057c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e00000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600254815460048301546105ad9273ffffffffffffffffffffffffffffffffffffffff9081169233929116906118d9565b600181015460038201546105d99173ffffffffffffffffffffffffffffffffffffffff1690339061199f565b600082815260046020819052604080832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168255600182018054909116905560028101849055600381018490559091018290555183917f7f7e375fbeaef0d6ebfc53af15b7aeed1d704e3424f34ef67e914b1f68f8c8ef91a25050565b610689336000357fffffffff0000000000000000000000000000000000000000000000000000000016611a58565b6106ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b61078d336000357fffffffff0000000000000000000000000000000000000000000000000000000016611a58565b6107f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527fabafa9c1e6fed9b333f964bb84ed729c36b3152a843ae96a671ebc95742de6e69060200160405180910390a150565b600273ffffffffffffffffffffffffffffffffffffffff841660009081526003602081905260409091205460ff16908111156108aa576108aa611e38565b14610911576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f554e535550504f525445445f544f4b454e0000000000000000000000000000006044820152606401610573565b6040517f42842e0e0000000000000000000000000000000000000000000000000000000081523360048201523060248201526044810183905273ffffffffffffffffffffffffffffffffffffffff8416906342842e0e90606401600060405180830381600087803b15801561098557600080fd5b505af1158015610999573d6000803e3d6000fd5b505050506109aa8383600184610d68565b505050565b6109dd336000357fffffffff0000000000000000000000000000000000000000000000000000000016611a58565b610a43576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360208190526040909120805483927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00909116906001908490811115610aa857610aa8611e38565b02179055508173ffffffffffffffffffffffffffffffffffffffff167fee9b5a9c16d7671f394b706956c15e612db354be926e7fc97b05e34fcf0fdd6e82604051610af39190611e67565b60405180910390a25050565b6000818152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff163314610b8d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b600181015473ffffffffffffffffffffffffffffffffffffffff1660009081526003602081905260409091205460ff1681811115610bcd57610bcd611e38565b14610c34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e0000000000000000000000000000000000000000006044820152606401610573565b6001810154600282015460038301546040517ff242432a0000000000000000000000000000000000000000000000000000000081523060048201523360248201526044810192909252606482015260a06084820152600060a482015273ffffffffffffffffffffffffffffffffffffffff9091169063f242432a9060c4015b600060405180830381600087803b158015610ccd57600080fd5b505af1158015610ce1573d6000803e3d6000fd5b505050600083815260046020819052604080832080547fffffffffffffffffffffffff0000000000000000000000000000000000000000908116825560018201805490911690556002810184905560038101849055909101829055518492507f6875ab0cd79fc59886259e999e56eb8da549fa524709389bc624972a589699589190a25050565b6005546040805133815260208101859052908101839052849073ffffffffffffffffffffffffffffffffffffffff8716907f6f74e6139c449d076f1ca3c4ba1fd11954767dd447cc9f3b5c325b1009e2f2159060600160405180910390a46040805160a08101825233815273ffffffffffffffffffffffffffffffffffffffff9586166020808301918252828401968752606083019586526080830194855260058054600090815260049283905294909420925183549089167fffffffffffffffffffffffff000000000000000000000000000000000000000091821617845591516001808501805492909a1691909316179097559451600282015592516003840155905191909301558154019055565b60005473ffffffffffffffffffffffffffffffffffffffff16331480610f5c57506001546040517fb70096130000000000000000000000000000000000000000000000000000000081523360048201523060248201526000357fffffffff0000000000000000000000000000000000000000000000000000000016604482015273ffffffffffffffffffffffffffffffffffffffff9091169063b700961390606401602060405180830381865afa158015610f38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5c9190611f24565b610f6557600080fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b7638998019890600090a350565b600173ffffffffffffffffffffffffffffffffffffffff841660009081526003602081905260409091205460ff169081111561101457611014611e38565b1461107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f554e535550504f525445445f544f4b454e0000000000000000000000000000006044820152606401610573565b611087833330856118d9565b6109aa8360008484610d68565b60008181526004602052604090206002600182015473ffffffffffffffffffffffffffffffffffffffff1660009081526003602081905260409091205460ff16908111156110e4576110e4611e38565b1461114b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e0000000000000000000000000000000000000000006044820152606401610573565b6002548154600483015461117c9273ffffffffffffffffffffffffffffffffffffffff9081169233929116906118d9565b600181015460028201546040517f42842e0e000000000000000000000000000000000000000000000000000000008152306004820152336024820152604481019190915273ffffffffffffffffffffffffffffffffffffffff909116906342842e0e906064015b600060405180830381600087803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505050600083815260046020819052604080832080547fffffffffffffffffffffffff0000000000000000000000000000000000000000908116825560018201805490911690556002810184905560038101849055909101829055518492507f7f7e375fbeaef0d6ebfc53af15b7aeed1d704e3424f34ef67e914b1f68f8c8ef9190a25050565b6000818152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff163314611326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b6002600182015473ffffffffffffffffffffffffffffffffffffffff1660009081526003602081905260409091205460ff169081111561136857611368611e38565b146113cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e0000000000000000000000000000000000000000006044820152606401610573565b600181015460028201546040517f42842e0e000000000000000000000000000000000000000000000000000000008152306004820152336024820152604481019190915273ffffffffffffffffffffffffffffffffffffffff909116906342842e0e90606401610cb3565b73ffffffffffffffffffffffffffffffffffffffff841660009081526003602081905260409091205460ff168181111561147657611476611e38565b146114dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f554e535550504f525445445f544f4b454e0000000000000000000000000000006044820152606401610573565b6040517ff242432a000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490526064810183905260a06084820152600060a482015273ffffffffffffffffffffffffffffffffffffffff85169063f242432a9060c401600060405180830381600087803b15801561156657600080fd5b505af115801561157a573d6000803e3d6000fd5b5050505061158a84848484610d68565b50505050565b6000818152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff16331461161e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152606401610573565b60018082015473ffffffffffffffffffffffffffffffffffffffff1660009081526003602081905260409091205460ff169081111561165f5761165f611e38565b146116c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e0000000000000000000000000000000000000000006044820152606401610573565b600181015460038201546116f29173ffffffffffffffffffffffffffffffffffffffff1690339061199f565b600082815260046020819052604080832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168255600182018054909116905560028101849055600381018490559091018290555183917f6875ab0cd79fc59886259e999e56eb8da549fa524709389bc624972a5896995891a25050565b6000818152600460209081526040808320600181015473ffffffffffffffffffffffffffffffffffffffff16845260039283905292205460ff16818111156117be576117be611e38565b14611825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f57524f4e475f544f4b454e0000000000000000000000000000000000000000006044820152606401610573565b600254815460048301546118569273ffffffffffffffffffffffffffffffffffffffff9081169233929116906118d9565b6001810154600282015460038301546040517ff242432a0000000000000000000000000000000000000000000000000000000081523060048201523360248201526044810192909252606482015260a06084820152600060a482015273ffffffffffffffffffffffffffffffffffffffff9091169063f242432a9060c4016111e3565b60006040517f23b872dd0000000000000000000000000000000000000000000000000000000081528460048201528360248201528260448201526020600060648360008a5af13d15601f3d1160016000511416171691505080611998576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5452414e534645525f46524f4d5f4641494c45440000000000000000000000006044820152606401610573565b5050505050565b60006040517fa9059cbb000000000000000000000000000000000000000000000000000000008152836004820152826024820152602060006044836000895af13d15601f3d116001600051141617169150508061158a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f5452414e534645525f4641494c454400000000000000000000000000000000006044820152606401610573565b60015460009073ffffffffffffffffffffffffffffffffffffffff168015801590611b3c57506040517fb700961300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301523060248301527fffffffff000000000000000000000000000000000000000000000000000000008516604483015282169063b700961390606401602060405180830381865afa158015611b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b3c9190611f24565b80611b61575060005473ffffffffffffffffffffffffffffffffffffffff8581169116145b949350505050565b600060208284031215611b7b57600080fd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff81168114611ba457600080fd5b50565b600060208284031215611bb957600080fd5b8135611bc481611b82565b9392505050565b60008083601f840112611bdd57600080fd5b50813567ffffffffffffffff811115611bf557600080fd5b602083019150836020828501011115611c0d57600080fd5b9250929050565b600080600080600060808688031215611c2c57600080fd5b8535611c3781611b82565b94506020860135611c4781611b82565b935060408601359250606086013567ffffffffffffffff811115611c6a57600080fd5b611c7688828901611bcb565b969995985093965092949392505050565b600080600060608486031215611c9c57600080fd5b8335611ca781611b82565b95602085013595506040909401359392505050565b60008060408385031215611ccf57600080fd5b8235611cda81611b82565b9150602083013560048110611cee57600080fd5b809150509250929050565b60008060008060808587031215611d0f57600080fd5b8435611d1a81611b82565b966020860135965060408601359560600135945092505050565b60008083601f840112611d4657600080fd5b50813567ffffffffffffffff811115611d5e57600080fd5b6020830191508360208260051b8501011115611c0d57600080fd5b60008060008060008060008060a0898b031215611d9557600080fd5b8835611da081611b82565b97506020890135611db081611b82565b9650604089013567ffffffffffffffff80821115611dcd57600080fd5b611dd98c838d01611d34565b909850965060608b0135915080821115611df257600080fd5b611dfe8c838d01611d34565b909650945060808b0135915080821115611e1757600080fd5b50611e248b828c01611bcb565b999c989b5096995094979396929594505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6020810160048310611ea2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b60008060008060008060a08789031215611ec157600080fd5b8635611ecc81611b82565b95506020870135611edc81611b82565b94506040870135935060608701359250608087013567ffffffffffffffff811115611f0657600080fd5b611f1289828a01611bcb565b979a9699509497509295939492505050565b600060208284031215611f3657600080fd5b81518015158114611bc457600080fdfea26469706673582212209a99707efa707d9696956564f0ff18602ff9563fbd72fead8864f93ab06502fc64736f6c634300080f0033000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000007b84fe5da997d673a349ac59e971eaf4676d1d3c0000000000000000000000007b1fd50a4a046858575a0794a5d05ae4170469a9