0 txs
304.8k calls
constructor
constructor(address limitOrderProtocol, address accessToken, address weth, address owner)
functions
getMakingAmount
viewfunction getMakingAmount(tuple order, bytes extension, bytes32 orderHash, address taker, uint256 takingAmount, uint256 remainingMakingAmount, bytes extraData) view returns (uint256)
getTakingAmount
viewfunction getTakingAmount(tuple order, bytes extension, bytes32 orderHash, address taker, uint256 makingAmount, uint256 remainingMakingAmount, bytes extraData) view returns (uint256)
owner
viewfunction owner() view returns (address)
postInteraction
nonpayablefunction postInteraction(tuple order, bytes extension, bytes32 orderHash, address taker, uint256 makingAmount, uint256 takingAmount, uint256 remainingMakingAmount, bytes extraData)
renounceOwnership
nonpayablefunction renounceOwnership()
rescueFunds
nonpayablefunction rescueFunds(address token, uint256 amount)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
AllowedTimeViolation
error AllowedTimeViolation()
EthTransferFailed
error EthTransferFailed()
ETHTransferFailed
error ETHTransferFailed()
InconsistentFee
error InconsistentFee()
InsufficientBalance
error InsufficientBalance()
InvalidEstimatedTakingAmount
error InvalidEstimatedTakingAmount()
InvalidIntegratorShare
error InvalidIntegratorShare()
InvalidProtocolSurplusFee
error InvalidProtocolSurplusFee()
InvalidWhitelistDiscountNumerator
error InvalidWhitelistDiscountNumerator()
OnlyLimitOrderProtocol
error OnlyLimitOrderProtocol()
OnlyWhitelistOrAccessToken
error OnlyWhitelistOrAccessToken()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeTransferFailed
error SafeTransferFailed()
creation bytecode
0x60e0346200011157601f62001f1f38819003918201601f19168301916001600160401b03831184841017620001155780849260809460405283398101031262000111576200004d8162000129565b60208201516001600160a01b0392909183831683036200011157836200008460606200007c6040860162000129565b940162000129565b168015620000f9575f80546001600160a01b03198116831782556040519616907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a360805260a05260c052611de090816200013f8239608051816104db015260a05181610741015260c05181610c490152f35b604051631e4fbdf760e01b81525f6004820152602490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b0382168203620001115756fe6080604052600436101561001a575b3615610018575f80fd5b005b5f803560e01c80631d9671c314610dd6578063462ebde214610422578063715018a61461038657806378e3214f146102625780638da5cb5b14610211578063d7ff8a801461015a5763f2fde38b14610072575061000e565b346101575760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101575760043573ffffffffffffffffffffffffffffffffffffffff808216809203610153576100cb610fff565b8115610122575f54827fffffffffffffffffffffffff00000000000000000000000000000000000000008216175f55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a380f35b602483604051907f1e4fbdf70000000000000000000000000000000000000000000000000000000082526004820152fd5b5f80fd5b80fd5b50346101575761019d6101ba61018661018f61017536610e6d565b849c98999295979a919493946110e3565b909c919c611878565b99945097929b915099611ad9565b91620186a0910181016101b081846113a1565b9209151590610f17565b9162989680918201908183116101e45760206101dc8585856101b0818461142a565b604051908152f35b807f4e487b7100000000000000000000000000000000000000000000000000000000602492526011600452fd5b503461015757807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101575773ffffffffffffffffffffffffffffffffffffffff6020915416604051908152f35b50346101575760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101575760043573ffffffffffffffffffffffffffffffffffffffff81169081810361038257602435916102c0610fff565b826102c9578380f35b8015908115610364575b50156103535750804710610329578180808093335af16102f161104f565b50156102ff575b5f80808380f35b60046040517fb12d13eb000000000000000000000000000000000000000000000000000000008152fd5b60046040517ff4d678b8000000000000000000000000000000000000000000000000000000008152fd5b9061035f913390611552565b6102f8565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee9150145f6102d3565b8280fd5b503461015757807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610157576103bd610fff565b5f73ffffffffffffffffffffffffffffffffffffffff81547fffffffffffffffffffffffff000000000000000000000000000000000000000081168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b5034610153577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36016101e081126101535761010013610153576101043567ffffffffffffffff81116101535761047d903690600401610e3f565b73ffffffffffffffffffffffffffffffffffffffff610144351661014435036101535767ffffffffffffffff6101c43511610153576104c2366101c435600401610e3f565b909273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610dac578115610b09578160151161015357816029116101535760298401937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd783019273ffffffffffffffffffffffffffffffffffffffff60243516907f01000000000000000000000000000000000000000000000000000000000000008084351614610d1a575b50610590848761164c565b60f01c8460021015610b09576064600288013560f81c11610cf05784600311610153576105e27ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd86016003890161164c565b60f01c948060051015610b09576064600589013560f81c11610cc657806006116101535761063a907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa61014435910160068a01611b83565b989180979197610cb2575b1580610be6575b610bbc57620186a08381018111610b8f576106a89261069e610692600261068661067b878a6106a39801610f17565b8099610184356114b3565b93013560f81c8361130a565b958694610184356114b3565b610f17565b611545565b90853560208910610b60575b60c4358110610b36576106e06106d1846106a38561018435611545565b9160a43590610164359061162c565b808211610a97575b5050876021116101535760443573ffffffffffffffffffffffffffffffffffffffff163003610a635773ffffffffffffffffffffffffffffffffffffffff6084351673ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016811480610a37575b156109e1575061078e93816109cb575b82806109b4575b5050610184350303906115ea565b60137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdf8501116107bc578480f35b6107eb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdf850160218401610f3c565b60601c907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdf850160141161015357813b15610153575f809461094b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcb976108cf9660356040519a8b998a9889977f462ebde200000000000000000000000000000000000000000000000000000000895260043560048a015260243560248a015260443560448a015260643560648a015260843560848a015260a43560a48a015260c43560c48a015260e43560e48a01526101e06101048a01526101e4890191610fc1565b936101243561012488015273ffffffffffffffffffffffffffffffffffffffff610144351661014488015261016435610164880152610184356101848801526101a4356101a48801527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc878603016101c4880152019101610fc1565b03925af180156109a957610961575b8080808480f35b905067ffffffffffffffff811161097c576040525f8061095a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040513d5f823e3d90fd5b60156109c492013560601c6115ea565b5f82610780565b6109dc82600183013560601c6115ea565b610779565b929190610a039481610a20575b8280610a08575b505061018435030391611552565b61078e565b6015610a1992013560601c86611552565b5f826109f5565b610a3282600183013560601c87611552565b6109ee565b507e8000000000000000000000000000000000000000000000000000000000000060e435161515610769565b91509150011561078e5760046040517f679a57eb000000000000000000000000000000000000000000000000000000008152fd5b896020949293941015610b09576064602089013560f81c11610adf57610ad792610acc610ad19260208b013560f81c92611545565b61130a565b90610f17565b905f806106e8565b60046040517f200c0aaf000000000000000000000000000000000000000000000000000000008152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b60046040517f71cb4582000000000000000000000000000000000000000000000000000000008152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8960200360031b1b166106b4565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b60046040517f0155201f000000000000000000000000000000000000000000000000000000008152fd5b506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff6101443516600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa9081156109a9575f91610c80575b501561064c565b90506020813d602011610caa575b81610c9b60209383610f80565b8101031261015357515f610c79565b3d9150610c8e565b90606490600584013560f81c020490610645565b60046040517f3066a1f1000000000000000000000000000000000000000000000000000000008152fd5b60046040517fc5374e2d000000000000000000000000000000000000000000000000000000008152fd5b809650610d509294507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd791500160298401610f3c565b60601c917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd78501601411610153577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3603d82019501925f610585565b60046040517fd25aa106000000000000000000000000000000000000000000000000000000008152fd5b3461015357610e1c610e25610e05620186a0610e0e610df436610e6d565b849d98999295979b919493946110e3565b909d919d611878565b99945097929c9150996119eb565b920101906111b4565b62989680918201809211610b8f576020916101dc91611273565b9181601f840112156101535782359167ffffffffffffffff8311610153576020838186019501011161015357565b907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc82016101c0811261015357610100136101535760049167ffffffffffffffff90610104358281116101535781610ec791600401610e3f565b9390939261012435926101443573ffffffffffffffffffffffffffffffffffffffff811681036101535792610164359261018435926101a43591821161015357610f1391600401610e3f565b9091565b91908201809211610b8f57565b90939293848311610153578411610153578101920390565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000009035818116939260148110610f7157505050565b60140360031b82901b16169150565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761097c57604052565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b73ffffffffffffffffffffffffffffffffffffffff5f5416330361101f57565b60246040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152fd5b3d156110a7573d9067ffffffffffffffff821161097c576040519161109c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160184610f80565b82523d5f602084013e565b606090565b81156110b6570490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b91908060031161015357823560e81c8160071161015357600384013560e01c90801580156111ac575b156111955750505f925b81600b1161015357600781013560e01c82600e116101535782601111610153577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef61117a9301916011810191600b600e83013560e81c92013560e81c810190611690565b90939092918181111561118d5703929190565b50505f929190565b620f4240916111a59148026110ac565b0492611116565b50811561110c565b90620186a090818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81850993838086109503948086039514611263578483111561124b5790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f03040190848311900302920304170290565b82634e487b715f52156003026011186020526024601cfd5b50509061127092506110ac565b90565b906298968090818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81850993838086109503948086039514611263578483111561124b5790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f03040190848311900302920304170290565b818102907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83820990828083109203918083039214611397578160641115611385577f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c29936064910990828211900360fe1b910360021c170290565b634e487b715f5260116020526024601cfd5b5050606491500490565b90808202907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8184099082808310920391808303921461141e57620186a09082821115611385577f58cd20afa2f05a708ede54b48d3ae685db76b3bb83cf2cf95d4e8fb00bcbe61d940990828211900360fb1b910360051c170290565b5050620186a091500490565b90808202907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff818409908280831092039180830392146114a757629896809082821115611385577f5fb648fcc913daa857a27e44a97d3c6bc1193a63a91cc45be5032477ae8d46a5940990828211900360f91b910360071c170290565b50506298968091500490565b91818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81850993838086109503948086039514611263578483111561124b5790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f03040190848311900302920304170290565b91908203918211610b8f57565b9160446020925f92604051917fa9059cbb0000000000000000000000000000000000000000000000000000000083526004830152602482015282855af190816115c8575b501561159e57565b60046040517ffb7f5079000000000000000000000000000000000000000000000000000000008152fd5b90503d156115e2575060015f5114601f3d11165b5f611596565b3b15156115dc565b5f80809381935af16115fa61104f565b501561160257565b60046040517f6d963f88000000000000000000000000000000000000000000000000000000008152fd5b916116388183856114b3565b9181156110b6576112709309151590610f17565b7fffff000000000000000000000000000000000000000000000000000000000000903581811693926002811061168157505050565b60020360031b82901b16169150565b94929082868615610b0957833560f81c6001948860011161015357600101977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0160056116e182848302818d610f24565b909b909a9042116116f9575050505050505050929190565b90919293949580979a9998504210156117bb579291905f915b83831061173657505050505061173193949550820391429003026110ac565b929190565b909192939460039082821161015357863560e81c918385116101535787013560f01c810197884211156117985750909695830194938b0192917ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb019050611712565b9550969750945050505061173194959650828403934290030291420302016110ac565b505f999850505050505050565b919269ffffffffffffffffffff5f9416918015610b0957833560f81c600a9481600a02956001938760010190816001116101535780821161015357600184019361181492908290610f24565b979097965f935b85851061182b5750505050505050565b82841161015357803560b01c821461186d577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff68488920193019401939161181b565b509498505050505050565b91611883828461164c565b60f01c928260021015610b0957600281013560f81c9260648411610cf05780600311610153576118d87ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd82016003840161164c565b60f01c928160051015610b0957600583013560f81c9260648411610cc657826006116101535760067ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa61192d940191016117c8565b91969092876119395750565b60649194020492565b949073ffffffffffffffffffffffffffffffffffffffff926112709a98959997946119c39260e06101c09180358b52602081013560208c0152604081013560408c0152606081013560608c0152608081013560808c015260a081013560a08c015260c081013560c08c0152013560e08a0152806101008a0152880191610fc1565b97610120860152166101408401526101608301526101808201526101a0818503910152610fc1565b9097949693959492939060148410611abd57611a078483610f3c565b60601c9584601411610153576020986014987fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec97611a79966040519d8e9c8d9b8c9b7f1d9671c3000000000000000000000000000000000000000000000000000000008d520198019660048b01611942565b03915afa9081156109a9575f91611a8e575090565b90506020813d602011611ab5575b81611aa960209383610f80565b81010312610153575190565b3d9150611a9c565b9695505050505050611270925060a060c08301359201356114b3565b9097949693959492939060148410611b6757611af58483610f3c565b60601c9584601411610153576020986014987fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec97611a79966040519d8e9c8d9b8c9b7fd7ff8a80000000000000000000000000000000000000000000000000000000008d520198019660048b01611942565b9695505050505050611270925060c060a083013592013561162c565b919269ffffffffffffffffffff5f9416918335907fffffffff0000000000000000000000000000000000000000000000000000000080831690600493848410611d96575b505060e01c9080831015611d6a578286013560f81c600c9181600c02908160050190816005116101535780821161015357611c0c918160058c9796959701969b610f24565b989098975f905b838210611c51575050505050504210611c295750565b6040517f9da6e025000000000000000000000000000000000000000000000000000000008152fd5b9091929394955f9b9a9998979b5086357fffffffffffffffffffff0000000000000000000000000000000000000000000080821690600a92838810611d56575b50508242105f14611cc5578d6040517f9da6e025000000000000000000000000000000000000000000000000000000008152fd5b60b09d999a9b9c9d1c8314611d475784811161015357611d0a907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6860190890161164c565b60f01c01958386116101535785019493927ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4019160010190611c13565b5060019b505050505050505050565b9080925087840360031b1b16165f80611c91565b6032837f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b9080925083850360031b1b16165f80611bc756fea2646970667358221220b6e450b99c88ab8bbb6941cd30f5bd0dec27cdafe6c9ab1698814f25fc3243e364736f6c63430008170033000000000000000000000000111111125421ca6dc452d289314280a0f8842a65000000000000000000000000acce550000863572b867e661647cd7d97b72c507000000000000000000000000420000000000000000000000000000000000000600000000000000000000000056e44874f624ebde6efcc783efd685f0fbdc6dcf