ETH Price: $1,579.92 (-2.17%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Create Account222453952025-04-11 11:26:599 days ago1744370819IN
0x00000000...813775758
0 ETH0.000154881.63137147
Create Account222337342025-04-09 20:27:2310 days ago1744230443IN
0x00000000...813775758
0 ETH0.000318173.35127426
Create Account222067962025-04-06 2:09:2314 days ago1743905363IN
0x00000000...813775758
0 ETH0.000136431.43672034
Create Account222067852025-04-06 2:07:1114 days ago1743905231IN
0x00000000...813775758
0 ETH0.000132061.39102298
Create Account221894842025-04-03 16:09:2317 days ago1743696563IN
0x00000000...813775758
0 ETH0.000231772.44066577
Create Account221894502025-04-03 16:02:3517 days ago1743696155IN
0x00000000...813775758
0 ETH0.00016941.7842678
Create Account220996522025-03-22 3:11:4729 days ago1742613107IN
0x00000000...813775758
0 ETH0.000090170.94980028
Create Account220996452025-03-22 3:10:2329 days ago1742613023IN
0x00000000...813775758
0 ETH0.000088070.92768006
Create Account220996322025-03-22 3:07:4729 days ago1742612867IN
0x00000000...813775758
0 ETH0.000088360.9304796
Create Account220995912025-03-22 2:59:2329 days ago1742612363IN
0x00000000...813775758
0 ETH0.000084610.89120487
Create Account220965352025-03-21 16:47:2330 days ago1742575643IN
0x00000000...813775758
0 ETH0.000096551.01670167
Create Account220965212025-03-21 16:44:3530 days ago1742575475IN
0x00000000...813775758
0 ETH0.000100171.05501913
Create Account216684962025-01-20 21:49:2389 days ago1737409763IN
0x00000000...813775758
0 ETH0.0022403523.59439088
Create Account206672382024-09-03 3:02:59229 days ago1725332579IN
0x00000000...813775758
0 ETH0.000130591.375861
Create Account201741802024-06-26 6:49:59298 days ago1719384599IN
0x00000000...813775758
0 ETH0.000324013.41327261
Create Account197637522024-04-29 21:49:47355 days ago1714427387IN
0x00000000...813775758
0 ETH0.00063856.72446737
Create Account197533592024-04-28 10:55:59357 days ago1714301759IN
0x00000000...813775758
0 ETH0.000788148.30140064
Create Account197532712024-04-28 10:38:23357 days ago1714300703IN
0x00000000...813775758
0 ETH0.00017846.97349
Create Account197532432024-04-28 10:32:47357 days ago1714300367IN
0x00000000...813775758
0 ETH0.000179657.02260622
Create Account197531962024-04-28 10:23:23357 days ago1714299803IN
0x00000000...813775758
0 ETH0.000198457.75745961
Create Account197531752024-04-28 10:19:11357 days ago1714299551IN
0x00000000...813775758
0 ETH0.000920759.69576564
Create Account196353792024-04-11 22:32:59373 days ago1712874779IN
0x00000000...813775758
0 ETH0.0003624214.1798768
Create Account196353792024-04-11 22:32:59373 days ago1712874779IN
0x00000000...813775758
0 ETH0.0013462514.1798768
Create Account192426822024-02-16 19:58:23428 days ago1708113503IN
0x00000000...813775758
0 ETH0.0024661125.87062106
Create Account191601882024-02-05 6:07:23440 days ago1707113243IN
0x00000000...813775758
0 ETH0.0012476313.14283219
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
0x3d60ad80222899672025-04-17 16:40:233 days ago1744908023
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222816332025-04-16 12:43:354 days ago1744807415
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222453952025-04-11 11:26:599 days ago1744370819
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222340992025-04-09 21:40:3510 days ago1744234835
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222337342025-04-09 20:27:2310 days ago1744230443
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222320432025-04-09 14:48:1111 days ago1744210091
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222198042025-04-07 21:48:2312 days ago1744062503
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222067962025-04-06 2:09:2314 days ago1743905363
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80222067852025-04-06 2:07:1114 days ago1743905231
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221917572025-04-03 23:46:1116 days ago1743723971
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221894842025-04-03 16:09:2317 days ago1743696563
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221894502025-04-03 16:02:3517 days ago1743696155
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221453962025-03-28 12:25:3523 days ago1743164735
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221453822025-03-28 12:22:4723 days ago1743164567
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221425472025-03-28 2:52:3523 days ago1743130355
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221424812025-03-28 2:39:1123 days ago1743129551
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221319502025-03-26 15:22:3525 days ago1743002555
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221229122025-03-25 9:05:2326 days ago1742893523
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221229002025-03-25 9:02:5926 days ago1742893379
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80221222652025-03-25 6:55:5926 days ago1742885759
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80220996522025-03-22 3:11:4729 days ago1742613107
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80220996452025-03-22 3:10:2329 days ago1742613023
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80220996322025-03-22 3:07:4729 days ago1742612867
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80220995912025-03-22 2:59:2329 days ago1742612363
0x00000000...813775758
 Contract Creation0 ETH
0x3d60ad80220965352025-03-21 16:47:2330 days ago1742575643
0x00000000...813775758
 Contract Creation0 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ERC6551Registry

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
london EvmVersion
File 1 of 1 : ERC6551Registry.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;

interface IERC6551Registry {
    /**
     * @dev The registry MUST emit the ERC6551AccountCreated event upon successful account creation.
     */
    event ERC6551AccountCreated(
        address account,
        address indexed implementation,
        bytes32 salt,
        uint256 chainId,
        address indexed tokenContract,
        uint256 indexed tokenId
    );

    /**
     * @dev The registry MUST revert with AccountCreationFailed error if the create2 operation fails.
     */
    error AccountCreationFailed();

    /**
     * @dev Creates a token bound account for a non-fungible token.
     *
     * If account has already been created, returns the account address without calling create2.
     *
     * Emits ERC6551AccountCreated event.
     *
     * @return account The address of the token bound account
     */
    function createAccount(
        address implementation,
        bytes32 salt,
        uint256 chainId,
        address tokenContract,
        uint256 tokenId
    ) external returns (address account);

    /**
     * @dev Returns the computed token bound account address for a non-fungible token.
     *
     * @return account The address of the token bound account
     */
    function account(
        address implementation,
        bytes32 salt,
        uint256 chainId,
        address tokenContract,
        uint256 tokenId
    ) external view returns (address account);
}

contract ERC6551Registry is IERC6551Registry {
    function createAccount(
        address implementation,
        bytes32 salt,
        uint256 chainId,
        address tokenContract,
        uint256 tokenId
    ) external returns (address) {
        assembly {
            // Memory Layout:
            // ----
            // 0x00   0xff                           (1 byte)
            // 0x01   registry (address)             (20 bytes)
            // 0x15   salt (bytes32)                 (32 bytes)
            // 0x35   Bytecode Hash (bytes32)        (32 bytes)
            // ----
            // 0x55   ERC-1167 Constructor + Header  (20 bytes)
            // 0x69   implementation (address)       (20 bytes)
            // 0x5D   ERC-1167 Footer                (15 bytes)
            // 0x8C   salt (uint256)                 (32 bytes)
            // 0xAC   chainId (uint256)              (32 bytes)
            // 0xCC   tokenContract (address)        (32 bytes)
            // 0xEC   tokenId (uint256)              (32 bytes)

            // Silence unused variable warnings
            pop(chainId)

            // Copy bytecode + constant data to memory
            calldatacopy(0x8c, 0x24, 0x80) // salt, chainId, tokenContract, tokenId
            mstore(0x6c, 0x5af43d82803e903d91602b57fd5bf3) // ERC-1167 footer
            mstore(0x5d, implementation) // implementation
            mstore(0x49, 0x3d60ad80600a3d3981f3363d3d373d3d3d363d73) // ERC-1167 constructor + header

            // Copy create2 computation data to memory
            mstore8(0x00, 0xff) // 0xFF
            mstore(0x35, keccak256(0x55, 0xb7)) // keccak256(bytecode)
            mstore(0x01, shl(96, address())) // registry address
            mstore(0x15, salt) // salt

            // Compute account address
            let computed := keccak256(0x00, 0x55)

            // If the account has not yet been deployed
            if iszero(extcodesize(computed)) {
                // Deploy account contract
                let deployed := create2(0, 0x55, 0xb7, salt)

                // Revert if the deployment fails
                if iszero(deployed) {
                    mstore(0x00, 0x20188a59) // `AccountCreationFailed()`
                    revert(0x1c, 0x04)
                }

                // Store account address in memory before salt and chainId
                mstore(0x6c, deployed)

                // Emit the ERC6551AccountCreated event
                log4(
                    0x6c,
                    0x60,
                    // `ERC6551AccountCreated(address,address,bytes32,uint256,address,uint256)`
                    0x79f19b3655ee38b1ce526556b7731a20c8f218fbda4a3990b6cc4172fdf88722,
                    implementation,
                    tokenContract,
                    tokenId
                )

                // Return the account address
                return(0x6c, 0x20)
            }

            // Otherwise, return the computed account address
            mstore(0x00, shr(96, shl(96, computed)))
            return(0x00, 0x20)
        }
    }

    function account(
        address implementation,
        bytes32 salt,
        uint256 chainId,
        address tokenContract,
        uint256 tokenId
    ) external view returns (address) {
        assembly {
            // Silence unused variable warnings
            pop(chainId)
            pop(tokenContract)
            pop(tokenId)

            // Copy bytecode + constant data to memory
            calldatacopy(0x8c, 0x24, 0x80) // salt, chainId, tokenContract, tokenId
            mstore(0x6c, 0x5af43d82803e903d91602b57fd5bf3) // ERC-1167 footer
            mstore(0x5d, implementation) // implementation
            mstore(0x49, 0x3d60ad80600a3d3981f3363d3d373d3d3d363d73) // ERC-1167 constructor + header

            // Copy create2 computation data to memory
            mstore8(0x00, 0xff) // 0xFF
            mstore(0x35, keccak256(0x55, 0xb7)) // keccak256(bytecode)
            mstore(0x01, shl(96, address())) // registry address
            mstore(0x15, salt) // salt

            // Store computed account address in memory
            mstore(0x00, shr(96, shl(96, keccak256(0x00, 0x55))))

            // Return computed account address
            return(0x00, 0x20)
        }
    }
}

Settings
{
  "remappings": [
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "@openzeppelin/=lib/openzeppelin-contracts/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"name":"AccountCreationFailed","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"implementation","type":"address"},{"indexed":false,"internalType":"bytes32","name":"salt","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"chainId","type":"uint256"},{"indexed":true,"internalType":"address","name":"tokenContract","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ERC6551AccountCreated","type":"event"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"tokenContract","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"account","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"tokenContract","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"createAccount","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5061023b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063246a00211461003b5780638a54c52f1461006a575b600080fd5b61004e6100493660046101b7565b61007d565b6040516001600160a01b03909116815260200160405180910390f35b61004e6100783660046101b7565b6100e1565b600060806024608c376e5af43d82803e903d91602b57fd5bf3606c5285605d52733d60ad80600a3d3981f3363d3d373d3d3d363d7360495260ff60005360b76055206035523060601b60015284601552605560002060601b60601c60005260206000f35b600060806024608c376e5af43d82803e903d91602b57fd5bf3606c5285605d52733d60ad80600a3d3981f3363d3d373d3d3d363d7360495260ff60005360b76055206035523060601b600152846015526055600020803b61018b578560b760556000f580610157576320188a596000526004601cfd5b80606c52508284887f79f19b3655ee38b1ce526556b7731a20c8f218fbda4a3990b6cc4172fdf887226060606ca46020606cf35b8060601b60601c60005260206000f35b80356001600160a01b03811681146101b257600080fd5b919050565b600080600080600060a086880312156101cf57600080fd5b6101d88661019b565b945060208601359350604086013592506101f46060870161019b565b94979396509194608001359291505056fea2646970667358221220ea2fe53af507453c64dd7c1db05549fa47a298dfb825d6d11e1689856135f16764736f6c63430008110033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063246a00211461003b5780638a54c52f1461006a575b600080fd5b61004e6100493660046101b7565b61007d565b6040516001600160a01b03909116815260200160405180910390f35b61004e6100783660046101b7565b6100e1565b600060806024608c376e5af43d82803e903d91602b57fd5bf3606c5285605d52733d60ad80600a3d3981f3363d3d373d3d3d363d7360495260ff60005360b76055206035523060601b60015284601552605560002060601b60601c60005260206000f35b600060806024608c376e5af43d82803e903d91602b57fd5bf3606c5285605d52733d60ad80600a3d3981f3363d3d373d3d3d363d7360495260ff60005360b76055206035523060601b600152846015526055600020803b61018b578560b760556000f580610157576320188a596000526004601cfd5b80606c52508284887f79f19b3655ee38b1ce526556b7731a20c8f218fbda4a3990b6cc4172fdf887226060606ca46020606cf35b8060601b60601c60005260206000f35b80356001600160a01b03811681146101b257600080fd5b919050565b600080600080600060a086880312156101cf57600080fd5b6101d88661019b565b945060208601359350604086013592506101f46060870161019b565b94979396509194608001359291505056fea2646970667358221220ea2fe53af507453c64dd7c1db05549fa47a298dfb825d6d11e1689856135f16764736f6c63430008110033

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
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.