ETH Price: $3,263.42 (+2.40%)
Gas: 10 Gwei

Contract

0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

Transaction Hash
Method
Block
From
To
Value
0x57c21b30ebed56a54f4bc4db6374c656cfe5891429b76c12b21abe875c8483f7Deposit ETH(pending)2024-04-24 4:54:5412 mins ago1713934494IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x053ebe39dca19f2bb7650b117faf123cdd4c59932bac6f53a76c3bb918dfbc7cDeposit ETH(pending)2024-04-24 4:51:3016 mins ago1713934290IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x5960807d33c1bd552538935ec4e9d99c1a6b0a29d5f9c439bfe8002cca13dc6cDeposit ETH(pending)2024-04-24 4:48:3918 mins ago1713934119IN
Optimism: Gateway
0.000001 ETH(Pending)(Pending)
0x3ab805b96c669db187869dc3acc44f74c9a016f920cc2059dfd266041c42ca7eDeposit ETH(pending)2024-04-24 4:46:2821 mins ago1713933988IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0xd1df5f83d2e462ae68e75d348f711e15caf8604bedc5eb64d1151c7f5084f5a7Deposit ETH(pending)2024-04-24 4:45:3322 mins ago1713933933IN
Optimism: Gateway
0.000001 ETH(Pending)(Pending)
0x2c199873d49c78429b2bb4ed8f18244c90e05e59a2bc25511726cd3dfa2f9d34Deposit ETH(pending)2024-04-24 4:40:5726 mins ago1713933657IN
Optimism: Gateway
0.0008 ETH(Pending)(Pending)
0x209977df22e6e266ac4c5bd8ffb77012d6417c859e5b6314e536371dda8292fcDeposit ETH(pending)2024-04-24 4:34:1633 mins ago1713933256IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0xb7fd62ee7ea06d55bdf96bfb6287cdb1a61cee50ee9295bb42c238bae4d6713fDeposit ETH(pending)2024-04-24 4:30:5536 mins ago1713933055IN
Optimism: Gateway
0.009 ETH(Pending)(Pending)
0x59e4e6d8e9e116cf5e2d12cb21fc06eb2ddb9b9805179b4b034e74b5f32cc400Deposit ETH(pending)2024-04-24 4:27:3739 mins ago1713932857IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x3377a32a5cdfceaf0ba6f2761d59fef29ade9e9b9f36e2661ec45fb56ab856f0Deposit ETH(pending)2024-04-24 4:26:3940 mins ago1713932799IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x284c59bff272a65dafed03b4f7894788763101fffdbc99b60d8a3184be055418Deposit ETH(pending)2024-04-24 4:26:2641 mins ago1713932786IN
Optimism: Gateway
0.000001 ETH(Pending)(Pending)
0xace91bdf96aa2121d7e1276258e31ab755dce5d95a331a4d593274be693ec2e4Deposit ETH(pending)2024-04-24 4:01:181 hr ago1713931278IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x7d92243b19509f18816d42b4dd2781e9e245d547319c183fa0681d59ce6af012Deposit ERC20(pending)2024-04-24 3:56:501 hr ago1713931010IN
Optimism: Gateway
0 ETH(Pending)(Pending)
0x8b4604d3f98649cbab62e90a5617b63b967dfb804ed22ea32ba365d1770df286Deposit ETH(pending)2024-04-24 3:53:541 hr ago1713930834IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0xe0e29f81f3ff0e2db674d76adbe8d91a1947fa651c599c54de710351832603d1Deposit ETH(pending)2024-04-24 3:50:181 hr ago1713930618IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x70d1db016c380a09054b7ba707602119a6730b719fef0f419fe5cf819e0a90c2Deposit ETH(pending)2024-04-24 3:40:451 hr ago1713930045IN
Optimism: Gateway
0.001 ETH(Pending)(Pending)
0xff082c2bf5565e6854fa1d5d21297ac962f94cafcddeb31e1ae51665228e7fb9Deposit ETH(pending)2024-04-24 3:30:141 hr ago1713929414IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x6afe55cc2c6874d4280fe2ded04215ffca4c2555b179f94351a00902e9f1ff1dDeposit ETH(pending)2024-04-24 3:22:071 hr ago1713928927IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x20b9fb6b31e0a2b56b01754f39ca42257357af711ecb7769ba51268083fccd95Deposit ETH(pending)2024-04-24 3:07:332 hrs ago1713928053IN
Optimism: Gateway
1 wei(Pending)(Pending)
0xc69ac61467eb39616f568c9882027a726867b72cea96d742a4053a26c82b4132Deposit ETH(pending)2024-04-23 8:38:1720 hrs ago1713861497IN
Optimism: Gateway
0.0007560748 ETH(Pending)(Pending)
0xa950f23f94acd0c119ba8ca243e894f7446f4016e5c588ffd8940c311d1886e8Deposit ETH(pending)2024-04-23 8:38:1220 hrs ago1713861492IN
Optimism: Gateway
0.0008937307 ETH(Pending)(Pending)
0x0afe10cebc50b990703ec2c03a97b1bdfb6564d2262818ab4a5aca08d9ce5e1bDeposit ETH(pending)2024-04-22 3:22:072 days ago1713756127IN
Optimism: Gateway
0.0017770382 ETH(Pending)(Pending)
0xb5d0906c5ce514a85bc414d7cdfd8812910892f73a4e2541cb5bc071c5434d0aDeposit ETH(pending)2024-04-21 22:21:102 days ago1713738070IN
Optimism: Gateway
0.00058 ETH(Pending)(Pending)
0x8f7442d8920f2f4325be79567800136d6f781b5e801a4d8400480194621861aaDeposit ETH(pending)2024-04-21 19:56:052 days ago1713729365IN
Optimism: Gateway
0.0007 ETH(Pending)(Pending)
0x88053b62ae333c8b52e0c1b350b2493059e557ae4957e74f86861a3628d658f8Deposit ETH(pending)2024-04-21 17:37:532 days ago1713721073IN
Optimism: Gateway
0.0005 ETH(Pending)(Pending)
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
197228132024-04-24 4:19:2348 mins ago1713932363
Optimism: Gateway
0.02 ETH
197228022024-04-24 4:17:1150 mins ago1713932231
Optimism: Gateway
0.01 ETH
197227652024-04-24 4:09:3558 mins ago1713931775
Optimism: Gateway
80.20377777 ETH
197227652024-04-24 4:09:3558 mins ago1713931775
Optimism: Gateway
80.20377777 ETH
197227562024-04-24 4:07:471 hrs ago1713931667
Optimism: Gateway
99.7777784 ETH
197227562024-04-24 4:07:471 hrs ago1713931667
Optimism: Gateway
99.7777784 ETH
197226642024-04-24 3:49:231 hr ago1713930563
Optimism: Gateway
0.05 ETH
197225442024-04-24 3:25:111 hr ago1713929111
Optimism: Gateway
0.04 ETH
197224302024-04-24 3:02:112 hrs ago1713927731
Optimism: Gateway
0.035 ETH
197223992024-04-24 2:55:472 hrs ago1713927347
Optimism: Gateway
0.2 ETH
197223702024-04-24 2:49:592 hrs ago1713926999
Optimism: Gateway
50.71488641 ETH
197223702024-04-24 2:49:592 hrs ago1713926999
Optimism: Gateway
50.71488641 ETH
197222212024-04-24 2:20:112 hrs ago1713925211
Optimism: Gateway
0.00688295 ETH
197221632024-04-24 2:08:352 hrs ago1713924515
Optimism: Gateway
4 ETH
197221022024-04-24 1:55:593 hrs ago1713923759
Optimism: Gateway
0.19 ETH
197219742024-04-24 1:30:113 hrs ago1713922211
Optimism: Gateway
0.008 ETH
197219652024-04-24 1:28:233 hrs ago1713922103
Optimism: Gateway
70.52867099 ETH
197219652024-04-24 1:28:233 hrs ago1713922103
Optimism: Gateway
70.52867099 ETH
197219372024-04-24 1:22:473 hrs ago1713921767
Optimism: Gateway
441.81 ETH
197219372024-04-24 1:22:473 hrs ago1713921767
Optimism: Gateway
441.81 ETH
197216222024-04-24 0:19:114 hrs ago1713917951
Optimism: Gateway
0.066 ETH
197215852024-04-24 0:11:474 hrs ago1713917507
Optimism: Gateway
0.01 ETH
197215852024-04-24 0:11:474 hrs ago1713917507
Optimism: Gateway
0.01 ETH
197215802024-04-24 0:10:474 hrs ago1713917447
Optimism: Gateway
0.007 ETH
197215492024-04-24 0:04:355 hrs ago1713917075
Optimism: Gateway
46.54664178 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
L1ChugSplashProxy

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
File 1 of 2 : L1ChugSplashProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity >0.5.0 <0.8.0;

import { iL1ChugSplashDeployer } from "./interfaces/iL1ChugSplashDeployer.sol";

/**
 * @title L1ChugSplashProxy
 * @dev Basic ChugSplash proxy contract for L1. Very close to being a normal proxy but has added
 * functions `setCode` and `setStorage` for changing the code or storage of the contract. Nifty!
 *
 * Note for future developers: do NOT make anything in this contract 'public' unless you know what
 * you're doing. Anything public can potentially have a function signature that conflicts with a
 * signature attached to the implementation contract. Public functions SHOULD always have the
 * 'proxyCallIfNotOwner' modifier unless there's some *really* good reason not to have that
 * modifier. And there almost certainly is not a good reason to not have that modifier. Beware!
 */
contract L1ChugSplashProxy {

    /*************
     * Constants *
     *************/

    // "Magic" prefix. When prepended to some arbitrary bytecode and used to create a contract, the
    // appended bytecode will be deployed as given.
    bytes13 constant internal DEPLOY_CODE_PREFIX = 0x600D380380600D6000396000f3;

    // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)
    bytes32 constant internal IMPLEMENTATION_KEY = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    // bytes32(uint256(keccak256('eip1967.proxy.admin')) - 1)
    bytes32 constant internal OWNER_KEY = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;


    /***************
     * Constructor *
     ***************/
    
    /**
     * @param _owner Address of the initial contract owner.
     */
    constructor(
        address _owner
    ) {
        _setOwner(_owner);
    }


    /**********************
     * Function Modifiers *
     **********************/

    /**
     * Blocks a function from being called when the parent signals that the system should be paused
     * via an isUpgrading function.
     */
    modifier onlyWhenNotPaused() {
        address owner = _getOwner();

        // We do a low-level call because there's no guarantee that the owner actually *is* an
        // L1ChugSplashDeployer contract and Solidity will throw errors if we do a normal call and
        // it turns out that it isn't the right type of contract.
        (bool success, bytes memory returndata) = owner.staticcall(
            abi.encodeWithSelector(
                iL1ChugSplashDeployer.isUpgrading.selector
            )
        );

        // If the call was unsuccessful then we assume that there's no "isUpgrading" method and we
        // can just continue as normal. We also expect that the return value is exactly 32 bytes
        // long. If this isn't the case then we can safely ignore the result.
        if (success && returndata.length == 32) {
            // Although the expected value is a *boolean*, it's safer to decode as a uint256 in the
            // case that the isUpgrading function returned something other than 0 or 1. But we only
            // really care about the case where this value is 0 (= false).
            uint256 ret = abi.decode(returndata, (uint256));
            require(
                ret == 0,
                "L1ChugSplashProxy: system is currently being upgraded"
            );
        }

        _;
    }

    /**
     * Makes a proxy call instead of triggering the given function when the caller is either the
     * owner or the zero address. Caller can only ever be the zero address if this function is
     * being called off-chain via eth_call, which is totally fine and can be convenient for
     * client-side tooling. Avoids situations where the proxy and implementation share a sighash
     * and the proxy function ends up being called instead of the implementation one.
     *
     * Note: msg.sender == address(0) can ONLY be triggered off-chain via eth_call. If there's a
     * way for someone to send a transaction with msg.sender == address(0) in any real context then
     * we have much bigger problems. Primary reason to include this additional allowed sender is
     * because the owner address can be changed dynamically and we do not want clients to have to
     * keep track of the current owner in order to make an eth_call that doesn't trigger the
     * proxied contract.
     */
    modifier proxyCallIfNotOwner() {
        if (msg.sender == _getOwner() || msg.sender == address(0)) {
            _;
        } else {
            // This WILL halt the call frame on completion.
            _doProxyCall();
        }
    }


    /*********************
     * Fallback Function *
     *********************/

    fallback()
        external
        payable
    {
        // Proxy call by default.
        _doProxyCall();
    }


    /********************
     * Public Functions *
     ********************/

    /**
     * Sets the code that should be running behind this proxy. Note that this scheme is a bit
     * different from the standard proxy scheme where one would typically deploy the code
     * separately and then set the implementation address. We're doing it this way because it gives
     * us a lot more freedom on the client side. Can only be triggered by the contract owner.
     * @param _code New contract code to run inside this contract.
     */
    function setCode(
        bytes memory _code
    )
        proxyCallIfNotOwner
        public
    {
        // Get the code hash of the current implementation.
        address implementation = _getImplementation();

        // If the code hash matches the new implementation then we return early.
        if (keccak256(_code) == _getAccountCodeHash(implementation)) {
            return;
        }

        // Create the deploycode by appending the magic prefix.
        bytes memory deploycode = abi.encodePacked(
            DEPLOY_CODE_PREFIX,
            _code
        );

        // Deploy the code and set the new implementation address.
        address newImplementation;
        assembly {
            newImplementation := create(0x0, add(deploycode, 0x20), mload(deploycode))
        }

        // Check that the code was actually deployed correctly. I'm not sure if you can ever
        // actually fail this check. Should only happen if the contract creation from above runs
        // out of gas but this parent execution thread does NOT run out of gas. Seems like we
        // should be doing this check anyway though.
        require(
            _getAccountCodeHash(newImplementation) == keccak256(_code),
            "L1ChugSplashProxy: code was not correctly deployed."
        );

        _setImplementation(newImplementation);
    }

    /**
     * Modifies some storage slot within the proxy contract. Gives us a lot of power to perform
     * upgrades in a more transparent way. Only callable by the owner.
     * @param _key Storage key to modify.
     * @param _value New value for the storage key.
     */
    function setStorage(
        bytes32 _key,
        bytes32 _value
    )
        proxyCallIfNotOwner
        public
    {
        assembly {
            sstore(_key, _value)
        }
    }

    /**
     * Changes the owner of the proxy contract. Only callable by the owner.
     * @param _owner New owner of the proxy contract.
     */
    function setOwner(
        address _owner
    )
        proxyCallIfNotOwner
        public
    {
        _setOwner(_owner);
    }

    /**
     * Queries the owner of the proxy contract. Can only be called by the owner OR by making an
     * eth_call and setting the "from" address to address(0).
     * @return Owner address.
     */
    function getOwner()
        proxyCallIfNotOwner
        public
        returns (
            address
        )
    {
        return _getOwner();
    }

    /**
     * Queries the implementation address. Can only be called by the owner OR by making an
     * eth_call and setting the "from" address to address(0).
     * @return Implementation address.
     */
    function getImplementation()
        proxyCallIfNotOwner
        public
        returns (
            address
        )
    {
        return _getImplementation();
    }


    /**********************
     * Internal Functions *
     **********************/

    /**
     * Sets the implementation address.
     * @param _implementation New implementation address.
     */
    function _setImplementation(
        address _implementation
    )
        internal
    {
        assembly {
            sstore(IMPLEMENTATION_KEY, _implementation)
        }
    }

    /**
     * Queries the implementation address.
     * @return Implementation address.
     */
    function _getImplementation()
        internal
        view
        returns (
            address
        )
    {
        address implementation;
        assembly {
            implementation := sload(IMPLEMENTATION_KEY)
        }
        return implementation;
    }

    /**
     * Changes the owner of the proxy contract.
     * @param _owner New owner of the proxy contract.
     */
    function _setOwner(
        address _owner
    )
        internal
    {
        assembly {
            sstore(OWNER_KEY, _owner)
        }
    }

    /**
     * Queries the owner of the proxy contract.
     * @return Owner address.
     */
    function _getOwner()
        internal
        view 
        returns (
            address
        )
    {
        address owner;
        assembly {
            owner := sload(OWNER_KEY)
        }
        return owner;
    }

    /**
     * Gets the code hash for a given account.
     * @param _account Address of the account to get a code hash for.
     * @return Code hash for the account.
     */
    function _getAccountCodeHash(
        address _account
    )
        internal
        view
        returns (
            bytes32
        )
    {
        bytes32 codeHash;
        assembly {
            codeHash := extcodehash(_account)
        }
        return codeHash;
    }

    /**
     * Performs the proxy call via a delegatecall.
     */
    function _doProxyCall()
        onlyWhenNotPaused
        internal
    {
        address implementation = _getImplementation();

        require(
            implementation != address(0),
            "L1ChugSplashProxy: implementation is not set yet"
        );

        assembly {
            // Copy calldata into memory at 0x0....calldatasize.
            calldatacopy(0x0, 0x0, calldatasize())

            // Perform the delegatecall, make sure to pass all available gas.
            let success := delegatecall(gas(), implementation, 0x0, calldatasize(), 0x0, 0x0)

            // Copy returndata into memory at 0x0....returndatasize. Note that this *will*
            // overwrite the calldata that we just copied into memory but that doesn't really
            // matter because we'll be returning in a second anyway.
            returndatacopy(0x0, 0x0, returndatasize())
            
            // Success == 0 means a revert. We'll revert too and pass the data up.
            if iszero(success) {
                revert(0x0, returndatasize())
            }

            // Otherwise we'll just return and pass the data up.
            return(0x0, returndatasize())
        }
    }
}

File 3 of 2 : iL1ChugSplashDeployer.sol
// SPDX-License-Identifier: MIT
pragma solidity >0.5.0 <0.8.0;

/**
 * @title iL1ChugSplashDeployer
 */
interface iL1ChugSplashDeployer {
    function isUpgrading()
        external
        view
        returns (
            bool
        );
}

Settings
{
  "evmVersion": "istanbul",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"getImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_code","type":"bytes"}],"name":"setCode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_key","type":"bytes32"},{"internalType":"bytes32","name":"_value","type":"bytes32"}],"name":"setStorage","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506040516107983803806107988339818101604052602081101561003357600080fd5b505161003e81610044565b50610068565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b610721806100776000396000f3fe60806040526004361061004a5760003560e01c806313af4035146100545780636c5d4ad014610087578063893d20e81461013a5780639b0b0fda1461016b578063aaf10f421461019b575b6100526101b0565b005b34801561006057600080fd5b506100526004803603602081101561007757600080fd5b50356001600160a01b031661036c565b34801561009357600080fd5b50610052600480360360208110156100aa57600080fd5b8101906020810181356401000000008111156100c557600080fd5b8201836020820111156100d757600080fd5b803590602001918460018302840111640100000000831117156100f957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103af945050505050565b34801561014657600080fd5b5061014f610505565b604080516001600160a01b039092168252519081900360200190f35b34801561017757600080fd5b506100526004803603604081101561018e57600080fd5b508035906020013561054b565b3480156101a757600080fd5b5061014f610589565b60006101ba6105bd565b60408051600481526024810182526020810180516001600160e01b0316635bca393160e11b1781529151815193945060009384936001600160a01b0387169392918291908083835b602083106102215780518252601f199092019160209182019101610202565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114610281576040519150601f19603f3d011682016040523d82523d6000602084013e610286565b606091505b5091509150818015610299575080516020145b156102f85760008180602001905160208110156102b557600080fd5b5051905080156102f65760405162461bcd60e51b81526004018080602001828103825260358152602001806106b76035913960400191505060405180910390fd5b505b60006103026105e2565b90506001600160a01b0381166103495760405162461bcd60e51b81526004018080602001828103825260308152602001806106546030913960400191505060405180910390fd5b3660008037600080366000845af43d6000803e80610366573d6000fd5b503d6000f35b6103746105bd565b6001600160a01b0316336001600160a01b03161480610391575033155b156103a45761039f81610607565b6103ac565b6103ac6101b0565b50565b6103b76105bd565b6001600160a01b0316336001600160a01b031614806103d4575033155b156103a45760006103e36105e2565b90506103ee8161062b565b825160208401201415610401575061039f565b60006c600d380380600d6000396000f360981b83604051602001808372ffffffffffffffffffffffffffffffffffffff19168152600d0182805190602001908083835b602083106104635780518252601f199092019160209182019101610444565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052905060008151602083016000f0905083805190602001206104b88261062b565b146104f45760405162461bcd60e51b81526004018080602001828103825260338152602001806106846033913960400191505060405180910390fd5b6104fd8161062f565b5050506103ac565b600061050f6105bd565b6001600160a01b0316336001600160a01b0316148061052c575033155b15610540576105396105bd565b9050610548565b6105486101b0565b90565b6105536105bd565b6001600160a01b0316336001600160a01b03161480610570575033155b1561057d57808255610585565b6105856101b0565b5050565b60006105936105bd565b6001600160a01b0316336001600160a01b031614806105b0575033155b15610540576105396105e2565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3f90565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe4c314368756753706c61736850726f78793a20696d706c656d656e746174696f6e206973206e6f7420736574207965744c314368756753706c61736850726f78793a20636f646520776173206e6f7420636f72726563746c79206465706c6f7965642e4c314368756753706c61736850726f78793a2073797374656d2069732063757272656e746c79206265696e67207570677261646564a26469706673582212202e20c1d0062b5a698d49624edce72a713b117e88f4cd70877869b53519c1d1f964736f6c634300070600330000000000000000000000009996571372066a1545d3435c6935e3f9593a7ef5

Deployed Bytecode

0x60806040526004361061004a5760003560e01c806313af4035146100545780636c5d4ad014610087578063893d20e81461013a5780639b0b0fda1461016b578063aaf10f421461019b575b6100526101b0565b005b34801561006057600080fd5b506100526004803603602081101561007757600080fd5b50356001600160a01b031661036c565b34801561009357600080fd5b50610052600480360360208110156100aa57600080fd5b8101906020810181356401000000008111156100c557600080fd5b8201836020820111156100d757600080fd5b803590602001918460018302840111640100000000831117156100f957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103af945050505050565b34801561014657600080fd5b5061014f610505565b604080516001600160a01b039092168252519081900360200190f35b34801561017757600080fd5b506100526004803603604081101561018e57600080fd5b508035906020013561054b565b3480156101a757600080fd5b5061014f610589565b60006101ba6105bd565b60408051600481526024810182526020810180516001600160e01b0316635bca393160e11b1781529151815193945060009384936001600160a01b0387169392918291908083835b602083106102215780518252601f199092019160209182019101610202565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114610281576040519150601f19603f3d011682016040523d82523d6000602084013e610286565b606091505b5091509150818015610299575080516020145b156102f85760008180602001905160208110156102b557600080fd5b5051905080156102f65760405162461bcd60e51b81526004018080602001828103825260358152602001806106b76035913960400191505060405180910390fd5b505b60006103026105e2565b90506001600160a01b0381166103495760405162461bcd60e51b81526004018080602001828103825260308152602001806106546030913960400191505060405180910390fd5b3660008037600080366000845af43d6000803e80610366573d6000fd5b503d6000f35b6103746105bd565b6001600160a01b0316336001600160a01b03161480610391575033155b156103a45761039f81610607565b6103ac565b6103ac6101b0565b50565b6103b76105bd565b6001600160a01b0316336001600160a01b031614806103d4575033155b156103a45760006103e36105e2565b90506103ee8161062b565b825160208401201415610401575061039f565b60006c600d380380600d6000396000f360981b83604051602001808372ffffffffffffffffffffffffffffffffffffff19168152600d0182805190602001908083835b602083106104635780518252601f199092019160209182019101610444565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052905060008151602083016000f0905083805190602001206104b88261062b565b146104f45760405162461bcd60e51b81526004018080602001828103825260338152602001806106846033913960400191505060405180910390fd5b6104fd8161062f565b5050506103ac565b600061050f6105bd565b6001600160a01b0316336001600160a01b0316148061052c575033155b15610540576105396105bd565b9050610548565b6105486101b0565b90565b6105536105bd565b6001600160a01b0316336001600160a01b03161480610570575033155b1561057d57808255610585565b6105856101b0565b5050565b60006105936105bd565b6001600160a01b0316336001600160a01b031614806105b0575033155b15610540576105396105e2565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3f90565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe4c314368756753706c61736850726f78793a20696d706c656d656e746174696f6e206973206e6f7420736574207965744c314368756753706c61736850726f78793a20636f646520776173206e6f7420636f72726563746c79206465706c6f7965642e4c314368756753706c61736850726f78793a2073797374656d2069732063757272656e746c79206265696e67207570677261646564a26469706673582212202e20c1d0062b5a698d49624edce72a713b117e88f4cd70877869b53519c1d1f964736f6c63430007060033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000009996571372066a1545d3435c6935e3f9593a7ef5

-----Decoded View---------------
Arg [0] : _owner (address): 0x9996571372066A1545D3435C6935e3F9593A7eF5

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000009996571372066a1545d3435c6935e3f9593a7ef5


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Chain Token Portfolio % Price Amount Value
ETH31.98%$5.58159,660,549.8147$890,905,867.97
ETH26.54%$73.8510,011,226.4902$739,329,076.3
ETH24.69%$1687,799,256.2354$687,799,256.24
ETH8.25%$1229,721,535.706$229,951,257.24
ETH3.51%$67,0641,457.0404$97,714,959.66
ETH1.13%$1.1727,090,570.6011$31,595,893.78
ETH0.88%$0.043614560,582,859.2383$24,449,499.31
ETH0.66%$3,609.045,076.5859$18,321,601.69
ETH0.33%$0.10666586,577,091.3398$9,234,770.14
ETH0.31%$0.30865127,552,085.2672$8,503,978.67
ETH0.26%$15.48466,761.087$7,225,461.63
ETH0.14%$6.41621,366.6642$3,982,960.32
ETH0.13%$13,569,235.5548$3,572,359.25
ETH0.12%$0.16006620,576,568.9139$3,293,609.08
ETH0.11%$13,051,057.1515$3,051,623.11
ETH0.10%$44.3161,444.6882$2,722,614.13
ETH0.09%$0.9995442,490,321.6443$2,489,186.06
ETH0.08%$0.03508764,842,169.6553$2,275,128.23
ETH0.05%$0.006921217,927,592.5046$1,508,340.07
ETH0.05%$0.7061671,998,969.952$1,411,606.61
ETH0.05%$96.8213,266.2218$1,284,459.79
ETH0.03%$0.05607616,982,026.8257$952,284.14
ETH0.03%$0.2054984,464,990.128$917,546.54
ETH0.03%$2.16407,745.695$880,730.7
ETH0.03%$0.01387959,297,999.4556$822,991.6
ETH0.03%$8.1689,837.25$733,071.96
ETH0.03%$0.3355292,086,936.1991$700,227.62
ETH0.02%$0.4701531,320,062.9956$620,631.51
ETH0.02%$4.12149,897.9185$617,579.42
ETH0.02%$2.11289,016.9668$609,825.8
ETH0.02%$0.03370516,683,243.2015$562,306.38
ETH0.02%$0.00645683,390,668.8398$538,360.99
ETH0.02%$0.924384529,342.7124$489,316.07
ETH0.02%$1.46332,014.1739$484,740.69
ETH0.01%$0.573759725,307.4903$416,151.67
ETH0.01%$0.566638712,979.3261$404,001.18
ETH0.01%$0.02470814,519,975.1957$358,762.89
ETH0.01%$3,488.26101.1535$352,849.54
ETH0.01%$2.43136,464.2981$331,608.24
ETH0.01%$0.646255463,782.3182$299,721.64
ETH<0.01%$0.329052834,877.3395$274,718.06
ETH<0.01%$0.0886793,090,652.0206$274,075.51
ETH<0.01%$1.18227,412.018$268,346.18
ETH<0.01%$1.08230,199.3079$247,694.46
ETH<0.01%$0.565698419,591.6196$237,362.14
ETH<0.01%$60.383,600$217,368
ETH<0.01%$1.32152,064.4602$200,725.09
ETH<0.01%$0.0382174,438,145.5314$169,614.43
ETH<0.01%$0.00634224,911,109.3028$157,990.74
ETH<0.01%$3.3446,682.1261$155,918.3
ETH<0.01%$1.13137,254.9339$155,098.08
ETH<0.01%$3,784.9240.1955$152,136.62
ETH<0.01%$2.8346,866.9883$132,633.58
ETH<0.01%$63.382,050.0162$129,930.03
ETH<0.01%$0.1175351,040,692.257$122,317.76
ETH<0.01%$0.017375,840,674.1215$101,454.55
ETH<0.01%$4.2124,057$101,279.97
ETH<0.01%$0.0158836,199,626.0308$98,466.3
ETH<0.01%$0.0357992,682,303.5191$96,024.4
ETH<0.01%$15.95,757.9794$91,551.87
ETH<0.01%$3,449.9819.6685$67,856
ETH<0.01%$3.1916,888.1893$53,873.32
ETH<0.01%$0.0112164,727,755.985$53,028.4
ETH<0.01%$3.2615,615.5904$50,906.82
ETH<0.01%$0.0313251,599,232.2063$50,096.22
ETH<0.01%$0.053142896,743.2957$47,654.73
ETH<0.01%$0.00000227,675,152,929$41,512.73
ETH<0.01%$0.0084334,495,881.4752$37,914.97
ETH<0.01%$1.0628,348.4888$29,964.35
ETH<0.01%$0.147066189,018$27,798.12
ETH<0.01%$0.62525638,524.0249$24,087.39
ETH<0.01%$32.68614.158$20,068.81
ETH<0.01%$0.0087332,251,909.6696$19,665.34
ETH<0.01%$2,962.025.6909$16,856.43
ETH<0.01%$0.0015749,339,319.2092$14,701.67
ETH<0.01%$24.37483.1076$11,773.33
ETH<0.01%$0.0051982,010,000$10,447.22
ETH<0.01%$2.993,394.8692$10,150.66
ETH<0.01%$0.096786101,556.1692$9,829.17
ETH<0.01%$19,351.288$9,388.69
ETH<0.01%$0.000008349,520,063.0292$2,803.15
ETH<0.01%$0.10853321,931.1581$2,380.25
ETH<0.01%$0.2821758,403.4545$2,371.24
ETH<0.01%$0.04129952,450.3274$2,166.16
ETH<0.01%$0.18388310,226.6443$1,880.51
ETH<0.01%$1.041,285.399$1,341.96
ETH<0.01%$5.89225.5904$1,328.73
ETH<0.01%$0.01453587,658.9323$1,274.12
ETH<0.01%$0.998121,252$1,249.65
ETH<0.01%$3.1344.229$1,067.11
ETH<0.01%$0.0006521,302,961.9856$850.12
ETH<0.01%$0.01283763,626.8041$816.8
ETH<0.01%$0.10945,529.7992$604.96
ETH<0.01%$0.987258609.5657$601.8
ETH<0.01%$0.00650376,131.3141$495.06
ETH<0.01%$0.999344481.0754$480.76
ETH<0.01%$0.220842,063.3626$455.67
ETH<0.01%$0.04542410,000$454.24
ETH<0.01%$0.761838548.07$417.54
ETH<0.01%$3,384.760.1148$388.54
ETH<0.01%$4.9462.0698$306.63
ETH<0.01%$0.1334692,044.1583$272.83
ETH<0.01%$0.489912498.8038$244.37
ETH<0.01%$7,401.470.0319$236.33
ETH<0.01%$0.500026360.8616$180.44
ETH<0.01%$3,263.420.0548$178.69
ETH<0.01%$11.115.1$167.61
ETH<0.01%$0.355597466.626$165.93
ETH<0.01%$1.3578.71$106.26
ETH<0.01%$0.126282767.4525$96.92
ETH<0.01%$0.0199724,249.4098$84.87
ETH<0.01%$0.155247500$77.62
ETH<0.01%$2,956.990.025$73.92
ETH<0.01%$0.093963767.148$72.08
ETH<0.01%$0.86700214.333$12.43
ETH<0.01%$25,9820.00047321$12.29
ETH<0.01%$0.077614100$7.76
ETH<0.01%$32$6
ETH<0.01%$0.40441112.2151$4.94
ETH<0.01%$0.9987693.4746$3.47
ETH<0.01%<$0.00000116,356,542.4364$3.4
ETH<0.01%$0.04398150.0029$2.2
ETH<0.01%$0.0015331,000$1.53
ETH<0.01%$1.171$1.17
ETH<0.01%$0.006387100$0.6387
ETH<0.01%$0.001051400$0.4202
ETH<0.01%$0.2985221$0.2985
ETH<0.01%$0.0306275$0.1531
ETH<0.01%$0.0731062$0.1462
OP<0.01%$3,263.0411.0064$35,914.14
OP<0.01%$2.56100.1$255.78
OP<0.01%$1190.78$190.97
OP<0.01%$8.150.06$0.489
ARB<0.01%$3,263.210.1276$416.29
BASE<0.01%$0.0146024,324.6182$63.15
BASE<0.01%<$0.000001295,774,647$16.65
BASE<0.01%$3,263.510.00090588$2.96
BSC<0.01%$607.260.0614$37.27
BSC<0.01%$3,272.230.01$32.78
ZKSYNC<0.01%$3,263.420.017$55.51
AVAX<0.01%$39.750.1251$4.97
LINEA<0.01%$3,263.420.00012171$0.3972
MATIC<0.01%$0.7618790.2075$0.158107
FTM<0.01%$0.7667430.0127$0.009738
[ 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.