Transaction Hash:
Block:
21670418 at Jan-21-2025 04:16:35 AM +UTC
Transaction Fee:
0.003395538819014738 ETH
$8.64
Gas Used:
295,966 Gas / 11.472732743 Gwei
Emitted Events:
57 |
PolygonEcosystemToken.Transfer( from=StakeManagerProxy, to=[Sender] 0x39746f82e76a8b22643b8a6356d7ccf59311de61, value=651219739425437856902 )
|
58 |
StakingInfo.DelegatorClaimedRewards( validatorId=118, user=[Sender] 0x39746f82e76a8b22643b8a6356d7ccf59311de61, rewards=651219739425437856902 )
|
59 |
ValidatorShareProxy.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00000000000000000000000039746f82e76a8b22643b8a6356d7ccf59311de61, 0x0000000000000000000000000000000000000000000000000000000000000000, 00000000000000000000000000000000000000000000010ce1d3d8cb31800000 )
|
60 |
EventsHubProxy.0x502f5a6697a92e602c626b931a4a771fef4360eb9cece7bf906f10c5cec96aaa( 0x502f5a6697a92e602c626b931a4a771fef4360eb9cece7bf906f10c5cec96aaa, 0x0000000000000000000000000000000000000000000000000000000000000076, 0x00000000000000000000000039746f82e76a8b22643b8a6356d7ccf59311de61, 0x00000000000000000000000000000000000000000000010ce1d3d8cb31800000, 00000000000000000000000000000000000000000000010ce1d3d8cb31800000, 0000000000000000000000000000000000000000000000000000000000000001 )
|
61 |
StakingInfo.StakeUpdate( validatorId=118, nonce=1672, newAmount=1341261163900065815715661 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x39746f82...59311DE61 |
0.009422762042081305 Eth
Nonce: 11
|
0.006027223223066567 Eth
Nonce: 12
| 0.003395538819014738 | ||
0x3EDBF7E0...409364269 | |||||
0x455e53CB...44aFFC3F6 | |||||
0x4838B106...B0BAD5f97
Miner
| (Titan Builder) | 10.634478905695770948 Eth | 10.635218820695770948 Eth | 0.000739915 | |
0x5e3Ef299...e8c13D908 | (Polygon (Matic): PoS Staking Contract) | ||||
0xa59C847B...A71A7512B | (Polygon (Matic): Staking Info) |
Execution Trace
ValidatorShareProxy.e570b78b( )

-
Registry.STATICCALL( )
ValidatorShare.sellVoucher_newPOL( claimAmount=4960000000000000000000, maximumSharesToBurn=4960000000000000000000 )
StakeManagerProxy.7f4b4323( )
-
StakeManager.delegatedAmount( validatorId=118 ) => ( 1343671163900065815715661 )
-
StakeManagerProxy.7ed4b27c( )
-
StakeManager.withdrawDelegatorsReward( validatorId=118 ) => ( 330679088639084506554 )
-
StakeManagerProxy.c7f067cb( )
StakeManager.transferFundsPOL( validatorId=118, amount=651219739425437856902, delegator=0x39746f82E76A8B22643B8a6356D7ccf59311DE61 ) => ( True )
-
PolygonEcosystemToken.transfer( to=0x39746f82E76A8B22643B8a6356D7ccf59311DE61, amount=651219739425437856902 ) => ( True )
-
StakingInfo.logDelegatorClaimRewards( validatorId=118, user=0x39746f82E76A8B22643B8a6356D7ccf59311DE61, rewards=651219739425437856902 )
-
Registry.STATICCALL( )
StakeManagerProxy.35aa2e44( )
-
StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=736892613090335963238, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1343671163900065815715661, initialRewardPerStake=3032505786428492801278939 )
-
-
StakeManagerProxy.9ff11500( )
-
StakeManager.updateValidatorState( validatorId=118, amount=-4960000000000000000000 )
-
StakeManagerProxy.STATICCALL( )
-
StakeManager.DELEGATECALL( )
-
EventsHubProxy.5536b682( )
EventsHub.logShareBurnedWithId( validatorId=118, user=0x39746f82E76A8B22643B8a6356D7ccf59311DE61, amount=4960000000000000000000, tokens=4960000000000000000000, nonce=1 )
-
Registry.STATICCALL( )
StakeManagerProxy.35aa2e44( )
-
StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=736892613090335963238, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1338711163900065815715661, initialRewardPerStake=3032505786428492801278939 )
-
-
StakingInfo.logStakeUpdate( validatorId=118 )
-
Registry.STATICCALL( )
StakeManagerProxy.35aa2e44( )
-
StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=736892613090335963238, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1338711163900065815715661, initialRewardPerStake=3032505786428492801278939 )
-
-
Registry.STATICCALL( )
StakeManagerProxy.35aa2e44( )
-
StakeManager.validators( 118 ) => ( amount=2550000000000000000000, reward=736892613090335963238, activationEpoch=11448, deactivationEpoch=0, jailTime=0, signer=0x5fFD4EFfD8E476C72FddC75BcD31f421001F9Ce6, contractAddress=0x3EDBF7E027D280BCd8126a87f382941409364269, status=1, commissionRate=3, lastCommissionUpdate=40943, delegatorsReward=1, delegatedAmount=1338711163900065815715661, initialRewardPerStake=3032505786428492801278939 )
-
ValidatorShareProxy.STATICCALL( )
-
Registry.STATICCALL( )
-
ValidatorShare.DELEGATECALL( )
-
-
File 1 of 9: ValidatorShareProxy
File 2 of 9: StakeManagerProxy
File 3 of 9: PolygonEcosystemToken
File 4 of 9: StakingInfo
File 5 of 9: EventsHubProxy
File 6 of 9: Registry
File 7 of 9: ValidatorShare
File 8 of 9: StakeManager
File 9 of 9: EventsHub
12345678910111213141516// File: openzeppelin-solidity/contracts/ownership/Ownable.solpragma 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
File 2 of 9: StakeManagerProxy
12345678910111213141516// File: openzeppelin-solidity/contracts/ownership/Ownable.solpragma 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
File 3 of 9: PolygonEcosystemToken
123456789101112131415// SPDX-License-Identifier: MITpragma solidity 0.8.21;import {ERC20, ERC20Permit, IERC20} from "openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol";import {AccessControlEnumerable} from "openzeppelin-contracts/contracts/access/AccessControlEnumerable.sol";import {IPolygonEcosystemToken} from "./interfaces/IPolygonEcosystemToken.sol";/// @title Polygon ERC20 token/// @author Polygon Labs (@DhairyaSethi, @gretzke, @qedk, @simonDos)/// @notice This is the Polygon ERC20 token contract on Ethereum L1/// @dev The contract allows for a 1-to-1 representation between $POL and $MATIC and allows for additional emission based on hub and treasuryrequirements/// @custom:security-contact security@polygon.technologycontract PolygonEcosystemToken is ERC20Permit, AccessControlEnumerable, IPolygonEcosystemToken {bytes32 public constant EMISSION_ROLE = keccak256("EMISSION_ROLE");bytes32 public constant CAP_MANAGER_ROLE = keccak256("CAP_MANAGER_ROLE");bytes32 public constant PERMIT2_REVOKER_ROLE = keccak256("PERMIT2_REVOKER_ROLE");address public constant PERMIT2 = 0x000000000022D473030F116dDEE9F6B43aC78BA3;
File 4 of 9: StakingInfo
12345678910111213141516// File: contracts/common/governance/IGovernance.solpragma solidity ^0.5.2;interface IGovernance {function update(address target, bytes calldata data) external;}// File: contracts/common/governance/Governable.solpragma solidity ^0.5.2;contract Governable {IGovernance public governance;
File 5 of 9: EventsHubProxy
12345678910111213141516// File: contracts/common/misc/ERCProxy.sol/** SPDX-License-Identitifer: MIT*/pragma solidity ^0.5.2;// See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-897.mdinterface ERCProxy {function proxyType() external pure returns (uint256 proxyTypeId);function implementation() external view returns (address codeAddr);}// File: contracts/common/misc/DelegateProxyForwarder.sol
File 6 of 9: Registry
12345678910111213141516/**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);
File 7 of 9: ValidatorShare
12345678910111213141516pragma 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;}
File 8 of 9: StakeManager
12345678910111213141516pragma 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";
File 9 of 9: EventsHub
12345678910111213141516// File: contracts/common/governance/IGovernance.solpragma solidity ^0.5.2;interface IGovernance {function update(address target, bytes calldata data) external;}// File: contracts/common/governance/Governable.solpragma solidity ^0.5.2;contract Governable {IGovernance public governance;