ETH Price: $2,766.11 (+7.13%)

Transaction Decoder

Block:
21263305 at Nov-25-2024 07:33:23 AM +UTC
Transaction Fee:
0.001790703973952091 ETH $4.95
Gas Used:
182,061 Gas / 9.835736231 Gwei

Emitted Events:

5 ValidatorShareProxy.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x0000000000000000000000000000000000000000000000000000000000000000, 0x000000000000000000000000ea7864a97d9d919a69bc9f55e5b5c1fc0a6203b1, 000000000000000000000000000000000000000000000009d92a7a6a2b139470 )
6 StakingInfo.ShareMinted( validatorId=118, user=[Sender] 0xea7864a97d9d919a69bc9f55e5b5c1fc0a6203b1, amount=181669151115045999728, tokens=181669151115045999728 )
7 StakingInfo.StakeUpdate( validatorId=118, nonce=1638, newAmount=1348968731888883753695269 )
8 StakingInfo.DelegatorRestaked( validatorId=118, user=[Sender] 0xea7864a97d9d919a69bc9f55e5b5c1fc0a6203b1, totalStaked=11315338613200835085141 )

Account State Difference:

  Address   Before After State Difference Code
(Lido: Execution Layer Rewards Vault)
85.607737529052901555 Eth85.608192681552901555 Eth0.0004551525
0x3EDBF7E0...409364269
0x5e3Ef299...e8c13D908
(Polygon (Matic): PoS Staking Contract)
0xa59C847B...A71A7512B
(Polygon (Matic): Staking Info)
0xEa7864a9...C0A6203B1
1.45091258120927889 Eth
Nonce: 152
1.449121877235326799 Eth
Nonce: 153
0.001790703973952091

Execution Trace

ValidatorShareProxy.CALL( )
  • Registry.STATICCALL( )
  • ValidatorShare.DELEGATECALL( )
    • StakeManagerProxy.7ed4b27c( )
    • StakeManagerProxy.7f4b4323( )
      • StakeManager.delegatedAmount( validatorId=118 ) => ( 1346237062737768707695541 )
      • StakeManagerProxy.9ff11500( )
      • StakingInfo.logShareMinted( validatorId=118, user=0xEa7864a97D9d919A69bc9F55e5B5c1FC0A6203B1, amount=181669151115045999728, tokens=181669151115045999728 )
        • Registry.STATICCALL( )
        • StakeManagerProxy.35aa2e44( )
          • StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=11311907585743554826550, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1346418731888883753695269, initialRewardPerStake=2970167707276277576120082 )
          • StakingInfo.logStakeUpdate( validatorId=118 )
            • Registry.STATICCALL( )
            • StakeManagerProxy.35aa2e44( )
              • StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=11311907585743554826550, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1346418731888883753695269, initialRewardPerStake=2970167707276277576120082 )
              • Registry.STATICCALL( )
              • StakeManagerProxy.35aa2e44( )
                • StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=11311907585743554826550, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1346418731888883753695269, initialRewardPerStake=2970167707276277576120082 )
                • ValidatorShareProxy.STATICCALL( )
                  • Registry.STATICCALL( )
                  • ValidatorShare.DELEGATECALL( )
                  • StakeManagerProxy.7f4b4323( )
                    • StakeManager.delegatedAmount( validatorId=118 ) => ( 1346418731888883753695269 )
                    • StakingInfo.logDelegatorRestaked( validatorId=118, user=0xEa7864a97D9d919A69bc9F55e5B5c1FC0A6203B1, totalStaked=11315338613200835085141 )
                      • Registry.STATICCALL( )
                      • StakeManagerProxy.35aa2e44( )
                        • StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=11311907585743554826550, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1346418731888883753695269, initialRewardPerStake=2970167707276277576120082 )
                          File 1 of 6: ValidatorShareProxy
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // File: openzeppelin-solidity/contracts/ownership/Ownable.sol
                          pragma solidity ^0.5.2;
                          /**
                          * @title Ownable
                          * @dev The Ownable contract has an owner address, and provides basic authorization control
                          * functions, this simplifies the implementation of "user permissions".
                          */
                          contract Ownable {
                          address private _owner;
                          event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
                          /**
                          * @dev The Ownable constructor sets the original `owner` of the contract to the sender
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 2 of 6: StakingInfo
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // File: contracts/common/governance/IGovernance.sol
                          pragma solidity ^0.5.2;
                          interface IGovernance {
                          function update(address target, bytes calldata data) external;
                          }
                          // File: contracts/common/governance/Governable.sol
                          pragma solidity ^0.5.2;
                          contract Governable {
                          IGovernance public governance;
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 3 of 6: Registry
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          /**
                          Matic network contracts
                          */
                          pragma solidity ^0.5.2;
                          interface IGovernance {
                          function update(address target, bytes calldata data) external;
                          }
                          contract Governable {
                          IGovernance public governance;
                          constructor(address _governance) public {
                          governance = IGovernance(_governance);
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 4 of 6: ValidatorShare
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          pragma solidity 0.5.17;
                          import {Registry} from "../../common/Registry.sol";
                          import {ERC20NonTradable} from "../../common/tokens/ERC20NonTradable.sol";
                          import {ERC20} from "openzeppelin-solidity/contracts/token/ERC20/ERC20.sol";
                          import {StakingInfo} from "./../StakingInfo.sol";
                          import {EventsHub} from "./../EventsHub.sol";
                          import {OwnableLockable} from "../../common/mixin/OwnableLockable.sol";
                          import {IStakeManager} from "../stakeManager/IStakeManager.sol";
                          import {IValidatorShare} from "./IValidatorShare.sol";
                          import {Initializable} from "../../common/mixin/Initializable.sol";
                          import {IERC20Permit} from "./../../common/misc/IERC20Permit.sol";
                          contract ValidatorShare is IValidatorShare, ERC20NonTradable, OwnableLockable, Initializable {
                          struct DelegatorUnbond {
                          uint256 shares;
                          uint256 withdrawEpoch;
                          }
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 5 of 6: StakeManagerProxy
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // File: openzeppelin-solidity/contracts/ownership/Ownable.sol
                          pragma solidity ^0.5.2;
                          /**
                          * @title Ownable
                          * @dev The Ownable contract has an owner address, and provides basic authorization control
                          * functions, this simplifies the implementation of "user permissions".
                          */
                          contract Ownable {
                          address private _owner;
                          event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
                          /**
                          * @dev The Ownable constructor sets the original `owner` of the contract to the sender
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 6 of 6: StakeManager
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          pragma solidity 0.5.17;
                          import {IERC20} from "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol";
                          import {Math} from "openzeppelin-solidity/contracts/math/Math.sol";
                          import {SafeMath} from "openzeppelin-solidity/contracts/math/SafeMath.sol";
                          import {ECVerify} from "../../common/lib/ECVerify.sol";
                          import {Merkle} from "../../common/lib/Merkle.sol";
                          import {GovernanceLockable} from "../../common/mixin/GovernanceLockable.sol";
                          import {DelegateProxyForwarder} from "../../common/misc/DelegateProxyForwarder.sol";
                          import {Registry} from "../../common/Registry.sol";
                          import {IStakeManager} from "./IStakeManager.sol";
                          import {IValidatorShare} from "../validatorShare/IValidatorShare.sol";
                          import {ValidatorShare} from "../validatorShare/ValidatorShare.sol";
                          import {StakingInfo} from "../StakingInfo.sol";
                          import {StakingNFT} from "./StakingNFT.sol";
                          import {ValidatorShareFactory} from "../validatorShare/ValidatorShareFactory.sol";
                          import {StakeManagerStorage} from "./StakeManagerStorage.sol";
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX