0 txs
1 call
constructor
constructor(address productsModuleAddress)
functions
pricingParamsSchema
purefunction pricingParamsSchema() pure returns (string)
productDiscounts
viewfunction productDiscounts(uint256 slicerId, uint256 productId, address currency) view returns (uint240 basePrice, bool isFree, uint8 discountType)
productPrice
viewfunction productPrice(uint256 slicerId, uint256 productId, address currency, uint256 quantity, address buyer, bytes data) view returns (uint256 ethPrice, uint256 currencyPrice)
PRODUCTS_MODULE
viewfunction PRODUCTS_MODULE() view returns (address)
setProductPrice
nonpayablefunction setProductPrice(uint256 slicerId, uint256 productId, bytes params)
events
ProductPriceSet
event ProductPriceSet(uint256 slicerId, uint256 productId, bytes params)
errors
DiscountsNotDescending
error DiscountsNotDescending((address nft, uint80 discount, uint8 minQuantity, uint8 nftType, uint256 tokenId) nft)
InvalidMinQuantity
error InvalidMinQuantity()
InvalidRelativeDiscount
error InvalidRelativeDiscount()
NotProductOwner
error NotProductOwner()
WrongCurrency
error WrongCurrency()
creation bytecode
0x60a060405234801561000f575f80fd5b5060405161194d38038061194d83398101604081905261002e9161003f565b6001600160a01b031660805261006c565b5f6020828403121561004f575f80fd5b81516001600160a01b0381168114610065575f80fd5b9392505050565b6080516118c261008b5f395f818161014b015261022f01526118c25ff3fe608060405234801561000f575f80fd5b5060043610610064575f3560e01c8063201352941161004d578063201352941461009b5780639203f23314610146578063d7a3d0c814610192575f80fd5b8063158ddd921461006857806316fb8cbf14610086575b5f80fd5b6100706101ba565b60405161007d91906110c6565b60405180910390f35b61009961009436600461120e565b6101da565b005b6101376100a936600461127e565b5f60208181529381526040808220855292815282812090935282529020547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81169060ff7e0100000000000000000000000000000000000000000000000000000000000082048116917f010000000000000000000000000000000000000000000000000000000000000090041683565b60405161007d93929190611316565b61016d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161007d565b6101a56101a036600461135c565b61031b565b6040805192835260208301919091520161007d565b60606040518060e0016040528060b1815260200161180560b19139905090565b6040517fe6e9280800000000000000000000000000000000000000000000000000000000815260048101849052602481018390523360448201528390839073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063e6e9280890606401602060405180830381865afa158015610274573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029891906113e9565b6102ce576040517f35cd3b6d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102d98585856105bc565b7f761f93067526bcc6ba6826781562dec6af9a936b153eb8cc50113264847b1e2385858560405161030c93929190611402565b60405180910390a15050505050565b5f86815260208181526040808320888452825280832073ffffffffffffffffffffffffffffffffffffffff881684528252808320815160808101835281547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8116825260ff7e0100000000000000000000000000000000000000000000000000000000000082048116151595830195909552859485949293928401917f010000000000000000000000000000000000000000000000000000000000000090041660018111156103ea576103ea6112b4565b60018111156103fb576103fb6112b4565b815260200160018201805480602002602001604051908101604052809291908181526020015f905b82821015610524575f8481526020908190206040805160a08101825260028602909201805473ffffffffffffffffffffffffffffffffffffffff8116845269ffffffffffffffffffff740100000000000000000000000000000000000000008204169484019490945260ff7e010000000000000000000000000000000000000000000000000000000000008504811692840192909252919260608401917f01000000000000000000000000000000000000000000000000000000000000009091041660018111156104f6576104f66112b4565b6001811115610507576105076112b4565b815260200160018201548152505081526020019060010190610423565b5050509152505080519091507dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff165f03610596578060200151610591576040517f164fb6c200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6105af565b6105a589898989898987610ccd565b92509250506105b1565b505b965096945050505050565b5f818060200190518101906105d19190611537565b90506106046040805160a0810182525f808252602082018190529181018290529060608201908152602001606081525090565b60605f805f805f805b8851811015610cbf578881815181106106285761062861169b565b6020908102919091018101515f8e815280835260408082208f83528452808220835173ffffffffffffffffffffffffffffffffffffffff1683528452908190209282015183549183015115157e01000000000000000000000000000000000000000000000000000000000000027fff000000000000000000000000000000000000000000000000000000000000009092167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90911617178083556060820151919a5082907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f010000000000000000000000000000000000000000000000000000000000000083600181111561073e5761073e6112b4565b0217905550608089015160018201548151919950965094508585116107635785610765565b845b93508584146107745785610776565b845b92505f5b84811015610cb55780861115610c5e5760018a6060015160018111156107a2576107a26112b4565b0361080c576127108982815181106107bc576107bc61169b565b60200260200101516020015169ffffffffffffffffffff16111561080c576040517fa1488d0000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b88818151811061081e5761081e61169b565b60200260200101516040015160ff165f03610865576040517fe4c236aa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80156108f2578789828151811061087e5761087e61169b565b60200260200101516020015169ffffffffffffffffffff1611156108f2578881815181106108ae576108ae61169b565b60200260200101516040517f441e389c0000000000000000000000000000000000000000000000000000000081526004016108e991906116c8565b60405180910390fd5b8881815181106109045761090461169b565b60200260200101516020015169ffffffffffffffffffff16975083811015610ac2578881815181106109385761093861169b565b60200260200101518260010182815481106109555761095561169b565b5f9182526020918290208351600290920201805492840151604085015160ff167e01000000000000000000000000000000000000000000000000000000000000027fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff69ffffffffffffffffffff90921674010000000000000000000000000000000000000000027fffff00000000000000000000000000000000000000000000000000000000000090951673ffffffffffffffffffffffffffffffffffffffff90941693909317939093179283168217815560608401519092909183917effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909116177f0100000000000000000000000000000000000000000000000000000000000000836001811115610aab57610aab6112b4565b021790555060808201518160010155905050610cad565b868110610c595781600101898281518110610adf57610adf61169b565b6020908102919091018101518254600181810185555f948552938390208251600290920201805493830151604084015160ff167e01000000000000000000000000000000000000000000000000000000000000027fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff69ffffffffffffffffffff90921674010000000000000000000000000000000000000000027fffff00000000000000000000000000000000000000000000000000000000000090961673ffffffffffffffffffffffffffffffffffffffff90941693909317949094179384168217815560608301519294909384927effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90911617907f0100000000000000000000000000000000000000000000000000000000000000908490811115610c4757610c476112b4565b02179055506080820151816001015550505b610cad565b81600101805480610c7157610c71611731565b5f8281526020812060027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909301928302018181556001015590555b60010161077a565b505060010161060d565b505050505050505050505050565b5f805f610cda8487610d7f565b90505f815f03610d15578451610d10907dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff168961178b565b610d48565b610d48855f01517dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff168660400151848b610ffe565b905073ffffffffffffffffffffffffffffffffffffffff8916610d6d57809350610d71565b8092505b505097509795505050505050565b60608281015180516040805160a0810182525f8082526020820181905291810182905293840181905260808401819052925f805f805b85811015610fed57868181518110610dcf57610dcf61169b565b60200260200101519450600180811115610deb57610deb6112b4565b85606001516001811115610e0157610e016112b4565b03610edb57845173ffffffffffffffffffffffffffffffffffffffff8581169116141580610e33575084608001518314155b15610ed657845160808601516040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c81166004830152602482019290925291169062fdd58e90604401602060405180830381865afa158015610eaf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ed391906117a2565b91505b610fac565b5f85606001516001811115610ef257610ef26112b4565b03610fac57845173ffffffffffffffffffffffffffffffffffffffff858116911614610fac5784516040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b81166004830152909116906370a0823190602401602060405180830381865afa158015610f85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa991906117a2565b91505b846040015160ff168210610fd957846020015169ffffffffffffffffffff16975050505050505050610ff8565b845160808601519094509250600101610db5565b505f96505050505050505b92915050565b5f80846001811115611012576110126112b4565b03611033578161102284876117b9565b61102c919061178b565b905061105d565b6127108381039083611045838961178b565b61104f919061178b565b61105991906117cc565b9150505b949350505050565b5f81518084525f5b818110156110895760208185018101518683018201520161106d565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f6110d86020830184611065565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60405160a0810167ffffffffffffffff8111828210171561112f5761112f6110df565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561117c5761117c6110df565b604052919050565b5f82601f830112611193575f80fd5b813567ffffffffffffffff8111156111ad576111ad6110df565b6111de60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611135565b8181528460208386010111156111f2575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f60608486031215611220575f80fd5b8335925060208401359150604084013567ffffffffffffffff811115611244575f80fd5b61125086828701611184565b9150509250925092565b73ffffffffffffffffffffffffffffffffffffffff8116811461127b575f80fd5b50565b5f805f60608486031215611290575f80fd5b833592506020840135915060408401356112a98161125a565b809150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6002811061127b577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8416815282151560208201526060810161134e836112e1565b826040830152949350505050565b5f805f805f8060c08789031215611371575f80fd5b8635955060208701359450604087013561138a8161125a565b93506060870135925060808701356113a18161125a565b915060a087013567ffffffffffffffff8111156113bc575f80fd5b6113c889828a01611184565b9150509295509295509295565b805180151581146113e4575f80fd5b919050565b5f602082840312156113f9575f80fd5b6110d8826113d5565b838152826020820152606060408201525f6114206060830184611065565b95945050505050565b5f67ffffffffffffffff821115611442576114426110df565b5060051b60200190565b8051600281106113e4575f80fd5b5f82601f830112611469575f80fd5b8151602061147e61147983611429565b611135565b82815260a0928302850182019282820191908785111561149c575f80fd5b8387015b8581101561152a5781818a0312156114b6575f80fd5b6114be61110c565b81516114c98161125a565b81528186015169ffffffffffffffffffff811681146114e6575f80fd5b8187015260408281015160ff811681146114fe575f80fd5b90820152606061150f83820161144c565b908201526080828101519082015284529284019281016114a0565b5090979650505050505050565b5f6020808385031215611548575f80fd5b825167ffffffffffffffff8082111561155f575f80fd5b818501915085601f830112611572575f80fd5b815161158061147982611429565b81815260059190911b8301840190848101908883111561159e575f80fd5b8585015b8381101561168e578051858111156115b8575f80fd5b860160a0818c037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018113156115ec575f80fd5b6115f461110c565b898301516116018161125a565b81526040838101517dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81168114611634575f80fd5b828c015260606116458582016113d5565b828401526080915061165882860161144c565b9083015291830151918883111561166d575f80fd5b61167b8e8c8587010161145a565b90820152855250509186019186016115a2565b5098975050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60a08201905073ffffffffffffffffffffffffffffffffffffffff835116825269ffffffffffffffffffff602084015116602083015260ff6040840151166040830152606083015161171a816112e1565b806060840152506080830151608083015292915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082028115828204841417610ff857610ff861175e565b5f602082840312156117b2575f80fd5b5051919050565b81810381811115610ff857610ff861175e565b5f826117ff577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fe28616464726573732063757272656e63792c75696e74323430206261736550726963652c626f6f6c206973467265652c75696e743820646973636f756e74547970652c2861646472657373206e66742c75696e74383020646973636f756e742c75696e7438206d696e5175616e746974792c75696e7438206e6674547970652c75696e7432353620746f6b656e4964295b5d20646973636f756e7473295b5d20616c6c43757272656e6379506172616d73a164736f6c6343000817000a000000000000000000000000b9d5b99d5d0fa04dd7eb2b0cd7753317c2ea1a84