ETH Price: $3,475.01 (+0.13%)

Contract

0xF39789328aC94c0970abD7cA4817392670Dcc061
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SweepersSeeder

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 999999 runs

Other Settings:
default evmVersion, MIT license
File 1 of 3 : SweepersSeeder.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.17;

import { ISweepersSeeder } from './interfaces/ISweepersSeeder.sol';
import { ISweepersDescriptor } from './interfaces/ISweepersDescriptor.sol';

contract SweepersSeeder is ISweepersSeeder {

    uint256 public pantryStart = 1673913600;

    function setSpecialTimes(uint256 _pantryStart) external {
        require(msg.sender == 0x9D0717fAdDb61c48e3fCE46ABC2B2DCAA43D1255);
        pantryStart = _pantryStart;
    }
    
    /**
     * @notice Generate a pseudo-random Sweeper seed using the previous blockhash and sweeper ID.
     */
    // prettier-ignore
    function generateSeed(uint256 sweeperId, ISweepersDescriptor descriptor) external view override returns (Seed memory) {
        uint256 pseudorandomness = uint256(
            keccak256(abi.encodePacked(blockhash(block.number - 1), sweeperId))
        );

        uint256 bodyCount = descriptor.bodyCount();
        uint256 accessoryCount = descriptor.accessoryCount();
        uint256 headCount = descriptor.headCount();
        uint256 eyesCount = descriptor.eyesCount();
        uint256 mouthCount = descriptor.mouthCount();

        uint48 backgroundRandomness = uint48(pseudorandomness) % 400;
        uint48 randomBackground;

        if(block.timestamp < pantryStart) {
            if(backgroundRandomness == 0) {
                randomBackground = 3;
            } else if(backgroundRandomness <= 2) {
                randomBackground = 11;
            } else if(backgroundRandomness <= 6) {
                randomBackground = 14;
            } else if(backgroundRandomness <= 18) {
                randomBackground = 21;
            } else if(backgroundRandomness <= 98) {
                randomBackground = 24;
            } else if(backgroundRandomness <= 128) {
                randomBackground = 2;
            } else if(backgroundRandomness <= 158) {
                randomBackground = 5;
            } else if(backgroundRandomness <= 189) {
                randomBackground = 6;
            } else if(backgroundRandomness <= 229) {
                randomBackground = 7;
            } else if(backgroundRandomness <= 259) {
                randomBackground = 8;
            } else if(backgroundRandomness <= 289) {
                randomBackground = 9;
            } else if(backgroundRandomness <= 319) {
                randomBackground = 10;
            } else if(backgroundRandomness <= 349) {
                randomBackground = 1;
            } else if(backgroundRandomness <= 379) {
                randomBackground = 12;
            } else {
                randomBackground = 17;
            }
        } else {
           if(backgroundRandomness == 0) {
                randomBackground = 3;
            } else if(backgroundRandomness <= 2) {
                randomBackground = 11;
            } else if(backgroundRandomness <= 6) {
                randomBackground = 25;
            } else if(backgroundRandomness <= 18) {
                randomBackground = 21;
            } else if(backgroundRandomness <= 56) {
                randomBackground = 2;
            } else if(backgroundRandomness <= 94) {
                randomBackground = 5;
            } else if(backgroundRandomness <= 132) {
                randomBackground = 6;
            } else if(backgroundRandomness <= 170) {
                randomBackground = 7;
            } else if(backgroundRandomness <= 208) {
                randomBackground = 8;
            } else if(backgroundRandomness <= 246) {
                randomBackground = 9;
            } else if(backgroundRandomness <= 285) {
                randomBackground = 10;
            } else if(backgroundRandomness <= 323) {
                randomBackground = 1;
            } else if(backgroundRandomness <= 361) {
                randomBackground = 12;
            } else {
                randomBackground = 17;
            }
        }

        return Seed({
            background: randomBackground,
            body: uint48(
                uint48(pseudorandomness >> 48) % bodyCount
            ),
            accessory: uint48(
                uint48(pseudorandomness >> 96) % accessoryCount
            ),
            head: uint48(
                uint48(pseudorandomness >> 144) % headCount
            ),
            eyes: uint48(
                uint48(pseudorandomness >> 192) % eyesCount
            ),
            mouth: uint48(
                uint48(pseudorandomness >> 208) % mouthCount
            )
        });
    }
}

File 2 of 3 : ISweepersDescriptor.sol
// SPDX-License-Identifier: MIT

/// @title Interface for SweepersDescriptor



pragma solidity ^0.8.6;

import { ISweepersSeeder } from './ISweepersSeeder.sol';

interface ISweepersDescriptor {
    event PartsLocked();

    event DataURIToggled(bool enabled);

    event BaseURIUpdated(string baseURI);

    function arePartsLocked() external returns (bool);

    function isDataURIEnabled() external returns (bool);

    function baseURI() external returns (string memory);

    function palettes(uint8 paletteIndex, uint256 colorIndex) external view returns (string memory);

    function bgPalette(uint256 index) external view returns (uint8);

    function bgColors(uint256 index) external view returns (string memory);

    function backgrounds(uint256 index) external view returns (bytes memory);

    function bodies(uint256 index) external view returns (bytes memory);

    function accessories(uint256 index) external view returns (bytes memory);

    function heads(uint256 index) external view returns (bytes memory);

    function eyes(uint256 index) external view returns (bytes memory);

    function mouths(uint256 index) external view returns (bytes memory);

    function backgroundNames(uint256 index) external view returns (string memory);

    function bodyNames(uint256 index) external view returns (string memory);

    function accessoryNames(uint256 index) external view returns (string memory);

    function headNames(uint256 index) external view returns (string memory);

    function eyesNames(uint256 index) external view returns (string memory);

    function mouthNames(uint256 index) external view returns (string memory);

    function bgColorsCount() external view returns (uint256);

    function backgroundCount() external view returns (uint256);

    function bodyCount() external view returns (uint256);

    function accessoryCount() external view returns (uint256);

    function headCount() external view returns (uint256);

    function eyesCount() external view returns (uint256);

    function mouthCount() external view returns (uint256);

    function addManyColorsToPalette(uint8 paletteIndex, string[] calldata newColors) external;

    function addManyBgColors(string[] calldata bgColors) external;

    function addManyBackgrounds(bytes[] calldata backgrounds, uint8 _paletteAdjuster) external;

    function addManyBodies(bytes[] calldata bodies) external;

    function addManyAccessories(bytes[] calldata accessories) external;

    function addManyHeads(bytes[] calldata heads) external;

    function addManyEyes(bytes[] calldata eyes) external;

    function addManyMouths(bytes[] calldata mouths) external;

    function addManyBackgroundNames(string[] calldata backgroundNames) external;

    function addManyBodyNames(string[] calldata bodyNames) external;

    function addManyAccessoryNames(string[] calldata accessoryNames) external;

    function addManyHeadNames(string[] calldata headNames) external;

    function addManyEyesNames(string[] calldata eyesNames) external;

    function addManyMouthNames(string[] calldata mouthNames) external;

    function addColorToPalette(uint8 paletteIndex, string calldata color) external;

    function addBgColor(string calldata bgColor) external;

    function addBackground(bytes calldata background, uint8 _paletteAdjuster) external;

    function addBody(bytes calldata body) external;

    function addAccessory(bytes calldata accessory) external;

    function addHead(bytes calldata head) external;

    function addEyes(bytes calldata eyes) external;

    function addMouth(bytes calldata mouth) external;

    function addBackgroundName(string calldata backgroundName) external;

    function addBodyName(string calldata bodyName) external;

    function addAccessoryName(string calldata accessoryName) external;

    function addHeadName(string calldata headName) external;

    function addEyesName(string calldata eyesName) external;

    function addMouthName(string calldata mouthName) external;

    function lockParts() external;

    function toggleDataURIEnabled() external;

    function setBaseURI(string calldata baseURI) external;

    function tokenURI(uint256 tokenId, ISweepersSeeder.Seed memory seed) external view returns (string memory);

    function dataURI(uint256 tokenId, ISweepersSeeder.Seed memory seed) external view returns (string memory);

    function genericDataURI(
        string calldata name,
        string calldata description,
        ISweepersSeeder.Seed memory seed
    ) external view returns (string memory);

    function generateSVGImage(ISweepersSeeder.Seed memory seed) external view returns (string memory);
}

File 3 of 3 : ISweepersSeeder.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.6;

import { ISweepersDescriptor } from './ISweepersDescriptor.sol';

interface ISweepersSeeder {
    struct Seed {
        uint48 background;
        uint48 body;
        uint48 accessory;
        uint48 head;
        uint48 eyes;
        uint48 mouth;
    }

    function generateSeed(uint256 sweeperId, ISweepersDescriptor descriptor) external view returns (Seed memory);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"sweeperId","type":"uint256"},{"internalType":"contract ISweepersDescriptor","name":"descriptor","type":"address"}],"name":"generateSeed","outputs":[{"components":[{"internalType":"uint48","name":"background","type":"uint48"},{"internalType":"uint48","name":"body","type":"uint48"},{"internalType":"uint48","name":"accessory","type":"uint48"},{"internalType":"uint48","name":"head","type":"uint48"},{"internalType":"uint48","name":"eyes","type":"uint48"},{"internalType":"uint48","name":"mouth","type":"uint48"}],"internalType":"struct ISweepersSeeder.Seed","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pantryStart","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pantryStart","type":"uint256"}],"name":"setSpecialTimes","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526363c5e50060005534801561001857600080fd5b5061089d806100286000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063422e2e99146100465780636e038042146100c2578063e757ba1c146100d7575b600080fd5b61005961005436600461074a565b6100ee565b6040516100b99190600060c08201905065ffffffffffff8084511683528060208501511660208401528060408501511660408401528060608501511660608401528060808501511660808401528060a08501511660a08401525092915050565b60405180910390f35b6100d56100d0366004610793565b610725565b005b6100e060005481565b6040519081526020016100b9565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081018290529061012b6001436107ac565b604080519140602083015281018590526060016040516020818303038152906040528051906020012060001c905060008373ffffffffffffffffffffffffffffffffffffffff1663eba818066040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca91906107e6565b905060008473ffffffffffffffffffffffffffffffffffffffff16634daebac26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023d91906107e6565b905060008573ffffffffffffffffffffffffffffffffffffffff1663cc2aa0916040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b091906107e6565b905060008673ffffffffffffffffffffffffffffffffffffffff16638104468c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102ff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032391906107e6565b905060008773ffffffffffffffffffffffffffffffffffffffff16631b7afa3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610372573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061039691906107e6565b905060006103a66101908861082e565b905060008054421015610510578165ffffffffffff166000036103cb5750600361064f565b60028265ffffffffffff16116103e35750600b61064f565b60068265ffffffffffff16116103fb5750600e61064f565b60128265ffffffffffff16116104135750601561064f565b60628265ffffffffffff161161042b5750601861064f565b60808265ffffffffffff16116104435750600261064f565b609e8265ffffffffffff161161045b5750600561064f565b60bd8265ffffffffffff16116104735750600661064f565b60e58265ffffffffffff161161048b5750600761064f565b6101038265ffffffffffff16116104a45750600861064f565b6101218265ffffffffffff16116104bd5750600961064f565b61013f8265ffffffffffff16116104d65750600a61064f565b61015d8265ffffffffffff16116104ef5750600161064f565b61017b8265ffffffffffff16116105085750600c61064f565b50601161064f565b8165ffffffffffff166000036105285750600361064f565b60028265ffffffffffff16116105405750600b61064f565b60068265ffffffffffff16116105585750601961064f565b60128265ffffffffffff16116105705750601561064f565b60388265ffffffffffff16116105885750600261064f565b605e8265ffffffffffff16116105a05750600561064f565b60848265ffffffffffff16116105b85750600661064f565b60aa8265ffffffffffff16116105d05750600761064f565b60d08265ffffffffffff16116105e85750600861064f565b60f68265ffffffffffff16116106005750600961064f565b61011d8265ffffffffffff16116106195750600a61064f565b6101438265ffffffffffff16116106325750600161064f565b6101698265ffffffffffff161161064b5750600c61064f565b5060115b6040518060c001604052808265ffffffffffff1681526020018860308b901c65ffffffffffff166106809190610853565b65ffffffffffff1681526020018760608b901c65ffffffffffff166106a59190610853565b65ffffffffffff1681526020018660908b901c65ffffffffffff166106ca9190610853565b65ffffffffffff1681526020018560c08b901c65ffffffffffff166106ef9190610853565b65ffffffffffff16815260200161070a8560d08c901c610853565b65ffffffffffff169052985050505050505050505b92915050565b739d0717faddb61c48e3fce46abc2b2dcaa43d1255331461074557600080fd5b600055565b6000806040838503121561075d57600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461078857600080fd5b809150509250929050565b6000602082840312156107a557600080fd5b5035919050565b8181038181111561071f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000602082840312156107f857600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600065ffffffffffff80841680610847576108476107ff565b92169190910692915050565b600082610862576108626107ff565b50069056fea26469706673582212209975fbf0c84e792b23852c262e3ce4251622e3f341b2b28c36ae07fdf08d45a464736f6c63430008110033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063422e2e99146100465780636e038042146100c2578063e757ba1c146100d7575b600080fd5b61005961005436600461074a565b6100ee565b6040516100b99190600060c08201905065ffffffffffff8084511683528060208501511660208401528060408501511660408401528060608501511660608401528060808501511660808401528060a08501511660a08401525092915050565b60405180910390f35b6100d56100d0366004610793565b610725565b005b6100e060005481565b6040519081526020016100b9565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081018290529061012b6001436107ac565b604080519140602083015281018590526060016040516020818303038152906040528051906020012060001c905060008373ffffffffffffffffffffffffffffffffffffffff1663eba818066040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca91906107e6565b905060008473ffffffffffffffffffffffffffffffffffffffff16634daebac26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023d91906107e6565b905060008573ffffffffffffffffffffffffffffffffffffffff1663cc2aa0916040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b091906107e6565b905060008673ffffffffffffffffffffffffffffffffffffffff16638104468c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102ff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032391906107e6565b905060008773ffffffffffffffffffffffffffffffffffffffff16631b7afa3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610372573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061039691906107e6565b905060006103a66101908861082e565b905060008054421015610510578165ffffffffffff166000036103cb5750600361064f565b60028265ffffffffffff16116103e35750600b61064f565b60068265ffffffffffff16116103fb5750600e61064f565b60128265ffffffffffff16116104135750601561064f565b60628265ffffffffffff161161042b5750601861064f565b60808265ffffffffffff16116104435750600261064f565b609e8265ffffffffffff161161045b5750600561064f565b60bd8265ffffffffffff16116104735750600661064f565b60e58265ffffffffffff161161048b5750600761064f565b6101038265ffffffffffff16116104a45750600861064f565b6101218265ffffffffffff16116104bd5750600961064f565b61013f8265ffffffffffff16116104d65750600a61064f565b61015d8265ffffffffffff16116104ef5750600161064f565b61017b8265ffffffffffff16116105085750600c61064f565b50601161064f565b8165ffffffffffff166000036105285750600361064f565b60028265ffffffffffff16116105405750600b61064f565b60068265ffffffffffff16116105585750601961064f565b60128265ffffffffffff16116105705750601561064f565b60388265ffffffffffff16116105885750600261064f565b605e8265ffffffffffff16116105a05750600561064f565b60848265ffffffffffff16116105b85750600661064f565b60aa8265ffffffffffff16116105d05750600761064f565b60d08265ffffffffffff16116105e85750600861064f565b60f68265ffffffffffff16116106005750600961064f565b61011d8265ffffffffffff16116106195750600a61064f565b6101438265ffffffffffff16116106325750600161064f565b6101698265ffffffffffff161161064b5750600c61064f565b5060115b6040518060c001604052808265ffffffffffff1681526020018860308b901c65ffffffffffff166106809190610853565b65ffffffffffff1681526020018760608b901c65ffffffffffff166106a59190610853565b65ffffffffffff1681526020018660908b901c65ffffffffffff166106ca9190610853565b65ffffffffffff1681526020018560c08b901c65ffffffffffff166106ef9190610853565b65ffffffffffff16815260200161070a8560d08c901c610853565b65ffffffffffff169052985050505050505050505b92915050565b739d0717faddb61c48e3fce46abc2b2dcaa43d1255331461074557600080fd5b600055565b6000806040838503121561075d57600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461078857600080fd5b809150509250929050565b6000602082840312156107a557600080fd5b5035919050565b8181038181111561071f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000602082840312156107f857600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600065ffffffffffff80841680610847576108476107ff565b92169190910692915050565b600082610862576108626107ff565b50069056fea26469706673582212209975fbf0c84e792b23852c262e3ce4251622e3f341b2b28c36ae07fdf08d45a464736f6c63430008110033

Deployed Bytecode Sourcemap

203:4303:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;620:3884;;;;;;:::i;:::-;;:::i;:::-;;;;;;557:4:3;599:3;588:9;584:19;576:27;;622:14;682:2;673:6;667:13;663:22;652:9;645:41;754:2;746:4;738:6;734:17;728:24;724:33;717:4;706:9;702:20;695:63;826:2;818:4;810:6;806:17;800:24;796:33;789:4;778:9;774:20;767:63;898:2;890:4;882:6;878:17;872:24;868:33;861:4;850:9;846:20;839:63;970:2;962:4;954:6;950:17;944:24;940:33;933:4;922:9;918:20;911:63;1042:2;1034:4;1026:6;1022:17;1016:24;1012:33;1005:4;994:9;990:20;983:63;;423:629;;;;;620:3884:0;;;;;;;;299:174;;;;;;:::i;:::-;;:::i;:::-;;253:39;;;;;;;;;1388:25:3;;;1376:2;1361:18;253:39:0;1242:177:3;620:3884:0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:16:0;848:1;833:12;:16;:::i;:::-;806:56;;;823:27;;806:56;;;1868:19:3;1903:12;;1896:28;;;1940:12;;806:56:0;;;;;;;;;;;;796:67;;;;;;775:98;;748:125;;884:17;904:10;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;884:42;;936:22;961:10;:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;936:52;;998:17;1018:10;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;998:42;;1050:17;1070:10;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1050:42;;1102:18;1123:10;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1102:44;-1:-1:-1;1157:27:0;1187:30;1214:3;1194:16;1187:30;:::i;:::-;1157:60;;1227:23;1282:11;;1264:15;:29;1261:2646;;;1312:20;:25;;1336:1;1312:25;1309:1326;;-1:-1:-1;1376:1:0;1261:2646;;1309:1326;1425:1;1401:20;:25;;;1398:1237;;-1:-1:-1;1465:2:0;1261:2646;;1398:1237;1515:1;1491:20;:25;;;1488:1147;;-1:-1:-1;1555:2:0;1261:2646;;1488:1147;1605:2;1581:20;:26;;;1578:1057;;-1:-1:-1;1646:2:0;1261:2646;;1578:1057;1696:2;1672:20;:26;;;1669:966;;-1:-1:-1;1737:2:0;1261:2646;;1669:966;1787:3;1763:20;:27;;;1760:875;;-1:-1:-1;1829:1:0;1261:2646;;1760:875;1878:3;1854:20;:27;;;1851:784;;-1:-1:-1;1920:1:0;1261:2646;;1851:784;1969:3;1945:20;:27;;;1942:693;;-1:-1:-1;2011:1:0;1261:2646;;1942:693;2060:3;2036:20;:27;;;2033:602;;-1:-1:-1;2102:1:0;1261:2646;;2033:602;2151:3;2127:20;:27;;;2124:511;;-1:-1:-1;2193:1:0;1261:2646;;2124:511;2242:3;2218:20;:27;;;2215:420;;-1:-1:-1;2284:1:0;1261:2646;;2215:420;2333:3;2309:20;:27;;;2306:329;;-1:-1:-1;2375:2:0;1261:2646;;2306:329;2425:3;2401:20;:27;;;2398:237;;-1:-1:-1;2467:1:0;1261:2646;;2398:237;2516:3;2492:20;:27;;;2489:146;;-1:-1:-1;2558:2:0;1261:2646;;2489:146;-1:-1:-1;2618:2:0;1261:2646;;;2667:20;:25;;2691:1;2667:25;2664:1233;;-1:-1:-1;2731:1:0;2664:1233;;;2780:1;2756:20;:25;;;2753:1144;;-1:-1:-1;2820:2:0;2753:1144;;;2870:1;2846:20;:25;;;2843:1054;;-1:-1:-1;2910:2:0;2843:1054;;;2960:2;2936:20;:26;;;2933:964;;-1:-1:-1;3001:2:0;2933:964;;;3051:2;3027:20;:26;;;3024:873;;-1:-1:-1;3092:1:0;3024:873;;;3141:2;3117:20;:26;;;3114:783;;-1:-1:-1;3182:1:0;3114:783;;;3231:3;3207:20;:27;;;3204:693;;-1:-1:-1;3273:1:0;3204:693;;;3322:3;3298:20;:27;;;3295:602;;-1:-1:-1;3364:1:0;3295:602;;;3413:3;3389:20;:27;;;3386:511;;-1:-1:-1;3455:1:0;3386:511;;;3504:3;3480:20;:27;;;3477:420;;-1:-1:-1;3546:1:0;3477:420;;;3595:3;3571:20;:27;;;3568:329;;-1:-1:-1;3637:2:0;3568:329;;;3687:3;3663:20;:27;;;3660:237;;-1:-1:-1;3729:1:0;3660:237;;;3778:3;3754:20;:27;;;3751:146;;-1:-1:-1;3820:2:0;3751:146;;;-1:-1:-1;3880:2:0;3751:146;3924:573;;;;;;;;3955:16;3924:573;;;;;;4048:9;4042:2;4022:16;:22;;4015:42;;;;;;:::i;:::-;3924:573;;;;;;4153:14;4147:2;4127:16;:22;;4120:47;;;;;;:::i;:::-;3924:573;;;;;;4259:9;4252:3;4232:16;:23;;4225:43;;;;;;:::i;:::-;3924:573;;;;;;4360:9;4353:3;4333:16;:23;;4326:43;;;;;;:::i;:::-;3924:573;;;;;;4428:44;4462:10;4455:3;4435:23;;;4428:44;:::i;:::-;3924:573;;;;3917:580;-1:-1:-1;;;;;;;;;620:3884:0;;;;;:::o;299:174::-;387:42;373:10;:56;365:65;;;;;;440:11;:26;299:174::o;14:404:3:-;109:6;117;170:2;158:9;149:7;145:23;141:32;138:52;;;186:1;183;176:12;138:52;222:9;209:23;199:33;;282:2;271:9;267:18;254:32;326:42;319:5;315:54;308:5;305:65;295:93;;384:1;381;374:12;295:93;407:5;397:15;;;14:404;;;;;:::o;1057:180::-;1116:6;1169:2;1157:9;1148:7;1144:23;1140:32;1137:52;;;1185:1;1182;1175:12;1137:52;-1:-1:-1;1208:23:3;;1057:180;-1:-1:-1;1057:180:3:o;1424:282::-;1491:9;;;1512:11;;;1509:191;;;1556:77;1553:1;1546:88;1657:4;1654:1;1647:15;1685:4;1682:1;1675:15;1963:184;2033:6;2086:2;2074:9;2065:7;2061:23;2057:32;2054:52;;;2102:1;2099;2092:12;2054:52;-1:-1:-1;2125:16:3;;1963:184;-1:-1:-1;1963:184:3:o;2152:::-;2204:77;2201:1;2194:88;2301:4;2298:1;2291:15;2325:4;2322:1;2315:15;2341:187;2372:1;2398:14;2439:2;2436:1;2432:10;2461:3;2451:37;;2468:18;;:::i;:::-;2506:10;;2502:20;;;;;2341:187;-1:-1:-1;;2341:187:3:o;2533:112::-;2565:1;2591;2581:35;;2596:18;;:::i;:::-;-1:-1:-1;2630:9:3;;2533:112::o

Swarm Source

ipfs://9975fbf0c84e792b23852c262e3ce4251622e3f341b2b28c36ae07fdf08d45a4

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

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.