ETH Price: $2,387.01 (-3.97%)

Contract

0x88E82d0ada60A24B2607d51551448c64Eb990B2D
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
0x61014060144621042022-03-26 13:32:22921 days ago1648301542IN
 Create: GRODistributer
0 ETH0.0205766132.03762966

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GRODistributer

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU AGPLv3 license
File 1 of 1 : GRODistributer.sol
// SPDX-License-Identifier: AGPLv3
pragma solidity 0.8.4;

interface IToken {
    function mint(address _receiver, uint256 _amount) external;
    function burn(address _receiver, uint256 _amount) external;
}

/// @notice Contract that defines GRO DAOs' tokenomics - Contracts set below
///     are allowed to mint tokens based on predefined quotas. This contract is
///     intrinsically tied to the GRO Dao token, and is the only contract that is
///     allowed to mint and burn tokens.
contract GRODistributer {
    // Limits for token minting
    uint256 public constant DEFAULT_FACTOR = 1E18;
    // Amount dedicated to the dao (13M - 5M)
    uint256 public constant DAO_QUOTA = 8_000_000 * DEFAULT_FACTOR;
    // Amount dedicated to the investor group
    uint256 public constant INVESTOR_QUOTA = 19_490_577 * DEFAULT_FACTOR;
    // Amount dedicated to the team
    uint256 public constant TEAM_QUOTA = 22_509_423 * DEFAULT_FACTOR;
    // Amount dedicated to the community
    uint256 public constant COMMUNITY_QUOTA = 45_000_000 * DEFAULT_FACTOR;

    IToken public immutable govToken;
    // contracts that are allowed to mint
    address public immutable DAO_VESTER;
    address public immutable INVESTOR_VESTER;
    address public immutable TEAM_VESTER;
    address public immutable COMMUNITY_VESTER;
    // contract that is allowed to burn
    address public immutable BURNER;

    // pool with minting limits for above contracts
    mapping(address => uint256) public mintingPools;

    constructor(address token, address[4] memory vesters, address burner, uint256[4] memory oldAmounts) {
        // set token
        govToken = IToken(token);
        
        // set vesters
        DAO_VESTER = vesters[0];
        INVESTOR_VESTER = vesters[1];
        TEAM_VESTER = vesters[2];
        COMMUNITY_VESTER = vesters[3];
        BURNER = burner;
        
        // set quotas for each vester
        mintingPools[vesters[0]] = DAO_QUOTA - oldAmounts[0];
        mintingPools[vesters[1]] = INVESTOR_QUOTA - oldAmounts[1];
        mintingPools[vesters[2]] = TEAM_QUOTA - oldAmounts[2];
        mintingPools[vesters[3]] = COMMUNITY_QUOTA - oldAmounts[3];
    }

    /// @notice mint tokens - Reduces total allowance for minting pool
    /// @param account account to mint for
    /// @param amount amount to mint
    function mint(address account, uint256 amount) external {
        require(
            msg.sender == INVESTOR_VESTER ||
            msg.sender == TEAM_VESTER ||
            msg.sender == COMMUNITY_VESTER,
            'mint: msg.sender != vester'
        );
        uint256 available = mintingPools[msg.sender];
        mintingPools[msg.sender] = available - amount;
        govToken.mint(account, amount);
    }

    /// @notice mintDao seperate minting function for dao vester - can mint from both
    ///      community and dao quota
    /// @param account account to mint for
    /// @param amount amount to mint
    /// @param community If the vest comes from the community or dao quota
    function mintDao(
        address account,
        uint256 amount,
        bool community
    ) external {
        require(msg.sender == DAO_VESTER, "mintDao: msg.sender != DAO_VESTER");
        address poolId = msg.sender;
        if (community) {
            poolId = COMMUNITY_VESTER;
        }
        uint256 available = mintingPools[poolId];
        mintingPools[poolId] = available - amount;
        govToken.mint(account, amount);
    }

    /// @notice burn tokens - adds allowance to community pool
    /// @param amount amount to burn
    /// @dev Burned tokens should get add to users vesting position and
    ///  add to the community quota.
    function burn(uint256 amount) external {
        require(msg.sender == BURNER, "burn: msg.sender != BURNER");
        govToken.burn(msg.sender, amount);
        mintingPools[COMMUNITY_VESTER] = mintingPools[COMMUNITY_VESTER] + amount;
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address[4]","name":"vesters","type":"address[4]"},{"internalType":"address","name":"burner","type":"address"},{"internalType":"uint256[4]","name":"oldAmounts","type":"uint256[4]"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BURNER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COMMUNITY_QUOTA","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"COMMUNITY_VESTER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DAO_QUOTA","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DAO_VESTER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_FACTOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INVESTOR_QUOTA","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INVESTOR_VESTER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TEAM_QUOTA","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TEAM_VESTER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"govToken","outputs":[{"internalType":"contract IToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"community","type":"bool"}],"name":"mintDao","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"mintingPools","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

6101406040523480156200001257600080fd5b5060405162000cb538038062000cb58339810160408190526200003591620001bc565b6001600160601b0319606085811b82166080528451811b821660a0526020850151811b821660c0526040850151811b821660e05284810151811b82166101005283901b1661012052805162000096670de0b6b3a7640000627a1200620002e8565b620000a291906200030a565b83516001600160a01b031660009081526020818152604090912091909155810151620000db670de0b6b3a76400006301296711620002e8565b620000e791906200030a565b6020808501516001600160a01b03166000908152908190526040908190209190915581015162000124670de0b6b3a7640000630157776f620002e8565b6200013091906200030a565b6040808501516001600160a01b0316600090815260208190522055606081015162000168670de0b6b3a76400006302aea540620002e8565b6200017491906200030a565b6060909301516001600160a01b0316600090815260208190526040902092909255506200033a915050565b80516001600160a01b0381168114620001b757600080fd5b919050565b600080600080610140808688031215620001d4578485fd5b620001df866200019f565b9450602087603f880112620001f2578485fd5b620001fc620002b1565b8082890160a08a018b81111562000211578889fd5b885b60048110156200023b5762000228836200019f565b8552938501939185019160010162000213565b508298506200024a816200019f565b9750505050508760df8801126200025f578283fd5b62000269620002b1565b8060c089018a858b0111156200027d578586fd5b8594505b6004851015620002a257805183526001949094019391830191830162000281565b50969995985093965050505050565b604051608081016001600160401b0381118282101715620002e257634e487b7160e01b600052604160045260246000fd5b60405290565b600081600019048311821515161562000305576200030562000324565b500290565b6000828210156200031f576200031f62000324565b500390565b634e487b7160e01b600052601160045260246000fd5b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c6101205160601c6108cd620003e86000396000818161016a01526104540152600081816101a7015281816103220152818161054a0152818161058f015261064d01526000818161014301526102ef01526000818161023101526102bd01526000818161026f01526105cc01526000818160ff015281816103e8015281816104dd01526106cc01526108cd6000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80635e9ca19611610097578063765222531161006657806376522253146102535780638bf91dc41461025b5780638ec4e9591461026a57806392029df41461029157600080fd5b80635e9ca196146101f1578063640492071461020457806364db53111461020c5780636f6412d21461022c57600080fd5b80631fec1f15116100d35780631fec1f151461018c57806331d38a79146101a257806340c10f19146101c957806342966c68146101de57600080fd5b806305268cff146100fa57806308fe63821461013e578063118c4f1314610165575b600080fd5b6101217f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101217f000000000000000000000000000000000000000000000000000000000000000081565b6101217f000000000000000000000000000000000000000000000000000000000000000081565b610194610299565b604051908152602001610135565b6101217f000000000000000000000000000000000000000000000000000000000000000081565b6101dc6101d73660046107af565b6102b2565b005b6101dc6101ec36600461081b565b610449565b6101dc6101ff3660046107d8565b6105c1565b610194610731565b61019461021a36600461078e565b60006020819052908152604090205481565b6101217f000000000000000000000000000000000000000000000000000000000000000081565b610194610746565b610194670de0b6b3a764000081565b6101217f000000000000000000000000000000000000000000000000000000000000000081565b61019461075c565b6102af670de0b6b3a7640000630129671161084b565b81565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806103115750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b806103445750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b6103955760405162461bcd60e51b815260206004820152601a60248201527f6d696e743a206d73672e73656e64657220213d2076657374657200000000000060448201526064015b60405180910390fd5b336000908152602081905260409020546103af828261086a565b336000908152602081905260409081902091909155516340c10f1960e01b81526001600160a01b038481166004830152602482018490527f000000000000000000000000000000000000000000000000000000000000000016906340c10f1990604401600060405180830381600087803b15801561042c57600080fd5b505af1158015610440573d6000803e3d6000fd5b50505050505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104c15760405162461bcd60e51b815260206004820152601a60248201527f6275726e3a206d73672e73656e64657220213d204255524e4552000000000000604482015260640161038c565b604051632770a7eb60e21b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690639dc29fac90604401600060405180830381600087803b15801561052957600080fd5b505af115801561053d573d6000803e3d6000fd5b5050506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660009081526020819052604090205461058591508290610833565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660009081526020819052604090205550565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146106435760405162461bcd60e51b815260206004820152602160248201527f6d696e7444616f3a206d73672e73656e64657220213d2044414f5f56455354456044820152602960f91b606482015260840161038c565b33811561066d57507f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b038116600090815260208190526040902054610690848261086a565b6001600160a01b03838116600090815260208190526040908190209290925590516340c10f1960e01b81528682166004820152602481018690527f0000000000000000000000000000000000000000000000000000000000000000909116906340c10f1990604401600060405180830381600087803b15801561071257600080fd5b505af1158015610726573d6000803e3d6000fd5b505050505050505050565b6102af670de0b6b3a7640000627a120061084b565b6102af670de0b6b3a76400006302aea54061084b565b6102af670de0b6b3a7640000630157776f61084b565b80356001600160a01b038116811461078957600080fd5b919050565b60006020828403121561079f578081fd5b6107a882610772565b9392505050565b600080604083850312156107c1578081fd5b6107ca83610772565b946020939093013593505050565b6000806000606084860312156107ec578081fd5b6107f584610772565b92506020840135915060408401358015158114610810578182fd5b809150509250925092565b60006020828403121561082c578081fd5b5035919050565b6000821982111561084657610846610881565b500190565b600081600019048311821515161561086557610865610881565b500290565b60008282101561087c5761087c610881565b500390565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220b7c7676ac7a5e478462b0b070197d708e2ebc1ce95d57116b5a6ca516967ffcf64736f6c634300080400330000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d700000000000000000000000063d96236fd0e1c395d3e464a38f46b1adca247de0000000000000000000000000537d3da1ed1dd7350ff1f3b92b727dfdbab80f1000000000000000000000000f43c6bdd2f9158b5a78dccf732d190c490e28644000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d21783600000000000000000000000001f09e308bb18795f62ea7b114041e12b426b88800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024ed75e0c8f9d052171d

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80635e9ca19611610097578063765222531161006657806376522253146102535780638bf91dc41461025b5780638ec4e9591461026a57806392029df41461029157600080fd5b80635e9ca196146101f1578063640492071461020457806364db53111461020c5780636f6412d21461022c57600080fd5b80631fec1f15116100d35780631fec1f151461018c57806331d38a79146101a257806340c10f19146101c957806342966c68146101de57600080fd5b806305268cff146100fa57806308fe63821461013e578063118c4f1314610165575b600080fd5b6101217f0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d781565b6040516001600160a01b0390911681526020015b60405180910390f35b6101217f000000000000000000000000f43c6bdd2f9158b5a78dccf732d190c490e2864481565b6101217f0000000000000000000000001f09e308bb18795f62ea7b114041e12b426b888081565b610194610299565b604051908152602001610135565b6101217f000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d217836081565b6101dc6101d73660046107af565b6102b2565b005b6101dc6101ec36600461081b565b610449565b6101dc6101ff3660046107d8565b6105c1565b610194610731565b61019461021a36600461078e565b60006020819052908152604090205481565b6101217f0000000000000000000000000537d3da1ed1dd7350ff1f3b92b727dfdbab80f181565b610194610746565b610194670de0b6b3a764000081565b6101217f00000000000000000000000063d96236fd0e1c395d3e464a38f46b1adca247de81565b61019461075c565b6102af670de0b6b3a7640000630129671161084b565b81565b336001600160a01b037f0000000000000000000000000537d3da1ed1dd7350ff1f3b92b727dfdbab80f11614806103115750336001600160a01b037f000000000000000000000000f43c6bdd2f9158b5a78dccf732d190c490e2864416145b806103445750336001600160a01b037f000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d217836016145b6103955760405162461bcd60e51b815260206004820152601a60248201527f6d696e743a206d73672e73656e64657220213d2076657374657200000000000060448201526064015b60405180910390fd5b336000908152602081905260409020546103af828261086a565b336000908152602081905260409081902091909155516340c10f1960e01b81526001600160a01b038481166004830152602482018490527f0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d716906340c10f1990604401600060405180830381600087803b15801561042c57600080fd5b505af1158015610440573d6000803e3d6000fd5b50505050505050565b336001600160a01b037f0000000000000000000000001f09e308bb18795f62ea7b114041e12b426b888016146104c15760405162461bcd60e51b815260206004820152601a60248201527f6275726e3a206d73672e73656e64657220213d204255524e4552000000000000604482015260640161038c565b604051632770a7eb60e21b8152336004820152602481018290527f0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d76001600160a01b031690639dc29fac90604401600060405180830381600087803b15801561052957600080fd5b505af115801561053d573d6000803e3d6000fd5b5050506001600160a01b037f000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d21783601660009081526020819052604090205461058591508290610833565b6001600160a01b037f000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d21783601660009081526020819052604090205550565b336001600160a01b037f00000000000000000000000063d96236fd0e1c395d3e464a38f46b1adca247de16146106435760405162461bcd60e51b815260206004820152602160248201527f6d696e7444616f3a206d73672e73656e64657220213d2044414f5f56455354456044820152602960f91b606482015260840161038c565b33811561066d57507f000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d21783605b6001600160a01b038116600090815260208190526040902054610690848261086a565b6001600160a01b03838116600090815260208190526040908190209290925590516340c10f1960e01b81528682166004820152602481018690527f0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d7909116906340c10f1990604401600060405180830381600087803b15801561071257600080fd5b505af1158015610726573d6000803e3d6000fd5b505050505050505050565b6102af670de0b6b3a7640000627a120061084b565b6102af670de0b6b3a76400006302aea54061084b565b6102af670de0b6b3a7640000630157776f61084b565b80356001600160a01b038116811461078957600080fd5b919050565b60006020828403121561079f578081fd5b6107a882610772565b9392505050565b600080604083850312156107c1578081fd5b6107ca83610772565b946020939093013593505050565b6000806000606084860312156107ec578081fd5b6107f584610772565b92506020840135915060408401358015158114610810578182fd5b809150509250925092565b60006020828403121561082c578081fd5b5035919050565b6000821982111561084657610846610881565b500190565b600081600019048311821515161561086557610865610881565b500290565b60008282101561087c5761087c610881565b500390565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220b7c7676ac7a5e478462b0b070197d708e2ebc1ce95d57116b5a6ca516967ffcf64736f6c63430008040033

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

0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d700000000000000000000000063d96236fd0e1c395d3e464a38f46b1adca247de0000000000000000000000000537d3da1ed1dd7350ff1f3b92b727dfdbab80f1000000000000000000000000f43c6bdd2f9158b5a78dccf732d190c490e28644000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d21783600000000000000000000000001f09e308bb18795f62ea7b114041e12b426b88800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024ed75e0c8f9d052171d

-----Decoded View---------------
Arg [0] : token (address): 0x3Ec8798B81485A254928B70CDA1cf0A2BB0B74D7
Arg [1] : vesters (address[4]): 0x63d96236fD0e1c395D3E464a38F46B1adca247DE,0x0537d3DA1Ed1dd7350fF1f3B92b727dfdBAB80f1,0xF43c6bDD2F9158B5A78DCcf732D190C490e28644,0x748218256AfE0A19a88EBEB2E0C5Ce86d2178360
Arg [2] : burner (address): 0x1F09e308bb18795f62ea7B114041E12b426b8880
Arg [3] : oldAmounts (uint256[4]): 0,0,0,174385565738648879634205

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 0000000000000000000000003ec8798b81485a254928b70cda1cf0a2bb0b74d7
Arg [1] : 00000000000000000000000063d96236fd0e1c395d3e464a38f46b1adca247de
Arg [2] : 0000000000000000000000000537d3da1ed1dd7350ff1f3b92b727dfdbab80f1
Arg [3] : 000000000000000000000000f43c6bdd2f9158b5a78dccf732d190c490e28644
Arg [4] : 000000000000000000000000748218256afe0a19a88ebeb2e0c5ce86d2178360
Arg [5] : 0000000000000000000000001f09e308bb18795f62ea7b114041e12b426b8880
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000024ed75e0c8f9d052171d


Deployed Bytecode Sourcemap

489:3433:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1059:32;;;;;;;;-1:-1:-1;;;;;1461:32:1;;;1443:51;;1431:2;1416:18;1059:32:0;;;;;;;;1226:36;;;;;1355:31;;;;;762:68;;;:::i;:::-;;;3263:25:1;;;3251:2;3236:18;762:68:0;3218:76:1;1268:41:0;;;;;2326:411;;;;;;:::i;:::-;;:::i;:::-;;3680:240;;;;;;:::i;:::-;;:::i;3021:444::-;;;;;;:::i;:::-;;:::i;648:62::-;;;:::i;1445:47::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;1180:40;;;;;983:69;;;:::i;551:45::-;;592:4;551:45;;1139:35;;;;;872:64;;;:::i;762:68::-;803:27;592:4;803:10;:27;:::i;:::-;762:68;:::o;2326:411::-;2413:10;-1:-1:-1;;;;;2427:15:0;2413:29;;;:70;;-1:-1:-1;2458:10:0;-1:-1:-1;;;;;2472:11:0;2458:25;;2413:70;:116;;;-1:-1:-1;2499:10:0;-1:-1:-1;;;;;2513:16:0;2499:30;;2413:116;2392:189;;;;-1:-1:-1;;;2392:189:0;;2609:2:1;2392:189:0;;;2591:21:1;2648:2;2628:18;;;2621:30;2687:28;2667:18;;;2660:56;2733:18;;2392:189:0;;;;;;;;;2624:10;2591:17;2611:24;;;;;;;;;;;2672:18;2684:6;2611:24;2672:18;:::i;:::-;2658:10;2645:12;:24;;;;;;;;;;;;:45;;;;2700:30;-1:-1:-1;;;2700:30:0;;-1:-1:-1;;;;;1697:32:1;;;2700:30:0;;;1679:51:1;1746:18;;;1739:34;;;2700:8:0;:13;;;;1652:18:1;;2700:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2326:411;;;:::o;3680:240::-;3737:10;-1:-1:-1;;;;;3751:6:0;3737:20;;3729:59;;;;-1:-1:-1;;;3729:59:0;;2964:2:1;3729:59:0;;;2946:21:1;3003:2;2983:18;;;2976:30;3042:28;3022:18;;;3015:56;3088:18;;3729:59:0;2936:176:1;3729:59:0;3798:33;;-1:-1:-1;;;3798:33:0;;3812:10;3798:33;;;1679:51:1;1746:18;;;1739:34;;;3798:8:0;-1:-1:-1;;;;;3798:13:0;;;;1652:18:1;;3798:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;3887:16:0;3874:30;:12;:30;;;;;;;;;;;:39;;-1:-1:-1;3907:6:0;;3874:39;:::i;:::-;-1:-1:-1;;;;;3854:16:0;3841:30;:12;:30;;;;;;;;;;:72;-1:-1:-1;3680:240:0:o;3021:444::-;3144:10;-1:-1:-1;;;;;3158:10:0;3144:24;;3136:70;;;;-1:-1:-1;;;3136:70:0;;2207:2:1;3136:70:0;;;2189:21:1;2246:2;2226:18;;;2219:30;2285:34;2265:18;;;2258:62;-1:-1:-1;;;2336:18:1;;;2329:31;2377:19;;3136:70:0;2179:223:1;3136:70:0;3233:10;3253:65;;;;-1:-1:-1;3291:16:0;3253:65;-1:-1:-1;;;;;3347:20:0;;3327:17;3347:20;;;;;;;;;;;3400:18;3412:6;3347:20;3400:18;:::i;:::-;-1:-1:-1;;;;;3377:20:0;;;:12;:20;;;;;;;;;;;;:41;;;;3428:30;;-1:-1:-1;;;3428:30:0;;1697:32:1;;;3428:30:0;;;1679:51:1;1746:18;;;1739:34;;;3428:8:0;:13;;;;;;1652:18:1;;3428:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3021:444;;;;;:::o;648:62::-;684:26;592:4;684:9;:26;:::i;983:69::-;1025:27;592:4;1025:10;:27;:::i;872:64::-;909:27;592:4;909:10;:27;:::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:196::-;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;325:6;317;310:22;272:2;353:29;372:9;353:29;:::i;:::-;343:39;262:126;-1:-1:-1;;;262:126:1:o;393:264::-;461:6;469;522:2;510:9;501:7;497:23;493:32;490:2;;;543:6;535;528:22;490:2;571:29;590:9;571:29;:::i;:::-;561:39;647:2;632:18;;;;619:32;;-1:-1:-1;;;480:177:1:o;662:435::-;736:6;744;752;805:2;793:9;784:7;780:23;776:32;773:2;;;826:6;818;811:22;773:2;854:29;873:9;854:29;:::i;:::-;844:39;;930:2;919:9;915:18;902:32;892:42;;984:2;973:9;969:18;956:32;1031:5;1024:13;1017:21;1010:5;1007:32;997:2;;1058:6;1050;1043:22;997:2;1086:5;1076:15;;;763:334;;;;;:::o;1102:190::-;1161:6;1214:2;1202:9;1193:7;1189:23;1185:32;1182:2;;;1235:6;1227;1220:22;1182:2;-1:-1:-1;1263:23:1;;1172:120;-1:-1:-1;1172:120:1:o;3299:128::-;3339:3;3370:1;3366:6;3363:1;3360:13;3357:2;;;3376:18;;:::i;:::-;-1:-1:-1;3412:9:1;;3347:80::o;3432:168::-;3472:7;3538:1;3534;3530:6;3526:14;3523:1;3520:21;3515:1;3508:9;3501:17;3497:45;3494:2;;;3545:18;;:::i;:::-;-1:-1:-1;3585:9:1;;3484:116::o;3605:125::-;3645:4;3673:1;3670;3667:8;3664:2;;;3678:18;;:::i;:::-;-1:-1:-1;3715:9:1;;3654:76::o;3735:127::-;3796:10;3791:3;3787:20;3784:1;3777:31;3827:4;3824:1;3817:15;3851:4;3848:1;3841:15

Swarm Source

ipfs://b7c7676ac7a5e478462b0b070197d708e2ebc1ce95d57116b5a6ca516967ffcf

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  ]

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.