ETH Price: $2,754.35 (-0.55%)

Transaction Decoder

Block:
22466445 at May-12-2025 09:54:23 AM +UTC
Transaction Fee:
0.00139289753646366 ETH $3.84
Gas Used:
247,861 Gas / 5.61967206 Gwei

Account State Difference:

  Address   Before After State Difference Code
0x36CcD258...72F7D3A22
0x5bE52d72...6C31e02e3
0.87569079138017648 Eth
Nonce: 77
0.87429789384371282 Eth
Nonce: 78
0.00139289753646366
0x86945557...D5f479aEB
(beaverbuild)
7.670153796661738695 Eth7.670154216042550695 Eth0.000000419380812
0xAccfAc23...049B4f947
0xd1730D78...27c114Db0
0xd35AeE6B...0E71194A6

Execution Trace

PowerPod.delegate( delegatee=0x1113DB6080ea2B9f92B2e9937ea712b3d730b3F1 )
  • St1inch.podBalanceOf( pod=0xAccfAc2339e16DC80c50d2fa81b5c2B049B4f947, account=0x5bE52d7225D601647877958C362c6a36C31e02e3 ) => ( 7005318027796426465570920 )
  • DelegatedShare.burn( account=0x5bE52d7225D601647877958C362c6a36C31e02e3, amount=7005318027796426465570920 )
    • MultiFarmingPod.updateBalances( from=0x5bE52d7225D601647877958C362c6a36C31e02e3, to=0x0000000000000000000000000000000000000000, amount=7005318027796426465570920 )
    • DelegatedShare.mint( account=0x5bE52d7225D601647877958C362c6a36C31e02e3, amount=7005318027796426465570920 )
    • DelegatedShare.addDefaultFarmIfNeeded( account=0x5bE52d7225D601647877958C362c6a36C31e02e3, farm=0xd1730D781017A71788F1Ae95689cDBD27c114Db0 )
      • MultiFarmingPod.updateBalances( from=0x0000000000000000000000000000000000000000, to=0x5bE52d7225D601647877958C362c6a36C31e02e3, amount=7005318027796426465570920 )
        File 1 of 7: PowerPod
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/access/Ownable.sol";
        import "@1inch/erc20-pods/contracts/ERC20Pods.sol";
        import "./interfaces/IDelegatedShare.sol";
        contract DelegatedShare is IDelegatedShare, ERC20Pods {
        error ApproveDisabled();
        error TransferDisabled();
        error NotOwner();
        address immutable private _owner;
        modifier onlyOwner {
        if (msg.sender != _owner) revert NotOwner();
        _;
        }
        constructor(
        string memory name,
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 2 of 7: Proxy
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        pragma solidity ^0.5.3;
        /// @title Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
        /// @author Stefan George - <stefan@gnosis.io>
        /// @author Richard Meissner - <richard@gnosis.io>
        contract Proxy {
        // masterCopy always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
        // To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`
        address internal masterCopy;
        /// @dev Constructor function sets address of master copy contract.
        /// @param _masterCopy Master copy address.
        constructor(address _masterCopy)
        public
        {
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 3 of 7: DelegatedShare
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
        import "@1inch/solidity-utils/contracts/libraries/AddressSet.sol";
        import "./interfaces/IERC20Pods.sol";
        import "./interfaces/IPod.sol";
        import "./libs/ReentrancyGuard.sol";
        abstract contract ERC20Pods is ERC20, IERC20Pods, ReentrancyGuardExt {
        using AddressSet for AddressSet.Data;
        using AddressArray for AddressArray.Data;
        using ReentrancyGuardLib for ReentrancyGuardLib.Data;
        error PodAlreadyAdded();
        error PodNotFound();
        error InvalidPodAddress();
        error PodsLimitReachedForAccount();
        error InsufficientGas();
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 4 of 7: DelegatedShare
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
        import "@1inch/solidity-utils/contracts/libraries/AddressSet.sol";
        import "./interfaces/IERC20Pods.sol";
        import "./interfaces/IPod.sol";
        import "./libs/ReentrancyGuard.sol";
        abstract contract ERC20Pods is ERC20, IERC20Pods, ReentrancyGuardExt {
        using AddressSet for AddressSet.Data;
        using AddressArray for AddressArray.Data;
        using ReentrancyGuardLib for ReentrancyGuardLib.Data;
        error PodAlreadyAdded();
        error PodNotFound();
        error InvalidPodAddress();
        error PodsLimitReachedForAccount();
        error InsufficientGas();
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 5 of 7: St1inch
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
        import "@1inch/solidity-utils/contracts/libraries/AddressSet.sol";
        import "./interfaces/IERC20Pods.sol";
        import "./interfaces/IPod.sol";
        import "./libs/ReentrancyGuard.sol";
        abstract contract ERC20Pods is ERC20, IERC20Pods, ReentrancyGuardExt {
        using AddressSet for AddressSet.Data;
        using AddressArray for AddressArray.Data;
        using ReentrancyGuardLib for ReentrancyGuardLib.Data;
        error PodAlreadyAdded();
        error PodNotFound();
        error InvalidPodAddress();
        error PodsLimitReachedForAccount();
        error InsufficientGas();
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 6 of 7: MultiFarmingPod
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
        import "@1inch/solidity-utils/contracts/libraries/AddressSet.sol";
        import "./interfaces/IERC20Pods.sol";
        import "./interfaces/IPod.sol";
        import "./libs/ReentrancyGuard.sol";
        abstract contract ERC20Pods is ERC20, IERC20Pods, ReentrancyGuardExt {
        using AddressSet for AddressSet.Data;
        using AddressArray for AddressArray.Data;
        using ReentrancyGuardLib for ReentrancyGuardLib.Data;
        error PodAlreadyAdded();
        error PodNotFound();
        error InvalidPodAddress();
        error PodsLimitReachedForAccount();
        error InsufficientGas();
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 7 of 7: MultiFarmingPod
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity ^0.8.0;
        import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
        interface IERC20Pods is IERC20 {
        event PodAdded(address account, address pod);
        event PodRemoved(address account, address pod);
        function hasPod(address account, address pod) external view returns(bool);
        function podsCount(address account) external view returns(uint256);
        function podAt(address account, uint256 index) external view returns(address);
        function pods(address account) external view returns(address[] memory);
        function podBalanceOf(address pod, address account) external view returns(uint256);
        function addPod(address pod) external;
        function removePod(address pod) external;
        function removeAllPods() external;
        }
        // SPDX-License-Identifier: MIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX