Transaction Hash:
Block:
20814614 at Sep-23-2024 04:55:47 PM +UTC
Transaction Fee:
0.003861594480473334 ETH
$9.94
Gas Used:
164,406 Gas / 23.488160289 Gwei
Emitted Events:
503 |
WETH9.Deposit( dst=[Receiver] UniversalRouter, wad=10000000000000000 )
|
504 |
WETH9.Transfer( src=[Receiver] UniversalRouter, dst=UniswapV2Pair, wad=10000000000000000 )
|
505 |
HARAMBE.Transfer( from=UniswapV2Pair, to=[Receiver] UniversalRouter, value=33552705558654995141258302542 )
|
506 |
UniswapV2Pair.Sync( reserve0=19430636764861612392705938408895, reserve1=5783705736099689298 )
|
507 |
UniswapV2Pair.Swap( sender=[Receiver] UniversalRouter, amount0In=0, amount1In=10000000000000000, amount0Out=33552705558654995141258302542, amount1Out=0, to=[Receiver] UniversalRouter )
|
508 |
HARAMBE.Transfer( from=[Receiver] UniversalRouter, to=FeeCollector, value=83881763896637487853145756 )
|
509 |
HARAMBE.Transfer( from=[Receiver] UniversalRouter, to=[Sender] 0xc4fb550fa8f2a6e5178711e56d5b48dedf897e5e, value=33468823794758357653405156786 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x244f09d9...6517AB9A4 | |||||
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 13.412205937254443194 Eth | 13.412213664336443194 Eth | 0.000007727082 | |
0xA1E5F330...f51168979 | |||||
0xC02aaA39...83C756Cc2 | 2,896,419.547227152576831432 Eth | 2,896,419.557227152576831432 Eth | 0.01 | ||
0xc4fb550F...EdF897e5e |
0.016476458505865127 Eth
Nonce: 1590
|
0.002614864025391793 Eth
Nonce: 1591
| 0.013861594480473334 |
Execution Trace
ETH 0.01
UniversalRouter.execute( commands=0x0B080604, inputs=[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI4byb8EAAA==, AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI4byb8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAakny1TBxGjpzULwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAwCqqObIj/o0KDlxPJ+rZCDx1bMIAAAAAAAAAAAAAAAAkTwnZKXHQOneapm0xBXmmUXq5pA==, AAAAAAAAAAAAAAAAJE8J2Slx0Dp3mqZtMQV5plF6uaQAAAAAAAAAAAAAAAAAAAD+4ToQOhDVk7muBrPgXy5+HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ, AAAAAAAAAAAAAAAAJE8J2Slx0Dp3mqZtMQV5plF6uaQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAagXsdzdcVvZ23fkH], deadline=1727111099 )
- ETH 0.01
WETH9.CALL( )
-
WETH9.transfer( dst=0xA1E5F3309a2B4df4584c558643c1b60f51168979, wad=10000000000000000 ) => ( True )
-
HARAMBE.balanceOf( account=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD ) => ( 0 )
-
UniswapV2Pair.STATICCALL( )
-
WETH9.balanceOf( 0xA1E5F3309a2B4df4584c558643c1b60f51168979 ) => ( 5783705736099689298 )
UniswapV2Pair.swap( amount0Out=33552705558654995141258302542, amount1Out=0, to=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD, data=0x )
-
HARAMBE.transfer( recipient=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD, amount=33552705558654995141258302542 ) => ( True )
-
HARAMBE.balanceOf( account=0xA1E5F3309a2B4df4584c558643c1b60f51168979 ) => ( 19430636764861612392705938408895 )
-
WETH9.balanceOf( 0xA1E5F3309a2B4df4584c558643c1b60f51168979 ) => ( 5783705736099689298 )
-
-
HARAMBE.balanceOf( account=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD ) => ( 33552705558654995141258302542 )
-
HARAMBE.balanceOf( account=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD ) => ( 33552705558654995141258302542 )
-
HARAMBE.transfer( recipient=0x000000fee13a103A10D593b9AE06b3e05F2E7E1c, amount=83881763896637487853145756 ) => ( True )
-
HARAMBE.balanceOf( account=0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD ) => ( 33468823794758357653405156786 )
-
HARAMBE.transfer( recipient=0xc4fb550FA8F2A6e5178711e56D5b48DEdF897e5e, amount=33468823794758357653405156786 ) => ( True )
execute[UniversalRouter (ln:16)]
execute[UniversalRouter (ln:21)]
execute[UniversalRouter (ln:21)]
File 1 of 5: UniversalRouter
File 2 of 5: WETH9
File 3 of 5: UniswapV2Pair
File 4 of 5: HARAMBE
File 5 of 5: FeeCollector
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 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 3 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 4 of 5: HARAMBE
12345678910111213141516// Sources flattened with hardhat v2.7.0 https://hardhat.org// File @openzeppelin/contracts/utils/Context.sol@v4.4.0// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.0 (utils/Context.sol)pragma solidity ^0.8.0;/*** @dev Provides information about the current execution context, including the* sender of the transaction and its data. While these are generally available* via msg.sender and msg.data, they should not be accessed in such a direct* manner, since when dealing with meta-transactions the account sending and* paying for execution may not be the actual sender (as far as an application* is concerned).
File 5 of 5: FeeCollector
12345678910111213141516// SPDX-License-Identifier: GPL-2.0-or-laterpragma solidity ^0.8.0;import {Owned} from "solmate/auth/Owned.sol";import {ERC20} from "solmate/tokens/ERC20.sol";import {SafeTransferLib} from "solmate/utils/SafeTransferLib.sol";import {IFeeCollector} from "./interfaces/IFeeCollector.sol";import {IPermit2} from "./external/IPermit2.sol";/// @notice The collector of protocol fees that will be used to swap and send to a fee recipient address.contract FeeCollector is Owned, IFeeCollector {using SafeTransferLib for ERC20;address public universalRouter;ERC20 public immutable feeToken;IPermit2 public immutable permit2;uint256 public constant MAX_APPROVAL_AMOUNT = type(uint256).max;uint160 public constant MAX_PERMIT2_APPROVAL_AMOUNT = type(uint160).max;uint48 public constant MAX_PERMIT2_DEADLINE = type(uint48).max;