ETH Price: $1,843.82 (-14.08%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Advanced mode:
Parent Transaction Hash Method Block
From
To
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BadgerVotingShare

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2020-12-29
*/

/**
 *Submitted for verification at Etherscan.io on 2020-10-09
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IERC20 {
    function totalSupply() external view returns (uint);
    function balanceOf(address account) external view returns (uint);
}


interface IUniswapV2Pair {
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
}

interface ISett {
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function getPricePerFullShare() external view returns(uint);
}

interface IGeyser {
    function totalStakedFor(address owner) external view returns (uint);
}

contract BadgerVotingShare {
    IERC20 constant badger = IERC20(0x3472A5A71965499acd81997a54BBA8D852C6E53d);    
    ISett constant sett_badger = ISett(0x19D97D8fA813EE2f51aD4B4e04EA08bAf4DFfC28);
    IGeyser constant geyser_badger = IGeyser(0xa9429271a28F8543eFFfa136994c0839E7d7bF77);
    
    //Badger is token1
    IUniswapV2Pair constant badger_wBTC_UniV2 = IUniswapV2Pair(0xcD7989894bc033581532D2cd88Da5db0A4b12859);
    ISett constant sett_badger_wBTC_UniV2 = ISett(0x235c9e24D3FB2FAFd58a2E49D454Fdcd2DBf7FF1);
    IGeyser constant geyser_badger_wBTC_UniV2 = IGeyser(0xA207D69Ea6Fb967E54baA8639c408c31767Ba62D);  
    
    //Badger is token1
    IUniswapV2Pair constant badger_wBTC_SLP = IUniswapV2Pair(0x110492b31c59716AC47337E616804E3E3AdC0b4a);
    ISett constant sett_badger_wBTC_SLP = ISett(0x1862A18181346EBd9EdAf800804f89190DeF24a5);
    IGeyser constant geyser_badger_wBTC_SLP = IGeyser(0xB5b654efBA23596Ed49FAdE44F7e67E23D6712e7);  

    function decimals() external pure returns (uint8) {
        return uint8(18);
    }

    function name() external pure returns (string memory) {
        return "Badger Voting Share";
    }

    function symbol() external pure returns (string memory) {
        return "Badger VS";
    }

    function totalSupply() external view returns (uint) {
        return badger.totalSupply();
    }
    
    /*
        The voter can have Badger in Uniswap in 3 configurations:
         * Staked bUni-V2 in Geyser
         * Unstaked bUni-V2 (same as staked Uni-V2 in Sett)
         * Unstaked Uni-V2
        The top two correspond to more than 1 Uni-V2, so they are multiplied by pricePerFullShare.
        After adding all 3 balances we calculate how much BADGER it corresponds to using the pool's reserves.
    */
    function _uniswapBalanceOf(address _voter) internal view returns(uint) {
        uint bUniV2PricePerShare = sett_badger_wBTC_UniV2.getPricePerFullShare();
        (, uint112 reserve1, ) = badger_wBTC_UniV2.getReserves();
        uint totalUniBalance = badger_wBTC_UniV2.balanceOf(_voter)
            + sett_badger_wBTC_UniV2.balanceOf(_voter) * bUniV2PricePerShare / 1e18 
            + geyser_badger_wBTC_UniV2.totalStakedFor(_voter) * bUniV2PricePerShare / 1e18;
        return totalUniBalance * reserve1 / badger_wBTC_UniV2.totalSupply();
    }
    
    /*
        The voter can have Badger in Uniswap in 3 configurations:
         * Staked bUni-V2 in Geyser
         * Unstaked bUni-V2 (same as staked Uni-V2 in Sett)
         * Unstaked Uni-V2
        The top two correspond to more than 1 Uni-V2, so they are multiplied by pricePerFullShare.
        After adding all 3 balances we calculate how much BADGER it corresponds to using the pool's reserves.
    */
    function _sushiswapBalanceOf(address _voter) internal view returns(uint) {
        uint bSLPPricePerShare = sett_badger_wBTC_SLP.getPricePerFullShare();
        (, uint112 reserve1, ) = badger_wBTC_SLP.getReserves();
        uint totalSLPBalance = badger_wBTC_SLP.balanceOf(_voter)
            + sett_badger_wBTC_SLP.balanceOf(_voter) * bSLPPricePerShare / 1e18 
            + geyser_badger_wBTC_SLP.totalStakedFor(_voter) * bSLPPricePerShare / 1e18;
        return totalSLPBalance * reserve1 / badger_wBTC_SLP.totalSupply();
    }
    
    /*
        The voter can have regular Badger in 3 configurations as well:
         * Staked bBadger in Geyser
         * Unstaked bBadger (same as staked Badger in Sett)
         * Unstaked Badger
    */
    function _badgerBalanceOf(address _voter) internal view returns(uint) {
        uint bBadgerPricePerShare = sett_badger.getPricePerFullShare();
        return badger.balanceOf(_voter)
            + sett_badger.balanceOf(_voter) * bBadgerPricePerShare / 1e18 
            + geyser_badger.totalStakedFor(_voter) * bBadgerPricePerShare / 1e18;
    }

    function balanceOf(address _voter) external view returns (uint) {
        return _badgerBalanceOf(_voter) + _uniswapBalanceOf(_voter) + _sushiswapBalanceOf(_voter);
    }

    constructor() {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b50610d23806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806306fdde031461005c57806318160ddd1461007a578063313ce5671461008f57806370a08231146100a457806395d89b41146100b7575b600080fd5b6100646100bf565b6040516100719190610c16565b60405180910390f35b6100826100ec565b6040516100719190610c69565b610097610178565b6040516100719190610c72565b6100826100b2366004610b75565b61017d565b6100646101b6565b60408051808201909152601381527242616467657220566f74696e6720536861726560681b602082015290565b6000733472a5a71965499acd81997a54bba8d852c6e53d6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561013b57600080fd5b505afa15801561014f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101739190610bea565b905090565b601290565b6000610188826101d9565b6101918361058d565b61019a846108e3565b6101a49190610c80565b6101ae9190610c80565b90505b919050565b60408051808201909152600981526842616467657220565360b81b602082015290565b600080731862a18181346ebd9edaf800804f89190def24a56001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b15801561022957600080fd5b505afa15801561023d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102619190610bea565b9050600073110492b31c59716ac47337e616804e3e3adc0b4a6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156102b257600080fd5b505afa1580156102c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ea9190610b9c565b509150506000670de0b6b3a76400008373b5b654efba23596ed49fade44f7e67e23d6712e76001600160a01b0316634b341aed886040518263ffffffff1660e01b815260040161033a9190610c02565b60206040518083038186803b15801561035257600080fd5b505afa158015610366573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038a9190610bea565b6103949190610cb8565b61039e9190610c98565b6040516370a0823160e01b8152670de0b6b3a7640000908590731862a18181346ebd9edaf800804f89190def24a5906370a08231906103e1908b90600401610c02565b60206040518083038186803b1580156103f957600080fd5b505afa15801561040d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104319190610bea565b61043b9190610cb8565b6104459190610c98565b6040516370a0823160e01b815273110492b31c59716ac47337e616804e3e3adc0b4a906370a082319061047c908a90600401610c02565b60206040518083038186803b15801561049457600080fd5b505afa1580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc9190610bea565b6104d69190610c80565b6104e09190610c80565b905073110492b31c59716ac47337e616804e3e3adc0b4a6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052f57600080fd5b505afa158015610543573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105679190610bea565b61057a6001600160701b03841683610cb8565b6105849190610c98565b95945050505050565b60008073235c9e24d3fb2fafd58a2e49d454fdcd2dbf7ff16001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105dd57600080fd5b505afa1580156105f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106159190610bea565b9050600073cd7989894bc033581532d2cd88da5db0a4b128596001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561066657600080fd5b505afa15801561067a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069e9190610b9c565b509150506000670de0b6b3a76400008373a207d69ea6fb967e54baa8639c408c31767ba62d6001600160a01b0316634b341aed886040518263ffffffff1660e01b81526004016106ee9190610c02565b60206040518083038186803b15801561070657600080fd5b505afa15801561071a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073e9190610bea565b6107489190610cb8565b6107529190610c98565b6040516370a0823160e01b8152670de0b6b3a764000090859073235c9e24d3fb2fafd58a2e49d454fdcd2dbf7ff1906370a0823190610795908b90600401610c02565b60206040518083038186803b1580156107ad57600080fd5b505afa1580156107c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e59190610bea565b6107ef9190610cb8565b6107f99190610c98565b6040516370a0823160e01b815273cd7989894bc033581532d2cd88da5db0a4b12859906370a0823190610830908a90600401610c02565b60206040518083038186803b15801561084857600080fd5b505afa15801561085c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108809190610bea565b61088a9190610c80565b6108949190610c80565b905073cd7989894bc033581532d2cd88da5db0a4b128596001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052f57600080fd5b6000807319d97d8fa813ee2f51ad4b4e04ea08baf4dffc286001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b15801561093357600080fd5b505afa158015610947573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096b9190610bea565b604051634b341aed60e01b8152909150670de0b6b3a764000090829073a9429271a28f8543efffa136994c0839e7d7bf7790634b341aed906109b1908890600401610c02565b60206040518083038186803b1580156109c957600080fd5b505afa1580156109dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a019190610bea565b610a0b9190610cb8565b610a159190610c98565b6040516370a0823160e01b8152670de0b6b3a76400009083907319d97d8fa813ee2f51ad4b4e04ea08baf4dffc28906370a0823190610a58908990600401610c02565b60206040518083038186803b158015610a7057600080fd5b505afa158015610a84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa89190610bea565b610ab29190610cb8565b610abc9190610c98565b6040516370a0823160e01b8152733472a5a71965499acd81997a54bba8d852c6e53d906370a0823190610af3908890600401610c02565b60206040518083038186803b158015610b0b57600080fd5b505afa158015610b1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b439190610bea565b610b4d9190610c80565b610b579190610c80565b9392505050565b80516001600160701b03811681146101b157600080fd5b600060208284031215610b86578081fd5b81356001600160a01b0381168114610b57578182fd5b600080600060608486031215610bb0578182fd5b610bb984610b5e565b9250610bc760208501610b5e565b9150604084015163ffffffff81168114610bdf578182fd5b809150509250925092565b600060208284031215610bfb578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6000602080835283518082850152825b81811015610c4257858101830151858201604001528201610c26565b81811115610c535783604083870101525b50601f01601f1916929092016040019392505050565b90815260200190565b60ff91909116815260200190565b60008219821115610c9357610c93610cd7565b500190565b600082610cb357634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610cd257610cd2610cd7565b500290565b634e487b7160e01b600052601160045260246000fdfea26469706673582212208e89ee9cc04ab01f6346a047deabdadfb6b2ba60ff79caa97ea416d99a8c9e7164736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100575760003560e01c806306fdde031461005c57806318160ddd1461007a578063313ce5671461008f57806370a08231146100a457806395d89b41146100b7575b600080fd5b6100646100bf565b6040516100719190610c16565b60405180910390f35b6100826100ec565b6040516100719190610c69565b610097610178565b6040516100719190610c72565b6100826100b2366004610b75565b61017d565b6100646101b6565b60408051808201909152601381527242616467657220566f74696e6720536861726560681b602082015290565b6000733472a5a71965499acd81997a54bba8d852c6e53d6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561013b57600080fd5b505afa15801561014f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101739190610bea565b905090565b601290565b6000610188826101d9565b6101918361058d565b61019a846108e3565b6101a49190610c80565b6101ae9190610c80565b90505b919050565b60408051808201909152600981526842616467657220565360b81b602082015290565b600080731862a18181346ebd9edaf800804f89190def24a56001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b15801561022957600080fd5b505afa15801561023d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102619190610bea565b9050600073110492b31c59716ac47337e616804e3e3adc0b4a6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156102b257600080fd5b505afa1580156102c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ea9190610b9c565b509150506000670de0b6b3a76400008373b5b654efba23596ed49fade44f7e67e23d6712e76001600160a01b0316634b341aed886040518263ffffffff1660e01b815260040161033a9190610c02565b60206040518083038186803b15801561035257600080fd5b505afa158015610366573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038a9190610bea565b6103949190610cb8565b61039e9190610c98565b6040516370a0823160e01b8152670de0b6b3a7640000908590731862a18181346ebd9edaf800804f89190def24a5906370a08231906103e1908b90600401610c02565b60206040518083038186803b1580156103f957600080fd5b505afa15801561040d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104319190610bea565b61043b9190610cb8565b6104459190610c98565b6040516370a0823160e01b815273110492b31c59716ac47337e616804e3e3adc0b4a906370a082319061047c908a90600401610c02565b60206040518083038186803b15801561049457600080fd5b505afa1580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc9190610bea565b6104d69190610c80565b6104e09190610c80565b905073110492b31c59716ac47337e616804e3e3adc0b4a6001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052f57600080fd5b505afa158015610543573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105679190610bea565b61057a6001600160701b03841683610cb8565b6105849190610c98565b95945050505050565b60008073235c9e24d3fb2fafd58a2e49d454fdcd2dbf7ff16001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105dd57600080fd5b505afa1580156105f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106159190610bea565b9050600073cd7989894bc033581532d2cd88da5db0a4b128596001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561066657600080fd5b505afa15801561067a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069e9190610b9c565b509150506000670de0b6b3a76400008373a207d69ea6fb967e54baa8639c408c31767ba62d6001600160a01b0316634b341aed886040518263ffffffff1660e01b81526004016106ee9190610c02565b60206040518083038186803b15801561070657600080fd5b505afa15801561071a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073e9190610bea565b6107489190610cb8565b6107529190610c98565b6040516370a0823160e01b8152670de0b6b3a764000090859073235c9e24d3fb2fafd58a2e49d454fdcd2dbf7ff1906370a0823190610795908b90600401610c02565b60206040518083038186803b1580156107ad57600080fd5b505afa1580156107c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e59190610bea565b6107ef9190610cb8565b6107f99190610c98565b6040516370a0823160e01b815273cd7989894bc033581532d2cd88da5db0a4b12859906370a0823190610830908a90600401610c02565b60206040518083038186803b15801561084857600080fd5b505afa15801561085c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108809190610bea565b61088a9190610c80565b6108949190610c80565b905073cd7989894bc033581532d2cd88da5db0a4b128596001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052f57600080fd5b6000807319d97d8fa813ee2f51ad4b4e04ea08baf4dffc286001600160a01b03166377c7b8fc6040518163ffffffff1660e01b815260040160206040518083038186803b15801561093357600080fd5b505afa158015610947573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096b9190610bea565b604051634b341aed60e01b8152909150670de0b6b3a764000090829073a9429271a28f8543efffa136994c0839e7d7bf7790634b341aed906109b1908890600401610c02565b60206040518083038186803b1580156109c957600080fd5b505afa1580156109dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a019190610bea565b610a0b9190610cb8565b610a159190610c98565b6040516370a0823160e01b8152670de0b6b3a76400009083907319d97d8fa813ee2f51ad4b4e04ea08baf4dffc28906370a0823190610a58908990600401610c02565b60206040518083038186803b158015610a7057600080fd5b505afa158015610a84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa89190610bea565b610ab29190610cb8565b610abc9190610c98565b6040516370a0823160e01b8152733472a5a71965499acd81997a54bba8d852c6e53d906370a0823190610af3908890600401610c02565b60206040518083038186803b158015610b0b57600080fd5b505afa158015610b1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b439190610bea565b610b4d9190610c80565b610b579190610c80565b9392505050565b80516001600160701b03811681146101b157600080fd5b600060208284031215610b86578081fd5b81356001600160a01b0381168114610b57578182fd5b600080600060608486031215610bb0578182fd5b610bb984610b5e565b9250610bc760208501610b5e565b9150604084015163ffffffff81168114610bdf578182fd5b809150509250925092565b600060208284031215610bfb578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6000602080835283518082850152825b81811015610c4257858101830151858201604001528201610c26565b81811115610c535783604083870101525b50601f01601f1916929092016040019392505050565b90815260200190565b60ff91909116815260200190565b60008219821115610c9357610c93610cd7565b500190565b600082610cb357634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610cd257610cd2610cd7565b500290565b634e487b7160e01b600052601160045260246000fdfea26469706673582212208e89ee9cc04ab01f6346a047deabdadfb6b2ba60ff79caa97ea416d99a8c9e7164736f6c63430008000033

Deployed Bytecode Sourcemap

937:4111:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2000:101;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2210:98;;;:::i;:::-;;;;;;;:::i;1907:85::-;;;:::i;:::-;;;;;;;:::i;4849:172::-;;;;;;:::i;:::-;;:::i;2109:93::-;;;:::i;2000:101::-;2065:28;;;;;;;;;;;;-1:-1:-1;;;2065:28:0;;;;2000:101;:::o;2210:98::-;2256:4;1003:42;-1:-1:-1;;;;;2280:18:0;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2273:27;;2210:98;:::o;1907:85::-;1981:2;1907:85;:::o;4849:172::-;4907:4;4986:27;5006:6;4986:19;:27::i;:::-;4958:25;4976:6;4958:17;:25::i;:::-;4931:24;4948:6;4931:16;:24::i;:::-;:52;;;;:::i;:::-;:82;;;;:::i;:::-;4924:89;;4849:172;;;;:::o;2109:93::-;2176:18;;;;;;;;;;;;-1:-1:-1;;;2176:18:0;;;;2109:93;:::o;3726:538::-;3793:4;3810:22;1753:42;-1:-1:-1;;;;;3835:41:0;;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3810:68;;3892:16;1659:42;-1:-1:-1;;;;;3914:27:0;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3889:54;;;;3954:20;4176:4;4156:17;1853:42;-1:-1:-1;;;;;4108:37:0;;4146:6;4108:45;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:65;;;;:::i;:::-;:72;;;;:::i;:::-;4026:38;;-1:-1:-1;;;4026:38:0;;4087:4;;4067:17;;1753:42;;4026:30;;:38;;4057:6;;4026:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:58;;;;:::i;:::-;:65;;;;:::i;:::-;3977:33;;-1:-1:-1;;;3977:33:0;;1659:42;;3977:25;;:33;;4003:6;;3977:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:114;;;;:::i;:::-;:203;;;;:::i;:::-;3954:226;;1659:42;-1:-1:-1;;;;;4227:27:0;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4198:26;-1:-1:-1;;;;;4198:26:0;;:15;:26;:::i;:::-;:58;;;;:::i;:::-;4191:65;3726:538;-1:-1:-1;;;;;3726:538:0:o;2740:554::-;2805:4;2822:24;1418:42;-1:-1:-1;;;;;2849:43:0;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2822:72;;2908:16;1322:42;-1:-1:-1;;;;;2930:29:0;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2905:56;;;;2972:20;3204:4;3182:19;1520:42;-1:-1:-1;;;;;3132:39:0;;3172:6;3132:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:69;;;;:::i;:::-;:76;;;;:::i;:::-;3046:40;;-1:-1:-1;;;3046:40:0;;3111:4;;3089:19;;1418:42;;3046:32;;:40;;3079:6;;3046:40;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:62;;;;:::i;:::-;:69;;;;:::i;:::-;2995:35;;-1:-1:-1;;;2995:35:0;;1322:42;;2995:27;;:35;;3023:6;;2995:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:120;;;;:::i;:::-;:213;;;;:::i;:::-;2972:236;;1322:42;-1:-1:-1;;;;;3255:29:0;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4490:351;4554:4;4571:25;1092:42;-1:-1:-1;;;;;4599:32:0;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4767:36;;-1:-1:-1;;;4767:36:0;;4571:62;;-1:-1:-1;4829:4:0;;4571:62;;1183:42;;4767:28;;:36;;4796:6;;4767:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:59;;;;:::i;:::-;:66;;;;:::i;:::-;4691:29;;-1:-1:-1;;;4691:29:0;;4746:4;;4723:20;;1092:42;;4691:21;;:29;;4713:6;;4691:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:52;;;;:::i;:::-;:59;;;;:::i;:::-;4651:24;;-1:-1:-1;;;4651:24:0;;1003:42;;4651:16;;:24;;4668:6;;4651:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:99;;;;:::i;:::-;:182;;;;:::i;:::-;4644:189;4490:351;-1:-1:-1;;;4490:351:0:o;14:190:1:-;95:13;;-1:-1:-1;;;;;137:42:1;;127:53;;117:2;;194:1;191;184:12;209:306;;321:2;309:9;300:7;296:23;292:32;289:2;;;342:6;334;327:22;289:2;373:23;;-1:-1:-1;;;;;425:31:1;;415:42;;405:2;;476:6;468;461:22;520:474;;;;676:2;664:9;655:7;651:23;647:32;644:2;;;697:6;689;682:22;644:2;725:42;757:9;725:42;:::i;:::-;715:52;;786:51;833:2;822:9;818:18;786:51;:::i;:::-;776:61;;880:2;869:9;865:18;859:25;924:10;917:5;913:22;906:5;903:33;893:2;;955:6;947;940:22;893:2;983:5;973:15;;;634:360;;;;;:::o;999:194::-;;1122:2;1110:9;1101:7;1097:23;1093:32;1090:2;;;1143:6;1135;1128:22;1090:2;-1:-1:-1;1171:16:1;;1080:113;-1:-1:-1;1080:113:1:o;1198:203::-;-1:-1:-1;;;;;1362:32:1;;;;1344:51;;1332:2;1317:18;;1299:102::o;1406:603::-;;1547:2;1576;1565:9;1558:21;1608:6;1602:13;1651:6;1646:2;1635:9;1631:18;1624:34;1676:4;1689:140;1703:6;1700:1;1697:13;1689:140;;;1798:14;;;1794:23;;1788:30;1764:17;;;1783:2;1760:26;1753:66;1718:10;;1689:140;;;1847:6;1844:1;1841:13;1838:2;;;1917:4;1912:2;1903:6;1892:9;1888:22;1884:31;1877:45;1838:2;-1:-1:-1;1993:2:1;1972:15;-1:-1:-1;;1968:29:1;1953:45;;;;2000:2;1949:54;;1527:482;-1:-1:-1;;;1527:482:1:o;2014:177::-;2160:25;;;2148:2;2133:18;;2115:76::o;2196:184::-;2368:4;2356:17;;;;2338:36;;2326:2;2311:18;;2293:87::o;2385:128::-;;2456:1;2452:6;2449:1;2446:13;2443:2;;;2462:18;;:::i;:::-;-1:-1:-1;2498:9:1;;2433:80::o;2518:217::-;;2584:1;2574:2;;-1:-1:-1;;;2609:31:1;;2663:4;2660:1;2653:15;2691:4;2616:1;2681:15;2574:2;-1:-1:-1;2720:9:1;;2564:171::o;2740:168::-;;2846:1;2842;2838:6;2834:14;2831:1;2828:21;2823:1;2816:9;2809:17;2805:45;2802:2;;;2853:18;;:::i;:::-;-1:-1:-1;2893:9:1;;2792:116::o;2913:127::-;2974:10;2969:3;2965:20;2962:1;2955:31;3005:4;3002:1;2995:15;3029:4;3026:1;3019:15

Swarm Source

ipfs://8e89ee9cc04ab01f6346a047deabdadfb6b2ba60ff79caa97ea416d99a8c9e71

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.