Transaction Hash:
Block:
22555568 at May-24-2025 10:06:35 PM +UTC
Transaction Fee:
0.000105051355577883 ETH
$0.27
Gas Used:
196,209 Gas / 0.535405387 Gwei
Emitted Events:
889 |
Permit2.Permit( owner=[Sender] 0xf962c872ff7c9ef1fe55e88fdb3623bad6d5691c, token=TetherToken, spender=[Receiver] UniversalRouter, amount=125255745, expiration=1750716288, nonce=8 )
|
890 |
TetherToken.Transfer( from=[Sender] 0xf962c872ff7c9ef1fe55e88fdb3623bad6d5691c, to=UniswapV2Pair, value=125255745 )
|
891 |
WETH9.Transfer( src=UniswapV2Pair, dst=UniswapV2Pair, wad=49219383671934084 )
|
892 |
UniswapV2Pair.Sync( reserve0=11554729505889424130238, reserve1=29316915839591 )
|
893 |
UniswapV2Pair.Swap( sender=[Receiver] UniversalRouter, amount0In=0, amount1In=125255745, amount0Out=49219383671934084, amount1Out=0, to=UniswapV2Pair )
|
894 |
PAALAI.Transfer( from=UniswapV2Pair, to=[Sender] 0xf962c872ff7c9ef1fe55e88fdb3623bad6d5691c, value=857436357562 )
|
895 |
UniswapV2Pair.Sync( reserve0=16463774091352849, reserve1=942283352709243614712 )
|
896 |
UniswapV2Pair.Swap( sender=[Receiver] UniversalRouter, amount0In=0, amount1In=49219383671934084, amount0Out=857436357562, amount1Out=0, to=[Sender] 0xf962c872ff7c9ef1fe55e88fdb3623bad6d5691c )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x00000000...43aC78BA3 | (Uniswap Protocol: Permit2) | ||||
0x0d4a11d5...0471f1852 | |||||
0x14feE680...b95D10e16 | |||||
0x2a6c340b...05ea9259f | |||||
0x4838B106...B0BAD5f97
Miner
| (Titan Builder) | 23.635598316098530826 Eth | 23.635609687328927573 Eth | 0.000011371230396747 | |
0xC02aaA39...83C756Cc2 | |||||
0xdAC17F95...13D831ec7 | |||||
0xF962C872...ad6D5691c |
0.028957422724636826 Eth
Nonce: 72
|
0.028852371369058943 Eth
Nonce: 73
| 0.000105051355577883 |
Execution Trace
UniversalRouter.execute( commands=0x0A08, inputs=[AAAAAAAAAAAAAAAA2sF/lY0u5SOiIGIGmUWXwT2DHscAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3dAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoWc+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAA/yRo6/XA5XNSWxkfVpsydSyt/rQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoMkmIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQUb2XPsnGc9sl9DQjHyN3O4KwOLdOMOXoSX0zFgi2EOCJn5XgQJ5kimQ6SfI66fSi0XQEMuOYacrexiflgcbZ3QcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==, AAAAAAAAAAAAAAAA+WLIcv98nvH+VeiP2zYjutbVaRwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3dAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMZMPUckAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAA2sF/lY0u5SOiIGIGmUWXwT2DHscAAAAAAAAAAAAAAADAKqo5siP+jQoOXE8n6tkIPHVswgAAAAAAAAAAAAAAABT+5oBpCQC6DMz8dq1w/RuV0Q4W], deadline=1748126161 )
Permit2.permit( owner=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c, permitSingle=[{name:details, type:tuple, order:1, indexed:false, value:[{name:token, type:address, order:1, indexed:false, value:0xdAC17F958D2ee523a2206206994597C13D831ec7, valueString:0xdAC17F958D2ee523a2206206994597C13D831ec7}, {name:amount, type:uint160, order:2, indexed:false, value:125255745, valueString:125255745}, {name:expiration, type:uint48, order:3, indexed:false, value:1750716288, valueString:1750716288}, {name:nonce, type:uint48, order:4, indexed:false, value:8, valueString:8}], valueString:[{name:token, type:address, order:1, indexed:false, value:0xdAC17F958D2ee523a2206206994597C13D831ec7, valueString:0xdAC17F958D2ee523a2206206994597C13D831ec7}, {name:amount, type:uint160, order:2, indexed:false, value:125255745, valueString:125255745}, {name:expiration, type:uint48, order:3, indexed:false, value:1750716288, valueString:1750716288}, {name:nonce, type:uint48, order:4, indexed:false, value:8, valueString:8}]}, {name:spender, type:address, order:2, indexed:false, value:0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD, valueString:0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD}, {name:sigDeadline, type:uint256, order:3, indexed:false, value:1748126088, valueString:1748126088}], signature=0x46F65CFB2719CF6C97D0D08C7C8DDCEE0AC0E2DD38C397A125F4CC5822D84382267E57810279922990E927C8EBA7D28B45D010CB8E61A72B7B189F96071B67741C )
-
Null: 0x000...001.6dd3a6c0( )
-
Permit2.transferFrom( from=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c, to=0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852, amount=125255745, token=0xdAC17F958D2ee523a2206206994597C13D831ec7 )
-
TetherToken.transferFrom( _from=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c, _to=0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852, _value=125255745 )
-
-
PAALAI.balanceOf( account=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c ) => ( 46 )
-
UniswapV2Pair.STATICCALL( )
-
TetherToken.balanceOf( who=0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852 ) => ( 29316915839591 )
UniswapV2Pair.swap( amount0Out=49219383671934084, amount1Out=0, to=0x2a6c340bCbb0a79D3deecD3bc5cBc2605ea9259f, data=0x )
-
UniswapV2Pair.STATICCALL( )
-
WETH9.balanceOf( 0x2a6c340bCbb0a79D3deecD3bc5cBc2605ea9259f ) => ( 942283352709243614712 )
UniswapV2Pair.swap( amount0Out=857436357562, amount1Out=0, to=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c, data=0x )
-
PAALAI.balanceOf( account=0xF962C872fF7c9EF1Fe55E88fdB3623bad6D5691c ) => ( 857436357608 )
execute[UniversalRouter (ln:16)]
execute[UniversalRouter (ln:21)]
execute[UniversalRouter (ln:21)]
File 1 of 7: UniversalRouter
File 2 of 7: Permit2
File 3 of 7: UniswapV2Pair
File 4 of 7: TetherToken
File 5 of 7: UniswapV2Pair
File 6 of 7: WETH9
File 7 of 7: PAALAI
12345678910111213141516// SPDX-License-Identifier: GPL-3.0-or-laterpragma solidity ^0.8.17;// Command implementationsimport {Dispatcher} from './base/Dispatcher.sol';import {RewardsCollector} from './base/RewardsCollector.sol';import {RouterParameters, RouterImmutables} from './base/RouterImmutables.sol';import {Commands} from './libraries/Commands.sol';import {IUniversalRouter} from './interfaces/IUniversalRouter.sol';contract UniversalRouter is RouterImmutables, IUniversalRouter, Dispatcher, RewardsCollector {modifier checkDeadline(uint256 deadline) {if (block.timestamp > deadline) revert TransactionDeadlinePassed();_;}constructor(RouterParameters memory params) RouterImmutables(params) {}/// @inheritdoc IUniversalRouterfunction execute(bytes calldata commands, bytes[] calldata inputs, uint256 deadline)
File 2 of 7: Permit2
12345678910111213141516// SPDX-License-Identifier: AGPL-3.0-onlypragma solidity >=0.8.0;/// @notice Modern and gas efficient ERC20 + EIP-2612 implementation./// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol)/// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)/// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.abstract contract ERC20 {/*//////////////////////////////////////////////////////////////EVENTS//////////////////////////////////////////////////////////////*/event Transfer(address indexed from, address indexed to, uint256 amount);event Approval(address indexed owner, address indexed spender, uint256 amount);/*//////////////////////////////////////////////////////////////METADATA STORAGE//////////////////////////////////////////////////////////////*/string public name;
File 3 of 7: 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 4 of 7: 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 5 of 7: 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 6 of 7: 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 7: PAALAI
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.6.0 <0.9.0;interface IERC20 {function totalSupply() external view returns (uint256);function decimals() external view returns (uint8);function symbol() external view returns (string memory);function name() external view returns (string memory);function getOwner() external view returns (address);function balanceOf(address account) external view returns (uint256);function transfer(address recipient, uint256 amount) external returns (bool);function allowance(address _owner, address spender) external view returns (uint256);function approve(address spender, uint256 amount) external returns (bool);function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);event Transfer(address indexed from, address indexed to, uint256 value);event Approval(address indexed owner, address indexed spender, uint256 value);