ETH Price: $1,998.67 (-4.12%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

Transaction Hash
Method
Block
From
To
0x16514a910ca4c5ed2c2061bb868dd3a06035021930bb3f234e8a101ab12e7453 Transfer(pending)2026-02-15 13:29:4250 mins ago1771162182IN
Optimism: Gateway
0.00002 ETH(Pending)(Pending)
0x683044a5f72444c838a6671573a38bb5c52fcf2ad792e80f604ab767391a5adf Transfer(pending)2026-02-15 7:08:397 hrs ago1771139319IN
Optimism: Gateway
0.0007 ETH(Pending)(Pending)
0xcac03b3e9f2ac7fd7091c36f52fcc0dd5a3c3518f5d1479a78542a0f2287c757 Transfer(pending)2026-02-15 5:59:048 hrs ago1771135144IN
Optimism: Gateway
0.00006 ETH(Pending)(Pending)
0xe1092b1793798d2c31db27a6e27a67347158ec313766ee3e48ecdf724216ea42 Transfer(pending)2026-02-15 3:39:2810 hrs ago1771126768IN
Optimism: Gateway
0.000788 ETH(Pending)(Pending)
0x0e40a0ed7cafb77db36fb585577e43a61bd5bd75b281d2601f41ac698af53435 Deposit ETH(pending)2026-02-15 2:58:1811 hrs ago1771124298IN
Optimism: Gateway
0.001 ETH(Pending)(Pending)
0x157e2654633bb4878f45d26ff20d45b5789fc8a5f56e687dc3e52a792ee14398 Bridge ETH To(pending)2026-02-15 2:49:1511 hrs ago1771123755IN
Optimism: Gateway
0.00001 ETH(Pending)(Pending)
0x3da48e52b1898dd01e0b202f0284b57c9ebe054f7264fbf834f41f206634b195 Bridge ETH To(pending)2026-02-15 2:49:1511 hrs ago1771123755IN
Optimism: Gateway
0.0001 ETH(Pending)(Pending)
0x653c2b887e54ffe0173d3511ec724cee469b5db2fae0956b1ec0a7ad5fe811a0 Deposit ETH(pending)2026-02-15 2:05:3812 hrs ago1771121138IN
Optimism: Gateway
0.0008 ETH(Pending)(Pending)
0x8d0a4665f45dd32a6a27f43a57c75c6a46ae6e1df0e3fe569bc6da397a5e8fac Bridge ETH To(pending)2026-02-15 2:02:0812 hrs ago1771120928IN
Optimism: Gateway
0.0001 ETH(Pending)(Pending)
0xf1fb1223a869c1ea2bc18d1907ccae15fb2a6c9c57dd5726b85ef8822fc5fda8 Bridge ETH To(pending)2026-02-01 1:23:5514 days ago1769909035IN
Optimism: Gateway
0.0057 ETH(Pending)(Pending)
Bridge ETH To244621112026-02-15 12:09:352 hrs ago1771157375IN
Optimism: Gateway
0.002 ETH0.000047750.07690819
Deposit ERC20To244610502026-02-15 8:36:355 hrs ago1771144595IN
Optimism: Gateway
0 ETH0.000155490.24068107
Bridge ETH To244609562026-02-15 8:17:476 hrs ago1771143467IN
Optimism: Gateway
0.001497 ETH0.000023650.03797479
Bridge ETH To244609542026-02-15 8:17:236 hrs ago1771143443IN
Optimism: Gateway
0.0005 ETH0.000032060.05164036
Deposit ERC20To244609162026-02-15 8:09:476 hrs ago1771142987IN
Optimism: Gateway
0 ETH0.000027560.04266463
Deposit ERC20To244584602026-02-14 23:56:5914 hrs ago1771113419IN
Optimism: Gateway
0 ETH0.000019540.03066292
Bridge ETH To244576212026-02-14 21:08:4717 hrs ago1771103327IN
Optimism: Gateway
0.0001 ETH0.000030670.04940166
Bridge ETH To244575882026-02-14 21:02:1117 hrs ago1771102931IN
Optimism: Gateway
0.5 ETH0.000019160.03076737
Bridge ETH To244574442026-02-14 20:33:1117 hrs ago1771101191IN
Optimism: Gateway
1.25 ETH0.00002050.03292514
Bridge ETH To244572122026-02-14 19:46:4718 hrs ago1771098407IN
Optimism: Gateway
0.0001 ETH0.000039530.0636647
Bridge ETH To244572122026-02-14 19:46:4718 hrs ago1771098407IN
Optimism: Gateway
0.0001 ETH0.000039530.0636647
Bridge ETH To244572122026-02-14 19:46:4718 hrs ago1771098407IN
Optimism: Gateway
0.0001 ETH0.000039530.0636647
Bridge ETH To244564672026-02-14 17:16:3521 hrs ago1771089395IN
Optimism: Gateway
12.164 ETH0.000038120.06121376
Bridge ETH To244562612026-02-14 16:35:2321 hrs ago1771086923IN
Optimism: Gateway
0.5 ETH0.001273852.05140749
Bridge ETH To244562602026-02-14 16:35:1121 hrs ago1771086911IN
Optimism: Gateway
0.5 ETH0.001277212.05673957
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer244625292026-02-15 13:33:2346 mins ago1771162403
Optimism: Gateway
72.19693252 ETH
Finalize Bridge ...244625292026-02-15 13:33:2346 mins ago1771162403
Optimism: Gateway
72.19693252 ETH
Send Message244621112026-02-15 12:09:352 hrs ago1771157375
Optimism: Gateway
0.002 ETH
Transfer244612742026-02-15 9:21:354 hrs ago1771147295
Optimism: Gateway
157.77 ETH
Finalize Bridge ...244612742026-02-15 9:21:354 hrs ago1771147295
Optimism: Gateway
157.77 ETH
Send Message244609562026-02-15 8:17:476 hrs ago1771143467
Optimism: Gateway
0.001497 ETH
Send Message244609542026-02-15 8:17:236 hrs ago1771143443
Optimism: Gateway
0.0005 ETH
Bridge ETH To244594182026-02-15 3:09:2311 hrs ago1771124963
Optimism: Gateway
0.0002 ETH
Send Message244581102026-02-14 22:46:4715 hrs ago1771109207
Optimism: Gateway
124.48594248 ETH
Deposit ETH To244581102026-02-14 22:46:4715 hrs ago1771109207
Optimism: Gateway
124.48594248 ETH
Send Message244576212026-02-14 21:08:4717 hrs ago1771103327
Optimism: Gateway
0.0001 ETH
Send Message244575882026-02-14 21:02:1117 hrs ago1771102931
Optimism: Gateway
0.5 ETH
Send Message244574442026-02-14 20:33:1117 hrs ago1771101191
Optimism: Gateway
1.25 ETH
Send Message244572122026-02-14 19:46:4718 hrs ago1771098407
Optimism: Gateway
0.0001 ETH
Send Message244572122026-02-14 19:46:4718 hrs ago1771098407
Optimism: Gateway
0.0001 ETH
Send Message244572122026-02-14 19:46:4718 hrs ago1771098407
Optimism: Gateway
0.0001 ETH
Send Message244564902026-02-14 17:21:1120 hrs ago1771089671
Optimism: Gateway
0.001 ETH
Bridge ETH To244564902026-02-14 17:21:1120 hrs ago1771089671
Optimism: Gateway
0.001 ETH
Send Message244564672026-02-14 17:16:3521 hrs ago1771089395
Optimism: Gateway
12.164 ETH
Send Message244562612026-02-14 16:35:2321 hrs ago1771086923
Optimism: Gateway
0.5 ETH
Send Message244562602026-02-14 16:35:1121 hrs ago1771086911
Optimism: Gateway
0.5 ETH
Send Message244561722026-02-14 16:17:2322 hrs ago1771085843
Optimism: Gateway
0.00134 ETH
Send Message244559572026-02-14 15:34:2322 hrs ago1771083263
Optimism: Gateway
0.033 ETH
Send Message244555632026-02-14 14:15:2324 hrs ago1771078523
Optimism: Gateway
0.00005 ETH
Send Message244551342026-02-14 12:49:1125 hrs ago1771073351
Optimism: Gateway
70.65005 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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
// 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 2 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

API
[{"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 Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1
Net Worth in USD
$471,019,261.57

Net Worth in ETH
235,666.752527

Token Allocations
USDT 32.10%
WLD 25.35%
WBTC 15.71%
Others 26.85%
Chain Token Portfolio % Price Amount Value
ETH32.10%$0.999765151,223,746.5918$151,188,209.01
ETH25.35%$0.405582294,354,069.0875$119,384,712.05
ETH15.71%$76,149971.4984$73,978,635.47
ETH15.29%$0.473715152,000,000$72,004,725.62
ETH6.78%$131,948,914.7682$31,948,914.77
ETH1.91%$2,624.383,425.4735$8,989,744.18
ETH0.44%$8.8238,029.9771$2,094,663.8
ETH0.34%$0.08159919,733,844.1497$1,610,261.95
ETH0.32%$0.2504266,046,654.6563$1,514,241.67
ETH0.22%$125.188,462.7935$1,059,372.49
ETH0.19%$0.999561908,862.3205$908,463.33
ETH0.16%$0.03023624,795,221.5024$749,713.03
ETH0.15%$15.9843,311.4552$692,117.05
ETH0.13%$1.25488,625.7621$610,782.2
ETH0.12%$1571,719.033$573,417.11
ETH0.06%$3.4886,577.8879$301,291.05
ETH0.05%$0.02243510,050,476.7577$225,480.23
ETH0.05%$0.000345616,336,042.4052$212,418.08
ETH0.04%$0.556348380,881.3397$211,902.57
ETH0.04%$0.995127196,763.0627$195,804.3
ETH0.04%$1.17159,001.0284$186,031.2
ETH0.04%$0.000814221,537,576.8502$180,238.54
ETH0.02%$0.01138310,279,138.7822$117,012.37
ETH0.02%$0.0546712,135,584.9195$116,754.56
ETH0.02%$0.0119939,357,510.8293$112,222.57
ETH0.02%$2,767.0140.4402$111,898.41
ETH0.02%$0.036293,057,469.8692$110,956.87
ETH0.02%$0.0475791,997,753.7931$95,051.89
ETH0.02%$2,533.8837.1928$94,242.16
ETH0.02%$0.342796264,775.4193$90,763.95
ETH0.02%$0.153348553,320.918$84,850.73
ETH0.01%$161,683.9359$61,683.94
ETH0.01%$21.882,768.0435$60,564.79
ETH0.01%$0.0010457,443,996.5981$59,718.2
ETH0.01%$0.142478391,538.7895$55,785.66
ETH0.01%$0.102344534,742.9459$54,727.73
ETH0.01%$0.0098355,000,010$49,174.12
ETH0.01%$0.0411291,174,154.136$48,292.03
ETH$0.108859419,593.6196$45,676.54
ETH$0.00422710,616,835.2551$44,879.59
ETH$0.052146834,392.8365$43,510.25
ETH$0.150323278,627.7215$41,884.15
ETH$0.0233911,722,910.86$40,300.38
ETH$1.329,543.9069$38,407.08
ETH$0.0172132,229,156.4842$38,369.65
ETH$3.4910,236.9759$35,727.05
ETH$1,791.7518.6835$33,476.17
ETH$15.712,050.0262$32,205.91
ETH$0.108094293,840.6133$31,762.41
ETH$6.643,826.8633$25,410.37
ETH$0.45411550,054.3378$22,730.43
ETH$0.011761,803,478.3768$21,209.19
ETH$0.00083325,263,213.5069$21,032.64
ETH$0.00017115,249,114.8016$19,599.93
ETH$0.0070442,759,762.7446$19,438.77
ETH$1.0219,021.8481$19,402.29
ETH$0.00000127,257,708,397$18,794.9
ETH$1.0716,747.6559$17,836.25
ETH$0.024539725,307.4903$17,798.43
ETH$0.2205479,417.8481$17,514.81
ETH$0.00147711,532,052.4238$17,031.92
ETH$0.1507495,334.4205$14,370.71
ETH$0.00104113,668,588.464$14,235.31
ETH$0.0072911,841,197.6357$13,423.67
ETH$0.112686117,693.1047$13,262.34
ETH$0.005442,338,403.5004$12,720.07
ETH$12.341,016.4658$12,543.19
ETH$2,459.094.8631$11,958.8
ETH$0.0070851,622,168.6312$11,492.9
ETH$0.00509.1038$0.00
ETH$0.25541324,057$6,144.47
ETH$0.0045781,243,424.1155$5,692.06
ETH$0.9985864,995.7581$4,988.69
ETH$1,580.983.1519$4,983.16
ETH$0.00007851,941,829.5876$4,064.97
ETH$0.0007415,331,172.0571$3,950.67
ETH$0.20773118,567.1792$3,856.98
ETH$0.004311797,595.6989$3,438.31
ETH$0.00008439,953,498.0852$3,356.49
ETH$0.02736115,954.5955$3,172.53
ETH$0.07151832,238.7018$2,305.65
ETH$0.4996584,278.4859$2,137.78
ETH$0.01827692,265.3226$1,686.29
ETH$0.0004263,009,632$1,282.2
ETH$1.69676.664$1,143.56
ETH$0.0000426,738,722.7175$1,067.41
ETH$0.7771231,252$972.96
ETH$0.04035721,756.5722$878.03
ETH$0.1083986,358.5121$689.25
ETH$0.0947846,307.9614$597.89
ETH$0.000005122,785,652.1206$562.36
ETH$0.00487886,488.6118$421.93
ETH$0.000001500,000,000$368.31
ETH$7,583.420.0461$349.92
ETH$0.02690112,523.4256$336.9
ETH$1.46225.5904$329.36
ETH$0.00441767,985.5742$300.27
ETH$2,859.80.1025$293.2
ETH$0.00541746,487.0877$251.82
ETH$0.0338736,922.6154$234.49
ETH$0.000672314,034.2621$210.95
ETH$0.0803022,044.1583$164.15
ETH$0.292402446.7695$130.64
ETH$1.19107.1935$127.56
ETH$1,998.670.0588$117.43
ETH$0.0110,100$101
ETH$0.0194134,529.7992$87.94
ETH$0.00813610,226.6443$83.2
ETH$0.00290924,458.1576$71.15
ETH$0.000482113,815.0323$54.89
ETH$0.103121498.8038$51.44
ETH$0.0000341,381,539.1781$47.03
ETH$1,810.990.025$45.27
ETH$0.0007852,450.3274$40.92
ETH$0.0177242,307.3638$40.9
ETH$0.61866962.0698$38.4
ETH$0.041128767.4525$31.56
ETH$0.08735360.8616$31.52
ETH$0.0055094,249.4098$23.41
ETH$8.162$16.32
ETH$0.14702978.71$11.57
ETH$0.00011599,905.0275$11.53
ETH$0.021494466.626$10.03
ETH$0.017664500$8.83
ETH$0.00046911,746.2094$5.51
ETH$0.9926793.4746$3.45
ETH$3.131$3.13
ETH$0.07343925.7764$1.89
ETH$0.03491845$1.57
ETH$0.001738767.148$1.33
ETH$0.00091,311.4143$1.18
ETH$11$1
ETH$0.01999350.0029$0.9997
ETH$0.006602110$0.7262
ETH$0.03764615.9993$0.6023
ETH$0.5645461$0.5645
ETH$0.005393101$0.5446
ETH$0.0002561,363.3232$0.3483
ETH$0.000619400$0.2474
ETH16,356,542.4364$0.2454
ETH$0.0002371,000$0.2369
ETH$0.2062971$0.2062
ETH502,169,951.9409$0.2019
ETH$0.00081155.7873$0.1262
ETH$0.000.01$0.00
ETH$0.001,000$0.00
OP$2,000.1511.0085$22,018.69
OP$0.9999190.78$190.76
OP$0.187784122.0911$22.93
OP$3.50.06$0.21
BSC$1.866,492.1153$12,101.66
BSC$1.02100$101.99
BSC$619.180.0624$38.62
BSC$1,998.070.01$20.02
BSC$0.9996794.55$4.55
BSC804,828$0.1868
ARB$1,999.020.1276$255.02
ARB$0.9984380.1842$0.1839
BASE$0.019895320$6.37
BASE$1,9990.00200588$4.01
BASE295,774,647$2.19
BASE$0.0004834,324.6182$2.09
BASE$0.00120$0.00
AVAX$9.320.1251$1.17
LINEA$1,998.670.00012171$0.243263
POL$0.000737213.62$0.1573
POL$0.1050170.2075$0.021793
Loading...
Loading
Loading...
Loading
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.

`; } let ensZeroWidthWarningHtml = ""; if ($("#hdnIsEnsContainZeroWidthChars").val() == "true") { ensZeroWidthWarningHtml = `
${zeroWidthWarningMessage} Check the actual text at ENS.
`; } const contentHtml = `
Additional Info
Full Name:
ENS Name


Note:
  • Name tag is displayed due to forward and reverse resolution. Find out more.
  • A Domain Name is not necessarily held by a person popularly associated with the name.
${ensUnicodeWarningHtml} ${ensZeroWidthWarningHtml}
`; $('#ensName').popover({ html: true, content: contentHtml, trigger: 'manual', placement: 'right' }); $('#ensName').click(function (event) { $("#ensName").popover('toggle'); event.stopPropagation(); }); $('#ensName').on('shown.bs.popover', async () => { //disable tooltip when hovering over ens name in the main page $("[rel='tooltipEns']").each(function () { $(this).tooltip('hide'); $(this).tooltip('disable'); }); //call ajax here to get result if (!otherENSNamesHtml) { const resolvedAddressesModel = await getEnsResolvedAddress($("#hdnAddress").val(), $("#hdnEnsText").val()); otherENSNamesHtml = generateEnsPopoverGrid(resolvedAddressesModel.d); if (!otherENSNamesHtml) { otherENSNamesHtml = "There are no other names resolving to this address." } } $(".popOverEnsOwnedAddressTable").html(otherENSNamesHtml); $("#divENSDisplayName").html(ensDisplayName); // append more copy button for ENS let domainName = $("#hdnEnsText").val(); const copyEnsButtonHtml = ` `; $("#spanCopyENSAddress").html(copyEnsButtonHtml); $("[data-bs-toggle='tooltip']").tooltip(); }); $('#ensName').on('hidden.bs.popover', () => { $("[rel='tooltipEns']").each(function () { $(this).tooltip('enable'); }); }); $('#ensName').on('hide.bs.popover', () => { $("[data-bs-toggle='tooltip']").tooltip('hide'); }); $(document).click(function (e) { //$("#ensName").popover('hide'); const popoverElement = document.getElementById('popover-ens-preview'); const popoverTrigger = document.getElementById('ensName'); if (!popoverTrigger.contains(e.target) && (!popoverElement || !popoverElement.contains(e.target))) { $("#ensName").popover('hide'); } }) } async function getEnsResolvedAddress(address, currentEnsText) { try { const requestModel = { "lookupAddress": address, "primaryDomainName": currentEnsText, "provider": "ENS" }; const response = await $.ajax({ url: "/name-lookup-search.aspx/GetOtherDomainNameForAddress", type: "POST", contentType: "application/json", dataType: "json", data: JSON.stringify({ requestModel: requestModel }) }) return response; } catch { return ""; } } function generateEnsPopoverGrid(model) { if (!model || model.DomainNames.length == 0) { return ""; } let listOtherENSNames = ""; model.DomainNames.forEach(x => listOtherENSNames += x.Name); let moreOtherENSNames = ""; if (model.Total > 5) { moreOtherENSNames = `More ` } const result = `
Other names resolving to this address:
${listOtherENSNames} ${moreOtherENSNames}
`; return result; } // ===== end ENS name tag const tooltipForTokenHolding = 'More than 335 tokens found, listing and displaying the total balance of the first 200 tokens only. Click on the Coins icon to see the full list and balance.'; var adjustPosition = 0; $(document).ready(function () { switchAmountToValue(document.getElementById("headerAmountValue"), 'Value (USD)', 'Amount', true); switchAmountToValue(document.getElementById("headerIntAmountValue"), 'Value (USD)', 'Amount', true); switchMethodColumn(document.getElementById("headerMethod"), 'Method', 'Action', true); switchMethodColumn(document.getElementById("headerMethod_internaltx"), 'Method', 'Action', true); onDocumentReady(); $("[rel='tooltip']").tooltip(); $("[data-bs-toggle-second='tooltip']").tooltip({ trigger: 'hover' }); $("[rel='tooltipEns']").each(function () { $(this).tooltip({ title: $(this).attr("tooltip-title") }); }); //if (hash != '') { // activaTab(hash); //}; onAddressDocReady(); //// Note: this is causing "Copied" tooltip not showing when copy button is clicked in V3, and seems like not applicable to v3, comment out first in case there is issue //$('[data-bs-toggle="tooltip"]').click(function () { // $('[data-bs-toggle="tooltip"]').tooltip("hide"); //}); if (document.getElementById("copyaddressbutton")) { document.getElementById("copyaddressbutton").classList.remove("disabled"); } if ($("#txtSearchContract").length) { initialiseKeyupOnDocReady(); } if (!!$('#ensName')[0]) { initEnsNamePopOver(); } handleToggle(); $("#btnLoginRequired").attr("href", "/login?ref=" + window.location.pathname.slice(1)); if (window.matchMedia("(max-width: 767px)").matches) { // Mobile adjustPosition = 90; } else { // Others adjustPosition = 50; } if (tooltipForTokenHolding) { const dropdownMenuBalance = document.getElementById("dropdownMenuBalance"); if (dropdownMenuBalance) { const dropdownWrapper = dropdownMenuBalance.closest(".dropdown"); if (dropdownWrapper) { dropdownWrapper.setAttribute("title", tooltipForTokenHolding); new bootstrap.Tooltip(dropdownWrapper); } } } setIOState(); setFiltersStatus(); }); function displayAudit() { $('html, body').animate({ scrollTop: $("#auditReportId").offset().top - adjustPosition }); } function handleToggle() { var className = document.getElementsByClassName('editor'); var classNameCount = className.length; for (var j = 0; j t.innerWidth()) { if (mb + d > tb) { t.css('padding-bottom', ((mb + d) - tb)); } } else { t.css('overflow', 'visible'); } }).on('hidden.bs.dropdown', function () { $(this).css({ 'padding-bottom': '', 'overflow': '' }); }); var btn_ERC20_sort = { count: 0, reminder_count: 2, list: [], default_list: [], ERC20_sort_start: function (count) { if (document.getElementsByClassName('list-custom-divider-ERC20')[0]) { var self = this if (count != undefined) { self.count = count } var before_el = document.getElementsByClassName('list-custom-divider-ERC20')[0] var parent_el = before_el.parentNode var element_selector = parent_el.querySelectorAll(".list-custom-ERC20"); if (self.list.length == 0) { element_selector.forEach(function (e) { self.list.push(e); self.default_list.push(e); }); } $(".list-custom-ERC20").remove() var type = self.count % self.reminder_count self.sortList(type, parent_el, before_el); self.count++ } }, sortList: function (type, parent_el, before_el) { var self = this var sorted_list = [] var icon_el = $(before_el).find('button').find('i') switch (type) { case 1: icon_el.attr("class", "fad fa-sort-up") sorted_list = self.sortUsdAsc() break; default: icon_el.attr("class", "fad fa-sort-down") sorted_list = self.sortUsdDesc() } for (var i = sorted_list.length - 1; i >= 0; i--) { before_el.insertAdjacentElement('afterend', sorted_list[i]) } }, sortUsdAsc: function () { var self = this var sort_list = self.list sort_list.sort(function (a, b) { var target_a_value = self.formatCurrencyToNumber(a.querySelector('.list-usd-value').textContent.trim() || -1); var target_b_value = self.formatCurrencyToNumber(b.querySelector('.list-usd-value').textContent.trim() || -1); if (target_a_value == -1 || target_b_value == -1) { return 1; } if (target_a_value target_b_value) { return 1; } return 0 }); return sort_list }, sortUsdDesc: function () { var self = this var sort_list = self.list sort_list.sort(function (a, b) { var target_a_value = self.formatCurrencyToNumber(a.querySelector('.list-usd-value').textContent.trim() || -1); var target_b_value = self.formatCurrencyToNumber(b.querySelector('.list-usd-value').textContent.trim() || -1); if (target_a_value target_b_value) { return -1; } return 0 }); return sort_list }, formatCurrencyToNumber: function (strCurrency) { if (typeof strCurrency == "number") return strCurrency else return Number(strCurrency.replace(/[^0-9.-]+/g, "")); }, } $("#btn_ERC20_sort").on("click", function (event) { event.preventDefault(); setTimeout(function () { btn_ERC20_sort.ERC20_sort_start() }, 10) }) function hrefTokenHolding() { var location = "/tokenholdings?a=0x99c9fc46f92e8a1c0dec1b1747d010903e884be1" var queryString = $("input.form-control.form-control-xs.search.mb-3")[0].value if (queryString) { location += "&q=" + queryString } window.location.href = location } function toggleLoginModal() { $('#loginRequiredModal').modal('toggle'); } function setIOState() { const mainAddress = $("#hdnAddress").val()?.toLowerCase(); const currentFilters = new URLSearchParams(window.location.search); const faddr = currentFilters.get("fadd")?.toLowerCase(); const taddr = currentFilters.get("tadd")?.toLowerCase(); $(".dropdown-item-io").removeClass("active"); if (taddr) { if (taddr.indexOf(mainAddress) != -1) { $("#btnInTxFilter").addClass("active"); $("#btnInIntlTxFilter").addClass("active"); $(".js-listbox-item").text("IN"); } else { $("#btnOutTxFilter").addClass("active"); $("#btnOutIntlTxFilter").addClass("active"); $(".js-listbox-item").text("OUT"); } } else if (faddr) { if (faddr.indexOf(mainAddress) != -1) { $("#btnOutTxFilter").addClass("active"); $("#btnOutIntlTxFilter").addClass("active"); $(".js-listbox-item").text("OUT"); } else { $("#btnInTxFilter").addClass("active"); $("#btnInIntlTxFilter").addClass("active"); $(".js-listbox-item").text("IN"); } } else { $("#btnAnyTxFilter").addClass("active"); $("#btnAnyIntlTxFilter").addClass("active"); $(".js-listbox-item").text("ANY"); } } function setFiltersStatus() { if (isSignedIn == "0") { disableControl("#dropdownMethod"); disableControl("#dropdownAge"); disableControl("#dropdownFrom"); disableControl("#dropdownIO"); disableControl("#dropdownTo"); disableControl("#btnDropdownAmount"); disableControl("#dropdownAgeIntlTxns"); disableControl("#dropdownFromIntlTxns"); disableControl("#dropdownIOIntlTxns"); disableControl("#dropdownToIntlTxns"); disableControl("#btnDropdownAmountIntlTxns"); $(".dropdown-filters").tooltip(); } } function disableControl(selector) { $(selector).prop("disabled", true); }