0 txs
0 calls
constructor
constructor(address _exchange, bytes _wethAssetData)
functions
owner
viewfunction owner() view returns (address)
approveMakerAssetProxy
nonpayablefunction approveMakerAssetProxy(bytes assetData)
marketBuyOrdersWithEth
payablefunction marketBuyOrdersWithEth(tuple[] orders, uint256 makerAssetBuyAmount, bytes[] signatures, uint256 feePercentage, address feeRecipient) payable returns (uint256 wethSpentAmount, uint256 makerAssetAcquiredAmount, uint256 ethFeePaid)
marketSellOrdersWithEth
payablefunction marketSellOrdersWithEth(tuple[] orders, bytes[] signatures, uint256 feePercentage, address feeRecipient) payable returns (uint256 wethSpentAmount, uint256 makerAssetAcquiredAmount, uint256 ethFeePaid)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawAsset
nonpayablefunction withdrawAsset(bytes assetData, uint256 amount)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x60806040523480156200001157600080fd5b50604051620028873803806200288783398101604081905262000034916200058f565b60008054336001600160a01b031991821617909155600180549091166001600160a01b03841617905580518290829062000076906003906020840190620004b0565b50600062000094601083620003a260201b620006f11790919060201c565b600280546001600160a01b0319166001600160a01b03928316179055600154604051600095509116925063607041089150620000d0906200068c565b6040519081900381207fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1682526200011091600401620006ce565b60206040518083038186803b1580156200012957600080fd5b505afa1580156200013e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506200016491908101906200056a565b90506001600160a01b0381166200019f576200019f6200018e620003ee60201b620006971760201c565b6200043460201b620001f61760201c565b6002546040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063095ea7b390620001ee90849060001990600401620006b5565b602060405180830381600087803b1580156200020957600080fd5b505af11580156200021e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506200024491908101906200066a565b50600154604080517f850a150100000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163850a1501916004808301926020929190829003018186803b158015620002a457600080fd5b505afa158015620002b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250620002df91908101906200056a565b90506001600160a01b0381161562000398576002546040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063095ea7b3906200034090849060001990600401620006b5565b602060405180830381600087803b1580156200035b57600080fd5b505af115801562000370573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506200039691908101906200066a565b505b505050506200071e565b60008160140183511015620003d257620003d26200018e60048551856014016200043c60201b62000e031760201c565b5060148183018101519101906001600160a01b03165b92915050565b6040805160048152602481019091526020810180516001600160e01b03167ff3b96b8d000000000000000000000000000000000000000000000000000000001790525b90565b805160208201fd5b6060632800659560e01b8484846040516024016200045d93929190620006fb565b60408051601f198184030181529190526020810180516001600160e01b03167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915290509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004f357805160ff191683800117855562000523565b8280016001018555821562000523579182015b828111156200052357825182559160200191906001019062000506565b506200053192915062000535565b5090565b6200043191905b808211156200053157600081556001016200053c565b80516001600160a01b0381168114620003e857600080fd5b6000602082840312156200057c578081fd5b62000588838362000552565b9392505050565b60008060408385031215620005a2578081fd5b620005ae848462000552565b602084810151919350906001600160401b0380821115620005cd578384fd5b81860187601f820112620005df578485fd5b8051925081831115620005f0578485fd5b604051601f8401601f191681018501838111828210171562000610578687fd5b604052838152818401850189101562000627578586fd5b8592505b838310156200064a57818301850151818401860152918401916200062b565b838311156200065b57858585830101525b80955050505050509250929050565b6000602082840312156200067c578081fd5b8151801515811462000588578182fd5b7f4552433230546f6b656e28616464726573732900000000000000000000000000815260130190565b6001600160a01b03929092168252602082015260400190565b7fffffffff0000000000000000000000000000000000000000000000000000000091909116815260200190565b60608101600885106200070a57fe5b938152602081019290925260409091015290565b612159806200072e6000396000f3fe6080604052600436106100655760003560e01c8063942d33c011610043578063942d33c014610102578063ae93b97a14610124578063f2fde38b1461013757610065565b8063442026ed14610097578063630f1e6c146100b75780638da5cb5b146100d7575b60025473ffffffffffffffffffffffffffffffffffffffff1633146100955761009561009033610157565b6101f6565b005b3480156100a357600080fd5b506100956100b2366004611c13565b6101fe565b3480156100c357600080fd5b506100956100d2366004611c53565b6104a8565b3480156100e357600080fd5b506100ec6104f1565b6040516100f99190611de4565b60405180910390f35b610115610110366004611b6a565b61050d565b6040516100f99392919061206b565b610115610132366004611aed565b610542565b34801561014357600080fd5b50610095610152366004611ab5565b61059d565b60606308b1869860e01b826040516024016101729190611de4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091529050919050565b805160208201fd5b600061024a600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505063ffffffff610641169050565b905060405161025890611dbb565b60405180910390207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156104a35760015460405160009173ffffffffffffffffffffffffffffffffffffffff16906360704108906102d490611dbb565b6040519081900381207fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16825261031291600401611e83565b60206040518083038186803b15801561032a57600080fd5b505afa15801561033e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506103629190810190611ad1565b905073ffffffffffffffffffffffffffffffffffffffff811661038a5761038a610090610697565b60006103d6601086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505063ffffffff6106f1169050565b6040517f095ea7b300000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff82169063095ea7b39061044d9085907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90600401611e5d565b602060405180830381600087803b15801561046757600080fd5b505af115801561047b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061049f9190810190611bf3565b5050505b505050565b6104b0610731565b6104a383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061077a915050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b600080600061051a610865565b6105258888886108fa565b9093509150610535838686610a1d565b9050955095509592505050565b600080600061054f610865565b6000610573670de0b6b3a764000061056d888263ffffffff610bbc16565b34610bdf565b9050610580888289610c09565b9094509250610590848787610a1d565b9150509450945094915050565b6105a5610731565b73ffffffffffffffffffffffffffffffffffffffff81166105d0576105cb610090610dcc565b61063e565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35b50565b60008160040183511015610662576106626100906003855185600401610e03565b5060208183018101519101907fffffffff00000000000000000000000000000000000000000000000000000000165b92915050565b6040805160048152602481019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167ff3b96b8d0000000000000000000000000000000000000000000000000000000017905290565b60008160140183511015610712576107126100906004855185601401610e03565b50016014015173ffffffffffffffffffffffffffffffffffffffff1690565b60005473ffffffffffffffffffffffffffffffffffffffff163314610778576000546107789061009090339073ffffffffffffffffffffffffffffffffffffffff16610ea8565b565b600061078c838263ffffffff61064116565b905060405161079a90611dbb565b60405180910390207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156107f6576107f18383610f4a565b6104a3565b60405161080290611d92565b60405180910390207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415610859576107f18383610f6a565b6104a361009082611037565b3461087557610875610090611052565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156108df57600080fd5b505af11580156108f3573d6000803e3d6000fd5b5050505050565b82516000908190815b8181146109fe5786818151811061091657fe5b60200260200101516080015160001480610947575086818151811061093757fe5b602002602001015160a001516000145b15610951576109f6565b6000610963878563ffffffff6110ac16565b90506000806109998a858151811061097757fe5b602002602001015189868151811061098b57fe5b6020026020010151856110cb565b915091506109bf8a85815181106109ac57fe5b602002602001015161014001518261077a565b6109cf878363ffffffff610bbc16565b96506109e1868263ffffffff610bbc16565b95508886106109f2575050506109fe565b5050505b600101610903565b5084821015610a1457610a14610090868461121e565b50935093915050565b600066b1a2bc2ec50000831115610a3a57610a3a6100908461123b565b34841115610a4f57610a4f6100908534611256565b6000610a61348663ffffffff6110ac16565b9050610a7684670de0b6b3a764000087610bdf565b915080821115610a8d57610a8d6100908383611273565b8015610bb4576002546040517f2e1a7d4d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690632e1a7d4d90610ae9908490600401612054565b600060405180830381600087803b158015610b0357600080fd5b505af1158015610b17573d6000803e3d6000fd5b505050506000821115610b695760405173ffffffffffffffffffffffffffffffffffffffff84169083156108fc029084906000818181858888f19350505050158015610b67573d6000803e3d6000fd5b505b6000610b7b828463ffffffff6110ac16565b90508015610bb257604051339082156108fc029083906000818181858888f19350505050158015610bb0573d6000803e3d6000fd5b505b505b509392505050565b600082820183811015610bd857610bd861009060008686611290565b9392505050565b6000610c0183610bf5868563ffffffff6112af16565b9063ffffffff6112e016565b949350505050565b6000806000855190506000610cc4600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ce4c78b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c7f57600080fd5b505afa158015610c93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610cb79190810190611cfa565b3a9063ffffffff6112af16565b905060005b828114610dc157878181518110610cdc57fe5b60200260200101516080015160001480610d0d5750878181518110610cfd57fe5b602002602001015160a001516000145b15610d1757610db9565b6000610d3983610d2d8a8963ffffffff6110ac16565b9063ffffffff6110ac16565b9050600080610d6f8b8581518110610d4d57fe5b60200260200101518a8681518110610d6157fe5b60200260200101518561130a565b91509150610d828b85815181106109ac57fe5b610d92888363ffffffff610bbc16565b9750610da4878263ffffffff610bbc16565b9650898810610db557505050610dc1565b5050505b600101610cc9565b505050935093915050565b60408051808201909152600481527fe69edc3e00000000000000000000000000000000000000000000000000000000602082015290565b6060632800659560e01b848484604051602401610e2293929190611ee5565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915290509392505050565b6060631de45ad160e01b8383604051602401610ec5929190611e05565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152905092915050565b6000610f5d83601063ffffffff6106f116565b90506104a38133846113cf565b80600114610f7e57610f7e61009082611496565b6000610f9183601063ffffffff6106f116565b90506000610fa684602463ffffffff6114b116565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff8316906323b872dd90610fff90309033908690600401611e2c565b600060405180830381600087803b15801561101957600080fd5b505af115801561102d573d6000803e3d6000fd5b5050505050505050565b6060637996a27160e01b826040516024016101729190611e83565b6040805160048152602481019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f8c0e562b0000000000000000000000000000000000000000000000000000000017905290565b6000828211156110c5576110c561009060028585611290565b50900390565b6000808460e00151600014806110f757506101608501516101a08601516110f79163ffffffff6114bd16565b156111655760006111118660a001518760800151866114e3565b905061111b61177b565b61112687838861150d565b9050611157816080015161114b83606001518460200151610bbc90919063ffffffff16565b9063ffffffff610bbc16565b905190935091506112169050565b6101408501516101a08601516111809163ffffffff6114bd16565b156112055760006111b08660a001516111aa8860e0015189608001516110ac90919063ffffffff16565b866114e3565b90506111ba61177b565b6111c587838861150d565b90506111e281608001518260200151610bbc90919063ffffffff16565b606082015182519195506111fc919063ffffffff6110ac16565b92505050611216565b611216610090866101a0015161167a565b935093915050565b60606391353a0c60e01b8383604051602401610ec592919061205d565b6060631174fb8060e01b826040516024016101729190612054565b606063cdcbed5d60e01b8383604051602401610ec592919061205d565b606063ecf40fd960e01b8383604051602401610ec592919061205d565b606063e946c1bb60e01b848484604051602401610e2293929190611ec3565b6000826112be57506000610691565b828202828482816112cb57fe5b0414610bd857610bd861009060018686611290565b6000816112f6576112f661009060038585611290565b600082848161130157fe5b04949350505050565b6000808460e001516000148061133657506101408501516101a08601516113369163ffffffff6114bd16565b1561138d5761134361177b565b61134e86858761150d565b905061136b81608001518260200151610bbc90919063ffffffff16565b60608201518251919450611385919063ffffffff6110ac16565b915050611216565b6101608501516101a08601516113a89163ffffffff6114bd16565b156112055760a085015160e0860151600091611111916111aa90829063ffffffff610bbc16565b6040516060907fa9059cbb00000000000000000000000000000000000000000000000000000000906114079085908590602401611e5d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915290506114908482611695565b50505050565b606063baffa47460e01b826040516024016101729190612054565b6000610bd88383611751565b600081518351148015610bd8575081805190602001208380519060200120149392505050565b6000610c0183610bf56114fd82600163ffffffff6110ac16565b61114b888763ffffffff6112af16565b61151561177b565b6040516060907f9b44d556000000000000000000000000000000000000000000000000000000009061154f90879087908790602401611ef3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317909252600154915190925073ffffffffffffffffffffffffffffffffffffffff909116906000906060908390611600908690611d76565b6000604051808303816000865af19150503d806000811461163d576040519150601f19603f3d011682016040523d82523d6000602084013e611642565b606091505b5091509150811561166f57805160a01461165857fe5b8080602001905161166c9190810190611c9d565b94505b505050509392505050565b60606331360af160e01b826040516024016101729190611eb0565b600060608373ffffffffffffffffffffffffffffffffffffffff16836040516116be9190611d76565b6000604051808303816000865af19150503d80600081146116fb576040519150601f19603f3d011682016040523d82523d6000602084013e611700565b606091505b5091509150811561174457805161171857505061174d565b80516020141561174457600061172f8260006114b1565b905080600114156117425750505061174d565b505b611490816101f6565b5050565b60008160200183511015611772576117726100906005855185602001610e03565b50016020015190565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b8035610691816120f4565b600082601f8301126117c5578081fd5b81356117d86117d3826120a8565b612081565b8181529150602080830190840160005b83811015611815576118008760208435890101611a2e565b835260209283019291909101906001016117e8565b5050505092915050565b600082601f83011261182f578081fd5b813561183d6117d3826120a8565b818152915060208083019084810160005b848110156119dc57813587016101c0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0838c0301121561188e57600080fd5b61189781612081565b6118a38b8785016117aa565b81526118b28b604085016117aa565b868201526118c38b606085016117aa565b60408201526118d58b608085016117aa565b606082015260a0830135608082015260c083013560a082015260e083013560c08201526101008084013560e0830152610120808501358284015261014091508185013581840152506101608085013567ffffffffffffffff8082111561193a57600080fd5b6119488f8b848a0101611a2e565b8486015261018093508387013591508082111561196457600080fd5b6119728f8b848a0101611a2e565b838601526101a092508287013591508082111561198e57600080fd5b61199c8f8b848a0101611a2e565b84860152858701359350808411156119b357600080fd5b50506119c38d8984880101611a2e565b908301525086525050928201929082019060010161184e565b505050505092915050565b60008083601f8401126119f8578182fd5b50813567ffffffffffffffff811115611a0f578182fd5b602083019150836020828501011115611a2757600080fd5b9250929050565b600082601f830112611a3e578081fd5b813567ffffffffffffffff811115611a54578182fd5b611a8560207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601612081565b9150808252836020828501011115611a9c57600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215611ac6578081fd5b8135610bd8816120f4565b600060208284031215611ae2578081fd5b8151610bd8816120f4565b60008060008060808587031215611b02578283fd5b843567ffffffffffffffff80821115611b19578485fd5b611b258883890161181f565b95506020870135915080821115611b3a578485fd5b50611b47878288016117b5565b935050604085013591506060850135611b5f816120f4565b939692955090935050565b600080600080600060a08688031215611b81578081fd5b853567ffffffffffffffff80821115611b98578283fd5b611ba489838a0161181f565b9650602088013595506040880135915080821115611bc0578283fd5b50611bcd888289016117b5565b935050606086013591506080860135611be5816120f4565b809150509295509295909350565b600060208284031215611c04578081fd5b81518015158114610bd8578182fd5b60008060208385031215611c25578182fd5b823567ffffffffffffffff811115611c3b578283fd5b611c47858286016119e7565b90969095509350505050565b600080600060408486031215611c67578283fd5b833567ffffffffffffffff811115611c7d578384fd5b611c89868287016119e7565b909790965060209590950135949350505050565b600060a0828403128015611caf578182fd5b8015611cb9578182fd5b50611cc460a0612081565b82518152602083015160208201526040830151604082015260608301516060820152608083015160808201528091505092915050565b600060208284031215611d0b578081fd5b5051919050565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452611d448160208601602086016120c8565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60008251611d888184602087016120c8565b9190910192915050565b7f455243373231546f6b656e28616464726573732c75696e7432353629000000008152601c0190565b7f4552433230546f6b656e28616464726573732900000000000000000000000000815260130190565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b73ffffffffffffffffffffffffffffffffffffffff92831681529116602082015260400190565b73ffffffffffffffffffffffffffffffffffffffff9384168152919092166020820152604081019190915260600190565b73ffffffffffffffffffffffffffffffffffffffff929092168252602082015260400190565b7fffffffff0000000000000000000000000000000000000000000000000000000091909116815260200190565b600060208252610bd86020830184611d2c565b6060810160048510611ed157fe5b938152602081019290925260409091015290565b6060810160088510611ed157fe5b600060608252611f07606083018651611d12565b6020850151611f196080840182611d12565b506040850151611f2c60a0840182611d12565b506060850151611f3f60c0840182611d12565b50608085015160e083015260a0850151610100818185015260c08701519150610120828186015260e0880151925061014083818701528289015193506101609250838387015281890151935061018091508382870152808901519350506101c06101a08181880152611fb5610220880186611d2c565b848b015195507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa09450848882030183890152611ff18187611d2c565b925050828a0151945083878303016101e088015261200f8286611d2c565b9250808a015194505050818582030161020086015261202e8184611d2c565b91505085602085015283810360408501526120498186611d2c565b979650505050505050565b90815260200190565b918252602082015260400190565b9283526020830191909152604082015260600190565b60405181810167ffffffffffffffff811182821017156120a057600080fd5b604052919050565b600067ffffffffffffffff8211156120be578081fd5b5060209081020190565b60005b838110156120e35781810151838201526020016120cb565b838111156114905750506000910152565b73ffffffffffffffffffffffffffffffffffffffff8116811461063e57600080fdfea365627a7a7231582066586c225906e5828d3cfb1b1794d7b3333c3ace270945cbd1f6c9c42917dd096c6578706572696d656e74616cf564736f6c634300050c0040000000000000000000000000b27f1db0a7e473304a5a06e54bdf035f671400c000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000000