0 txs
3k calls
constructor
constructor(address _usdc, address _weth, address _aero, address _factory, address _router)
functions
aero
viewfunction aero() view returns (address)
factory
viewfunction factory() view returns (address)
getOptimalAmountOutMin
viewfunction getOptimalAmountOutMin(tuple[] routes, uint256 amountIn, uint256 points, uint256 slippage) view returns (uint256 amountOutMin)
getOptimalTokenToTokenRoute
viewfunction getOptimalTokenToTokenRoute(address token0, address token1, uint256 amountIn) view returns (tuple[])
router
viewfunction router() view returns (address)
usdc
viewfunction usdc() view returns (address)
weth
viewfunction weth() view returns (address)
events
No events.
errors
NotEnoughPoints
error NotEnoughPoints()
Unauthorized
error Unauthorized()
creation bytecode
0x6101206040523480156200001257600080fd5b50604051620020ff380380620020ff8339818101604052810190620000389190620001b2565b8373ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff168152505050505050506200023a565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200017a826200014d565b9050919050565b6200018c816200016d565b81146200019857600080fd5b50565b600081519050620001ac8162000181565b92915050565b600080600080600060a08688031215620001d157620001d062000148565b5b6000620001e1888289016200019b565b9550506020620001f4888289016200019b565b945050604062000207888289016200019b565b93505060606200021a888289016200019b565b92505060806200022d888289016200019b565b9150509295509295909350565b60805160a05160c05160e05161010051611e48620002b76000396000818161049e01528181610722015261082a0152600081816106c901528181610806015281816109030152610b7c01526000818161017a0152610b5701526000818161019e0152610b0d0152600081816101c20152610b320152611e486000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806350e5a4931161005b57806350e5a493146100dc578063c45a01551461010c578063f887ea401461012a578063f969351e146101485761007d565b806326837eda146100825780633e413bee146100a05780633fc8cef3146100be575b600080fd5b61008a610178565b60405161009791906114cd565b60405180910390f35b6100a861019c565b6040516100b591906114cd565b60405180910390f35b6100c66101c0565b6040516100d391906114cd565b60405180910390f35b6100f660048036038101906100f1919061155e565b6101e4565b60405161010391906116df565b60405180910390f35b610114610804565b60405161012191906114cd565b60405180910390f35b610132610828565b60405161013f9190611760565b60405180910390f35b610162600480360381019061015d91906117e0565b61084c565b60405161016f9190611877565b60405180910390f35b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060006201518062093a8080426101fc91906118c1565b426102079190611921565b6102119190611955565b61021b9190611921565b9050804210610256576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806000600267ffffffffffffffff81111561027657610275611989565b5b6040519080825280602002602001820160405280156102af57816020015b61029c6113c6565b8152602001906001900390816102945790505b50905060606000806102c18b8b610b00565b9150915060005b81811015610583578281600581106102e3576102e26119b8565b5b60200201516000600281106102fb576102fa6119b8565b5b602002015185600081518110610314576103136119b8565b5b6020026020010181905250828160058110610332576103316119b8565b5b602002015160016002811061034a576103496119b8565b5b602002015185600181518110610363576103626119b8565b5b6020026020010181905250600073ffffffffffffffffffffffffffffffffffffffff168560008151811061039a576103996119b8565b5b60200260200101516060015173ffffffffffffffffffffffffffffffffffffffff166379bc57d5876000815181106103d5576103d46119b8565b5b602002602001015160000151886000815181106103f5576103f46119b8565b5b60200260200101516020015189600081518110610415576104146119b8565b5b6020026020010151604001516040518463ffffffff1660e01b815260040161043f939291906119f6565b602060405180830381865afa15801561045c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104809190611a42565b73ffffffffffffffffffffffffffffffffffffffff160315610570577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635509a1ac8b876040518363ffffffff1660e01b81526004016104f7929190611a6f565b600060405180830381865afa92505050801561053657506040513d6000823e3d601f19601f820116820180604052508101906105339190611bd4565b60015b156105705780945050600084600281518110610555576105546119b8565b5b602002602001015190508681111561056e578096508197505b505b808061057b90611c1d565b9150506102c8565b50818660058110610597576105966119b8565b5b60200201516000600281106105af576105ae6119b8565b5b6020020151846000815181106105c8576105c76119b8565b5b60200260200101819052508186600581106105e6576105e56119b8565b5b60200201516001600281106105fe576105fd6119b8565b5b602002015184600181518110610617576106166119b8565b5b60200260200101819052506000600167ffffffffffffffff81111561063f5761063e611989565b5b60405190808252806020026020018201604052801561067857816020015b6106656113c6565b81526020019060019003908161065d5790505b50905060405180608001604052808d73ffffffffffffffffffffffffffffffffffffffff1681526020018c73ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020017f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1681525081600081518110610715576107146119b8565b5b60200260200101819052507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635509a1ac8b836040518363ffffffff1660e01b815260040161077b929190611a6f565b600060405180830381865afa158015610798573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906107c19190611bd4565b93506000846001815181106107d9576107d86119b8565b5b602002602001015190508681116107f057856107f2565b815b99505050505050505050509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006002831015610889576040517fcfd1c46b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600086869050905060005b81811015610acc5760008888838181106108b1576108b06119b8565b5b9050608002018036038101906108c79190611d0e565b9050600073ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff160361095a577f0000000000000000000000000000000000000000000000000000000000000000816060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b6000816060015173ffffffffffffffffffffffffffffffffffffffff166379bc57d58360000151846020015185604001516040518463ffffffff1660e01b81526004016109a9939291906119f6565b602060405180830381865afa1580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190611a42565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a2d576000945050505050610af7565b60008173ffffffffffffffffffffffffffffffffffffffff16639e8cc04b84600001518b8b6040518463ffffffff1660e01b8152600401610a7093929190611d3b565b602060405180830381865afa158015610a8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab19190611d72565b90508098505050508080610ac490611c1d565b915050610894565b5061271083612710610ade9190611921565b86610ae99190611d9f565b610af39190611de1565b9150505b95945050505050565b610b08611432565b6000807f0000000000000000000000000000000000000000000000000000000000000000905060007f0000000000000000000000000000000000000000000000000000000000000000905060007f0000000000000000000000000000000000000000000000000000000000000000905060007f000000000000000000000000000000000000000000000000000000000000000090508373ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614610e3d5760405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1681526020016001151581526020018273ffffffffffffffffffffffffffffffffffffffff1681525086600060058110610c4a57610c496119b8565b5b6020020151600060028110610c6257610c616119b8565b5b602002018190525060405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff1681525086600160058110610ce457610ce36119b8565b5b6020020151600060028110610cfc57610cfb6119b8565b5b602002018190525060405180608001604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff1681525086600060058110610d7e57610d7d6119b8565b5b6020020151600160028110610d9657610d956119b8565b5b602002018190525060405180608001604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff1681525086600160058110610e1857610e176119b8565b5b6020020151600160028110610e3057610e2f6119b8565b5b6020020181905250600294505b8273ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16146110fc5760405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020016001151581526020018273ffffffffffffffffffffffffffffffffffffffff16815250868660058110610ee957610ee86119b8565b5b6020020151600060028110610f0157610f006119b8565b5b602002018190525060405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff1681525086600187610f7d9190611955565b60058110610f8e57610f8d6119b8565b5b6020020151600060028110610fa657610fa56119b8565b5b602002018190525060405180608001604052808473ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff16815250868660058110611027576110266119b8565b5b602002015160016002811061103f5761103e6119b8565b5b602002018190525060405180608001604052808473ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff16815250866001876110bb9190611955565b600581106110cc576110cb6119b8565b5b60200201516001600281106110e4576110e36119b8565b5b60200201819052506002856110f99190611955565b94505b8173ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16146113bb5760405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020016001151581526020018273ffffffffffffffffffffffffffffffffffffffff168152508686600581106111a8576111a76119b8565b5b60200201516000600281106111c0576111bf6119b8565b5b602002018190525060405180608001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff168152508660018761123c9190611955565b6005811061124d5761124c6119b8565b5b6020020151600060028110611265576112646119b8565b5b602002018190525060405180608001604052808373ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff168152508686600581106112e6576112e56119b8565b5b60200201516001600281106112fe576112fd6119b8565b5b602002018190525060405180608001604052808373ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018273ffffffffffffffffffffffffffffffffffffffff168152508660018761137a9190611955565b6005811061138b5761138a6119b8565b5b60200201516001600281106113a3576113a26119b8565b5b60200201819052506002856113b89190611955565b94505b505050509250929050565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060a001604052806005905b61144961145f565b8152602001906001900390816114415790505090565b60405180604001604052806002905b6114766113c6565b81526020019060019003908161146e5790505090565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006114b78261148c565b9050919050565b6114c7816114ac565b82525050565b60006020820190506114e260008301846114be565b92915050565b6000604051905090565b600080fd5b600080fd5b611505816114ac565b811461151057600080fd5b50565b600081359050611522816114fc565b92915050565b6000819050919050565b61153b81611528565b811461154657600080fd5b50565b60008135905061155881611532565b92915050565b600080600060608486031215611577576115766114f2565b5b600061158586828701611513565b935050602061159686828701611513565b92505060406115a786828701611549565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6115e6816114ac565b82525050565b60008115159050919050565b611601816115ec565b82525050565b60808201600082015161161d60008501826115dd565b50602082015161163060208501826115dd565b50604082015161164360408501826115f8565b50606082015161165660608501826115dd565b50505050565b60006116688383611607565b60808301905092915050565b6000602082019050919050565b600061168c826115b1565b61169681856115bc565b93506116a1836115cd565b8060005b838110156116d25781516116b9888261165c565b97506116c483611674565b9250506001810190506116a5565b5085935050505092915050565b600060208201905081810360008301526116f98184611681565b905092915050565b6000819050919050565b600061172661172161171c8461148c565b611701565b61148c565b9050919050565b60006117388261170b565b9050919050565b600061174a8261172d565b9050919050565b61175a8161173f565b82525050565b60006020820190506117756000830184611751565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126117a05761179f61177b565b5b8235905067ffffffffffffffff8111156117bd576117bc611780565b5b6020830191508360808202830111156117d9576117d8611785565b5b9250929050565b6000806000806000608086880312156117fc576117fb6114f2565b5b600086013567ffffffffffffffff81111561181a576118196114f7565b5b6118268882890161178a565b9550955050602061183988828901611549565b935050604061184a88828901611549565b925050606061185b88828901611549565b9150509295509295909350565b61187181611528565b82525050565b600060208201905061188c6000830184611868565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006118cc82611528565b91506118d783611528565b9250826118e7576118e6611892565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061192c82611528565b915061193783611528565b925082820390508181111561194f5761194e6118f2565b5b92915050565b600061196082611528565b915061196b83611528565b9250828201905080821115611983576119826118f2565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6119f0816115ec565b82525050565b6000606082019050611a0b60008301866114be565b611a1860208301856114be565b611a2560408301846119e7565b949350505050565b600081519050611a3c816114fc565b92915050565b600060208284031215611a5857611a576114f2565b5b6000611a6684828501611a2d565b91505092915050565b6000604082019050611a846000830185611868565b8181036020830152611a968184611681565b90509392505050565b6000601f19601f8301169050919050565b611ab982611a9f565b810181811067ffffffffffffffff82111715611ad857611ad7611989565b5b80604052505050565b6000611aeb6114e8565b9050611af78282611ab0565b919050565b600067ffffffffffffffff821115611b1757611b16611989565b5b602082029050602081019050919050565b600081519050611b3781611532565b92915050565b6000611b50611b4b84611afc565b611ae1565b90508083825260208201905060208402830185811115611b7357611b72611785565b5b835b81811015611b9c5780611b888882611b28565b845260208401935050602081019050611b75565b5050509392505050565b600082601f830112611bbb57611bba61177b565b5b8151611bcb848260208601611b3d565b91505092915050565b600060208284031215611bea57611be96114f2565b5b600082015167ffffffffffffffff811115611c0857611c076114f7565b5b611c1484828501611ba6565b91505092915050565b6000611c2882611528565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611c5a57611c596118f2565b5b600182019050919050565b600080fd5b611c73816115ec565b8114611c7e57600080fd5b50565b600081359050611c9081611c6a565b92915050565b600060808284031215611cac57611cab611c65565b5b611cb66080611ae1565b90506000611cc684828501611513565b6000830152506020611cda84828501611513565b6020830152506040611cee84828501611c81565b6040830152506060611d0284828501611513565b60608301525092915050565b600060808284031215611d2457611d236114f2565b5b6000611d3284828501611c96565b91505092915050565b6000606082019050611d5060008301866114be565b611d5d6020830185611868565b611d6a6040830184611868565b949350505050565b600060208284031215611d8857611d876114f2565b5b6000611d9684828501611b28565b91505092915050565b6000611daa82611528565b9150611db583611528565b9250828202611dc381611528565b91508282048414831517611dda57611dd96118f2565b5b5092915050565b6000611dec82611528565b9150611df783611528565b925082611e0757611e06611892565b5b82820490509291505056fea2646970667358221220c67a52036940aac48f558787caac02bddf74948d2456be775296390d6fe26c9c64736f6c63430008130033000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda029130000000000000000000000004200000000000000000000000000000000000006000000000000000000000000940181a94a35a4569e4529a3cdfb74e38fd98631000000000000000000000000420dd381b31aef6683db6b902084cb0ffece40da000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e43