0 txs
1 call
constructor
constructor(address productsModuleAddress)
functions
isPurchaseAllowed
viewfunction isPurchaseAllowed(uint256 slicerId, uint256 productId, address, uint256 quantity, bytes, bytes) view returns (bool isAllowed)
paramsSchema
purefunction paramsSchema() pure returns (string)
PRODUCTS_MODULE
viewfunction PRODUCTS_MODULE() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
tokenData
viewfunction tokenData(uint256 slicerId, uint256 productId) view returns (address token, bool revertOnMaxSupplyReached, uint256 tokensPerUnit)
configureProduct
nonpayablefunction configureProduct(uint256 slicerId, uint256 productId, bytes params)
onProductPurchase
payablefunction onProductPurchase(uint256 slicerId, uint256 productId, address buyer, uint256 quantity, bytes slicerData, bytes buyerData) payable
events
ProductConfigured
event ProductConfigured(uint256 slicerId, uint256 productId, bytes params)
errors
InvalidTokensPerUnit
error InvalidTokensPerUnit()
NotAllowed
error NotAllowed()
NotProductOwner
error NotProductOwner()
NotPurchase
error NotPurchase()
creation bytecode
0x60a060405234801561000f575f80fd5b5060405161225f38038061225f83398101604081905261002e9161003f565b6001600160a01b031660805261006c565b5f6020828403121561004f575f80fd5b81516001600160a01b0381168114610065575f80fd5b9392505050565b6080516121cd6100925f395f818161016c015281816104c801526105f501526121cd5ff3fe60806040526004361062000077575f3560e01c806395db9368116200005257806395db936814620001b4578063a23fffb914620001d8578063d11f43a714620001f1578063ec2eca081462000217575f80fd5b806301ffc9a7146200007b578063589baef114620000b45780639203f2331462000159575b5f80fd5b34801562000087575f80fd5b506200009f6200009936600462000ae6565b6200023b565b60405190151581526020015b60405180910390f35b348015620000c0575f80fd5b5062000126620000d236600462000b2e565b5f6020818152928152604080822090935290815220805460019091015473ffffffffffffffffffffffffffffffffffffffff82169174010000000000000000000000000000000000000000900460ff169083565b6040805173ffffffffffffffffffffffffffffffffffffffff9094168452911515602084015290820152606001620000ab565b34801562000165575f80fd5b506200018e7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001620000ab565b348015620001c0575f80fd5b506200009f620001d236600462000c93565b62000321565b620001ef620001e936600462000c93565b620004b0565b005b348015620001fd575f80fd5b50620002086200057f565b604051620000ab919062000d97565b34801562000223575f80fd5b50620001ef6200023536600462000dab565b620005a0565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a7000000000000000000000000000000000000000000000000000000001480620002ce57507fffffffff0000000000000000000000000000000000000000000000000000000082167f37e46cd100000000000000000000000000000000000000000000000000000000145b806200031b57507fffffffff0000000000000000000000000000000000000000000000000000000082167f3d3189af00000000000000000000000000000000000000000000000000000000145b92915050565b5f8681526020818152604080832088845282528083208151606081018352815473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000900460ff16158015948201949094526001909101549181019190915290620004a057805f015173ffffffffffffffffffffffffffffffffffffffff1663d5abeb016040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000405919062000dfb565b604082015162000416908762000e40565b825f015173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000463573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000489919062000dfb565b62000495919062000e5a565b1115915050620004a6565b60019150505b9695505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161462000520576040517f47322d0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6200053086868686868662000321565b62000567576040517f3d693ada00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b62000577868686868686620006e9565b505050505050565b60606040518060c00160405280608d815260200162002134608d9139905090565b6040517fe6e9280800000000000000000000000000000000000000000000000000000000815260048101849052602481018390523360448201528390839073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063e6e9280890606401602060405180830381865afa1580156200063b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000661919062000e85565b62000698576040517f35cd3b6d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620006a585858562000848565b7fe778d71bda5fa429690e9a690d0ef7339a3fb1e677e39c77a9167de98afdd2da858585604051620006da9392919062000ea1565b60405180910390a15050505050565b5f8681526020818152604080832088845282528083208151606081018352815473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000900460ff16151593810193909352600101549082018190529091906200075f908662000e40565b82516040805173ffffffffffffffffffffffffffffffffffffffff8a81166024830152604480830186905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f40c10f190000000000000000000000000000000000000000000000000000000017905291519394505f939190921691620007fa9162000eca565b5f604051808303815f865af19150503d805f811462000835576040519150601f19603f3d011682016040523d82523d5f602084013e6200083a565b606091505b505050505050505050505050565b5f805f805f805f8780602001905181019062000865919062000f38565b9650965096509650965096509650805f03620008ad576040517fc6cc62cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8a8152602081815260408083208c845290915290205473ffffffffffffffffffffffffffffffffffffffff1680620009af57878784604051620008f19062000ad8565b620008ff9392919062000fe0565b604051809103905ff08015801562000919573d5f803e3d5ffd5b5090508515620009a9576040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152602482018890528216906340c10f19906044015f604051808303815f87803b15801562000991575f80fd5b505af1158015620009a4573d5f803e3d5ffd5b505050505b62000a2d565b6040517f6f8b44b00000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff821690636f8b44b0906024015f604051808303815f87803b15801562000a15575f80fd5b505af115801562000a28573d5f803e3d5ffd5b505050505b6040805160608101825273ffffffffffffffffffffffffffffffffffffffff928316815294151560208087019182528683019485525f9d8e528d8152828e209c8e529b909b52909a20925183549951151574010000000000000000000000000000000000000000027fffffffffffffffffffffff000000000000000000000000000000000000000000909a169a16999099179790971781559651600190970196909655505050505050565b61111a806200101a83390190565b5f6020828403121562000af7575f80fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811462000b27575f80fd5b9392505050565b5f806040838503121562000b40575f80fd5b50508035926020909101359150565b73ffffffffffffffffffffffffffffffffffffffff8116811462000b71575f80fd5b50565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171562000beb5762000beb62000b74565b604052919050565b5f67ffffffffffffffff82111562000c0f5762000c0f62000b74565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f83011262000c4b575f80fd5b813562000c6262000c5c8262000bf3565b62000ba1565b81815284602083860101111562000c77575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f8060c0878903121562000ca9575f80fd5b8635955060208701359450604087013562000cc48162000b4f565b935060608701359250608087013567ffffffffffffffff8082111562000ce8575f80fd5b62000cf68a838b0162000c3b565b935060a089013591508082111562000d0c575f80fd5b5062000d1b89828a0162000c3b565b9150509295509295509295565b5f5b8381101562000d4457818101518382015260200162000d2a565b50505f910152565b5f815180845262000d6581602086016020860162000d28565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f62000b27602083018462000d4c565b5f805f6060848603121562000dbe575f80fd5b8335925060208401359150604084013567ffffffffffffffff81111562000de3575f80fd5b62000df18682870162000c3b565b9150509250925092565b5f6020828403121562000e0c575f80fd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820281158282048414176200031b576200031b62000e13565b808201808211156200031b576200031b62000e13565b8051801515811462000e80575f80fd5b919050565b5f6020828403121562000e96575f80fd5b62000b278262000e70565b838152826020820152606060408201525f62000ec1606083018462000d4c565b95945050505050565b5f825162000edd81846020870162000d28565b9190910192915050565b5f82601f83011262000ef7575f80fd5b815162000f0862000c5c8262000bf3565b81815284602083860101111562000f1d575f80fd5b62000f3082602083016020870162000d28565b949350505050565b5f805f805f805f60e0888a03121562000f4f575f80fd5b875167ffffffffffffffff8082111562000f67575f80fd5b62000f758b838c0162000ee7565b985060208a015191508082111562000f8b575f80fd5b5062000f9a8a828b0162000ee7565b96505060408801519450606088015162000fb48162000b4f565b935062000fc46080890162000e70565b925060a0880151915060c0880151905092959891949750929550565b606081525f62000ff4606083018662000d4c565b828103602084015262001008818662000d4c565b91505082604083015294935050505056fe60a060405234801562000010575f80fd5b506040516200111a3803806200111a833981016040819052620000339162000145565b828260036200004383826200023d565b5060046200005282826200023d565b5050336080525062000064816200006d565b50505062000309565b80156200007b57806200007e565b5f195b60055550565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112620000a8575f80fd5b81516001600160401b0380821115620000c557620000c562000084565b604051601f8301601f19908116603f01168101908282118183101715620000f057620000f062000084565b81604052838152602092508660208588010111156200010d575f80fd5b5f91505b8382101562000130578582018301518183018401529082019062000111565b5f602085830101528094505050505092915050565b5f805f6060848603121562000158575f80fd5b83516001600160401b03808211156200016f575f80fd5b6200017d8783880162000098565b9450602086015191508082111562000193575f80fd5b50620001a28682870162000098565b925050604084015190509250925092565b600181811c90821680620001c857607f821691505b602082108103620001e757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200023857805f5260205f20601f840160051c81016020851015620002145750805b601f840160051c820191505b8181101562000235575f815560010162000220565b50505b505050565b81516001600160401b0381111562000259576200025962000084565b62000271816200026a8454620001b3565b84620001ed565b602080601f831160018114620002a7575f84156200028f5750858301515b5f19600386901b1c1916600185901b17855562000301565b5f85815260208120601f198616915b82811015620002d757888601518255948401946001909101908401620002b6565b5085821015620002f557878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b608051610dea620003305f395f8181610117015281816103d0015261048b0152610dea5ff3fe608060405234801561000f575f80fd5b50600436106100f0575f3560e01c806340c10f1911610093578063a457c2d711610063578063a457c2d71461022d578063a9059cbb14610240578063d5abeb0114610253578063dd62ed3e1461025c575f80fd5b806340c10f19146101c85780636f8b44b0146101dd57806370a08231146101f057806395d89b4114610225575f80fd5b806318160ddd116100ce57806318160ddd1461018157806323b872dd14610193578063313ce567146101a657806339509351146101b5575f80fd5b806306fdde03146100f45780630754617214610112578063095ea7b31461015e575b5f80fd5b6100fc6102a1565b6040516101099190610bf9565b60405180910390f35b6101397f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610109565b61017161016c366004610c8b565b610331565b6040519015158152602001610109565b6002545b604051908152602001610109565b6101716101a1366004610cb3565b61034a565b60405160128152602001610109565b6101716101c3366004610c8b565b61036d565b6101db6101d6366004610c8b565b6103b8565b005b6101db6101eb366004610cec565b610473565b6101856101fe366004610d03565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b6100fc6104ee565b61017161023b366004610c8b565b6104fd565b61017161024e366004610c8b565b6105d2565b61018560055481565b61018561026a366004610d23565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b6060600380546102b090610d54565b80601f01602080910402602001604051908101604052809291908181526020018280546102dc90610d54565b80156103275780601f106102fe57610100808354040283529160200191610327565b820191905f5260205f20905b81548152906001019060200180831161030a57829003601f168201915b5050505050905090565b5f3361033e8185856105df565b60019150505b92915050565b5f33610357858285610791565b610362858585610867565b506001949350505050565b335f81815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033e90829086906103b3908790610da5565b6105df565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610427576040517ff8d2906c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104318282610ad4565b600554600254111561046f576040517f8a164f6300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146104e2576040517ff8d2906c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104eb81610bc5565b50565b6060600480546102b090610d54565b335f81815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61036282868684036105df565b5f3361033e818585610867565b73ffffffffffffffffffffffffffffffffffffffff8316610681576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff8216610724576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108615781811015610854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105bc565b61086184848484036105df565b50505050565b73ffffffffffffffffffffffffffffffffffffffff831661090a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff82166109ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610a62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105bc565b73ffffffffffffffffffffffffffffffffffffffff8481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610861565b73ffffffffffffffffffffffffffffffffffffffff8216610b51576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105bc565b8060025f828254610b629190610da5565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b8015610bd15780610bf3565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5b60055550565b5f602080835283518060208501525f5b81811015610c2557858101830151858201604001528201610c09565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c86575f80fd5b919050565b5f8060408385031215610c9c575f80fd5b610ca583610c63565b946020939093013593505050565b5f805f60608486031215610cc5575f80fd5b610cce84610c63565b9250610cdc60208501610c63565b9150604084013590509250925092565b5f60208284031215610cfc575f80fd5b5035919050565b5f60208284031215610d13575f80fd5b610d1c82610c63565b9392505050565b5f8060408385031215610d34575f80fd5b610d3d83610c63565b9150610d4b60208401610c63565b90509250929050565b600181811c90821680610d6857607f821691505b602082108103610d9f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b80820180821115610344577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffdfea164736f6c6343000817000a737472696e67206e616d652c737472696e672073796d626f6c2c75696e74323536207072656d696e74416d6f756e742c61646472657373207072656d696e7452656365697665722c626f6f6c207265766572744f6e4d6178537570706c79526561636865642c75696e74323536206d6178537570706c792c75696e7432353620746f6b656e73506572556e6974a164736f6c6343000817000a000000000000000000000000b9d5b99d5d0fa04dd7eb2b0cd7753317c2ea1a84