ETH Price: $3,554.34 (+1.97%)

Transaction Decoder

Block:
18997708 at Jan-13-2024 11:35:47 AM +UTC
Transaction Fee:
0.00247500570763222 ETH $8.80
Gas Used:
157,444 Gas / 15.719911255 Gwei

Emitted Events:

157 WETH9.Deposit( dst=[Receiver] UniversalRouter, wad=270000000000000000 )
158 WETH9.Transfer( src=[Receiver] UniversalRouter, dst=UniswapV2Pair, wad=270000000000000000 )
159 TROLLFACE.Transfer( from=UniswapV2Pair, to=[Sender] 0xc4fb550fa8f2a6e5178711e56d5b48dedf897e5e, value=29549773761940948752600531749 )
160 UniswapV2Pair.Sync( reserve0=201835047829356798251, reserve1=22126384938787844655400536019356 )
161 UniswapV2Pair.Swap( sender=[Receiver] UniversalRouter, amount0In=270000000000000000, amount1In=0, amount0Out=0, amount1Out=29549773761940948752600531749, to=[Sender] 0xc4fb550fa8f2a6e5178711e56d5b48dedf897e5e )

Account State Difference:

  Address   Before After State Difference Code
2.616297709712331585 Eth2.616313454112331585 Eth0.0000157444
0xB7426bFd...56FfCC286
0xC02aaA39...83C756Cc2 3,272,842.598386746524826175 Eth3,272,842.868386746524826175 Eth0.27
0xc4fb550F...EdF897e5e
0.291107768550907305 Eth
Nonce: 1514
0.018632762843275085 Eth
Nonce: 1515
0.27247500570763222
0xf8ebf484...A6CB2eB3A

Execution Trace

ETH 0.27 UniversalRouter.execute( commands=0x0B08, inputs=[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADvzuRyVsAAA==, AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADvzuRyVsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXmsYy5fOS7A6mHkBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAwCqqObIj/o0KDlxPJ+rZCDx1bMIAAAAAAAAAAAAAAAD46/SEnx+k+vDf8hBqFz06bLLrOg==], deadline=1705146311 )
  • ETH 0.27 WETH9.CALL( )
  • WETH9.transfer( dst=0xB7426bFd2abF64428fA82A71b0D44B056FfCC286, wad=270000000000000000 ) => ( True )
  • TROLLFACE.balanceOf( account=0xc4fb550FA8F2A6e5178711e56D5b48DEdF897e5e ) => ( 0 )
  • UniswapV2Pair.STATICCALL( )
  • WETH9.balanceOf( 0xB7426bFd2abF64428fA82A71b0D44B056FfCC286 ) => ( 201835047829356798251 )
  • UniswapV2Pair.swap( amount0Out=0, amount1Out=29549773761940948752600531749, to=0xc4fb550FA8F2A6e5178711e56D5b48DEdF897e5e, data=0x )
    • TROLLFACE.transfer( recipient=0xc4fb550FA8F2A6e5178711e56D5b48DEdF897e5e, amount=29549773761940948752600531749 ) => ( True )
    • WETH9.balanceOf( 0xB7426bFd2abF64428fA82A71b0D44B056FfCC286 ) => ( 201835047829356798251 )
    • TROLLFACE.balanceOf( account=0xB7426bFd2abF64428fA82A71b0D44B056FfCC286 ) => ( 22126384938787844655400536019356 )
    • TROLLFACE.balanceOf( account=0xc4fb550FA8F2A6e5178711e56D5b48DEdF897e5e ) => ( 29549773761940948752600531749 )
      File 1 of 4: UniversalRouter
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // SPDX-License-Identifier: GPL-3.0-or-later
      pragma solidity ^0.8.17;
      // Command implementations
      import {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 IUniversalRouter
      function execute(bytes calldata commands, bytes[] calldata inputs, uint256 deadline)
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 2 of 4: WETH9
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // 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;
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 3 of 4: UniswapV2Pair
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // File: contracts/interfaces/IUniswapV2Pair.sol
      pragma 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);
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 4 of 4: TROLLFACE
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // SPDX-License-Identifier: MIT
      pragma solidity =0.8.16;
      pragma experimental ABIEncoderV2;
      abstract contract Context {
      function _msgSender() internal view virtual returns (address) {
      return msg.sender;
      }
      function _msgData() internal view virtual returns (bytes calldata) {
      return msg.data;
      }
      }
      abstract contract Ownable is Context {
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX