ETH Price: $2,961.62 (-0.09%)

Transaction Decoder

Block:
21942924 at Feb-28-2025 06:02:23 AM +UTC
Transaction Fee:
0.000440185851242192 ETH $1.30
Gas Used:
177,232 Gas / 2.483670281 Gwei

Emitted Events:

253 WETH9.Deposit( dst=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, wad=1000000000000000 )
254 WETH9.Transfer( src=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, dst=UniswapV2Pair, wad=1000000000000000 )
255 SushiToken.Transfer( from=UniswapV2Pair, to=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, value=2830720961962331524 )
256 UniswapV2Pair.Sync( reserve0=7097086925908658971335, reserve1=2500644352167372259 )
257 UniswapV2Pair.Swap( sender=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, amount0In=0, amount1In=1000000000000000, amount0Out=2830720961962331524, amount1Out=0, to=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71 )
258 0x85cd07ea01423b1e937929b44e4ad8c40bbb5e71.0x1bf1122521093cffed0b7f29833cd231d885bae58dceb074e411a1fbd94824bd( 0x1bf1122521093cffed0b7f29833cd231d885bae58dceb074e411a1fbd94824bd, 0x000000000000000000000000ad27827c312cd5e71311d68e180a9872d42de23d, 0x000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, 0x0000000000000000000000000000000000000000000000000000000000000000, 00000000000000000000000085cd07ea01423b1e937929b44e4ad8c40bbb5e71, 0000000000000000000000006b3595068778dd592e39a122f4f5a5cf09c90fe2, 00000000000000000000000000000000000000000000000000038d7ea4c68000, 00000000000000000000000000000000000000000000000027167516a9096933, 0000000000000000000000000000000000000000000000002748bdb794044d84, fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd84 )
259 SushiToken.Transfer( from=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, to=TokenChomper, value=7041418392881301 )
260 SushiToken.Transfer( from=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, to=[Sender] 0xcbe83aea7671ea0cf96206681182476c221dfc15, value=2823679543569450223 )

Account State Difference:

  Address   Before After State Difference Code
0x6B359506...F09C90fE2
0x6cbefa95...08e2498e9
(beaverbuild)
8.230175044111347529 Eth8.230263660111347529 Eth0.000088616
0xC02aaA39...83C756Cc2 2,900,800.860514686730526715 Eth2,900,800.861514686730526715 Eth0.001
0xcBE83AEA...C221Dfc15
0.017780255441621159 Eth
Nonce: 0
0.016340069590378967 Eth
Nonce: 1
0.001440185851242192

Execution Trace

ETH 0.001 RedSnwapper.snwap( tokenIn=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, amountIn=1000000000000000, recipient=0xcBE83AEA7671eA0Cf96206681182476C221Dfc15, tokenOut=0x6B3595068778DD592e39A122f4f5a5cF09C90fE2, amountOutMin=2809525938759639198, executor=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, executorData=0xEE623204000000000000000000000000CA226BD9C754F1283123D32B2A7CF62A722F8ADA00000000000000000000000000000000000000000000000000190421FA05C895000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000038D7EA4C680000000000000000000000000006B3595068778DD592E39A122F4F5A5CF09C90FE20000000000000000000000000000000000000000000000002748BDB79404500000000000000000000000000000000000000000000000000027167516A9096933000000000000000000000000CBE83AEA7671EA0CF96206681182476C221DFC150000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000700301FFFF02016CBEFA95E42960E579C2A3058C05C6A08E2498E9C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC204C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2006CBEFA95E42960E579C2A3058C05C6A08E2498E90085CD07EA01423B1E937929B44E4AD8C40BBB5E71000BB800000000000000000000000000000000 ) => ( amountOut=2823679543569450223 )
  • SushiToken.balanceOf( account=0xcBE83AEA7671eA0Cf96206681182476C221Dfc15 ) => ( 0 )
  • ETH 0.001 0xad27827c312cd5e71311d68e180a9872d42de23d.1cff79cd( )
    • ETH 0.001 0x85cd07ea01423b1e937929b44e4ad8c40bbb5e71.ee623204( )
      • SushiToken.balanceOf( account=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71 ) => ( 2 )
      • ETH 0.001 WETH9.CALL( )
      • WETH9.transfer( dst=0x6cbefa95e42960E579C2A3058C05C6A08e2498e9, wad=1000000000000000 ) => ( True )
      • UniswapV2Pair.STATICCALL( )
      • WETH9.balanceOf( 0x6cbefa95e42960E579C2A3058C05C6A08e2498e9 ) => ( 2500644352167372259 )
      • UniswapV2Pair.swap( amount0Out=2830720961962331524, amount1Out=0, to=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, data=0x )
        • SushiToken.transfer( recipient=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71, amount=2830720961962331524 ) => ( True )
        • SushiToken.balanceOf( account=0x6cbefa95e42960E579C2A3058C05C6A08e2498e9 ) => ( 7097086925908658971335 )
        • WETH9.balanceOf( 0x6cbefa95e42960E579C2A3058C05C6A08e2498e9 ) => ( 2500644352167372259 )
        • SushiToken.balanceOf( account=0x85CD07Ea01423b1E937929B44E4Ad8c40BbB5E71 ) => ( 2830720961962331526 )
        • SushiToken.transfer( recipient=0xca226bd9c754F1283123d32B2a7cF62a722f8ADa, amount=7041418392881301 ) => ( True )
        • SushiToken.transfer( recipient=0xcBE83AEA7671eA0Cf96206681182476C221Dfc15, amount=2823679543569450223 ) => ( True )
        • SushiToken.balanceOf( account=0xcBE83AEA7671eA0Cf96206681182476C221Dfc15 ) => ( 2823679543569450223 )
          File 1 of 5: RedSnwapper
          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          // SPDX-License-Identifier: MIT
          // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/draft-IERC20Permit.sol)
          pragma solidity ^0.8.0;
          /**
          * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in
          * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].
          *
          * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by
          * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't
          * need to send a transaction, and thus is not required to hold Ether at all.
          */
          interface IERC20Permit {
          /**
          * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,
          * given ``owner``'s signed approval.
          *
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

          File 2 of 5: 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 5: UniswapV2Pair
          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          // SPDX-License-Identifier: MIT
          pragma solidity =0.6.12;
          import './UniswapV2ERC20.sol';
          import './libraries/Math.sol';
          import './libraries/UQ112x112.sol';
          import './interfaces/IERC20.sol';
          import './interfaces/IUniswapV2Factory.sol';
          import './interfaces/IUniswapV2Callee.sol';
          interface IMigrator {
          // Return the desired amount of liquidity token that the migrator wants.
          function desiredLiquidity() external view returns (uint256);
          }
          contract UniswapV2Pair is UniswapV2ERC20 {
          using SafeMathUniswap for uint;
          using UQ112x112 for uint224;
          uint public constant MINIMUM_LIQUIDITY = 10**3;
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

          File 4 of 5: SushiToken
          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          // File: @openzeppelin/contracts/GSN/Context.sol
          pragma solidity ^0.6.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 GSN meta-transactions the account sending and
          * paying for execution may not be the actual sender (as far as an application
          * is concerned).
          *
          * This contract is only required for intermediate, library-like contracts.
          */
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

          File 5 of 5: TokenChomper
          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.0;
          import "/interfaces/IRouteProcessor.sol";
          import "interfaces/IERC20.sol";
          import "./Auth.sol";
          /// @title TokenChomper for selling accumulated tokens for weth or other base assets
          /// @notice This contract will be used for fee collection and breakdown
          /// @dev Uses Auth contract for 2-step owner process and trust operators to guard functions
          contract TokenChomper is Auth {
          address public immutable weth;
          IRouteProcessor public routeProcessor;
          bytes4 private constant TRANSFER_SELECTOR = bytes4(keccak256(bytes('transfer(address,uint256)')));
          error TransferFailed();
          constructor(
          address _operator,
          address _routeProcessor,
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX