Transaction Hash:
Block:
15206159 at Jul-24-2022 03:38:07 PM +UTC
Transaction Fee:
0.0023792621236839 ETH
$6.07
Gas Used:
231,525 Gas / 10.276480396 Gwei
Emitted Events:
117 |
Variable.Transfer( from=[Sender] 0x0d6eaf2c0c048384ee7425b5cb63cd64541e087b, to=UniswapV2Pair, value=12063274058621715210145175749 )
|
118 |
WETH9.Transfer( src=UniswapV2Pair, dst=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, wad=39928295846855505 )
|
119 |
UniswapV2Pair.Sync( reserve0=10217505375633614151739040209984, reserve1=33865293104852211500 )
|
120 |
UniswapV2Pair.Swap( sender=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, amount0In=12068752128290235605763452493, amount1In=0, amount0Out=0, amount1Out=39928295846855505, to=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77 )
|
121 |
0xd12bcdfb9a39be79da3bdf02557efdcd5ca59e77.0xddac40937f35385a34f721af292e5a83fc5b840f722bff57c2fc71adba708c48( 0xddac40937f35385a34f721af292e5a83fc5b840f722bff57c2fc71adba708c48, 000000000000000000000000cc33ac98e98d923f495f266158bb6f60c85c19fe, 000000000000000000000000000000000000000000000000008dda92d2704351, 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 )
|
122 |
WETH9.Withdrawal( src=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, wad=39928295846855505 )
|
123 |
AggregationRouter.Swapped( sender=[Sender] 0x0d6eaf2c0c048384ee7425b5cb63cd64541e087b, srcToken=Variable, dstToken=0xEeeeeEee...eeeeeEEeE, dstReceiver=[Sender] 0x0d6eaf2c0c048384ee7425b5cb63cd64541e087b, spentAmount=13403637842913016900161306386, returnAmount=39928295846855505 )
|
124 |
AggregationRouter.Exchange( pair=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, amountOut=39928295846855505, output=WETH9 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x0d6eAF2c...4541e087b |
0.077285344974478876 Eth
Nonce: 28
|
0.114834378697650481 Eth
Nonce: 29
| 0.037549033723171605 | ||
0x3F33D5b1...4FB355891 | |||||
0x8B4de256...EE2813dbB
Miner
| (SBI Crypto Pool) | 1,181.237144665483802898 Eth | 1,181.237607715483802898 Eth | 0.00046305 | |
0xC02aaA39...83C756Cc2 | 4,299,477.053862075563712727 Eth | 4,299,477.013933779716857222 Eth | 0.039928295846855505 | ||
0xCc33AC98...0C85c19FE |
Execution Trace
AggregationRouter.swap( caller=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, desc=[{name:srcToken, type:address, order:1, indexed:false, value:0x3F33D5b179680b18aC60b2a4cEFAA6F4FB355891, valueString:0x3F33D5b179680b18aC60b2a4cEFAA6F4FB355891}, {name:dstToken, type:address, order:2, indexed:false, value:0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, valueString:0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE}, {name:srcReceivers, type:address[], order:3, indexed:false, value:[], valueString:[]}, {name:srcAmounts, type:uint256[], order:4, indexed:false, value:[], valueString:[]}, {name:dstReceiver, type:address, order:5, indexed:false, value:0x0d6eAF2c0C048384Ee7425B5cB63cd64541e087b, valueString:0x0d6eAF2c0C048384Ee7425B5cB63cd64541e087b}, {name:amount, type:uint256, order:6, indexed:false, value:13403637842913016900161306386, valueString:13403637842913016900161306386}, {name:minReturnAmount, type:uint256, order:7, indexed:false, value:39765794065016239, valueString:39765794065016239}, {name:flags, type:uint256, order:8, indexed:false, value:32, valueString:32}, {name:permit, type:bytes, order:9, indexed:false, value:0x, valueString:0x}], data=0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000E000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000018230EE12D800000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000CC33AC98E98D923F495F266158BB6F60C85C19FE000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000002B4F3AB76CBD1D744612FF120000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000CC33AC98E98D923F495F266158BB6F60C85C19FE0000000000000000000000003F33D5B179680B18AC60B2A4CEFAA6F4FB355891000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000D12BCDFB9A39BE79DA3BDF02557EFDCD5CA59E77000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ) => ( returnAmount=39928295846855505 )
-
Variable.transferFrom( sender=0x0d6eAF2c0C048384Ee7425B5cB63cd64541e087b, recipient=0xCc33AC98e98d923F495f266158bB6F60C85c19FE, amount=13403637842913016900161306386 ) => ( True )
0xd12bcdfb9a39be79da3bdf02557efdcd5ca59e77.8b674f5d( )
FireBirdFormula.getFactoryReserveAndWeights( factory=0x59a16EcE7143459801C3B3F24DC8a0CDfb956571, pair=0xCc33AC98e98d923F495f266158bB6F60C85c19FE, tokenA=0x3F33D5b179680b18aC60b2a4cEFAA6F4FB355891, dexId=1 ) => ( tokenB=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, reserveA=10205436623505323916133276757491, reserveB=33905221400699067005, tokenWeightA=50, tokenWeightB=50, swapFee=30 )
-
UniswapV2Pair.STATICCALL( )
-
UniswapV2Pair.STATICCALL( )
-
UniswapV2Pair.STATICCALL( )
-
-
Variable.balanceOf( account=0xCc33AC98e98d923F495f266158bB6F60C85c19FE ) => ( 10217505375633614151739040209984 )
-
FireBirdFormula.getAmountOut( amountIn=12068752128290235605763452493, reserveIn=10205436623505323916133276757491, reserveOut=33905221400699067005, tokenWeightIn=50, tokenWeightOut=50, swapFee=30 ) => ( amountOut=39928295846855505 )
-
WETH9.balanceOf( 0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77 ) => ( 0 )
-
UniswapV2Pair.STATICCALL( )
UniswapV2Pair.swap( amount0Out=0, amount1Out=39928295846855505, to=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, data=0x )
-
WETH9.transfer( dst=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77, wad=39928295846855505 ) => ( True )
-
Variable.balanceOf( account=0xCc33AC98e98d923F495f266158bB6F60C85c19FE ) => ( 10217505375633614151739040209984 )
-
WETH9.balanceOf( 0xCc33AC98e98d923F495f266158bB6F60C85c19FE ) => ( 33865293104852211500 )
-
-
WETH9.balanceOf( 0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77 ) => ( 39928295846855505 )
0xd12bcdfb9a39be79da3bdf02557efdcd5ca59e77.774b6b7e( )
-
WETH9.balanceOf( 0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77 ) => ( 39928295846855505 )
WETH9.withdraw( wad=39928295846855505 )
- ETH 0.039928295846855505
0xd12bcdfb9a39be79da3bdf02557efdcd5ca59e77.CALL( )
- ETH 0.039928295846855505
- ETH 0.039928295846855505
0x0d6eaf2c0c048384ee7425b5cb63cd64541e087b.CALL( )
-
Variable.balanceOf( account=0xd12bcdFB9A39BE79DA3bDF02557EFdcD5CA59e77 ) => ( 0 )
-
swap[AggregationRouter (ln:393)]
swapSimpleMode[AggregationRouter (ln:404)]
_isETH[AggregationRouter (ln:512)]
_permit[AggregationRouter (ln:514)]
safeTransferFrom[AggregationRouter (ln:524)]
call[TransferHelper (ln:94)]
encodeWithSelector[TransferHelper (ln:94)]
decode[TransferHelper (ln:96)]
_getBalance[AggregationRouter (ln:536)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
_swapMultiSequencesWithSimpleMode[AggregationRouter (ln:538)]
decode[AggregationRouter (ln:578)]
safeTransferFrom[AggregationRouter (ln:588)]
call[TransferHelper (ln:94)]
encodeWithSelector[TransferHelper (ln:94)]
decode[TransferHelper (ln:96)]
call[AggregationRouter (ln:600)]
encodeWithSelector[AggregationRouter (ln:601)]
revert[AggregationRouter (ln:607)]
call[AggregationRouter (ln:615)]
encodeWithSelector[AggregationRouter (ln:616)]
revert[AggregationRouter (ln:625)]
sub[AggregationRouter (ln:547)]
_getBalance[AggregationRouter (ln:547)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
Swapped[AggregationRouter (ln:554)]
Exchange[AggregationRouter (ln:562)]
_isETH[AggregationRouter (ln:565)]
_isETH[AggregationRouter (ln:412)]
_isETH[AggregationRouter (ln:417)]
_isETH[AggregationRouter (ln:428)]
_permit[AggregationRouter (ln:429)]
safeTransferFrom[AggregationRouter (ln:431)]
call[TransferHelper (ln:94)]
encodeWithSelector[TransferHelper (ln:94)]
decode[TransferHelper (ln:96)]
_isETH[AggregationRouter (ln:440)]
safeTransferETH[AggregationRouter (ln:443)]
_getBalance[AggregationRouter (ln:453)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
_getBalance[AggregationRouter (ln:454)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
_getBalance[AggregationRouter (ln:459)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
call[AggregationRouter (ln:462)]
encodeWithSelector[AggregationRouter (ln:463)]
revert[AggregationRouter (ln:466)]
sub[AggregationRouter (ln:471)]
_getBalance[AggregationRouter (ln:471)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
sub[AggregationRouter (ln:474)]
add[AggregationRouter (ln:474)]
_getBalance[AggregationRouter (ln:475)]
_isETH[AggregationRouter (ln:635)]
balanceOf[AggregationRouter (ln:638)]
mul[AggregationRouter (ln:478)]
mul[AggregationRouter (ln:479)]
Swapped[AggregationRouter (ln:489)]
Exchange[AggregationRouter (ln:497)]
_isETH[AggregationRouter (ln:500)]
File 1 of 5: AggregationRouter
File 2 of 5: UniswapV2Pair
File 3 of 5: Variable
File 4 of 5: WETH9
File 5 of 5: FireBirdFormula
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.7.6;pragma abicoder v2;interface IERC20 {event Approval(address indexed owner,address indexed spender,uint256 value);event Transfer(address indexed from, address indexed to, uint256 value);function name() external view returns (string memory);function symbol() external view returns (string memory);
File 2 of 5: UniswapV2Pair
12345678910111213141516// File: contracts/interfaces/IUniswapV2Pair.solpragma solidity >=0.5.0;interface IUniswapV2Pair {event Approval(address indexed owner, address indexed spender, uint value);event Transfer(address indexed from, address indexed to, uint value);function name() external pure returns (string memory);function symbol() external pure returns (string memory);function decimals() external pure returns (uint8);function totalSupply() external view returns (uint);function balanceOf(address owner) external view returns (uint);function allowance(address owner, address spender) external view returns (uint);function approve(address spender, uint value) external returns (bool);
File 3 of 5: Variable
12345678910111213141516// SPDX-License-Identifier: Apachepragma solidity 0.8.7;import "@openzeppelin/contracts/token/ERC20/IERC20.sol";import "@openzeppelin/contracts/access/Ownable.sol";/****************************************|| Interfaces ||_______________________________________*/interface IUniswapV2Factory {event PairCreated(address indexed token0, address indexed token1, address pair, uint);function feeTo() external view returns (address);function feeToSetter() external view returns (address);function getPair(address tokenA, address tokenB) external view returns (address pair);function allPairs(uint) external view returns (address pair);function allPairsLength() external view returns (uint);function createPair(address tokenA, address tokenB) external returns (address pair);function setFeeTo(address) external;
File 4 of 5: WETH9
12345678910111213141516// Copyright (C) 2015, 2016, 2017 Dapphub// This program is free software: you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation, either version 3 of the License, or// (at your option) any later version.// This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.// You should have received a copy of the GNU General Public License// along with this program. If not, see <http://www.gnu.org/licenses/>.pragma solidity ^0.4.18;
File 5 of 5: FireBirdFormula
12345678910111213141516// File: contracts/interfaces/IFireBirdFormula.sol// SPDX-License-Identifier: SEE LICENSE IN LICENSEpragma solidity >=0.5.16;/*Bancor Formula interface*/interface IFireBirdFormula {function getFactoryReserveAndWeights(address factory, address pair, address tokenA, uint8 dexId) external view returns (address tokenB,uint reserveA,uint reserveB,uint32 tokenWeightA,uint32 tokenWeightB,