0 txs
1 call
constructor
constructor(address _WETH)
functions
owner
viewfunction owner() view returns (address)
referralFee
viewfunction referralFee() view returns (uint256)
WETH
viewfunction WETH() view returns (address)
algebraSwapCallback
nonpayablefunction algebraSwapCallback(int256 amount0Delta, int256 amount1Delta, bytes data)
pancakeV3SwapCallback
nonpayablefunction pancakeV3SwapCallback(int256 amount0Delta, int256 amount1Delta, bytes data)
performCustomSwap
payablefunction performCustomSwap(tuple[] pools, uint256 minAmountOut) payable returns (uint256 amount)
performCustomSwap
nonpayablefunction performCustomSwap(uint256 amountIn, tuple[] pools, address initialToken, uint256 minAmountOut, bool feeFromInitial) returns (uint256 currentAmount)
setReferralFee
nonpayablefunction setReferralFee(uint256 _referralFee)
simulatePerformCustomSwap
nonpayablefunction simulatePerformCustomSwap(uint256 amountIn, tuple[] pools, address initialToken, uint256 minAmountOut, address simulateUniswapV3Pool)
simulateSingleV3pool
nonpayablefunction simulateSingleV3pool(uint256 amountIn, address pool, address initialToken)
solidlyV3SwapCallback
nonpayablefunction solidlyV3SwapCallback(int256 amount0Delta, int256 amount1Delta, bytes _data)
swapCallback
nonpayablefunction swapCallback(int256 amount0Delta, int256 amount1Delta, bytes _data)
swapCallback
nonpayablefunction swapCallback(uint256 amount0Delta, uint256 amount1Delta, bytes _data)
swapX2YCallback
nonpayablefunction swapX2YCallback(uint256 x, uint256 y, bytes data)
swapY2XCallback
nonpayablefunction swapY2XCallback(uint256 x, uint256 y, bytes data)
uniswapV3SwapCallback
nonpayablefunction uniswapV3SwapCallback(int256 amount0Delta, int256 amount1Delta, bytes data)
withdrawFees
nonpayablefunction withdrawFees(address token, uint256 amount)
withdrawFees
nonpayablefunction withdrawFees(uint256 amount)
events
No events.
errors
No errors.
creation bytecode
0x6080604052348015600f57600080fd5b506040516124e93803806124e9833981016040819052602c91605e565b600080546001600160a01b039092166001600160a01b031992831617905560018054909116331790556014600255608c565b600060208284031215606f57600080fd5b81516001600160a01b0381168114608557600080fd5b9392505050565b61244e8061009b6000396000f3fe6080604052600436106101005760003560e01c80638da5cb5b1161008f578063ad5c464811610061578063ad5c464814610236578063bc9d487e14610256578063d3e1c28414610276578063fa461e3314610296578063fa483e721461010257005b80638da5cb5b146101be578063923b8a2a14610102578063a13940b0146101f6578063ad3b1b471461021657005b80635e318e07116100d35780635e318e0714610122578063713494d7146101425780637a0f3a2e1461016257806384ae2bc61461018257806389155ef8146101ab57005b8063187806841461010257806323a69e75146101025780632c8958f6146101025780633a1c453c14610102575b005b34801561010e57600080fd5b5061010061011d366004611afb565b6102b6565b34801561012e57600080fd5b5061010061013d366004611b4e565b6102c8565b34801561014e57600080fd5b5061010061015d366004611b4e565b610339565b34801561016e57600080fd5b5061010061017d366004611b7f565b6103b0565b34801561018e57600080fd5b5061019860025481565b6040519081526020015b60405180910390f35b6101986101b9366004611c06565b610506565b3480156101ca57600080fd5b506001546101de906001600160a01b031681565b6040516001600160a01b0390911681526020016101a2565b34801561020257600080fd5b50610198610211366004611c60565b610743565b34801561022257600080fd5b50610100610231366004611cdc565b610949565b34801561024257600080fd5b506000546101de906001600160a01b031681565b34801561026257600080fd5b50610100610271366004611d08565b6109ef565b34801561028257600080fd5b50610100610291366004611afb565b610b63565b3480156102a257600080fd5b506101006102b1366004611afb565b610b6b565b6102c284848484610b6b565b50505050565b6001546001600160a01b031633146102fb5760405162461bcd60e51b81526004016102f290611d76565b60405180910390fd5b6001546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610335573d6000803e3d6000fd5b5050565b6001546001600160a01b031633146103635760405162461bcd60e51b81526004016102f290611d76565b60648111156103ab5760405162461bcd60e51b81526020600482015260146024820152734665652063616e6e6f742065786365656420312560601b60448201526064016102f2565b600255565b60008290506000826001600160a01b0316826001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104239190611d99565b6001600160a01b031614905060008161045a57610455600173fffd8963efd1fc6a506488495d951d5263988d26611dd3565b61046a565b61046a6401000276a36001611df8565b604051630251596160e31b81523060048201528315156024820152604481018890526001600160a01b03808316606483015260a06084830152600060a48301529192509084169063128acb089060c40160408051808303816000875af11580156104d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fc9190611e17565b5050505050505050565b60008034116105455760405162461bcd60e51b815260206004820152600b60248201526a139bc8115512081cd95b9d60aa1b60448201526064016102f2565b60008054906101000a90046001600160a01b03166001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561059357600080fd5b505af11580156105a7573d6000803e3d6000fd5b5050505050600061061c348686808060200260200160405190810160405280939291908181526020016000905b82821015610600576105f160608302860136819003810190611eee565b815260200190600101906105d4565b50506000546001600160a01b0316925088915060019050610cdc565b60005491935091506001600160a01b03908116908216036106c857600054604051632e1a7d4d60e01b8152600481018490526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b15801561067d57600080fd5b505af1158015610691573d6000803e3d6000fd5b505060405133925084156108fc02915084906000818181858888f193505050501580156106c2573d6000803e3d6000fd5b5061073b565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0382169063a9059cbb906044016020604051808303816000875af1158015610715573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107399190611f0a565b505b509392505050565b6040516323b872dd60e01b8152336004820152306024820152604481018790526000906001600160a01b038516906323b872dd906064016020604051808303816000875af1158015610799573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bd9190611f0a565b50600061081f888888808060200260200160405190810160405280939291908181526020016000905b828210156108125761080360608302860136819003810190611eee565b815260200190600101906107e6565b5050505050878787610cdc565b60005491935091506001600160a01b03908116908216036108cb57600054604051632e1a7d4d60e01b8152600481018490526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b15801561088057600080fd5b505af1158015610894573d6000803e3d6000fd5b505060405133925084156108fc02915084906000818181858888f193505050501580156108c5573d6000803e3d6000fd5b5061093e565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0382169063a9059cbb906044016020604051808303816000875af1158015610918573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093c9190611f0a565b505b509695505050505050565b6001546001600160a01b031633146109735760405162461bcd60e51b81526004016102f290611d76565b60015460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af11580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190611f0a565b505050565b60008686868686604051602001610a0a959493929190611f27565b604051602081830303815290604052905060008290506000856001600160a01b0316826001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8e9190611d99565b6001600160a01b0316149050600081610ac557610ac0600173fffd8963efd1fc6a506488495d951d5263988d26611dd3565b610ad5565b610ad56401000276a36001611df8565b90506001600160a01b03831663128acb083084610af18e611fb9565b85896040518663ffffffff1660e01b8152600401610b13959493929190612025565b60408051808303816000875af1158015610b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b559190611e17565b505050505050505050505050565b6102c2838584845b6040819003610c1357600080610b838385018561207b565b9150915060008115610b96575085610b99565b50845b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610be6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0a9190611f0a565b505050506102c2565b6000819003610c8b57600080851215610c3657610c2f85611fb9565b9050610c42565b610c3f84611fb9565b90505b610c4b85611637565b610c5485611637565b604051602001610c659291906120b4565b60408051601f198184030181529082905262461bcd60e51b82526102f291600401612152565b6000808080610c9c85870187612165565b9350935093509350600080610cb5868686866001610cdc565b91509150610cc2826117cb565b610ccb826118da565b604051602001610c65929190612243565b60008060008711610d265760405162461bcd60e51b81526020600482015260146024820152730616d6f756e74496e206d757374206265203e20360641b60448201526064016102f2565b8215610dd157600061271060025489610d3f91906122e2565b610d49919061230f565b60015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925087169063a9059cbb906044016020604051808303816000875af1158015610d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc29190611f0a565b50610dcd8189612323565b9750505b508590508360005b865181101561153e57868181518110610df457610df4612336565b60200260200101516020015115611022576000878281518110610e1957610e19612336565b60200260200101516000015190506000816001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8b9190611d99565b90506001600160a01b0384811690821614600081610ec757610ec2600173fffd8963efd1fc6a506488495d951d5263988d26611dd3565b610ed7565b610ed76401000276a36001611df8565b9050600080856001600160a01b031663128acb0830868c878d8a604051602001610f189291906001600160a01b039290921682521515602082015260400190565b6040516020818303038152906040526040518663ffffffff1660e01b8152600401610f47959493929190612025565b60408051808303816000875af1158015610f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f899190611e17565b91509150831561100757856001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff59190611d99565b975061100081611fb9565b9850611017565b8497508161101490611fb9565b98505b505050505050611536565b600087828151811061103657611036612336565b60200260200101516000015190506000816001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015611084573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a89190611d99565b90506000826001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110e9190611d99565b90506000826001600160a01b0316866001600160a01b031603611132575080611135565b50815b600080600080876001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611179573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119d9190612363565b506001600160701b031691506001600160701b03169150866001600160a01b03168a6001600160a01b0316036111d8578193508092506111df565b8093508192505b5050600060018e89815181106111f7576111f7612336565b60200260200101516040015111156112755760006127108f8a8151811061122057611220612336565b6020026020010151604001516127106112399190612323565b611243908d6122e2565b61124d919061230f565b905061125981856123a8565b61126384836122e2565b61126d919061230f565b915050611386565b8d888151811061128757611287612336565b6020026020010151604001516001036113125760405163ca706bcf60e01b81526001600160a01b038a81166004830152602482018c905288169063ca706bcf90604401602060405180830381865afa1580156112e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061130b91906123bb565b9050611386565b6040516378a051ad60e11b8152600481018b90526001600160a01b038a8116602483015288169063f140a35a90604401602060405180830381865afa15801561135f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061138391906123bb565b90505b6000866001600160a01b03168a6001600160a01b0316146113a757816113aa565b60005b90506000876001600160a01b03168b6001600160a01b0316146113ce5760006113d0565b825b60405163a9059cbb60e01b81526001600160a01b038b81166004830152602482018f9052919250908c169063a9059cbb906044016020604051808303816000875af1158015611423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114479190611f0a565b5060405163022c0d9f60e01b8152600481018390526024810182905230604482015260806064820152600060848201526001600160a01b038a169063022c0d9f9060a401600060405180830381600087803b1580156114a557600080fd5b505af11580156114b9573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152979c508c976001600160a01b03891692506370a082319150602401602060405180830381865afa158015611506573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061152a91906123bb565b9b505050505050505050505b600101610dd9565b50838210156115835760405162461bcd60e51b81526020600482015260116024820152700a6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b60448201526064016102f2565b8261162d5760006127106002548461159b91906122e2565b6115a5919061230f565b60015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925083169063a9059cbb906044016020604051808303816000875af11580156115fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061161e9190611f0a565b506116298184612323565b9250505b9550959350505050565b60608160000361165e5750506040805180820190915260018152600360fc1b602082015290565b6000808312908161166f5783611678565b61167884611fb9565b905060005b81156116a3578061168d816123d4565b915061169c9050600a8361230f565b915061167d565b82156116b757806116b3816123d4565b9150505b60008167ffffffffffffffff8111156116d2576116d2611e3b565b6040519080825280601f01601f1916602001820160405280156116fc576020820181803683370190505b509050818461170b5786611714565b61171487611fb9565b9350841561175957602d60f81b8260008151811061173457611734612336565b60200101906001600160f81b031916908160001a90535080611755816123ed565b9150505b83156117c15780611769816123ed565b91506117789050600a85612404565b6117839060306123a8565b60f81b82828151811061179857611798612336565b60200101906001600160f81b031916908160001a9053506117ba600a8561230f565b9350611759565b5095945050505050565b6060816000036117f25750506040805180820190915260018152600360fc1b602082015290565b8160005b811561181c5780611806816123d4565b91506118159050600a8361230f565b91506117f6565b60008167ffffffffffffffff81111561183757611837611e3b565b6040519080825280601f01601f191660200182016040528015611861576020820181803683370190505b508593509050815b83156118d15780611879816123ed565b91506118889050600a85612404565b6118939060306123a8565b60f81b8282815181106118a8576118a8612336565b60200101906001600160f81b031916908160001a9053506118ca600a8561230f565b9350611869565b50949350505050565b604080518082018252601081526f181899199a1a9b1b9c1cb0b131b232b360811b60208201528151602a80825260608281019094526001600160a01b0385169291600091602082018180368337019050509050600360fc1b8160008151811061194557611945612336565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061197457611974612336565b60200101906001600160f81b031916908160001a90535060005b60148110156118d157826004856119a684600c6123a8565b602081106119b6576119b6612336565b1a60f81b6001600160f81b031916901c60f81c60ff16815181106119dc576119dc612336565b01602001516001600160f81b031916826119f78360026122e2565b611a029060026123a8565b81518110611a1257611a12612336565b60200101906001600160f81b031916908160001a9053508284611a3683600c6123a8565b60208110611a4657611a46612336565b825191901a600f16908110611a5d57611a5d612336565b01602001516001600160f81b03191682611a788360026122e2565b611a839060036123a8565b81518110611a9357611a93612336565b60200101906001600160f81b031916908160001a90535060010161198e565b60008083601f840112611ac457600080fd5b50813567ffffffffffffffff811115611adc57600080fd5b602083019150836020828501011115611af457600080fd5b9250929050565b60008060008060608587031215611b1157600080fd5b8435935060208501359250604085013567ffffffffffffffff811115611b3657600080fd5b611b4287828801611ab2565b95989497509550505050565b600060208284031215611b6057600080fd5b5035919050565b6001600160a01b0381168114611b7c57600080fd5b50565b600080600060608486031215611b9457600080fd5b833592506020840135611ba681611b67565b91506040840135611bb681611b67565b809150509250925092565b60008083601f840112611bd357600080fd5b50813567ffffffffffffffff811115611beb57600080fd5b602083019150836020606083028501011115611af457600080fd5b600080600060408486031215611c1b57600080fd5b833567ffffffffffffffff811115611c3257600080fd5b611c3e86828701611bc1565b909790965060209590950135949350505050565b8015158114611b7c57600080fd5b60008060008060008060a08789031215611c7957600080fd5b86359550602087013567ffffffffffffffff811115611c9757600080fd5b611ca389828a01611bc1565b9096509450506040870135611cb781611b67565b9250606087013591506080870135611cce81611c52565b809150509295509295509295565b60008060408385031215611cef57600080fd5b8235611cfa81611b67565b946020939093013593505050565b60008060008060008060a08789031215611d2157600080fd5b86359550602087013567ffffffffffffffff811115611d3f57600080fd5b611d4b89828a01611bc1565b9096509450506040870135611d5f81611b67565b9250606087013591506080870135611cce81611b67565b6020808252600990820152682737ba1037bbb732b960b91b604082015260600190565b600060208284031215611dab57600080fd5b8151611db681611b67565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038281168282160390811115611df257611df2611dbd565b92915050565b6001600160a01b038181168382160190811115611df257611df2611dbd565b60008060408385031215611e2a57600080fd5b505080516020909101519092909150565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611e7a57611e7a611e3b565b604052919050565b600060608284031215611e9457600080fd5b6040516060810167ffffffffffffffff81118282101715611eb757611eb7611e3b565b6040529050808235611ec881611b67565b81526020830135611ed881611c52565b6020820152604092830135920191909152919050565b600060608284031215611f0057600080fd5b611db68383611e82565b600060208284031215611f1c57600080fd5b8151611db681611c52565b858152608060208201819052810184905260008560a08301825b87811015611f90578235611f5481611b67565b6001600160a01b031682526020830135611f6d81611c52565b151560208301526040838101359083015260609283019290910190600101611f41565b506001600160a01b03861660408501529150611fa99050565b8260608301529695505050505050565b6000600160ff1b8201611fce57611fce611dbd565b5060000390565b60005b83811015611ff0578181015183820152602001611fd8565b50506000910152565b60008151808452612011816020860160208601611fd5565b601f01601f19169290920160200192915050565b6001600160a01b0386811682528515156020830152604082018590528316606082015260a06080820181905260009061206090830184611ff9565b979650505050505050565b803561207681611b67565b919050565b6000806040838503121561208e57600080fd5b823561209981611b67565b915060208301356120a981611c52565b809150509250929050565b69029b4b6bab630ba329d160b51b8152607b60f81b600a8201526a1130b6b7bab73a18111d1160a91b600b82015282516000906120f8816016850160208801611fd5565b61088b60f21b6016918401918201526a1130b6b7bab73a18911d1160a91b6018820152835161212e816023840160208801611fd5565b601160f91b60239290910191820152607d60f81b6024820152602501949350505050565b602081526000611db66020830184611ff9565b6000806000806080858703121561217b57600080fd5b84359350602085013567ffffffffffffffff81111561219957600080fd5b8501601f810187136121aa57600080fd5b803567ffffffffffffffff8111156121c4576121c4611e3b565b6121d360208260051b01611e51565b808282526020820191506020606084028501019250898311156121f557600080fd5b6020840193505b828410156122215761220e8a85611e82565b82526020820191506060840193506121fc565b9550612233925050506040860161206b565b9396929550929360600135925050565b69029b4b6bab630ba329d160b51b8152607b60f81b600a820152691130b6b7bab73a111d1160b11b600b8201528251600090612286816015850160208801611fd5565b61088b60f21b6015918401918201526c113a37b5b2b72fb7baba111d1160991b601782015283516122be816024840160208801611fd5565b601160f91b60249290910191820152607d60f81b6025820152602601949350505050565b8082028115828204841417611df257611df2611dbd565b634e487b7160e01b600052601260045260246000fd5b60008261231e5761231e6122f9565b500490565b81810381811115611df257611df2611dbd565b634e487b7160e01b600052603260045260246000fd5b80516001600160701b038116811461207657600080fd5b60008060006060848603121561237857600080fd5b6123818461234c565b925061238f6020850161234c565b9150604084015163ffffffff81168114611bb657600080fd5b80820180821115611df257611df2611dbd565b6000602082840312156123cd57600080fd5b5051919050565b6000600182016123e6576123e6611dbd565b5060010190565b6000816123fc576123fc611dbd565b506000190190565b600082612413576124136122f9565b50069056fea2646970667358221220377157fa90fc5cefeb0c9d8eb0a8474d872855ed2396cd310ca0cb3f93368b1264736f6c634300081b00330000000000000000000000004200000000000000000000000000000000000006