ETH Price: $2,921.78 (-2.63%)
Gas: 5 Gwei

Contract

0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84
 

Overview

ETH Balance

7,928.242271582548077875 ETH

Eth Value

$23,164,565.82 (@ $2,921.78/ETH)

Token Holdings

More Info

Private Name Tags

TokenTracker

stETH (stETH) (@$2,917.94)

Multichain Info

Transaction Hash
Method
Block
From
To
Value
0xcaa8160e595df8e334e59a71aae6e999861d181f6ce6a88651195be338bffafeTransfer(pending)2024-05-02 3:13:297 secs ago1714619609IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x879836ab4215f3c092aea018b88cab73be66d818261d5f22a7cf5854ca3b14b9Submit(pending)2024-05-02 3:10:512 mins ago1714619451IN
Lido: stETH Token
1.035997144998134724 ETH(Pending)(Pending)
0x71e81ca15a7431ff6b4b2476f6b2908b14ccdc872dc9932c0f8f4698273e31caApprove(pending)2024-05-02 3:02:5610 mins ago1714618976IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xa3c83c8386da9c15a0f28c357aad250099132277e2e7de08cd414d512ebf49afApprove(pending)2024-05-02 3:02:5610 mins ago1714618976IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xe6815ecef3a868312621f74e08e3d42f30db6ae216fbaec00de7795106727ff8Approve(pending)2024-05-02 2:59:3014 mins ago1714618770IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x98002ecf17ed43788547ac94c9e49b494c9fd75b889d81424212742068cfcf55Submit(pending)2024-05-02 2:53:5319 mins ago1714618433IN
Lido: stETH Token
0.0012283414 ETH(Pending)(Pending)
0x5b5308ed5443634a5ffa4cbcd1559f390d4ec6a3adb39118458ebbbc7a98de12Approve(pending)2024-05-02 2:52:4620 mins ago1714618366IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x4e5103d6e1aefa1da0f45ccbd92a4ecf128faa2f27186b91d1e97bd2e361cd84Submit(pending)2024-05-02 2:52:2921 mins ago1714618349IN
Lido: stETH Token
0.02 ETH(Pending)(Pending)
0x2fa463175f1912e3faf839968cca0dc248ccb3db920e72de852f35f4862719cdSubmit(pending)2024-05-02 2:52:2121 mins ago1714618341IN
Lido: stETH Token
0.0238086643 ETH(Pending)(Pending)
0x3f9c94e28d8b5a785f5c468024e61e2114b6c54460b8a8d60e614ea12405ad08Transfer(pending)2024-05-02 2:31:4541 mins ago1714617105IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xc0f87e001f0889a2e30469978b8cd1f3b5ea78a1f369db0cd72bf45a32297e1dTransfer(pending)2024-05-02 2:31:4541 mins ago1714617105IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xc425cd34733c0e0378b18c230e3c1316ca17a9e53d7430402cb8bbbeee07ecf3Submit(pending)2024-05-02 2:30:2643 mins ago1714617026IN
Lido: stETH Token
0.001 ETH(Pending)(Pending)
0x5f7e814be735db20231c30a70d0b5bccea6633a66eeff8e2857765acc0a70a13Transfer(pending)2024-05-02 2:24:2949 mins ago1714616669IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xe5598472bc1b4e0a737386f2ad4d3bcd045b79480f2ab9441298d210cdefe604Submit(pending)2024-05-02 2:11:431 hr ago1714615903IN
Lido: stETH Token
0.004 ETH(Pending)(Pending)
0xb4d7378364c0b13ee11466fb53ae8a8942e19ff0c602e6ebc5cbf97547cd0cd8Approve(pending)2024-05-02 2:06:551 hr ago1714615615IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xd4dea081b0071674f2bafdd92b7a36cf7d26d33f89ab7e5ff1c2a901d697b9d5Transfer(pending)2024-05-02 1:51:461 hr ago1714614706IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x34394f934435297dc296a395a58d23db5ff7406310854aa5e2dbfcde53c930fcTransfer(pending)2024-05-02 1:11:292 hrs ago1714612289IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xfa4180d64bc3597c15e1c007eb12f357757e3d500318e2bf4bf83dcb2fa246b6Submit(pending)2024-05-02 0:19:382 hrs ago1714609178IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x37fc431965c9e72337a10e2a309c5cbe55590bcfd816b26a00eef23b2dc87b5dTransfer(pending)2024-05-01 23:15:023 hrs ago1714605302IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x6eff209a602fc8715eb0c7018919a48539efb55b52791a73df43a043463b07a2Transfer(pending)2024-05-01 23:14:583 hrs ago1714605298IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x2709a12f61072ba76a959d1ae0a9f178b306a084c98bde6d3cccb3ccf1508340Transfer(pending)2024-05-01 22:55:274 hrs ago1714604127IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0xc8e610faaa5816941162418c5a782cfb561ccbf5cec9cc66d053769dcd351b4aTransfer(pending)2024-05-01 22:54:394 hrs ago1714604079IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x7a317da18c9c610ffc43b16efa771707cf84343eb48a1f87cd5d38bdeaad58f8Transfer(pending)2024-05-01 22:24:484 hrs ago1714602288IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x90067a0c9cf17b878dad62b45065c5d82e3caa7a55dac6317cf5c8a74a0dd573Transfer(pending)2024-05-01 20:09:397 hrs ago1714594179IN
Lido: stETH Token
0 ETH(Pending)(Pending)
0x1aad4e50cb8008f8170378902a7727128e0e50e4df0a6ff2717d9f8ae825cbafTransfer(pending)2024-05-01 19:50:407 hrs ago1714593040IN
Lido: stETH Token
0 ETH(Pending)(Pending)
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
197796022024-05-02 2:57:2316 mins ago1714618643
Lido: stETH Token
1 ETH
197795442024-05-02 2:45:4727 mins ago1714617947
Lido: stETH Token
13 ETH
197795342024-05-02 2:43:4729 mins ago1714617827
Lido: stETH Token
0.3328 ETH
197795332024-05-02 2:43:3530 mins ago1714617815
Lido: stETH Token
20 ETH
197795042024-05-02 2:37:4735 mins ago1714617467
Lido: stETH Token
0.23746597 ETH
197794482024-05-02 2:26:2347 mins ago1714616783
Lido: stETH Token
0.23583313 ETH
197793442024-05-02 2:05:231 hr ago1714615523
Lido: stETH Token
0.16186884 ETH
197793082024-05-02 1:58:111 hr ago1714615091
Lido: stETH Token
0.32701602 ETH
197790572024-05-02 1:06:592 hrs ago1714612019
Lido: stETH Token
0.0003816 ETH
197789442024-05-02 0:44:112 hrs ago1714610651
Lido: stETH Token
0.01678367 ETH
197789082024-05-02 0:36:592 hrs ago1714610219
Lido: stETH Token
0.1 ETH
197788622024-05-02 0:27:352 hrs ago1714609655
Lido: stETH Token
0.4 ETH
197788562024-05-02 0:26:232 hrs ago1714609583
Lido: stETH Token
0.00072189 ETH
197788522024-05-02 0:25:352 hrs ago1714609535
Lido: stETH Token
0.00440083 ETH
197787952024-05-02 0:13:592 hrs ago1714608839
Lido: stETH Token
0.01226588 ETH
197787792024-05-02 0:10:473 hrs ago1714608647
Lido: stETH Token
0.33333072 ETH
197787742024-05-02 0:09:473 hrs ago1714608587
Lido: stETH Token
0.00423217 ETH
197787442024-05-02 0:03:473 hrs ago1714608227
Lido: stETH Token
0.325 ETH
197786712024-05-01 23:49:113 hrs ago1714607351
Lido: stETH Token
0.48612923 ETH
197785382024-05-01 23:22:233 hrs ago1714605743
Lido: stETH Token
1.9 ETH
197784772024-05-01 23:10:114 hrs ago1714605011
Lido: stETH Token
0.1 ETH
197784142024-05-01 22:57:354 hrs ago1714604255
Lido: stETH Token
140 ETH
197783742024-05-01 22:49:354 hrs ago1714603775
Lido: stETH Token
0.3141 ETH
197783462024-05-01 22:43:594 hrs ago1714603439
Lido: stETH Token
0.0153 ETH
197783122024-05-01 22:36:594 hrs ago1714603019
Lido: stETH Token
0.0656 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x73Ab89a6...Fe222912C
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
AppProxyUpgradeable

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 10000 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-09-06
*/

// File: contracts/common/UnstructuredStorage.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


library UnstructuredStorage {
    function getStorageBool(bytes32 position) internal view returns (bool data) {
        assembly { data := sload(position) }
    }

    function getStorageAddress(bytes32 position) internal view returns (address data) {
        assembly { data := sload(position) }
    }

    function getStorageBytes32(bytes32 position) internal view returns (bytes32 data) {
        assembly { data := sload(position) }
    }

    function getStorageUint256(bytes32 position) internal view returns (uint256 data) {
        assembly { data := sload(position) }
    }

    function setStorageBool(bytes32 position, bool data) internal {
        assembly { sstore(position, data) }
    }

    function setStorageAddress(bytes32 position, address data) internal {
        assembly { sstore(position, data) }
    }

    function setStorageBytes32(bytes32 position, bytes32 data) internal {
        assembly { sstore(position, data) }
    }

    function setStorageUint256(bytes32 position, uint256 data) internal {
        assembly { sstore(position, data) }
    }
}

// File: contracts/acl/IACL.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


interface IACL {
    function initialize(address permissionsCreator) external;

    // TODO: this should be external
    // See https://github.com/ethereum/solidity/issues/4832
    function hasPermission(address who, address where, bytes32 what, bytes how) public view returns (bool);
}

// File: contracts/common/IVaultRecoverable.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


interface IVaultRecoverable {
    event RecoverToVault(address indexed vault, address indexed token, uint256 amount);

    function transferToVault(address token) external;

    function allowRecoverability(address token) external view returns (bool);
    function getRecoveryVault() external view returns (address);
}

// File: contracts/kernel/IKernel.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;




interface IKernelEvents {
    event SetApp(bytes32 indexed namespace, bytes32 indexed appId, address app);
}


// This should be an interface, but interfaces can't inherit yet :(
contract IKernel is IKernelEvents, IVaultRecoverable {
    function acl() public view returns (IACL);
    function hasPermission(address who, address where, bytes32 what, bytes how) public view returns (bool);

    function setApp(bytes32 namespace, bytes32 appId, address app) public;
    function getApp(bytes32 namespace, bytes32 appId) public view returns (address);
}

// File: contracts/apps/AppStorage.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;




contract AppStorage {
    using UnstructuredStorage for bytes32;

    /* Hardcoded constants to save gas
    bytes32 internal constant KERNEL_POSITION = keccak256("aragonOS.appStorage.kernel");
    bytes32 internal constant APP_ID_POSITION = keccak256("aragonOS.appStorage.appId");
    */
    bytes32 internal constant KERNEL_POSITION = 0x4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b;
    bytes32 internal constant APP_ID_POSITION = 0xd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b;

    function kernel() public view returns (IKernel) {
        return IKernel(KERNEL_POSITION.getStorageAddress());
    }

    function appId() public view returns (bytes32) {
        return APP_ID_POSITION.getStorageBytes32();
    }

    function setKernel(IKernel _kernel) internal {
        KERNEL_POSITION.setStorageAddress(address(_kernel));
    }

    function setAppId(bytes32 _appId) internal {
        APP_ID_POSITION.setStorageBytes32(_appId);
    }
}

// File: contracts/common/IsContract.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


contract IsContract {
    /*
    * NOTE: this should NEVER be used for authentication
    * (see pitfalls: https://github.com/fergarrui/ethereum-security/tree/master/contracts/extcodesize).
    *
    * This is only intended to be used as a sanity check that an address is actually a contract,
    * RATHER THAN an address not being a contract.
    */
    function isContract(address _target) internal view returns (bool) {
        if (_target == address(0)) {
            return false;
        }

        uint256 size;
        assembly { size := extcodesize(_target) }
        return size > 0;
    }
}

// File: contracts/lib/misc/ERCProxy.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


contract ERCProxy {
    uint256 internal constant FORWARDING = 1;
    uint256 internal constant UPGRADEABLE = 2;

    function proxyType() public pure returns (uint256 proxyTypeId);
    function implementation() public view returns (address codeAddr);
}

// File: contracts/common/DelegateProxy.sol

pragma solidity 0.4.24;




contract DelegateProxy is ERCProxy, IsContract {
    uint256 internal constant FWD_GAS_LIMIT = 10000;

    /**
    * @dev Performs a delegatecall and returns whatever the delegatecall returned (entire context execution will return!)
    * @param _dst Destination address to perform the delegatecall
    * @param _calldata Calldata for the delegatecall
    */
    function delegatedFwd(address _dst, bytes _calldata) internal {
        require(isContract(_dst));
        uint256 fwdGasLimit = FWD_GAS_LIMIT;

        assembly {
            let result := delegatecall(sub(gas, fwdGasLimit), _dst, add(_calldata, 0x20), mload(_calldata), 0, 0)
            let size := returndatasize
            let ptr := mload(0x40)
            returndatacopy(ptr, 0, size)

            // revert instead of invalid() bc if the underlying call failed with invalid() it already wasted gas.
            // if the call returned error data, forward it
            switch result case 0 { revert(ptr, size) }
            default { return(ptr, size) }
        }
    }
}

// File: contracts/common/DepositableStorage.sol

pragma solidity 0.4.24;



contract DepositableStorage {
    using UnstructuredStorage for bytes32;

    // keccak256("aragonOS.depositableStorage.depositable")
    bytes32 internal constant DEPOSITABLE_POSITION = 0x665fd576fbbe6f247aff98f5c94a561e3f71ec2d3c988d56f12d342396c50cea;

    function isDepositable() public view returns (bool) {
        return DEPOSITABLE_POSITION.getStorageBool();
    }

    function setDepositable(bool _depositable) internal {
        DEPOSITABLE_POSITION.setStorageBool(_depositable);
    }
}

// File: contracts/common/DepositableDelegateProxy.sol

pragma solidity 0.4.24;




contract DepositableDelegateProxy is DepositableStorage, DelegateProxy {
    event ProxyDeposit(address sender, uint256 value);

    function () external payable {
        uint256 forwardGasThreshold = FWD_GAS_LIMIT;
        bytes32 isDepositablePosition = DEPOSITABLE_POSITION;

        // Optimized assembly implementation to prevent EIP-1884 from breaking deposits, reference code in Solidity:
        // https://github.com/aragon/aragonOS/blob/v4.2.1/contracts/common/DepositableDelegateProxy.sol#L10-L20
        assembly {
            // Continue only if the gas left is lower than the threshold for forwarding to the implementation code,
            // otherwise continue outside of the assembly block.
            if lt(gas, forwardGasThreshold) {
                // Only accept the deposit and emit an event if all of the following are true:
                // the proxy accepts deposits (isDepositable), msg.data.length == 0, and msg.value > 0
                if and(and(sload(isDepositablePosition), iszero(calldatasize)), gt(callvalue, 0)) {
                    // Equivalent Solidity code for emitting the event:
                    // emit ProxyDeposit(msg.sender, msg.value);

                    let logData := mload(0x40) // free memory pointer
                    mstore(logData, caller) // add 'msg.sender' to the log data (first event param)
                    mstore(add(logData, 0x20), callvalue) // add 'msg.value' to the log data (second event param)

                    // Emit an event with one topic to identify the event: keccak256('ProxyDeposit(address,uint256)') = 0x15ee...dee1
                    log1(logData, 0x40, 0x15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1)

                    stop() // Stop. Exits execution context
                }

                // If any of above checks failed, revert the execution (if ETH was sent, it is returned to the sender)
                revert(0, 0)
            }
        }

        address target = implementation();
        delegatedFwd(target, msg.data);
    }
}

// File: contracts/kernel/KernelConstants.sol

/*
 * SPDX-License-Identitifer:    MIT
 */

pragma solidity ^0.4.24;


contract KernelAppIds {
    /* Hardcoded constants to save gas
    bytes32 internal constant KERNEL_CORE_APP_ID = apmNamehash("kernel");
    bytes32 internal constant KERNEL_DEFAULT_ACL_APP_ID = apmNamehash("acl");
    bytes32 internal constant KERNEL_DEFAULT_VAULT_APP_ID = apmNamehash("vault");
    */
    bytes32 internal constant KERNEL_CORE_APP_ID = 0x3b4bf6bf3ad5000ecf0f989d5befde585c6860fea3e574a4fab4c49d1c177d9c;
    bytes32 internal constant KERNEL_DEFAULT_ACL_APP_ID = 0xe3262375f45a6e2026b7e7b18c2b807434f2508fe1a2a3dfb493c7df8f4aad6a;
    bytes32 internal constant KERNEL_DEFAULT_VAULT_APP_ID = 0x7e852e0fcfce6551c13800f1e7476f982525c2b5277ba14b24339c68416336d1;
}


contract KernelNamespaceConstants {
    /* Hardcoded constants to save gas
    bytes32 internal constant KERNEL_CORE_NAMESPACE = keccak256("core");
    bytes32 internal constant KERNEL_APP_BASES_NAMESPACE = keccak256("base");
    bytes32 internal constant KERNEL_APP_ADDR_NAMESPACE = keccak256("app");
    */
    bytes32 internal constant KERNEL_CORE_NAMESPACE = 0xc681a85306374a5ab27f0bbc385296a54bcd314a1948b6cf61c4ea1bc44bb9f8;
    bytes32 internal constant KERNEL_APP_BASES_NAMESPACE = 0xf1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f;
    bytes32 internal constant KERNEL_APP_ADDR_NAMESPACE = 0xd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb;
}

// File: contracts/apps/AppProxyBase.sol

pragma solidity 0.4.24;






contract AppProxyBase is AppStorage, DepositableDelegateProxy, KernelNamespaceConstants {
    /**
    * @dev Initialize AppProxy
    * @param _kernel Reference to organization kernel for the app
    * @param _appId Identifier for app
    * @param _initializePayload Payload for call to be made after setup to initialize
    */
    constructor(IKernel _kernel, bytes32 _appId, bytes _initializePayload) public {
        setKernel(_kernel);
        setAppId(_appId);

        // Implicit check that kernel is actually a Kernel
        // The EVM doesn't actually provide a way for us to make sure, but we can force a revert to
        // occur if the kernel is set to 0x0 or a non-code address when we try to call a method on
        // it.
        address appCode = getAppBase(_appId);

        // If initialize payload is provided, it will be executed
        if (_initializePayload.length > 0) {
            require(isContract(appCode));
            // Cannot make delegatecall as a delegateproxy.delegatedFwd as it
            // returns ending execution context and halts contract deployment
            require(appCode.delegatecall(_initializePayload));
        }
    }

    function getAppBase(bytes32 _appId) internal view returns (address) {
        return kernel().getApp(KERNEL_APP_BASES_NAMESPACE, _appId);
    }
}

// File: contracts/apps/AppProxyUpgradeable.sol

pragma solidity 0.4.24;



contract AppProxyUpgradeable is AppProxyBase {
    /**
    * @dev Initialize AppProxyUpgradeable (makes it an upgradeable Aragon app)
    * @param _kernel Reference to organization kernel for the app
    * @param _appId Identifier for app
    * @param _initializePayload Payload for call to be made after setup to initialize
    */
    constructor(IKernel _kernel, bytes32 _appId, bytes _initializePayload)
        AppProxyBase(_kernel, _appId, _initializePayload)
        public // solium-disable-line visibility-first
    {
        // solium-disable-previous-line no-empty-blocks
    }

    /**
     * @dev ERC897, the address the proxy would delegate calls to
     */
    function implementation() public view returns (address) {
        return getAppBase(appId());
    }

    /**
     * @dev ERC897, whether it is a forwarding (1) or an upgradeable (2) proxy
     */
    function proxyType() public pure returns (uint256 proxyTypeId) {
        return UPGRADEABLE;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]

Deployed Bytecode

0x60806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416634555d5c9811461012b57806348a0c8dd146101525780635c60da1b1461017b57806380afdea8146101b9578063d4aae0c4146101ce575b6127107f665fd576fbbe6f247aff98f5c94a561e3f71ec2d3c988d56f12d342396c50cea6000825a10156100e15760003411361583541616156100dc576040513381523460208201527f15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1604082a1005b600080fd5b6100e96101e3565b9050610126816000368080601f016020809104026020016040519081016040528093929190818152602001838380828437506101fa945050505050565b505050005b34801561013757600080fd5b5061014061023b565b60408051918252519081900360200190f35b34801561015e57600080fd5b50610167610240565b604080519115158252519081900360200190f35b34801561018757600080fd5b506101906101e3565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156101c557600080fd5b5061014061026b565b3480156101da57600080fd5b50610190610296565b60006101f56101f061026b565b6102c1565b905090565b600061020583610395565b151561021057600080fd5b612710905060008083516020850186855a03f43d604051816000823e828015610237578282f35b8282fd5b600290565b60006101f57f665fd576fbbe6f247aff98f5c94a561e3f71ec2d3c988d56f12d342396c50cea6103cf565b60006101f57fd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b6103cf565b60006101f57f4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b6103cf565b60006102cb610296565b604080517fbe00bbd80000000000000000000000000000000000000000000000000000000081527ff1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f600482015260248101859052905173ffffffffffffffffffffffffffffffffffffffff929092169163be00bbd8916044808201926020929091908290030181600087803b15801561036357600080fd5b505af1158015610377573d6000803e3d6000fd5b505050506040513d602081101561038d57600080fd5b505192915050565b60008073ffffffffffffffffffffffffffffffffffffffff831615156103be57600091506103c9565b823b90506000811191505b50919050565b5490565b5490565b9055565b90555600a165627a7a72305820976bd9d6f6ad7a0d339ea3b373704842cdb3d9e15e7463676c04c1fa6ffb56410029

Deployed Bytecode Sourcemap

12048:1002:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5242:5;6492:66;7084:27;5242:5;7647:3;7644:28;7641:2;;;7970:1;7959:9;7956:16;7940:12;7933:20;7909:21;7903:28;7899:55;7895:78;7892:2;;;8159:4;8153:11;8225:6;8216:7;8209:23;8337:9;8330:4;8321:7;8317:18;8310:37;8582:66;8576:4;8567:7;8562:87;8673:6;7892:2;8881:1;8878;8871:12;7641:2;8938:16;:14;:16::i;:::-;8921:33;;8965:30;8978:6;8986:8;;8965:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8965:12:0;;-1:-1:-1;;;;;8965:30:0:i;:::-;7044:1959;;;12048:1002;12947:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12947:100:0;;;;;;;;;;;;;;;;;;;;6567:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6567:115:0;;;;;;;;;;;;;;;;;;;;;;12740:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12740:101:0;;;;;;;;;;;;;;;;;;;;;;;3588:108;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3588:108:0;;;;3462:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3462:118:0;;;;12740:101;12787:7;12814:19;12825:7;:5;:7::i;:::-;12814:10;:19::i;:::-;12807:26;;12740:101;:::o;5517:694::-;5626:19;5598:16;5609:4;5598:10;:16::i;:::-;5590:25;;;;;;;;5242:5;5626:35;;5797:1;5794;5782:9;5776:16;5769:4;5758:9;5754:20;5748:4;5734:11;5729:3;5725:21;5712:87;5825:14;5870:4;5864:11;5912:4;5909:1;5904:3;5889:28;6115:6;6122:28;;;;6186:4;6181:3;6174:17;6122:28;6143:4;6138:3;6131:17;12947:100;4915:1;12947:100;:::o;6567:115::-;6613:4;6637:37;6492:66;6637:35;:37::i;3588:108::-;3626:7;3653:35;3387:66;3653:33;:35::i;3462:118::-;3501:7;3536:35;3270:66;3536:33;:35::i;11814:145::-;11873:7;11900:8;:6;:8::i;:::-;:51;;;;;;10327:66;11900:51;;;;;;;;;;;;:15;;;;;;;;:51;;;;;;;;;;;;;;;;:15;:51;;;5:2:-1;;;;30:1;27;20:12;5:2;11900:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11900:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11900:51:0;;11814:145;-1:-1:-1;;11814:145:0:o;4422:252::-;4482:4;;4503:21;;;;4499:66;;;4548:5;4541:12;;;;4499:66;4631:7;4619:20;4611:28;;4665:1;4658:4;:8;4651:15;;4422:252;;;;;:::o;166:130::-;272:15;;262:27::o;304:136::-;416:15;;406:27::o;859:121::-;949:22;;947:26::o;988:121::-;1078:22;;1076:26::o

Swarm Source

bzzr://976bd9d6f6ad7a0d339ea3b373704842cdb3d9e15e7463676c04c1fa6ffb5641

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

stETH is a token that represents staked ether in Lido, combining the value of initial deposit + staking rewards. stETH tokens are pegged 1:1 to the ETH staked with Lido and can be used as one would use ether, allowing users to earn Eth2 staking rewards whilst benefiting from Defi yields.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Chain Token Portfolio % Price Amount Value
ETH
Ether (ETH)
99.73%$2,921.787,928.2423$23,164,565.82
ETH0.17%$2,917.9413.2241$38,587
ETH0.03%$0.9989156,675.9418$6,668.7
ETH0.03%$307.2419.987$6,140.82
ETH<0.01%$2,666.540.8$2,133.23
ETH<0.01%$0.6814591,724.3031$1,175.04
ETH<0.01%$3,394.930.0175$59.41
ETH<0.01%$3,063.780.00645198$19.77
ETH<0.01%$0.0018327,520.2842$13.78
ETH<0.01%$0.00782531.8959$0.2495
BSC0.03%$0.9989156,137.3853$6,130.73
BSC<0.01%$0.04632310,000$463.23
BSC<0.01%$2.47121.6291$300.08
BSC<0.01%$57,354.960.00244478$140.22
BSC<0.01%$548.050.0968$53.07
BSC<0.01%$2,919.080.002$5.84
BSC<0.01%<$0.00000145,504,052,818.4913$0.5529
BSC<0.01%$0.001291100$0.1291
MATIC<0.01%$0.755873832.3377$629.14
MATIC<0.01%$2,918.840.0801$233.94
MATIC<0.01%$0.68177996.5759$65.84
MATIC<0.01%$6.950.3518$2.44
OP<0.01%$2,921.240.2013$588.14
OP<0.01%$3,394.920.0106$35.89
CRONOS<0.01%$0.0000222,372,027$52.11
CRONOS<0.01%$0.1255762.2926$0.287896
AVAX<0.01%$32.751.148$37.6
BLAST<0.01%$2,921.620.00251271$7.34
BASE<0.01%$2,921.340.000011$0.032135
ZKSYNC<0.01%$2,921.780.0000057$0.016654
CELO<0.01%$0.753910.012$0.009047
GNO<0.01%$10.00000001<$0.000001
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.