Transaction Hash:
Block:
22657179 at Jun-08-2025 03:26:23 AM +UTC
Transaction Fee:
0.00024311054577979 ETH
$0.93
Gas Used:
409,835 Gas / 0.593191274 Gwei
Emitted Events:
179 |
TetherToken.Transfer( from=[Sender] 0xe1ab782a898bce31dba8387841352efcd96e40a8, to=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, value=5000000 )
|
180 |
TetherToken.Transfer( from=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, to=0x922164BBBd36Acf9E854AcBbF32faCC949fCAEef, value=7500 )
|
181 |
TetherToken.Transfer( from=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, to=0x096DAA643bA24e53b087AF2ceeD3a6ddEb56945b, value=42500 )
|
182 |
TetherToken.Approval( owner=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, spender=Vault, value=4950000 )
|
183 |
ComposableStablePool.Transfer( from=0x0000000000000000000000000000000000000000, to=ProtocolFeesCollector, value=4419905770654875 )
|
184 |
ComposableStablePool.Transfer( from=0x0000000000000000000000000000000000000000, to=ProtocolFeesCollector, value=213885768629997 )
|
185 |
Vault.Swap( poolId=79C58F70905F734641735BC61E45C19DD9AD60BC0000000000000000000004E7, tokenIn=TetherToken, tokenOut=ComposableStablePool, amountIn=4950000, amountOut=4727459198589531184 )
|
186 |
Vault.Swap( poolId=08775CCB6674D6BDCEB0797C364C2653ED84F3840002000000000000000004F0, tokenIn=ComposableStablePool, tokenOut=WETH9, amountIn=4727459198589531184, amountOut=1972297552875749 )
|
187 |
TetherToken.Transfer( from=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, to=Vault, value=4950000 )
|
188 |
WETH9.Transfer( src=Vault, dst=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, wad=1972297552875749 )
|
189 |
WETH9.Withdrawal( src=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, wad=1972297552875749 )
|
190 |
OpenOceanExchangeProxy.0x76af224a143865a50b41496e1a73622698692c565c1214bc862f18e22d829c5e( 0x76af224a143865a50b41496e1a73622698692c565c1214bc862f18e22d829c5e, 0x000000000000000000000000e1ab782a898bce31dba8387841352efcd96e40a8, 0x000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7, 0x000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, 000000000000000000000000e1ab782a898bce31dba8387841352efcd96e40a8, 00000000000000000000000000000000000000000000000000000000004c4b40, 00000000000000000000000000000000000000000000000000000000004c4b40, 0000000000000000000000000000000000000000000000000007019d92583abe, 0000000000000000000000000000000000000000000000000006fc3c132f844b, 0000000000000000000000000000000000000000000000000007019d92583abe, 000000000000000000000000096daa643ba24e53b087af2ceed3a6ddeb56945b )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x79c58f70...dD9Ad60bC | |||||
0x922164BB...949fCAEef | 0.595796394183434861 Eth | 0.595796590622587028 Eth | 0.000000196439152167 | ||
0xBA122222...d566BF2C8 | (Balancer: Vault) | ||||
0xC02aaA39...83C756Cc2 | 2,653,702.225540223093931481 Eth | 2,653,702.223567925541055732 Eth | 0.001972297552875749 | ||
0xdAC17F95...13D831ec7 | |||||
0xdadB0d80...24f783711
Miner
| (BuilderNet) | 98.425642016883129575 Eth | 98.425660014106828475 Eth | 0.0000179972236989 | |
0xE1Ab782A...cd96E40a8 |
0.000869807775778584 Eth
Nonce: 1
|
0.002598798343722376 Eth
Nonce: 2
| 0.001728990567943792 |
Execution Trace
OpenOceanExchangeProxy.90411a32( )
OpenOceanExchange.swap( caller=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, desc=[{name:srcToken, type:address, order:1, indexed:false, value:0xdAC17F958D2ee523a2206206994597C13D831ec7, valueString:0xdAC17F958D2ee523a2206206994597C13D831ec7}, {name:dstToken, type:address, order:2, indexed:false, value:0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, valueString:0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE}, {name:srcReceiver, type:address, order:3, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:dstReceiver, type:address, order:4, indexed:false, value:0xE1Ab782A898Bce31dBA8387841352eFcd96E40a8, valueString:0xE1Ab782A898Bce31dBA8387841352eFcd96E40a8}, {name:amount, type:uint256, order:5, indexed:false, value:5000000, valueString:5000000}, {name:minReturnAmount, type:uint256, order:6, indexed:false, value:1966184810382411, valueString:1966184810382411}, {name:guaranteedAmount, type:uint256, order:7, indexed:false, value:1972101113723582, valueString:1972101113723582}, {name:flags, type:uint256, order:8, indexed:false, value:2, valueString:2}, {name:referrer, type:address, order:9, indexed:false, value:0x096DAA643bA24e53b087AF2ceeD3a6ddEb56945b, valueString:0x096DAA643bA24e53b087AF2ceeD3a6ddEb56945b}, {name:permit, type:bytes, order:10, indexed:false, value:0x, valueString:0x}], calls= ) => ( returnAmount=1972101113723582 )
-
TetherToken.transferFrom( _from=0xE1Ab782A898Bce31dBA8387841352eFcd96E40a8, _to=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, _value=5000000 )
OpenOcean 2.a8920d2b( )
OpenOcean 2.0c7e1209( )
OpenOcean 2.d1660f99( )
-
TetherToken.transfer( _to=0x922164BBBd36Acf9E854AcBbF32faCC949fCAEef, _value=7500 )
-
OpenOcean 2.0c7e1209( )
OpenOcean 2.d1660f99( )
-
TetherToken.transfer( _to=0x096DAA643bA24e53b087AF2ceeD3a6ddEb56945b, _value=42500 )
-
OpenOcean 2.0c7e1209( )
OpenOcean 2.eb5625d9( )
-
TetherToken.allowance( _owner=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, _spender=0xBA12222222228d8Ba445958a75a0704d566BF2C8 ) => ( remaining=0 )
-
TetherToken.allowance( _owner=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, _spender=0xBA12222222228d8Ba445958a75a0704d566BF2C8 ) => ( remaining=0 )
-
TetherToken.approve( _spender=0xBA12222222228d8Ba445958a75a0704d566BF2C8, _value=4950000 )
-
OpenOcean 2.0c7e1209( )
Vault.batchSwap( kind=0, swaps=, assets=[0xdAC17F958D2ee523a2206206994597C13D831ec7, 0x79c58f70905F734641735BC61e45c19dD9Ad60bC, 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2], funds=[{name:sender, type:address, order:1, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:fromInternalBalance, type:bool, order:2, indexed:false, value:false, valueString:False}, {name:recipient, type:address, order:3, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:toInternalBalance, type:bool, order:4, indexed:false, value:false, valueString:False}], limits=[57896044618658097711785492504343953926634992332820282019728792003956564819967, 0, 0], deadline=4294967295 ) => ( assetDeltas=[4950000, 0, -1972297552875749] )
-
ComposableStablePool.onSwap( swapRequest=[{name:kind, type:uint8, order:1, indexed:false, value:0, valueString:0}, {name:tokenIn, type:address, order:2, indexed:false, value:0xdAC17F958D2ee523a2206206994597C13D831ec7, valueString:0xdAC17F958D2ee523a2206206994597C13D831ec7}, {name:tokenOut, type:address, order:3, indexed:false, value:0x79c58f70905F734641735BC61e45c19dD9Ad60bC, valueString:0x79c58f70905F734641735BC61e45c19dD9Ad60bC}, {name:amount, type:uint256, order:4, indexed:false, value:4950000, valueString:4950000}, {name:poolId, type:bytes32, order:5, indexed:false, value:79C58F70905F734641735BC61E45C19DD9AD60BC0000000000000000000004E7, valueString:79C58F70905F734641735BC61E45C19DD9AD60BC0000000000000000000004E7}, {name:lastChangeBlock, type:uint256, order:6, indexed:false, value:22657032, valueString:22657032}, {name:from, type:address, order:7, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:to, type:address, order:8, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:userData, type:bytes, order:9, indexed:false, value:0x, valueString:0x}], balances=[1725332216688622327155, 2596148430067350576928983110305203, 2180893915, 411031116], indexIn=3, indexOut=1 ) => ( 4727459198589531184 )
-
WeightedPool.onSwap( request=[{name:kind, type:uint8, order:1, indexed:false, value:0, valueString:0}, {name:tokenIn, type:address, order:2, indexed:false, value:0x79c58f70905F734641735BC61e45c19dD9Ad60bC, valueString:0x79c58f70905F734641735BC61e45c19dD9Ad60bC}, {name:tokenOut, type:address, order:3, indexed:false, value:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, valueString:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2}, {name:amount, type:uint256, order:4, indexed:false, value:4727459198589531184, valueString:4727459198589531184}, {name:poolId, type:bytes32, order:5, indexed:false, value:08775CCB6674D6BDCEB0797C364C2653ED84F3840002000000000000000004F0, valueString:08775CCB6674D6BDCEB0797C364C2653ED84F3840002000000000000000004F0}, {name:lastChangeBlock, type:uint256, order:6, indexed:false, value:22656704, valueString:22656704}, {name:from, type:address, order:7, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:to, type:address, order:8, indexed:false, value:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, valueString:0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121}, {name:userData, type:bytes, order:9, indexed:false, value:0x, valueString:0x}], balanceTokenIn=1174095176010143205722, balanceTokenOut=493279116658778870 ) => ( 1972297552875749 )
-
TetherToken.transferFrom( _from=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, _to=0xBA12222222228d8Ba445958a75a0704d566BF2C8, _value=4950000 )
-
WETH9.transfer( dst=0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121, wad=1972297552875749 ) => ( True )
-
OpenOcean 2.0c7e1209( )
OpenOcean 2.9f865422( )
-
WETH9.balanceOf( 0x55877bD7F2EE37BDe55cA4B271A3631f3A7ef121 ) => ( 1972297552875749 )
WETH9.withdraw( wad=1972297552875749 )
- ETH 0.001972297552875749
OpenOcean 2.CALL( )
- ETH 0.001972297552875749
-
OpenOcean 2.0c7e1209( )
OpenOcean 2.8a6a1e85( )
- ETH 0.000000196439152167
0x922164bbbd36acf9e854acbbf32facc949fcaeef.CALL( )
- ETH 0.000000196439152167
OpenOcean 2.0c7e1209( )
OpenOcean 2.9f865422( )
OpenOcean 2.d1660f99( )
- ETH 0.001972101113723582
0xe1ab782a898bce31dba8387841352efcd96e40a8.CALL( )
- ETH 0.001972101113723582
-
swap[OpenOceanExchange (ln:3689)]
isETH[OpenOceanExchange (ln:3701)]
isETH[OpenOceanExchange (ln:3704)]
_claim[OpenOceanExchange (ln:3705)]
_permit[OpenOceanExchange (ln:3750)]
safeTransferFrom[OpenOceanExchange (ln:3751)]
universalBalanceOf[OpenOceanExchange (ln:3709)]
universalBalanceOf[OpenOceanExchange (ln:3710)]
makeCalls[OpenOceanExchange (ln:3712)]
sub[OpenOceanExchange (ln:3715)]
universalBalanceOf[OpenOceanExchange (ln:3715)]
sub[OpenOceanExchange (ln:3718)]
add[OpenOceanExchange (ln:3718)]
universalBalanceOf[OpenOceanExchange (ln:3718)]
mul[OpenOceanExchange (ln:3719)]
mul[OpenOceanExchange (ln:3719)]
_emitSwapped[OpenOceanExchange (ln:3724)]
File 1 of 8: OpenOceanExchangeProxy
File 2 of 8: TetherToken
File 3 of 8: ProtocolFeesCollector
File 4 of 8: ComposableStablePool
File 5 of 8: Vault
File 6 of 8: WETH9
File 7 of 8: OpenOceanExchange
File 8 of 8: WeightedPool
12345678910111213141516// File: @openzeppelin/contracts/proxy/Proxy.sol// SPDX-License-Identifier: MITpragma solidity >=0.6.0 <0.8.0;/*** @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM* instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to* be specified by overriding the virtual {_implementation} function.** Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a* different contract through the {_delegate} function.** The success and return data of the delegated call will be returned back to the caller of the proxy.*/
File 2 of 8: TetherToken
12345678910111213141516pragma solidity ^0.4.17;/*** @title SafeMath* @dev Math operations with safety checks that throw on error*/library SafeMath {function mul(uint256 a, uint256 b) internal pure returns (uint256) {if (a == 0) {return 0;}uint256 c = a * b;assert(c / a == b);return c;}
File 3 of 8: ProtocolFeesCollector
12345678910111213141516// SPDX-License-Identifier: GPL-3.0-or-later// 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.7.0;pragma experimental ABIEncoderV2;import "../lib/openzeppelin/IERC20.sol";import "../lib/helpers/InputHelpers.sol";import "../lib/helpers/Authentication.sol";
File 4 of 8: ComposableStablePool
12345678910111213141516// SPDX-License-Identifier: GPL-3.0-or-later// 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.7.0;pragma experimental ABIEncoderV2;import "@balancer-labs/v2-interfaces/contracts/pool-stable/StablePoolUserData.sol";import "@balancer-labs/v2-interfaces/contracts/solidity-utils/helpers/BalancerErrors.sol";import "@balancer-labs/v2-interfaces/contracts/standalone-utils/IProtocolFeePercentagesProvider.sol";
File 5 of 8: Vault
12345678910111213141516// SPDX-License-Identifier: GPL-3.0-or-later// 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.7.0;pragma experimental ABIEncoderV2;import "./interfaces/IAuthorizer.sol";import "./interfaces/IWETH.sol";import "./VaultAuthorization.sol";
File 6 of 8: 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 7 of 8: OpenOceanExchange
12345678910111213141516// File: @openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.8.0) (utils/Address.sol)pragma solidity ^0.8.1;/*** @dev Collection of functions related to the address type*/library AddressUpgradeable {/*** @dev Returns true if `account` is a contract.** [IMPORTANT]* ====
File 8 of 8: WeightedPool
12345678910111213141516// SPDX-License-Identifier: GPL-3.0-or-later// 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.7.0;pragma experimental ABIEncoderV2;import "./BaseWeightedPool.sol";import "./WeightedPoolProtocolFees.sol";/**