5 txs
142 calls
constructor
constructor(address _operator, address _redSnwapper, address _weth)
functions
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
redSnwapper
viewfunction redSnwapper() view returns (address)
trusted
viewfunction trusted(address) view returns (bool)
weth
viewfunction weth() view returns (address)
acceptOwnership
nonpayablefunction acceptOwnership()
doAction
nonpayablefunction doAction(address to, uint256 _value, bytes data)
renounceOwnership
nonpayablefunction renounceOwnership()
setTrusted
nonpayablefunction setTrusted(address user, bool isTrusted)
snwap
nonpayablefunction snwap(address tokenIn, uint256 amountIn, address recipient, address tokenOut, uint256 amountOutMin, address executor, bytes executorData) returns (uint256 amountOut)
snwapMultiple
nonpayablefunction snwapMultiple(tuple[] inputTokens, tuple[] outputTokens, tuple[] executors) returns (uint256[] amountOut)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateRedSnwapper
nonpayablefunction updateRedSnwapper(address _redSnwapper)
withdraw
nonpayablefunction withdraw(address token, address to, uint256 _value)
wrapEth
nonpayablefunction wrapEth()
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
SetTrusted
event SetTrusted(address indexed user, bool isTrusted)
errors
OnlyTrusted
error OnlyTrusted()
TransferFailed
error TransferFailed()
creation bytecode
0x60a06040523480156200001157600080fd5b50604051620018693803806200186983398101604081905262000034916200014d565b826200004033620000c2565b6001600160a01b038116600081815260026020908152604091829020805460ff1916600190811790915591519182527f878d105ed19c01e992a54459c2f04ba19432ac45600b42ce340d034272207436910160405180910390a250600380546001600160a01b0319166001600160a01b03938416179055166080525062000197565b600180546001600160a01b0319169055620000dd81620000e0565b50565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146200014857600080fd5b919050565b6000806000606084860312156200016357600080fd5b6200016e8462000130565b92506200017e6020850162000130565b91506200018e6040850162000130565b90509250925092565b6080516116af620001ba6000396000818161010a015261067e01526116af6000f3fe6080604052600436106100ec5760003560e01c8063abde7d2e1161008a578063e30c397811610059578063e30c3978146102bd578063f1281c3f146102e8578063f2fde38b14610315578063f32a12ac1461033557600080fd5b8063abde7d2e1461023b578063b081b4eb1461025b578063d33721a514610270578063d9caed121461029d57600080fd5b80636e9821c2116100c65780636e9821c2146101a6578063715018a6146101e657806379ba5097146101fb5780638da5cb5b1461021057600080fd5b80633fc8cef3146100f857806354a0af17146101565780635f3bd1c81461017857600080fd5b366100f357005b600080fd5b34801561010457600080fd5b5061012c7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561016257600080fd5b50610176610171366004610e7e565b610355565b005b34801561018457600080fd5b50610198610193366004610f4b565b6103db565b60405190815260200161014d565b3480156101b257600080fd5b506101d66101c1366004611013565b60026020526000908152604090205460ff1681565b604051901515815260200161014d565b3480156101f257600080fd5b506101766104fe565b34801561020757600080fd5b50610176610512565b34801561021c57600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff1661012c565b34801561024757600080fd5b50610176610256366004611013565b6105cc565b34801561026757600080fd5b5061017661061b565b34801561027c57600080fd5b5061029061028b366004611081565b6106df565b60405161014d919061114a565b3480156102a957600080fd5b506101766102b836600461118e565b6109ad565b3480156102c957600080fd5b5060015473ffffffffffffffffffffffffffffffffffffffff1661012c565b3480156102f457600080fd5b5060035461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561032157600080fd5b50610176610330366004611013565b6109fe565b34801561034157600080fd5b506101766103503660046111d8565b610aae565b61035d610b40565b60008373ffffffffffffffffffffffffffffffffffffffff168383604051610385919061120f565b60006040518083038185875af1925050503d80600081146103c2576040519150601f19603f3d011682016040523d82523d6000602084013e6103c7565b606091505b50509050806103d557600080fd5b50505050565b3360009081526002602052604081205460ff16610424576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600354610449908a9073ffffffffffffffffffffffffffffffffffffffff168a610bc1565b6003546040517f5f3bd1c800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690635f3bd1c8906104ae908c906000908c908c908c908c908c908c90600401611287565b6020604051808303816000875af11580156104cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f191906112eb565b9998505050505050505050565b610506610b40565b6105106000610d36565b565b600154339073ffffffffffffffffffffffffffffffffffffffff1681146105c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6105c981610d36565b50565b6105d4610b40565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b3360009081526002602052604090205460ff16610664576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405173ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016904790600081818185875af1925050503d80600081146106da576040519150601f19603f3d011682016040523d82523d6000602084013e505050565b505050565b3360009081526002602052604090205460609060ff1661072b576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8560008167ffffffffffffffff81111561074757610747610e00565b6040519080825280602002602001820160405280156107b057816020015b60408051606081018252600080825260208083018290529282015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816107655790505b50905060005b828110156108e9576108238a8a838181106107d3576107d3611304565b6107e99260206060909202019081019150611013565b60035473ffffffffffffffffffffffffffffffffffffffff168c8c8581811061081457610814611304565b90506060020160200135610bc1565b60405180606001604052808b8b8481811061084057610840611304565b6108569260206060909202019081019150611013565b73ffffffffffffffffffffffffffffffffffffffff168152602001600081526020018b8b8481811061088a5761088a611304565b90506060020160400160208101906108a29190611013565b73ffffffffffffffffffffffffffffffffffffffff168152508282815181106108cd576108cd611304565b6020026020010181905250806108e290611333565b90506107b6565b506003546040517fd33721a500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063d33721a5906109489084908b908b908b908b90600401611523565b6000604051808303816000875af1158015610967573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f191908101906115c2565b6109b5610b40565b73ffffffffffffffffffffffffffffffffffffffff8316156109dc576106da838383610bc1565b60008273ffffffffffffffffffffffffffffffffffffffff1682604051610385565b610a06610b40565b6001805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff00000000000000000000000000000000000000009091168117909155610a6960005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b610ab6610b40565b73ffffffffffffffffffffffffffffffffffffffff821660008181526002602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527f878d105ed19c01e992a54459c2f04ba19432ac45600b42ce340d034272207436910160405180910390a25050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610510576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105b7565b604080518082018252601981527f7472616e7366657228616464726573732c75696e743235362900000000000000602091820152815173ffffffffffffffffffffffffffffffffffffffff85811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905291516000928392871691610c88919061120f565b6000604051808303816000865af19150503d8060008114610cc5576040519150601f19603f3d011682016040523d82523d6000602084013e610cca565b606091505b5091509150811580610cf85750805115801590610cf8575080806020019051810190610cf6919061165c565b155b15610d2f576040517f90b8ec1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556105c9816000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610dfb57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610e7657610e76610e00565b604052919050565b600080600060608486031215610e9357600080fd5b610e9c84610dd7565b92506020808501359250604085013567ffffffffffffffff80821115610ec157600080fd5b818701915087601f830112610ed557600080fd5b813581811115610ee757610ee7610e00565b610f17847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610e2f565b91508082528884828501011115610f2d57600080fd5b80848401858401376000848284010152508093505050509250925092565b60008060008060008060008060e0898b031215610f6757600080fd5b610f7089610dd7565b975060208901359650610f8560408a01610dd7565b9550610f9360608a01610dd7565b945060808901359350610fa860a08a01610dd7565b925060c089013567ffffffffffffffff80821115610fc557600080fd5b818b0191508b601f830112610fd957600080fd5b813581811115610fe857600080fd5b8c6020828501011115610ffa57600080fd5b6020830194508093505050509295985092959890939650565b60006020828403121561102557600080fd5b61102e82610dd7565b9392505050565b60008083601f84011261104757600080fd5b50813567ffffffffffffffff81111561105f57600080fd5b60208301915083602060608302850101111561107a57600080fd5b9250929050565b6000806000806000806060878903121561109a57600080fd5b863567ffffffffffffffff808211156110b257600080fd5b6110be8a838b01611035565b909850965060208901359150808211156110d757600080fd5b6110e38a838b01611035565b909650945060408901359150808211156110fc57600080fd5b818901915089601f83011261111057600080fd5b81358181111561111f57600080fd5b8a60208260051b850101111561113457600080fd5b6020830194508093505050509295509295509295565b6020808252825182820181905260009190848201906040850190845b8181101561118257835183529284019291840191600101611166565b50909695505050505050565b6000806000606084860312156111a357600080fd5b6111ac84610dd7565b92506111ba60208501610dd7565b9150604084013590509250925092565b80151581146105c957600080fd5b600080604083850312156111eb57600080fd5b6111f483610dd7565b91506020830135611204816111ca565b809150509250929050565b6000825160005b818110156112305760208186018101518583015201611216565b506000920191825250919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b600073ffffffffffffffffffffffffffffffffffffffff808b1683528960208401528089166040840152808816606084015286608084015280861660a08401525060e060c08301526112dd60e08301848661123e565b9a9950505050505050505050565b6000602082840312156112fd57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361138b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b8183526000602080850194508260005b858110156113fa5773ffffffffffffffffffffffffffffffffffffffff806113c984610dd7565b168852806113d8858501610dd7565b16888501525060408281013590880152606096870196909101906001016113a2565b509495945050505050565b81835260006020808501808196508560051b810191508460005b8781101561151657828403895281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa188360301811261145e57600080fd5b8701606073ffffffffffffffffffffffffffffffffffffffff61148083610dd7565b16865286820135878701526040808301357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126114c157600080fd5b90920187810192903567ffffffffffffffff8111156114df57600080fd5b8036038413156114ee57600080fd5b8282890152611500838901828661123e565b9c89019c9750505092860192505060010161141f565b5091979650505050505050565b60608082528651828201819052600091906020906080850190828b01855b8281101561158a578151805173ffffffffffffffffffffffffffffffffffffffff9081168652868201518787015260409182015116908501529285019290840190600101611541565b5050508481038286015261159f81898b611392565b9250505082810360408401526115b6818587611405565b98975050505050505050565b600060208083850312156115d557600080fd5b825167ffffffffffffffff808211156115ed57600080fd5b818501915085601f83011261160157600080fd5b81518181111561161357611613610e00565b8060051b9150611624848301610e2f565b818152918301840191848101908884111561163e57600080fd5b938501935b838510156115b657845182529385019390850190611643565b60006020828403121561166e57600080fd5b815161102e816111ca56fea2646970667358221220a143fdce62eb0d88e97109af33cbec8d715feb8dc75088e06e23f799ddb8877764736f6c634300081400330000000000000000000000004bb4c1b0745ef7b4642feeccd0740dec417ca0a0000000000000000000000000ac4c6e212a361c968f1725b4d055b47e63f80b750000000000000000000000004200000000000000000000000000000000000006