ETH Price: $2,599.76 (-16.15%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Contribute214691272024-12-24 1:43:3541 days ago1735004615IN
0x00000000...BE063bE95
0.01 ETH0.003609016.88314702
Contribute214689762024-12-24 1:12:5941 days ago1735002779IN
0x00000000...BE063bE95
0.01 ETH0.000994119.4
Contribute214651942024-12-23 12:30:1141 days ago1734957011IN
0x00000000...BE063bE95
0.01 ETH0.000937948.86773996
Contribute214648222024-12-23 11:15:1141 days ago1734952511IN
0x00000000...BE063bE95
0.01 ETH0.00080816.57280226
Contribute214629052024-12-23 4:48:5942 days ago1734929339IN
0x00000000...BE063bE95
0.2 ETH0.000807795.28165695
Contribute214614112024-12-22 23:47:4742 days ago1734911267IN
0x00000000...BE063bE95
0.1 ETH0.002479514.55543601
Contribute214614082024-12-22 23:47:1142 days ago1734911231IN
0x00000000...BE063bE95
0.01 ETH0.000517144.24241583
Contribute214613632024-12-22 23:37:5942 days ago1734910679IN
0x00000000...BE063bE95
0.01 ETH0.000453424.44861859
Contribute214612862024-12-22 23:22:3542 days ago1734909755IN
0x00000000...BE063bE95
0.01 ETH0.002500694.76924482
Contribute214612742024-12-22 23:20:1142 days ago1734909611IN
0x00000000...BE063bE95
0.2 ETH0.002867745.34225883
Contribute214612612024-12-22 23:17:3542 days ago1734909455IN
0x00000000...BE063bE95
0.05 ETH0.000710976
Contribute214610812024-12-22 22:41:2342 days ago1734907283IN
0x00000000...BE063bE95
0.1 ETH0.000949346.20823407
Transfer214354192024-12-19 8:37:2345 days ago1734597443IN
0x00000000...BE063bE95
0.01356547 ETH0.0065186912.44808124
Contribute214311532024-12-18 18:18:1146 days ago1734545891IN
0x00000000...BE063bE95
0.01 ETH0.0114562927.21293318
Contribute214310782024-12-18 18:03:1146 days ago1734544991IN
0x00000000...BE063bE95
0.002 ETH0.0058444226.99354826
Contribute214148162024-12-16 11:35:4748 days ago1734348947IN
0x00000000...BE063bE95
0.001 ETH0.0025980814.37730937
Contribute214147782024-12-16 11:27:5948 days ago1734348479IN
0x00000000...BE063bE95
0.004 ETH0.0023130112.8
Contribute214147522024-12-16 11:22:4748 days ago1734348167IN
0x00000000...BE063bE95
0.002 ETH0.0016809412.69990556
Contribute214142922024-12-16 9:50:2348 days ago1734342623IN
0x00000000...BE063bE95
0.00999 ETH0.0018800217.781925
Contribute214103422024-12-15 20:36:2349 days ago1734294983IN
0x00000000...BE063bE95
0.02 ETH0.0058983810.7820483
Contribute214080932024-12-15 13:03:1149 days ago1734267791IN
0x00000000...BE063bE95
0.01 ETH0.0013399712.66477204
Contribute214080522024-12-15 12:54:5949 days ago1734267299IN
0x00000000...BE063bE95
0.015 ETH0.0015870315
Contribute214080452024-12-15 12:53:3549 days ago1734267215IN
0x00000000...BE063bE95
0.01 ETH0.0015728515
Contribute214080422024-12-15 12:52:5949 days ago1734267179IN
0x00000000...BE063bE95
0.01 ETH0.000939268.87997568
Contribute214080212024-12-15 12:48:4749 days ago1734266927IN
0x00000000...BE063bE95
0.01 ETH0.003276188.29746838
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
214712022024-12-24 8:41:1140 days ago1735029671
0x00000000...BE063bE95
0.034 ETH
214712022024-12-24 8:41:1140 days ago1735029671
0x00000000...BE063bE95
0.034 ETH
214691272024-12-24 1:43:3541 days ago1735004615
0x00000000...BE063bE95
0.01 ETH
214689762024-12-24 1:12:5941 days ago1735002779
0x00000000...BE063bE95
0.01 ETH
214657072024-12-23 14:13:3541 days ago1734963215
0x00000000...BE063bE95
0.65 ETH
214657072024-12-23 14:13:3541 days ago1734963215
0x00000000...BE063bE95
0.65 ETH
214651942024-12-23 12:30:1141 days ago1734957011
0x00000000...BE063bE95
0.01 ETH
214648222024-12-23 11:15:1141 days ago1734952511
0x00000000...BE063bE95
0.01 ETH
214643102024-12-23 9:32:1141 days ago1734946331
0x00000000...BE063bE95
12.16689815 ETH
214643102024-12-23 9:32:1141 days ago1734946331
0x00000000...BE063bE95
12.16689815 ETH
214629052024-12-23 4:48:5942 days ago1734929339
0x00000000...BE063bE95
0.2 ETH
214614112024-12-22 23:47:4742 days ago1734911267
0x00000000...BE063bE95
0.1 ETH
214614082024-12-22 23:47:1142 days ago1734911231
0x00000000...BE063bE95
0.01 ETH
214613632024-12-22 23:37:5942 days ago1734910679
0x00000000...BE063bE95
0.01 ETH
214612862024-12-22 23:22:3542 days ago1734909755
0x00000000...BE063bE95
0.01 ETH
214612742024-12-22 23:20:1142 days ago1734909611
0x00000000...BE063bE95
0.2 ETH
214612612024-12-22 23:17:3542 days ago1734909455
0x00000000...BE063bE95
0.05 ETH
214610812024-12-22 22:41:2342 days ago1734907283
0x00000000...BE063bE95
0.1 ETH
214354192024-12-19 8:37:2345 days ago1734597443
0x00000000...BE063bE95
0.01356547 ETH
214311532024-12-18 18:18:1146 days ago1734545891
0x00000000...BE063bE95
0.01 ETH
214310782024-12-18 18:03:1146 days ago1734544991
0x00000000...BE063bE95
0.002 ETH
214148162024-12-16 11:35:4748 days ago1734348947
0x00000000...BE063bE95
0.001 ETH
214147782024-12-16 11:27:5948 days ago1734348479
0x00000000...BE063bE95
0.004 ETH
214147522024-12-16 11:22:4748 days ago1734348167
0x00000000...BE063bE95
0.002 ETH
214142922024-12-16 9:50:2348 days ago1734342623
0x00000000...BE063bE95
0.00999 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
NLP

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
Yes with 9999999 runs

Other Settings:
cancun EvmVersion
File 1 of 1 : NLP.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.19;

/// @notice NANI LP
/// @author z0r0z.eth (liquid swap accoutrement)
/// @custom:coauthor tabish.eth (lottery magick)
contract NLP {
    address constant NANI = 0x00000000000007C8612bA63Df8DdEfD9E6077c97;
    address constant WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
    address constant DAO = 0xDa000000000000d2885F108500803dfBAaB2f2aA;
    address constant LP = 0x58Cf91C080F7052f6dA209BF605D6Cf1cefD65F3;
    address constant POS_MNGR = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88;

    uint160 constant MAX_SQRT_RATIO_MINUS_ONE = 1461446703485210103287273052203988822378723970341;
    int24 constant TICK_SPACING = 60; // 0.3% pool.

    uint256 constant MIN_DISCOUNT = 66;
    uint256 constant MAX_DISCOUNT = 95;
    uint256 constant TWO_192 = 2 ** 192;

    error InsufficientOutput();

    constructor() payable {
        IERC20(NANI).approve(POS_MNGR, type(uint256).max);
        IERC20(WETH).approve(POS_MNGR, type(uint256).max);
    }

    function contribute(address to, uint256 minOut) public payable {
        unchecked {
            assembly ("memory-safe") {
                pop(call(gas(), WETH, callvalue(), codesize(), 0x00, codesize(), 0x00))
            }

            (uint160 sqrtPriceX96, int24 currentTick,,,,,) = IUniswapV3Pool(LP).slot0();
            uint256 random = _randomish(sqrtPriceX96, currentTick);

            if (random % 2 == 0) {
                uint256 liquidityPortion = (msg.value * 4) / 5;

                // Calculate discounted NANI amount for LP position:
                uint256 naniForLP = (liquidityPortion * TWO_192)
                    / (uint256(sqrtPriceX96) * uint256(sqrtPriceX96)) * 100
                    / (MIN_DISCOUNT + (random % (MAX_DISCOUNT - MIN_DISCOUNT + 1)));

                INonfungiblePositionManager.MintParams memory params = INonfungiblePositionManager
                    .MintParams({
                    token0: NANI,
                    token1: WETH,
                    fee: 3000,
                    tickLower: (currentTick - 600) / 60 * 60,
                    tickUpper: (currentTick + 600) / 60 * 60,
                    amount0Desired: naniForLP,
                    amount1Desired: liquidityPortion,
                    amount0Min: 0,
                    amount1Min: 0,
                    recipient: to,
                    deadline: block.timestamp
                });

                INonfungiblePositionManager(POS_MNGR).mint(params);

                (int256 swapNANI,) = IUniswapV3Pool(LP).swap(
                    to, false, int256(msg.value - liquidityPortion), MAX_SQRT_RATIO_MINUS_ONE, ""
                );
                if (naniForLP + uint256(-(swapNANI)) < minOut) revert InsufficientOutput();
            } else {
                (int256 amount0,) = IUniswapV3Pool(LP).swap(
                    to, false, int256(msg.value), MAX_SQRT_RATIO_MINUS_ONE, ""
                );
                if (uint256(-(amount0)) < minOut) revert InsufficientOutput();
            }
        }
    }

    function contributeFullRange(address to, uint256 minOut) public payable {
        unchecked {
            assembly ("memory-safe") {
                pop(call(gas(), WETH, callvalue(), codesize(), 0x00, codesize(), 0x00))
            }

            (uint160 sqrtPriceX96, int24 currentTick,,,,,) = IUniswapV3Pool(LP).slot0();
            uint256 random = _randomish(sqrtPriceX96, currentTick);

            if (random % 2 == 0) {
                uint256 liquidityPortion = (msg.value * 4) / 5;

                // Calculate discounted NANI amount for LP position:
                uint256 naniForLP = (liquidityPortion * TWO_192)
                    / (uint256(sqrtPriceX96) * uint256(sqrtPriceX96)) * 100
                    / (MIN_DISCOUNT + (random % (MAX_DISCOUNT - MIN_DISCOUNT + 1)));

                INonfungiblePositionManager.MintParams memory params = INonfungiblePositionManager
                    .MintParams({
                    token0: NANI,
                    token1: WETH,
                    fee: 3000,
                    tickLower: -887220,
                    tickUpper: 887220,
                    amount0Desired: naniForLP,
                    amount1Desired: liquidityPortion,
                    amount0Min: 0,
                    amount1Min: 0,
                    recipient: to,
                    deadline: block.timestamp
                });

                INonfungiblePositionManager(POS_MNGR).mint(params);

                (int256 swapNANI,) = IUniswapV3Pool(LP).swap(
                    to, false, int256(msg.value - liquidityPortion), MAX_SQRT_RATIO_MINUS_ONE, ""
                );
                if (naniForLP + uint256(-(swapNANI)) < minOut) revert InsufficientOutput();
            } else {
                (int256 amount0,) = IUniswapV3Pool(LP).swap(
                    to, false, int256(msg.value), MAX_SQRT_RATIO_MINUS_ONE, ""
                );
                if (uint256(-(amount0)) < minOut) revert InsufficientOutput();
            }
        }
    }

    function inscribe() public payable {}

    function tribute() public payable {
        assembly ("memory-safe") {
            pop(call(gas(), DAO, selfbalance(), codesize(), 0x00, codesize(), 0x00))
        }
    }

    function withdraw(uint256 amount) public payable {
        require(msg.sender == DAO);
        IERC20(NANI).transfer(DAO, amount);
    }

    function _randomish(uint160 sqrtPriceX96, int24 tick) internal view returns (uint256 r) {
        assembly ("memory-safe") {
            let m := mload(0x40)
            mstore(m, sqrtPriceX96)
            mstore(add(m, 0x20), tick)
            mstore(add(m, 0x40), caller())
            mstore(add(m, 0x60), selfbalance())
            mstore(add(m, 0x80), blockhash(sub(number(), 1)))
            mstore(add(m, 0xA0), timestamp())
            mstore(add(m, 0xC0), balance(DAO))
            mstore(add(m, 0xE0), gas())
            r := keccak256(m, 0x100)
        }
    }

    fallback() external payable {
        assembly ("memory-safe") {
            let amount1Delta := calldataload(0x24)
            mstore(0x00, 0xa9059cbb000000000000000000000000)
            mstore(0x14, LP)
            mstore(0x34, amount1Delta)
            pop(call(gas(), WETH, 0, 0x10, 0x44, codesize(), 0x00))
        }
    }

    receive() external payable {
        contribute(msg.sender, 0);
    }
}

interface IERC20 {
    function transfer(address, uint256) external returns (bool);
    function approve(address, uint256) external returns (bool);
}

interface INonfungiblePositionManager {
    struct MintParams {
        address token0;
        address token1;
        uint24 fee;
        int24 tickLower;
        int24 tickUpper;
        uint256 amount0Desired;
        uint256 amount1Desired;
        uint256 amount0Min;
        uint256 amount1Min;
        address recipient;
        uint256 deadline;
    }

    function mint(MintParams calldata)
        external
        payable
        returns (uint256, uint128, uint256, uint256);
}

interface IUniswapV3Pool {
    function slot0() external view returns (uint160, int24, uint16, uint16, uint16, uint8, bool);

    function swap(address, bool, int256, uint160, bytes calldata)
        external
        returns (int256, int256);
}

Settings
{
  "remappings": [
    "@solady/=lib/solady/",
    "@forge/=lib/forge-std/src/",
    "forge-std/=lib/forge-std/src/",
    "solady/=lib/solady/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 9999999
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "cancun",
  "viaIR": false,
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"inputs":[],"name":"InsufficientOutput","type":"error"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"minOut","type":"uint256"}],"name":"contribute","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"minOut","type":"uint256"}],"name":"contributeFullRange","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"inscribe","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"tribute","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604081905263095ea7b360e01b905273c36442b4a4522e871399cd717abdd847ab11fe886084525f1960a4526d07c8612ba63df8ddefd9e6077c9763095ea7b360c46020604051808303815f875af115801561005f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100839190610117565b5060405163095ea7b360e01b815273c36442b4a4522e871399cd717abdd847ab11fe8860048201525f19602482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc29063095ea7b3906044016020604051808303815f875af11580156100ed573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101119190610117565b5061013d565b5f60208284031215610127575f5ffd5b81518015158114610136575f5ffd5b9392505050565b610c478061014a5f395ff3fe60806040526004361061005d575f3560e01c8063a51e85d311610042578063a51e85d3146100e6578063c7d12e24146100f9578063de52f07d1461006c5761006e565b80632e1a7d4d146100c05780638418cd99146100d35761006e565b3661006e5761006c335f610101565b005b6fa9059cbb0000000000000000000000005f9081527358cf91c080f7052f6da209bf605d6cf1cefd65f360145260243560345238604460108373c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1005b61006c6100ce36600461094a565b6105ee565b61006c6100e1366004610985565b610101565b61006c6100f4366004610985565b6106b1565b61006c6108d5565b5f385f383473c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1505f5f7358cf91c080f7052f6da209bf605d6cf1cefd65f373ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e060405180830381865afa15801561017d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a191906109d4565b5050505050915091505f6101b583836108f4565b9050600281065f036104cf57600534600402045f6042601e84060173ffffffffffffffffffffffffffffffffffffffff86168002780100000000000000000000000000000000000000000000000084028161021257610212610a67565b046064028161022357610223610a67565b0490505f6040518061016001604052806d07c8612ba63df8ddefd9e6077c9773ffffffffffffffffffffffffffffffffffffffff16815260200173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc273ffffffffffffffffffffffffffffffffffffffff168152602001610bb862ffffff168152602001603c610258880360020b816102b1576102b1610a67565b05603c0260020b8152602001603c876102580160020b816102d4576102d4610a67565b05603c0260020b81526020018381526020018481526020015f81526020015f81526020018973ffffffffffffffffffffffffffffffffffffffff16815260200142815250905073c36442b4a4522e871399cd717abdd847ab11fe8873ffffffffffffffffffffffffffffffffffffffff166388316456826040518263ffffffff1660e01b81526004016103679190610a94565b6080604051808303815f875af1158015610383573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a79190610b7f565b50506040517f128acb0800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b1660048201525f6024820181905234879003604483015273fffd8963efd1fc6a506488495d951d5263988d25606483015260a0608483015260a4820181905292507358cf91c080f7052f6da209bf605d6cf1cefd65f3915063128acb089060c40160408051808303815f875af1158015610461573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104859190610bcf565b50905087815f03840110156104c6576040517fbb2875c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050506105e7565b6040517f128acb0800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861660048201525f6024820181905234604483015273fffd8963efd1fc6a506488495d951d5263988d25606483015260a0608483015260a48201819052907358cf91c080f7052f6da209bf605d6cf1cefd65f39063128acb089060c40160408051808303815f875af1158015610582573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a69190610bcf565b50905084815f0310156105e5576040517fbb2875c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b5050505050565b3373da000000000000d2885f108500803dfbaab2f2aa1461060d575f5ffd5b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273da000000000000d2885f108500803dfbaab2f2aa6004820152602481018290526d07c8612ba63df8ddefd9e6077c979063a9059cbb906044016020604051808303815f875af1158015610689573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106ad9190610bf1565b5050565b5f385f383473c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1505f5f7358cf91c080f7052f6da209bf605d6cf1cefd65f373ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e060405180830381865afa15801561072d573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075191906109d4565b5050505050915091505f61076583836108f4565b9050600281065f036104cf57600534600402045f6042601e84060173ffffffffffffffffffffffffffffffffffffffff8616800278010000000000000000000000000000000000000000000000008402816107c2576107c2610a67565b04606402816107d3576107d3610a67565b60408051610160810182526d07c8612ba63df8ddefd9e6077c97815273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26020820152610bb8818301527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2764c6060820152620d89b460808201529290910460a0830181905260c083018590525f60e0840181905261010084015273ffffffffffffffffffffffffffffffffffffffff8a166101208401524261014084015290517f8831645600000000000000000000000000000000000000000000000000000000815290925073c36442b4a4522e871399cd717abdd847ab11fe8890638831645690610367908490600401610a94565b5f385f384773da000000000000d2885f108500803dfbaab2f2aa5af150565b5f604051838152826020820152336040820152476060820152600143034060808201524260a082015273da000000000000d2885f108500803dfbaab2f2aa3160c08201525a60e082015261010090209392505050565b5f6020828403121561095a575f5ffd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff81168114610982575f5ffd5b50565b5f5f60408385031215610996575f5ffd5b82356109a181610961565b946020939093013593505050565b805161ffff811681146109c0575f5ffd5b919050565b805180151581146109c0575f5ffd5b5f5f5f5f5f5f5f60e0888a0312156109ea575f5ffd5b87516109f581610961565b8097505060208801518060020b8114610a0c575f5ffd5b9550610a1a604089016109af565b9450610a28606089016109af565b9350610a36608089016109af565b925060a088015160ff81168114610a4b575f5ffd5b9150610a5960c089016109c5565b905092959891949750929550565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b815173ffffffffffffffffffffffffffffffffffffffff16815261016081016020830151610ada602084018273ffffffffffffffffffffffffffffffffffffffff169052565b506040830151610af1604084018262ffffff169052565b506060830151610b06606084018260020b9052565b506080830151610b1b608084018260020b9052565b5060a083015160a083015260c083015160c083015260e083015160e0830152610100830151610100830152610120830151610b6f61012084018273ffffffffffffffffffffffffffffffffffffffff169052565b5061014092830151919092015290565b5f5f5f5f60808587031215610b92575f5ffd5b845160208601519094506fffffffffffffffffffffffffffffffff81168114610bb9575f5ffd5b6040860151606090960151949790965092505050565b5f5f60408385031215610be0575f5ffd5b505080516020909101519092909150565b5f60208284031215610c01575f5ffd5b610c0a826109c5565b939250505056fea2646970667358221220067e5dca5da262925ac457f6e3e8306c4dc1148ac79ee3c1fd2b26614e44eb4364736f6c634300081c0033

Deployed Bytecode

0x60806040526004361061005d575f3560e01c8063a51e85d311610042578063a51e85d3146100e6578063c7d12e24146100f9578063de52f07d1461006c5761006e565b80632e1a7d4d146100c05780638418cd99146100d35761006e565b3661006e5761006c335f610101565b005b6fa9059cbb0000000000000000000000005f9081527358cf91c080f7052f6da209bf605d6cf1cefd65f360145260243560345238604460108373c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1005b61006c6100ce36600461094a565b6105ee565b61006c6100e1366004610985565b610101565b61006c6100f4366004610985565b6106b1565b61006c6108d5565b5f385f383473c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1505f5f7358cf91c080f7052f6da209bf605d6cf1cefd65f373ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e060405180830381865afa15801561017d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a191906109d4565b5050505050915091505f6101b583836108f4565b9050600281065f036104cf57600534600402045f6042601e84060173ffffffffffffffffffffffffffffffffffffffff86168002780100000000000000000000000000000000000000000000000084028161021257610212610a67565b046064028161022357610223610a67565b0490505f6040518061016001604052806d07c8612ba63df8ddefd9e6077c9773ffffffffffffffffffffffffffffffffffffffff16815260200173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc273ffffffffffffffffffffffffffffffffffffffff168152602001610bb862ffffff168152602001603c610258880360020b816102b1576102b1610a67565b05603c0260020b8152602001603c876102580160020b816102d4576102d4610a67565b05603c0260020b81526020018381526020018481526020015f81526020015f81526020018973ffffffffffffffffffffffffffffffffffffffff16815260200142815250905073c36442b4a4522e871399cd717abdd847ab11fe8873ffffffffffffffffffffffffffffffffffffffff166388316456826040518263ffffffff1660e01b81526004016103679190610a94565b6080604051808303815f875af1158015610383573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a79190610b7f565b50506040517f128acb0800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b1660048201525f6024820181905234879003604483015273fffd8963efd1fc6a506488495d951d5263988d25606483015260a0608483015260a4820181905292507358cf91c080f7052f6da209bf605d6cf1cefd65f3915063128acb089060c40160408051808303815f875af1158015610461573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104859190610bcf565b50905087815f03840110156104c6576040517fbb2875c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050506105e7565b6040517f128acb0800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861660048201525f6024820181905234604483015273fffd8963efd1fc6a506488495d951d5263988d25606483015260a0608483015260a48201819052907358cf91c080f7052f6da209bf605d6cf1cefd65f39063128acb089060c40160408051808303815f875af1158015610582573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a69190610bcf565b50905084815f0310156105e5576040517fbb2875c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b5050505050565b3373da000000000000d2885f108500803dfbaab2f2aa1461060d575f5ffd5b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273da000000000000d2885f108500803dfbaab2f2aa6004820152602481018290526d07c8612ba63df8ddefd9e6077c979063a9059cbb906044016020604051808303815f875af1158015610689573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106ad9190610bf1565b5050565b5f385f383473c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1505f5f7358cf91c080f7052f6da209bf605d6cf1cefd65f373ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e060405180830381865afa15801561072d573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075191906109d4565b5050505050915091505f61076583836108f4565b9050600281065f036104cf57600534600402045f6042601e84060173ffffffffffffffffffffffffffffffffffffffff8616800278010000000000000000000000000000000000000000000000008402816107c2576107c2610a67565b04606402816107d3576107d3610a67565b60408051610160810182526d07c8612ba63df8ddefd9e6077c97815273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26020820152610bb8818301527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2764c6060820152620d89b460808201529290910460a0830181905260c083018590525f60e0840181905261010084015273ffffffffffffffffffffffffffffffffffffffff8a166101208401524261014084015290517f8831645600000000000000000000000000000000000000000000000000000000815290925073c36442b4a4522e871399cd717abdd847ab11fe8890638831645690610367908490600401610a94565b5f385f384773da000000000000d2885f108500803dfbaab2f2aa5af150565b5f604051838152826020820152336040820152476060820152600143034060808201524260a082015273da000000000000d2885f108500803dfbaab2f2aa3160c08201525a60e082015261010090209392505050565b5f6020828403121561095a575f5ffd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff81168114610982575f5ffd5b50565b5f5f60408385031215610996575f5ffd5b82356109a181610961565b946020939093013593505050565b805161ffff811681146109c0575f5ffd5b919050565b805180151581146109c0575f5ffd5b5f5f5f5f5f5f5f60e0888a0312156109ea575f5ffd5b87516109f581610961565b8097505060208801518060020b8114610a0c575f5ffd5b9550610a1a604089016109af565b9450610a28606089016109af565b9350610a36608089016109af565b925060a088015160ff81168114610a4b575f5ffd5b9150610a5960c089016109c5565b905092959891949750929550565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b815173ffffffffffffffffffffffffffffffffffffffff16815261016081016020830151610ada602084018273ffffffffffffffffffffffffffffffffffffffff169052565b506040830151610af1604084018262ffffff169052565b506060830151610b06606084018260020b9052565b506080830151610b1b608084018260020b9052565b5060a083015160a083015260c083015160c083015260e083015160e0830152610100830151610100830152610120830151610b6f61012084018273ffffffffffffffffffffffffffffffffffffffff169052565b5061014092830151919092015290565b5f5f5f5f60808587031215610b92575f5ffd5b845160208601519094506fffffffffffffffffffffffffffffffff81168114610bb9575f5ffd5b6040860151606090960151949790965092505050565b5f5f60408385031215610be0575f5ffd5b505080516020909101519092909150565b5f60208284031215610c01575f5ffd5b610c0a826109c5565b939250505056fea2646970667358221220067e5dca5da262925ac457f6e3e8306c4dc1148ac79ee3c1fd2b26614e44eb4364736f6c634300081c0033

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.