Contract 0x564D4126AF2B195fFAa7fB470ED658b1D9D07A54 4

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x573a000f3b3ce41dc0d72d588a23ce386d1aa25e2d65b75c4ffa699cbc785571Reinvest112410772021-09-26 4:18:3030 mins ago0x95c3f3f5f805e604462dfd51fbea5330f5963b35 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
0x31af5eb1178fc624eb0719297eff509e4134a114973e5eebf91294d7243ad51fWithdraw112394292021-09-26 2:55:011 hr 54 mins ago0x539460bd8d7d6130ce6c4a65c0b59da3b3d2da42 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x394d755e2e69c20be01e735067bc21c3ff3732e60db516919651463f0e09e7d9Reinvest112365482021-09-26 0:30:544 hrs 18 mins ago0xc81d8f1ec3ee76df1f6b7a4db317dd2a393b7ab2 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
0x887d86f30e686a3aad5c5c31fcc1376b75b77921995a096dfdbf8c002df8e7e5Withdraw112353922021-09-25 23:33:055 hrs 16 mins ago0x7bab5bc4c2f709541777c737fe02b00ea032fba4 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.00057369
0x7121ad70717e1179a18198492d636d111d9d9f90e571b34a475b20c8f8f88bf3Withdraw112324642021-09-25 21:06:397 hrs 42 mins ago0x75d94e950e93dab58e02f300bb2039fac72459c8 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x9a76ced9129c8f80b35c663ea10f5aa03d10c2c880dddbc31f7ddb5164d1cceaSell112324472021-09-25 21:05:487 hrs 43 mins ago0x75d94e950e93dab58e02f300bb2039fac72459c8 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000370665
0x1088bcff420707c3605a216f58dd5e23c737b70858e6aaf28589904db8688c34Withdraw112319742021-09-25 20:42:098 hrs 7 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x5194ee8730cc88bec535c53a7b43c37d6f3c7d2ab13fc30962d82a0c7782c494Withdraw112295672021-09-25 18:41:3910 hrs 7 mins ago0x24d450fc5c00caea988df162f286568c4b1a7e6a IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x63c8f16e51e435de23f12f5e2c50ad24f68306712445d51f37e17bfcf56bcc1bWithdraw112274302021-09-25 16:54:0911 hrs 55 mins ago0xef278b862056ee614d13f129063c8241375299fd IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000523335
0x86eca4cd9f7d81a382b74b3c86464b8c249d415491c6340aff2be9c4c2826f52Withdraw112273862021-09-25 16:51:5711 hrs 57 mins ago0xa81060d5f03efdd62fbfed6eb069035e878fafde IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000523335
0xfd563d4a329aea422ed7039fe31ce444b67f3e8c2a6debeebf85d3dc7aa7ba05Withdraw112264522021-09-25 16:03:1112 hrs 46 mins ago0x6b777e7f18d2a55db5fbfb13009d36b3a7ea04b3 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x0e98aa71e6d6dacc677728bef5cc57b83fdeb187b249367791955b991a1a8a7eReinvest112261952021-09-25 15:50:2012 hrs 59 mins ago0xd1efe8038ba718783b025e4da829703650e3e74a IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.00064222
0x15d55a74633c323c5469382e787b63f3f0f9bfab621ac62f620ba62dbfcdfeeaReinvest112237342021-09-25 13:46:1215 hrs 3 mins ago0x99d4c1bde2215b630aed934bd508aec722ebb2ca IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
0x9654a089f00c956d3c1ad267163444e63f33a313d8a072e177ca0c6720e5e9ecWithdraw112226222021-09-25 12:49:4115 hrs 59 mins ago0xf1fff7666f0d7e720d5a8ea525e556a58f711281 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x597eb43228adbc20c303ce9be940b84937efbd299cff0c7f389f0d4208339424Reinvest112222362021-09-25 12:30:2316 hrs 19 mins ago0x3d8f2929fd1ca6fbc4aaad5c4595b0584ca29b9b IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
0x1bf88fcbf2a9c0e758fcf902bcdecf8153c42bef6cd395ed6a1ff17d9be27aa5Withdraw112210622021-09-25 11:31:3717 hrs 17 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0x124875ccd63ef0812534e59ee518a982d7240058992eba1d159f3ff40ab2fe61Withdraw112195722021-09-25 10:17:0418 hrs 32 mins ago0xa2ac9f3633fe0efa3c67facf60b272b4312544a5 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000523335
0xfd81a1278cd82dc19520cc1a16974835480adfce096ab1ab2f821ab9e6d2661cReinvest112190232021-09-25 9:49:3718 hrs 59 mins ago0x1dcbfa12ffd789806de22dd92f8e68c9c5d86ab7 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.00064222
0xa37ea23a493fe347fefc323701efa25a33bc6e15cc19ad4cc5eeba1cf874016cWithdraw112184692021-09-25 9:21:5519 hrs 27 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0xeedd511b458af56b83668ed2bcf18ab153467da57e912ccc44728a867679e255Reinvest112147032021-09-25 6:12:5322 hrs 36 mins ago0x60170fb85332ee7b527e5e8cf20b49826f6b57a3 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
0x19cd5740a965354f6b8a159ccc9ffac5c4f7bf7f926c3525e6b40de005a071a7Withdraw112146172021-09-25 6:08:3522 hrs 40 mins ago0xdac4d5e4f69e58e66b178fb98101b78a95706816 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000523335
0x7c4a7d30e843e4a5e92317296d3b4d6912d178515d4f85a06d231e2cb74a8776Withdraw112125882021-09-25 4:26:041 day 23 mins ago0x539460bd8d7d6130ce6c4a65c0b59da3b3d2da42 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000598335
0xbf0cc030d8ba3838f45df63ef1826b07937a59ea1092938c6f7e0c502226270cWithdraw112122752021-09-25 4:10:251 day 39 mins ago0x24d450fc5c00caea988df162f286568c4b1a7e6a IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000523335
0x2dc3065d94a5a571ccc6712083cc492e843f6420d234cffca45952c050c7f59fWithdraw112116102021-09-25 3:37:071 day 1 hr ago0xb13a81662fd89f723caef21c01819aa1317d7c1a IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.00057369
0x3a0a5e77995ee2a32b1aca63f4ca9f73bc434b79ce0b3a674daeae2466b25d33Reinvest112054922021-09-24 22:29:321 day 6 hrs ago0xac58212b46cb8b6bd5f6b31f3410bf99b52830a4 IN  0x564d4126af2b195ffaa7fb470ed658b1d9d07a540 BNB0.000591865
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Similar Match)
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xd397f06eecd4eb9af0492874be0d24d67560ff69

Contract Name:
BankrollNetworkStack

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-03-03
*/

/*
    SPDX-License-Identifier: MIT
    A Bankteller Production
    Bankroll Network
    Copyright 2021
*/
pragma solidity ^0.4.25;


contract Token {
    function transferFrom(address from, address to, uint256 value) public returns (bool);

    function transfer(address to, uint256 value) public returns (bool);

    function balanceOf(address who) public view returns (uint256);
}


/*
 * @dev Stack is a perpetual rewards contract the collects 8% fee on buys/sells for a dividend pool that drips 2% daily.
 * A 2% fee is paid instantly to token holders on buys/sells as well
*/


contract BankrollNetworkStack  {

    using SafeMath for uint;

    /*=================================
    =            MODIFIERS            =
    =================================*/

    /// @dev Only people with tokens
    modifier onlyBagholders {
        require(myTokens() > 0);
        _;
    }

    /// @dev Only people with profits
    modifier onlyStronghands {
        require(myDividends() > 0);
        _;
    }



    /*==============================
    =            EVENTS            =
    ==============================*/


    event onLeaderBoard(
        address indexed customerAddress,
        uint256 invested,
        uint256 tokens,
        uint256 soldTokens,
        uint timestamp
    );

    event onTokenPurchase(
        address indexed customerAddress,
        uint256 incomingeth,
        uint256 tokensMinted,
        uint timestamp
    );

    event onTokenSell(
        address indexed customerAddress,
        uint256 tokensBurned,
        uint256 ethEarned,
        uint timestamp
    );

    event onReinvestment(
        address indexed customerAddress,
        uint256 ethReinvested,
        uint256 tokensMinted,
        uint timestamp
    );

    event onWithdraw(
        address indexed customerAddress,
        uint256 ethWithdrawn,
        uint timestamp
    );


    event onTransfer(
        address indexed from,
        address indexed to,
        uint256 tokens,
        uint timestamp
    );

    event onBalance(
        uint256 balance,
        uint256 timestamp
    );

    event onDonation(
        address indexed from,
        uint256 amount,
        uint timestamp
    );

    // Onchain Stats!!!
    struct Stats {
        uint invested;
        uint reinvested;
        uint withdrawn;
        uint rewarded;
        uint contributed;
        uint transferredTokens;
        uint receivedTokens;
        uint xInvested;
        uint xReinvested;
        uint xRewarded;
        uint xContributed;
        uint xWithdrawn;
        uint xTransferredTokens;
        uint xReceivedTokens;
    }


    /*=====================================
    =            CONFIGURABLES            =
    =====================================*/

    /// @dev 15% dividends for token purchase
    uint8 constant internal entryFee_ = 10;


    /// @dev 5% dividends for token selling
    uint8 constant internal exitFee_ = 10;

    uint8 constant internal dripFee = 80;  //80% of fees go to drip, the rest to the Swap buyback

    uint8 constant payoutRate_ = 2;

    uint256 constant internal magnitude = 2 ** 64;

    /*=================================
     =            DATASETS            =
     ================================*/

    // amount of shares for each address (scaled number)
    mapping(address => uint256) private tokenBalanceLedger_;
    mapping(address => int256) private payoutsTo_;
    mapping(address => Stats) private stats;
    //on chain referral tracking
    uint256 private tokenSupply_;
    uint256 private profitPerShare_;
    uint256 public totalDeposits;
    uint256 internal lastBalance_;

    uint public players;
    uint public totalTxs;
    uint public dividendBalance_;
    uint public lastPayout;
    uint public totalClaims;

    uint256 public balanceInterval = 6 hours;
    uint256 public distributionInterval = 2 seconds;

    address public tokenAddress;

    Token private token;


    /*=======================================
    =            PUBLIC FUNCTIONS           =
    =======================================*/

    constructor(address _tokenAddress) public {

        tokenAddress = _tokenAddress;
        token = Token(_tokenAddress);

        lastPayout = now;

    }


    /// @dev This is how you pump pure "drip" dividends into the system
    function donatePool(uint amount) public returns (uint256) {
        require(token.transferFrom(msg.sender, address(this),amount));

        dividendBalance_ += amount;

        emit onDonation(msg.sender, amount,now);
    }

    /// @dev Converts all incoming eth to tokens for the caller, and passes down the referral addy (if any)
    function buy(uint buy_amount) public returns (uint256)  {
        return buyFor(msg.sender, buy_amount);
    }


    /// @dev Converts all incoming eth to tokens for the caller, and passes down the referral addy (if any)
    function buyFor(address _customerAddress, uint buy_amount) public returns (uint256)  {
        require(token.transferFrom(_customerAddress, address(this), buy_amount));
        totalDeposits += buy_amount;
        uint amount = purchaseTokens(_customerAddress, buy_amount);

        emit onLeaderBoard(_customerAddress,
            stats[_customerAddress].invested,
            tokenBalanceLedger_[_customerAddress],
            stats[_customerAddress].withdrawn,
            now
        );

        //distribute
        distribute();

        return amount;
    }




    /**
     * @dev Fallback function to return any TRX/ETH accidentally sent to the contract
     */
    function() payable public {
        require(false);
    }

    /// @dev Converts all of caller's dividends to tokens.
    function reinvest() onlyStronghands public {
        // fetch dividends
        uint256 _dividends = myDividends();
        // retrieve ref. bonus later in the code

        // pay out the dividends virtually
        address _customerAddress = msg.sender;
        payoutsTo_[_customerAddress] += (int256) (_dividends * magnitude);

        // dispatch a buy order with the virtualized "withdrawn dividends"
        uint256 _tokens = purchaseTokens(msg.sender, _dividends);

        // fire event
        emit onReinvestment(_customerAddress, _dividends, _tokens, now);

        //Stats
        stats[_customerAddress].reinvested = SafeMath.add(stats[_customerAddress].reinvested, _dividends);
        stats[_customerAddress].xReinvested += 1;

        emit onLeaderBoard(_customerAddress,
            stats[_customerAddress].invested,
            tokenBalanceLedger_[_customerAddress],
            stats[_customerAddress].withdrawn,
            now
        );

        //distribute
        distribute();
    }

    /// @dev Withdraws all of the callers earnings.
    function withdraw() onlyStronghands public {
        // setup data
        address _customerAddress = msg.sender;
        uint256 _dividends = myDividends();

        // update dividend tracker
        payoutsTo_[_customerAddress] += (int256) (_dividends * magnitude);


        // lambo delivery service
        token.transfer(_customerAddress,_dividends);

        //stats
        stats[_customerAddress].withdrawn = SafeMath.add(stats[_customerAddress].withdrawn, _dividends);
        stats[_customerAddress].xWithdrawn += 1;
        totalTxs += 1;
        totalClaims += _dividends;

        // fire event
        emit onWithdraw(_customerAddress, _dividends, now);

        emit onLeaderBoard(_customerAddress,
            stats[_customerAddress].invested,
            tokenBalanceLedger_[_customerAddress],
            stats[_customerAddress].withdrawn,
            now
        );

        //distribute
        distribute();
    }


    /// @dev Liquifies tokens to eth.
    function sell(uint256 _amountOfTokens) onlyBagholders public {
        // setup data
        address _customerAddress = msg.sender;

        require(_amountOfTokens <= tokenBalanceLedger_[_customerAddress]);


        // data setup
        uint256 _undividedDividends = SafeMath.mul(_amountOfTokens, exitFee_) / 100;
        uint256 _taxedeth = SafeMath.sub(_amountOfTokens, _undividedDividends);

        // burn the sold tokens
        tokenSupply_ = SafeMath.sub(tokenSupply_, _amountOfTokens);
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens);

        // update dividends tracker
        int256 _updatedPayouts = (int256) (profitPerShare_ * _amountOfTokens + (_taxedeth * magnitude));
        payoutsTo_[_customerAddress] -= _updatedPayouts;


        //drip and buybacks
        allocateFees(_undividedDividends);

        // fire event
        emit onTokenSell(_customerAddress, _amountOfTokens, _taxedeth, now);

        //distribute
        distribute();
    }

    /**
    * @dev Transfer tokens from the caller to a new holder.
    *  Zero fees
    */
    function transfer(address _toAddress, uint256 _amountOfTokens) onlyBagholders external returns (bool) {
        // setup
        address _customerAddress = msg.sender;

        // make sure we have the requested tokens
        require(_amountOfTokens <= tokenBalanceLedger_[_customerAddress]);

        // withdraw all outstanding dividends first
        if (myDividends() > 0) {
            withdraw();
        }


        // exchange tokens
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens);
        tokenBalanceLedger_[_toAddress] = SafeMath.add(tokenBalanceLedger_[_toAddress], _amountOfTokens);

        // update dividend trackers
        payoutsTo_[_customerAddress] -= (int256) (profitPerShare_ * _amountOfTokens);
        payoutsTo_[_toAddress] += (int256) (profitPerShare_ * _amountOfTokens);



        /* Members
            A player can be initialized by buying or receiving and we want to add the user ASAP
         */
        if (stats[_toAddress].invested == 0 && stats[_toAddress].receivedTokens == 0) {
            players += 1;
        }

        //Stats
        stats[_customerAddress].xTransferredTokens += 1;
        stats[_customerAddress].transferredTokens += _amountOfTokens;
        stats[_toAddress].receivedTokens += _amountOfTokens;
        stats[_toAddress].xReceivedTokens += 1;
        totalTxs += 1;

        // fire event
        emit onTransfer(_customerAddress, _toAddress, _amountOfTokens,now);

        emit onLeaderBoard(_customerAddress,
            stats[_customerAddress].invested,
            tokenBalanceLedger_[_customerAddress],
            stats[_customerAddress].withdrawn,
            now
        );

        emit onLeaderBoard(_toAddress,
            stats[_toAddress].invested,
            tokenBalanceLedger_[_toAddress],
            stats[_toAddress].withdrawn,
            now
        );

        // ERC20
        return true;
    }


    /*=====================================
    =      HELPERS AND CALCULATORS        =
    =====================================*/

    /**
     * @dev Method to view the current eth stored in the contract
     */
    function totalTokenBalance() public view returns (uint256) {
        return token.balanceOf(address(this));
    }

    /// @dev Retrieve the total token supply.
    function totalSupply() public view returns (uint256) {
        return tokenSupply_;
    }

    /// @dev Retrieve the tokens owned by the caller.
    function myTokens() public view returns (uint256) {
        address _customerAddress = msg.sender;
        return balanceOf(_customerAddress);
    }

    /**
     * @dev Retrieve the dividends owned by the caller.
     */
    function myDividends() public view returns (uint256) {
        address _customerAddress = msg.sender;
        return dividendsOf(_customerAddress);
    }

    /// @dev Retrieve the token balance of any single address.
    function balanceOf(address _customerAddress) public view returns (uint256) {
        return tokenBalanceLedger_[_customerAddress];
    }

    /// @dev Retrieve the token balance of any single address.
    function tokenBalance(address _customerAddress) public view returns (uint256) {
        return _customerAddress.balance;
    }

    /// @dev Retrieve the dividend balance of any single address.
    function dividendsOf(address _customerAddress) public view returns (uint256) {
        return (uint256) ((int256) (profitPerShare_ * tokenBalanceLedger_[_customerAddress]) - payoutsTo_[_customerAddress]) / magnitude;
    }


    /// @dev Return the sell price of 1 individual token.
    function sellPrice() public pure returns (uint256) {
        uint256 _eth = 1e18;
        uint256 _dividends = SafeMath.div(SafeMath.mul(_eth, exitFee_), 100);
        uint256 _taxedeth = SafeMath.sub(_eth, _dividends);

        return _taxedeth;

    }

    /// @dev Return the buy price of 1 individual token.
    function buyPrice() public pure returns (uint256) {
        uint256 _eth = 1e18;
        uint256 _dividends = SafeMath.div(SafeMath.mul(_eth, entryFee_), 100);
        uint256 _taxedeth = SafeMath.add(_eth, _dividends);

        return _taxedeth;

    }

    /// @dev Function for the frontend to dynamically retrieve the price scaling of buy orders.
    function calculateTokensReceived(uint256 _ethToSpend) public pure returns (uint256) {
        uint256 _dividends = SafeMath.div(SafeMath.mul(_ethToSpend, entryFee_), 100);
        uint256 _taxedeth = SafeMath.sub(_ethToSpend, _dividends);
        uint256 _amountOfTokens = _taxedeth;

        return _amountOfTokens;
    }

    /// @dev Function for the frontend to dynamically retrieve the price scaling of sell orders.
    function calculateethReceived(uint256 _tokensToSell) public view returns (uint256) {
        require(_tokensToSell <= tokenSupply_);
        uint256 _eth = _tokensToSell;
        uint256 _dividends = SafeMath.div(SafeMath.mul(_eth, exitFee_), 100);
        uint256 _taxedeth = SafeMath.sub(_eth, _dividends);
        return _taxedeth;
    }


    /// @dev Stats of any single address
    function statsOf(address _customerAddress) public view returns (uint256[14] memory){
        Stats memory s = stats[_customerAddress];
        uint256[14] memory statArray = [s.invested, s.withdrawn, s.rewarded, s.contributed, s.transferredTokens, s.receivedTokens, s.xInvested, s.xRewarded, s.xContributed, s.xWithdrawn, s.xTransferredTokens, s.xReceivedTokens, s.reinvested, s.xReinvested];
        return statArray;
    }


    function dailyEstimate(address _customerAddress) public view returns (uint256){
        uint256 share = dividendBalance_.mul(payoutRate_).div(100);

        return (tokenSupply_ > 0) ? share.mul(tokenBalanceLedger_[_customerAddress]).div(tokenSupply_) : 0;
    }


    function allocateFees(uint fee) private {
        

        // 1/5 paid out instantly
        uint256 instant = fee.div(5); 

        if (tokenSupply_ > 0) {
            // Apply instant divs
            profitPerShare_ = SafeMath.add(profitPerShare_, (instant * magnitude) / tokenSupply_);
        }

        // Add 4/5 to dividend drip pools
        dividendBalance_ += fee.safeSub(instant);
    }

    function distribute() private {

        if (now.safeSub(lastBalance_) > balanceInterval) {
            emit onBalance(totalTokenBalance(), now);
            lastBalance_ = now;
        }


        if (SafeMath.safeSub(now, lastPayout) > distributionInterval && tokenSupply_ > 0) {

            //A portion of the dividend is paid out according to the rate
            uint256 share = dividendBalance_.mul(payoutRate_).div(100).div(24 hours);
            //divide the profit by seconds in the day
            uint256 profit = share * now.safeSub(lastPayout);
            //share times the amount of time elapsed
            dividendBalance_ = dividendBalance_.safeSub(profit);

            //Apply divs
            profitPerShare_ = SafeMath.add(profitPerShare_, (profit * magnitude) / tokenSupply_);

            lastPayout = now;
        }

    }



    /*==========================================
    =            INTERNAL FUNCTIONS            =
    ==========================================*/

    /// @dev Internal function to actually purchase the tokens.
    function purchaseTokens(address _customerAddress, uint256 _incomingeth) internal returns (uint256) {

        /* Members */
        if (stats[_customerAddress].invested == 0 && stats[_customerAddress].receivedTokens == 0) {
            players += 1;
        }

        totalTxs += 1;

        // data setup
        uint256 _undividedDividends = SafeMath.mul(_incomingeth, entryFee_) / 100;
        uint256 _amountOfTokens = SafeMath.sub(_incomingeth, _undividedDividends);

        // fire event
        emit onTokenPurchase(_customerAddress, _incomingeth, _amountOfTokens, now);

        // yes we know that the safemath function automatically rules out the "greater then" equation.
        require(_amountOfTokens > 0 && SafeMath.add(_amountOfTokens, tokenSupply_) > tokenSupply_);


        // we can't give people infinite eth
        if (tokenSupply_ > 0) {
            // add tokens to the pool
            tokenSupply_ += _amountOfTokens;

        } else {
            // add tokens to the pool
            tokenSupply_ = _amountOfTokens;
        }

        //drip and buybacks
        allocateFees(_undividedDividends);

        // update circulating supply & the ledger address for the customer
        tokenBalanceLedger_[_customerAddress] = SafeMath.add(tokenBalanceLedger_[_customerAddress], _amountOfTokens);

        // Tells the contract that the buyer doesn't deserve dividends for the tokens before they owned them;
        // really i know you think you do but you don't
        int256 _updatedPayouts = (int256) (profitPerShare_ * _amountOfTokens);
        payoutsTo_[_customerAddress] += _updatedPayouts;


        //Stats
        stats[_customerAddress].invested += _incomingeth;
        stats[_customerAddress].xInvested += 1;

        return _amountOfTokens;
    }


}

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        assert(c / a == b);
        return c;
    }

    /**
    * @dev Integer division of two numbers, truncating the quotient.
    */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        // uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return a / b;
    }

    /**
    * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    /* @dev Subtracts two numbers, else returns zero */
    function safeSub(uint a, uint b) internal pure returns (uint) {
        if (b > a) {
            return 0;
        } else {
            return a - b;
        }
    }

    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        assert(c >= a);
        return c;
    }

    function max(uint256 a, uint256 b) internal pure returns (uint256) {
        return a >= b ? a : b;
    }

    function min(uint256 a, uint256 b) internal pure returns (uint256) {
        return a < b ? a : b;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"dividendsOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_customerAddress","type":"address"},{"name":"buy_amount","type":"uint256"}],"name":"buyFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_ethToSpend","type":"uint256"}],"name":"calculateTokensReceived","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"statsOf","outputs":[{"name":"","type":"uint256[14]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"myDividends","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalTokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalClaims","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"totalTxs","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"distributionInterval","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalDeposits","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_tokensToSell","type":"uint256"}],"name":"calculateethReceived","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"myTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amountOfTokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastPayout","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dividendBalance_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"buy_amount","type":"uint256"}],"name":"buy","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"players","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amountOfTokens","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"tokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"donatePool","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"dailyEstimate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"balanceInterval","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"reinvest","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_tokenAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"invested","type":"uint256"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"soldTokens","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onLeaderBoard","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"incomingeth","type":"uint256"},{"indexed":false,"name":"tokensMinted","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onTokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"tokensBurned","type":"uint256"},{"indexed":false,"name":"ethEarned","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onTokenSell","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"ethReinvested","type":"uint256"},{"indexed":false,"name":"tokensMinted","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onReinvestment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"ethWithdrawn","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"balance","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onBalance","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onDonation","type":"event"}]

6080604052615460600c556002600d5534801561001b57600080fd5b506040516020806116968339810160405251600e8054600160a060020a03909216600160a060020a03199283168117909155600f805490921617905542600a5561162c8061006a6000396000f3006080604052600436106101735763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461017a57806306501a6a146101ad57806310d0ffdd146101d157806315cfc405146101e957806318160ddd146102435780633151ecfc146102585780633ccfd60b1461026d5780633d4b2c2c1461028257806341c61383146102975780634b750334146102ac578063537a39bb146102c157806370a08231146102d657806371201a0e146102f75780637d8820971461030c5780638620410b146103215780638dd4b8ad14610336578063949e8acd1461034e5780639d76ea5814610363578063a9059cbb14610394578063b9db102a146103cc578063ca3ea930146103e1578063d96a094a146103f6578063dc0b35641461040e578063e4849b3214610423578063eedc966a1461043b578063f4d980581461045c578063fbaf1bbd14610474578063fc439f7714610495578063fdb5a03e146104aa575b600080fd5b005b34801561018657600080fd5b5061019b600160a060020a03600435166104bf565b60408051918252519081900360200190f35b3480156101b957600080fd5b5061019b600160a060020a03600435166024356104f9565b3480156101dd57600080fd5b5061019b600435610626565b3480156101f557600080fd5b5061020a600160a060020a0360043516610655565b60405180826101c080838360005b83811015610230578181015183820152602001610218565b5050505090500191505060405180910390f35b34801561024f57600080fd5b5061019b6107d6565b34801561026457600080fd5b5061019b6107dc565b34801561027957600080fd5b506101786107ee565b34801561028e57600080fd5b5061019b6109d8565b3480156102a357600080fd5b5061019b610a6e565b3480156102b857600080fd5b5061019b610a74565b3480156102cd57600080fd5b5061019b610aa3565b3480156102e257600080fd5b5061019b600160a060020a0360043516610aa9565b34801561030357600080fd5b5061019b610ac4565b34801561031857600080fd5b5061019b610aca565b34801561032d57600080fd5b5061019b610ad0565b34801561034257600080fd5b5061019b600435610af7565b34801561035a57600080fd5b5061019b610b2b565b34801561036f57600080fd5b50610378610b37565b60408051600160a060020a039092168252519081900360200190f35b3480156103a057600080fd5b506103b8600160a060020a0360043516602435610b46565b604080519115158252519081900360200190f35b3480156103d857600080fd5b5061019b610dc0565b3480156103ed57600080fd5b5061019b610dc6565b34801561040257600080fd5b5061019b600435610dcc565b34801561041a57600080fd5b5061019b610dde565b34801561042f57600080fd5b50610178600435610de4565b34801561044757600080fd5b5061019b600160a060020a0360043516610f19565b34801561046857600080fd5b5061019b600435610f26565b34801561048057600080fd5b5061019b600160a060020a0360043516611015565b3480156104a157600080fd5b5061019b611087565b3480156104b657600080fd5b5061017861108d565b600160a060020a03166000908152600160209081526040808320549183905290912054600454680100000000000000009102919091030490565b600f54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152306024830152604482018590529151600093849316916323b872dd91606480830192602092919082900301818787803b15801561056f57600080fd5b505af1158015610583573d6000803e3d6000fd5b505050506040513d602081101561059957600080fd5b505115156105a657600080fd5b60058054840190556105b884846111d4565b600160a060020a038516600081815260026020818152604080842080548584529482902054848452930154815194855291840192909252828201524260608301525192935090916000805160206115e18339815191529181900360800190a261061f611369565b9392505050565b600080808061064061063986600a611479565b60646114a2565b925061064c85846114b7565b95945050505050565b61065d611550565b610665611570565b61066d611550565b6002600085600160a060020a0316600160a060020a031681526020019081526020016000206101c0604051908101604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815260200160068201548152602001600782015481526020016008820154815260200160098201548152602001600a8201548152602001600b8201548152602001600c8201548152602001600d8201548152505091506101c060405190810160405280836000015181526020018360400151815260200183606001518152602001836080015181526020018360a0015181526020018360c0015181526020018360e0015181526020018361012001518152602001836101400151815260200183610160015181526020018361018001518152602001836101a0015181526020018360200151815260200183610100015181525090508092505050919050565b60035490565b6000336107e8816104bf565b91505090565b60008060006107fb6107dc565b1161080557600080fd5b3391506108106107dc565b600160a060020a0380841660008181526001602090815260408083208054680100000000000000008802019055600f5481517fa9059cbb00000000000000000000000000000000000000000000000000000000815260048101959095526024850187905290519596509093169363a9059cbb936044808501949193918390030190829087803b1580156108a257600080fd5b505af11580156108b6573d6000803e3d6000fd5b505050506040513d60208110156108cc57600080fd5b5050600160a060020a038216600090815260026020819052604090912001546108f590826114c9565b600160a060020a03831660008181526002602081815260409283902091820194909455600b9081018054600190810190915560088054909101905580548501905580518481524293810193909352805191927f1b091269e929df55d64d6ea7e9cadbe4fb38dce5ccdc995767bc515030dbfbbf929081900390910190a2600160a060020a03821660008181526002602081815260408084208054858452948290205484845293015481519485529184019290925282820152426060830152516000805160206115e18339815191529181900360800190a26109d4611369565b5050565b600f54604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600092600160a060020a0316916370a0823191602480830192602092919082900301818787803b158015610a3d57600080fd5b505af1158015610a51573d6000803e3d6000fd5b505050506040513d6020811015610a6757600080fd5b5051905090565b600b5481565b6000670de0b6b3a76400008180610a8f61063984600a611479565b9150610a9b83836114b7565b949350505050565b60085481565b600160a060020a031660009081526020819052604090205490565b600d5481565b60055481565b6000670de0b6b3a76400008180610aeb61063984600a611479565b9150610a9b83836114c9565b6000806000806003548511151515610b0e57600080fd5b849250610b1f61063984600a611479565b915061064c83836114b7565b6000336107e881610aa9565b600e54600160a060020a031681565b6000806000610b53610b2b565b11610b5d57600080fd5b5033600081815260208190526040902054831115610b7a57600080fd5b6000610b846107dc565b1115610b9257610b926107ee565b600160a060020a038116600090815260208190526040902054610bb590846114b7565b600160a060020a038083166000908152602081905260408082209390935590861681522054610be490846114c9565b600160a060020a0385811660008181526020818152604080832095909555600480549487168352600182528583208054958a029095039094559254918152838120805492880290920190915560029091522054158015610c5d5750600160a060020a038416600090815260026020526040902060060154155b15610c6c576007805460010190555b600160a060020a038082166000818152600260209081526040808320600c810180546001908101909155600590910180548a019055948916808452928190206006810180548a019055600d018054860190556008805490950190945583518781524291810191909152835191937f91c7d71a3ae3fb7cf61e00517bf4868e9e23d0bace5e304cbc3b68de5d85350e92918290030190a3600160a060020a03811660008181526002602081815260408084208054858452948290205484845293015481519485529184019290925282820152426060830152516000805160206115e18339815191529181900360800190a2600160a060020a03841660008181526002602081815260408084208054858452948290205484845293015481519485529184019290925282820152426060830152516000805160206115e18339815191529181900360800190a25060019392505050565b600a5481565b60095481565b6000610dd833836104f9565b92915050565b60075481565b6000806000806000610df4610b2b565b11610dfe57600080fd5b33600081815260208190526040902054909450851115610e1d57600080fd5b6064610e2a86600a611479565b811515610e3357fe5b049250610e4085846114b7565b9150610e4e600354866114b7565b600355600160a060020a038416600090815260208190526040902054610e7490866114b7565b600160a060020a0385166000908152602081815260408083209390935560045460019091529190208054918702680100000000000000008502019182900390559050610ebf836114d6565b604080518681526020810184905242818301529051600160a060020a038616917f723391258f051422e0be75f0bbcc5c94947b440ae6162c87b3efb5fecde315e5919081900360600190a2610f12611369565b5050505050565b600160a060020a03163190565b600f54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490529051600092600160a060020a0316916323b872dd91606480830192602092919082900301818787803b158015610f9857600080fd5b505af1158015610fac573d6000803e3d6000fd5b505050506040513d6020811015610fc257600080fd5b50511515610fcf57600080fd5b600980548301905560408051838152426020820152815133927f73cd5c58cef87bb4066d9a2323ff8623db2025f5df3e71fc9f8dd410d69f31a3928290030190a2919050565b6000806110426064611036600260ff1660095461147990919063ffffffff16565b9063ffffffff6114a216565b905060006003541161105557600061061f565b600354600160a060020a03841660009081526020819052604090205461061f919061103690849063ffffffff61147916565b600c5481565b60008060008061109b6107dc565b116110a557600080fd5b6110ad6107dc565b336000818152600160205260409020805468010000000000000000840201905590935091506110dc82846111d4565b604080518581526020810183905242818301529051919250600160a060020a038416917f17aaea3d55ba445f06d158973e18525f80eafebc9d74964ae85b9c3681021b329181900360600190a2600160a060020a03821660009081526002602052604090206001015461114f90846114c9565b600160a060020a038316600081815260026020818152604080842060018082019790975560088101805490970190965585548483529381902054838352959092015482519384529083019490945281810193909352426060820152915190916000805160206115e1833981519152919081900360800190a26111cf611369565b505050565b600160a060020a0382166000908152600260205260408120548190819081901580156112195750600160a060020a038616600090815260026020526040902060060154155b15611228576007805460010190555b600880546001019055606461123e86600a611479565b81151561124757fe5b04925061125485846114b7565b604080518781526020810183905242818301529051919350600160a060020a038816917f810900bb33e423094372279f779b623ab22b73472a8a91fce3c018129c2050199181900360600190a26000821180156112bb57506003546112b983826114c9565b115b15156112c657600080fd5b600060035411156112de5760038054830190556112e4565b60038290555b6112ed836114d6565b600160a060020a03861660009081526020819052604090205461131090836114c9565b600160a060020a0396909616600090815260208181526040808320989098556004546001808352898420805492870290920190915560029091529690208054959095018555506007909301805490940190935550919050565b600080600c546113846006544261153590919063ffffffff16565b11156113ce577fa14e3b1c1ae7cf637a6a97eacba61965eaf456b6994afc09a2097bdf7da639816113b36109d8565b604080519182524260208301528051918290030190a1426006555b600d546113dd42600a54611535565b1180156113ec57506000600354115b156109d457611416620151806110366064611036600260ff1660095461147990919063ffffffff16565b915061142d600a544261153590919063ffffffff16565b6009549083029150611445908263ffffffff61153516565b60095560045460035461146e919068010000000000000000840281151561146857fe5b046114c9565b60045542600a555050565b600082151561148a57506000610dd8565b5081810281838281151561149a57fe5b0414610dd857fe5b600081838115156114af57fe5b049392505050565b6000828211156114c357fe5b50900390565b81810182811015610dd857fe5b60006114e982600563ffffffff6114a216565b9050600060035411156115185761151460045460035468010000000000000000840281151561146857fe5b6004555b611528828263ffffffff61153516565b6009805490910190555050565b60008282111561154757506000610dd8565b50808203610dd8565b6101c060405190810160405280600e906020820280388339509192915050565b6101c060405190810160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815250905600a1f02c754056a0800f9d81f943b5136b52f3b5bbde1ae99c6935adb95b54271aa165627a7a72305820d806abf0892fd307a1753128e425681882ab77bc344c7f117f16121a26c2c9930029000000000000000000000000190b589cf9fb8ddeabbfeae36a813ffb2a702454

Deployed ByteCode Sourcemap

608:17920:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5825:14;;;;608:17920;12637:224;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12637:224:0;-1:-1:-1;;;;;12637:224:0;;;;;;;;;;;;;;;;;;;;;5089:580;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5089:580:0;-1:-1:-1;;;;;5089:580:0;;;;;;;13621:328;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13621:328:0;;;;;14453:428;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14453:428:0;-1:-1:-1;;;;;14453:428:0;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;14453:428:0;;;;;;;;;;;;;;;;11608:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11608:91:0;;;;11996:156;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11996:156:0;;;;7013:966;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7013:966:0;;;;11438:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11438:115:0;;;;3924:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3924:23:0;;;;12930:260;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12930:260:0;;;;3833:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3833:20:0;;;;12224:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12224:138:0;-1:-1:-1;;;;;12224:138:0;;;;;4003:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4003:47:0;;;;3734:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3734:28:0;;;;13256:260;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13256:260:0;;;;14055:346;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14055:346:0;;;;;11762:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11762:151:0;;;;4059:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4059:27:0;;;;;;;;-1:-1:-1;;;;;4059:27:0;;;;;;;;;;;;;;9197:2009;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9197:2009:0;-1:-1:-1;;;;;9197:2009:0;;;;;;;;;;;;;;;;;;;;;;;;;3895:22;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3895:22:0;;;;3860:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3860:28:0;;;;4858:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4858:112:0;;;;;3807:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3807:19:0;;;;8028:1065;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8028:1065:0;;;;;12434:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12434:128:0;-1:-1:-1;;;;;12434:128:0;;;;;4512:229;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4512:229:0;;;;;14891:266;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14891:266:0;-1:-1:-1;;;;;14891:266:0;;;;;3956:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3956:40:0;;;;5915:1037;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5915:1037:0;;;;12637:224;-1:-1:-1;;;;;12812:28:0;12705:7;12812:28;;;:10;:28;;;;;;;;;12771:37;;;;;;;;12753:15;;3268:7;12753:55;;12743:97;;;;12732:121;;12637:224::o;5089:580::-;5193:5;;:63;;;;;;-1:-1:-1;;;;;5193:63:0;;;;;;;5238:4;5193:63;;;;;;;;;;;;5164:7;;;;5193:5;;:18;;:63;;;;;;;;;;;;;;5164:7;5193:5;:63;;;5:2:-1;;;;30:1;27;20:12;5:2;5193:63:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5193:63:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5193:63:0;5185:72;;;;;;;;5268:13;:27;;;;;;5320:44;5335:16;5285:10;5320:14;:44::i;:::-;-1:-1:-1;;;;;5382:206:0;;5427:23;;;;:5;:23;;;;;;;;:32;;5474:37;;;;;;;;5526:23;;;:33;;;5382:206;;;;;;;;;;;;;;;;5574:3;5382:206;;;;;5306:58;;-1:-1:-1;5382:206:0;;-1:-1:-1;;;;;;;;;;;5382:206:0;;;;;;;;5623:12;:10;:12::i;:::-;5655:6;5089:580;-1:-1:-1;;;5089:580:0:o;13621:328::-;13696:7;;;;13737:55;13750:36;13763:11;2986:2;13750:12;:36::i;:::-;13788:3;13737:12;:55::i;:::-;13716:76;;13823:37;13836:11;13849:10;13823:12;:37::i;:::-;13803:57;13621:328;-1:-1:-1;;;;;13621:328:0:o;14453:428::-;14517:11;;:::i;:::-;14547:14;;:::i;:::-;14598:28;;:::i;:::-;14564:5;:23;14570:16;-1:-1:-1;;;;;14564:23:0;-1:-1:-1;;;;;14564:23:0;;;;;;;;;;;;14547:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14598:248;;;;;;;;;14630:1;:10;;;14598:248;;;;14642:1;:11;;;14598:248;;;;14655:1;:10;;;14598:248;;;;14667:1;:13;;;14598:248;;;;14682:1;:19;;;14598:248;;;;14703:1;:16;;;14598:248;;;;14721:1;:11;;;14598:248;;;;14734:1;:11;;;14598:248;;;;14747:1;:14;;;14598:248;;;;14763:1;:12;;;14598:248;;;;14777:1;:20;;;14598:248;;;;14799:1;:17;;;14598:248;;;;14818:1;:12;;;14598:248;;;;14832:1;:13;;;14598:248;;;;;14864:9;14857:16;;14453:428;;;;;:::o;11608:91::-;11679:12;;11608:91;:::o;11996:156::-;12040:7;12087:10;12115:29;12087:10;12115:11;:29::i;:::-;12108:36;;11996:156;;:::o;7013:966::-;7090:24;7138:18;1028:1;1012:13;:11;:13::i;:::-;:17;1004:26;;;;;;7117:10;7090:37;;7159:13;:11;:13::i;:::-;-1:-1:-1;;;;;7221:28:0;;;;;;;:10;:28;;;;;;;;:65;;3268:7;7263:22;;7221:65;;;7336:5;;:43;;;;;;;;;;;;;;;;;;;;7138:34;;-1:-1:-1;7336:5:0;;;;:14;;:43;;;;;7221:28;;7336:43;;;;;;;;:5;:43;;;5:2:-1;;;;30:1;27;20:12;5:2;7336:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7336:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;;7458:23:0;;;;;;:5;7336:43;7458:23;;;;;;;:33;;7445:59;;7493:10;7445:12;:59::i;:::-;-1:-1:-1;;;;;7409:23:0;;;;;;:5;:23;;;;;;;;;:33;;;:95;;;;7515:34;;;;:39;;7553:1;7515:39;;;;;;7565:8;:13;;;;;;;7589:25;;;;;;7655:45;;;;;7696:3;7655:45;;;;;;;;;7409:23;;7655:45;;;;;;;;;;;-1:-1:-1;;;;;7718:206:0;;7763:23;;;;:5;:23;;;;;;;;:32;;7810:37;;;;;;;;7862:23;;;:33;;;7718:206;;;;;;;;;;;;;;;;7910:3;7718:206;;;;;-1:-1:-1;;;;;;;;;;;7718:206:0;;;;;;;;7959:12;:10;:12::i;:::-;7013:966;;:::o;11438:115::-;11515:5;;:30;;;;;;11539:4;11515:30;;;;;;11488:7;;-1:-1:-1;;;;;11515:5:0;;:15;;:30;;;;;;;;;;;;;;11488:7;11515:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;11515:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11515:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11515:30:0;;-1:-1:-1;11438:115:0;:::o;3924:23::-;;;;:::o;12930:260::-;12972:7;13007:4;12972:7;;13043:47;13056:28;13007:4;3079:2;13056:12;:28::i;13043:47::-;13022:68;;13121:30;13134:4;13140:10;13121:12;:30::i;:::-;13101:50;12930:260;-1:-1:-1;;;;12930:260:0:o;3833:20::-;;;;:::o;12224:138::-;-1:-1:-1;;;;;12317:37:0;12290:7;12317:37;;;;;;;;;;;;12224:138::o;4003:47::-;;;;:::o;3734:28::-;;;;:::o;13256:260::-;13297:7;13332:4;13297:7;;13368:48;13381:29;13332:4;2986:2;13381:12;:29::i;13368:48::-;13347:69;;13447:30;13460:4;13466:10;13447:12;:30::i;14055:346::-;14129:7;14198:12;14237:18;14316:17;14174:12;;14157:13;:29;;14149:38;;;;;;;;14213:13;;-1:-1:-1;14258:47:0;14271:28;14213:13;3079:2;14271:12;:28::i;14258:47::-;14237:68;;14336:30;14349:4;14355:10;14336:12;:30::i;11762:151::-;11803:7;11850:10;11878:27;11850:10;11878:9;:27::i;4059:::-;;;-1:-1:-1;;;;;4059:27:0;;:::o;9197:2009::-;9293:4;9328:24;899:1;886:10;:8;:10::i;:::-;:14;878:23;;;;;;-1:-1:-1;9355:10:0;9456:19;:37;;;;;;;;;;;9437:56;;;9429:65;;;;;;9580:1;9564:13;:11;:13::i;:::-;:17;9560:60;;;9598:10;:8;:10::i;:::-;-1:-1:-1;;;;;9715:37:0;;:19;:37;;;;;;;;;;;9702:68;;9754:15;9702:12;:68::i;:::-;-1:-1:-1;;;;;9662:37:0;;;:19;:37;;;;;;;;;;;:108;;;;9828:31;;;;;;;9815:62;;9861:15;9815:12;:62::i;:::-;-1:-1:-1;;;;;9781:31:0;;;:19;:31;;;;;;;;;;;:96;;;;9969:15;;;9927:28;;;;;:10;:28;;;;;:76;;9969:33;;;9927:76;;;;;;10050:15;;10014:22;;;;;;:70;;10050:33;;;10014:70;;;;;;10235:5;:17;;;;:26;:31;:72;;;;-1:-1:-1;;;;;;10270:17:0;;;;;;:5;:17;;;;;:32;;;:37;10235:72;10231:117;;;10324:7;:12;;10335:1;10324:12;;;10231:117;-1:-1:-1;;;;;10377:23:0;;;;;;;:5;:23;;;;;;;;:42;;;:47;;10423:1;10377:47;;;;;;10435:41;;;;:60;;;;;;10506:17;;;;;;;;;;:32;;;:51;;;;;;10568:33;;:38;;;;;;10617:8;:13;;;;;;;;10671:61;;;;;10728:3;10671:61;;;;;;;;;10506:17;;10671:61;;;;;;;;;-1:-1:-1;;;;;10750:206:0;;10795:23;;;;:5;:23;;;;;;;;:32;;10842:37;;;;;;;;10894:23;;;:33;;;10750:206;;;;;;;;;;;;;;;;10942:3;10750:206;;;;;-1:-1:-1;;;;;;;;;;;10750:206:0;;;;;;;;-1:-1:-1;;;;;10974:182:0;;11013:17;;;;:5;:17;;;;;;;;:26;;11054:31;;;;;;;;11100:17;;;:27;;;10974:182;;;;;;;;;;;;;;;;11142:3;10974:182;;;;;-1:-1:-1;;;;;;;;;;;10974:182:0;;;;;;;;-1:-1:-1;11194:4:0;;9197:2009;-1:-1:-1;;;9197:2009:0:o;3895:22::-;;;;:::o;3860:28::-;;;;:::o;4858:112::-;4904:7;4932:30;4939:10;4951;4932:6;:30::i;:::-;4925:37;4858:112;-1:-1:-1;;4858:112:0:o;3807:19::-;;;;:::o;8028:1065::-;8123:24;8276:27;8362:17;8705:22;899:1;886:10;:8;:10::i;:::-;:14;878:23;;;;;;8150:10;8200:19;:37;;;;;;;;;;;8150:10;;-1:-1:-1;8181:56:0;;;8173:65;;;;;;8348:3;8306:39;8319:15;3079:2;8306:12;:39::i;:::-;:45;;;;;;;;8276:75;;8382:50;8395:15;8412:19;8382:12;:50::i;:::-;8362:70;;8493:43;8506:12;;8520:15;8493:12;:43::i;:::-;8478:12;:58;-1:-1:-1;;;;;8600:37:0;;:19;:37;;;;;;;;;;;8587:68;;8639:15;8587:12;:68::i;:::-;-1:-1:-1;;;;;8547:37:0;;:19;:37;;;;;;;;;;;:108;;;;8740:15;;8811:10;:28;;;;;;:47;;8740:33;;;3268:7;8777:21;;8740:59;8811:47;;;;;;8740:59;-1:-1:-1;8902:33:0;8915:19;8902:12;:33::i;:::-;8976:62;;;;;;;;;;;;9034:3;8976:62;;;;;;-1:-1:-1;;;;;8976:62:0;;;;;;;;;;;;;9073:12;:10;:12::i;:::-;8028:1065;;;;;:::o;12434:128::-;-1:-1:-1;;;;;12530:24:0;;;12434:128::o;4512:229::-;4589:5;;:52;;;;;;4608:10;4589:52;;;;4628:4;4589:52;;;;;;;;;;;;4561:7;;-1:-1:-1;;;;;4589:5:0;;:18;;:52;;;;;;;;;;;;;;4561:7;4589:5;:52;;;5:2:-1;;;;30:1;27;20:12;5:2;4589:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4589:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4589:52:0;4581:61;;;;;;;;4655:16;:26;;;;;;4699:34;;;;;;4729:3;4699:34;;;;;;4710:10;;4699:34;;;;;;;;4512:229;;;:::o;14891:266::-;14961:7;14980:13;14996:42;15034:3;14996:33;3220:1;14996:33;;:16;;:20;;:33;;;;:::i;:::-;:37;:42;:37;:42;:::i;:::-;14980:58;;15074:1;15059:12;;:16;15058:91;;15148:1;15058:91;;;15132:12;;-1:-1:-1;;;;;15089:37:0;;:19;:37;;;;;;;;;;;15079:66;;15132:12;15079:48;;:5;;:48;:9;:48;:::i;3956:40::-;;;;:::o;5915:1037::-;5997:18;6138:24;6340:15;1028:1;1012:13;:11;:13::i;:::-;:17;1004:26;;;;;;6018:13;:11;:13::i;:::-;6165:10;6186:28;;;;:10;:28;;;;;:65;;3268:7;6228:22;;6186:65;;;5997:34;;-1:-1:-1;6165:10:0;-1:-1:-1;6358:38:0;6165:10;5997:34;6358:14;:38::i;:::-;6437:58;;;;;;;;;;;;6491:3;6437:58;;;;;;6340:56;;-1:-1:-1;;;;;;6437:58:0;;;;;;;;;;;;-1:-1:-1;;;;;6575:23:0;;;;;;:5;:23;;;;;:34;;;6562:60;;6611:10;6562:12;:60::i;:::-;-1:-1:-1;;;;;6525:23:0;;;;;;:5;:23;;;;;;;;:34;;;;:97;;;;6633:35;;;:40;;;;;;;;6736:32;;6783:37;;;;;;;;6835:23;;;:33;;;;;6691:206;;;;;;;;;;;;;;;;;;;6883:3;6691:206;;;;;;6525:23;;-1:-1:-1;;;;;;;;;;;6691:206:0;;;;;;;;;6932:12;:10;:12::i;:::-;5915:1037;;;:::o;16687:1834::-;-1:-1:-1;;;;;16826:23:0;;16777:7;16826:23;;;:5;:23;;;;;:32;16777:7;;;;;;16826:37;:84;;;;-1:-1:-1;;;;;;16867:23:0;;;;;;:5;:23;;;;;:38;;;:43;16826:84;16822:129;;;16927:7;:12;;16938:1;16927:12;;;16822:129;16963:8;:13;;16975:1;16963:13;;;17082:3;17042:37;17055:12;2986:2;17042:12;:37::i;:::-;:43;;;;;;;;17012:73;;17122:47;17135:12;17149:19;17122:12;:47::i;:::-;17210:69;;;;;;;;;;;;17275:3;17210:69;;;;;;17096:73;;-1:-1:-1;;;;;;17210:69:0;;;;;;;;;;;;17422:1;17404:15;:19;:81;;;;-1:-1:-1;17473:12:0;;17427:43;17440:15;17473:12;17427;:43::i;:::-;:58;17404:81;17396:90;;;;;;;;17566:1;17551:12;;:16;17547:223;;;17623:12;:31;;;;;;17547:223;;;17728:12;:30;;;17547:223;17811:33;17824:19;17811:12;:33::i;:::-;-1:-1:-1;;;;;17986:37:0;;:19;:37;;;;;;;;;;;17973:68;;18025:15;17973:12;:68::i;:::-;-1:-1:-1;;;;;17933:37:0;;;;:19;:37;;;;;;;;;;;:108;;;;18257:15;;18302:10;:28;;;;;;:47;;18257:33;;;18302:47;;;;;;18381:5;:23;;;;;;:48;;;;;;;;-1:-1:-1;18440:33:0;;;;:38;;;;;;;;-1:-1:-1;18257:33:0;16687:1834;-1:-1:-1;16687:1834:0:o;15587:871::-;15967:13;16109:14;15662:15;;15634:25;15646:12;;15634:3;:11;;:25;;;;:::i;:::-;:43;15630:149;;;15699:35;15709:19;:17;:19::i;:::-;15699:35;;;;;;15730:3;15699:35;;;;;;;;;;;;;15764:3;15749:12;:18;15630:149;15833:20;;15797:33;15814:3;15819:10;;15797:16;:33::i;:::-;:56;:76;;;;;15872:1;15857:12;;:16;15797:76;15793:656;;;15983:56;16030:8;15983:42;16021:3;15983:33;3220:1;15983:33;;:16;;:20;;:33;;;;:::i;:56::-;15967:72;;16134:23;16146:10;;16134:3;:11;;:23;;;;:::i;:::-;16245:16;;16126:31;;;;-1:-1:-1;16245:32:0;;16126:31;16245:32;:24;:32;:::i;:::-;16226:16;:51;16351:15;;16391:12;;16338:66;;16351:15;3268:7;16369:18;;16368:35;;;;;;;;16338:12;:66::i;:::-;16320:15;:84;16434:3;16421:10;:16;15587:871;;:::o;18725:202::-;18783:9;18809:6;;18805:47;;;-1:-1:-1;18839:1:0;18832:8;;18805:47;-1:-1:-1;18866:5:0;;;18870:1;18866;:5;18889;;;;;;;;:10;18882:18;;;19022:295;19080:7;19308:1;19304;:5;;;;;;;;;19022:295;-1:-1:-1;;;19022:295:0:o;19442:123::-;19500:7;19527:6;;;;19520:14;;;;-1:-1:-1;19552:5:0;;;19442:123::o;19876:141::-;19960:5;;;19983:6;;;;19976:14;;;15167:412;15265:15;15283:10;:3;15291:1;15283:10;:7;:10;:::i;:::-;15265:28;;15326:1;15311:12;;:16;15307:169;;;15397:67;15410:15;;15451:12;;3268:7;15428;:19;15427:36;;;;;;15397:67;15379:15;:85;15307:169;15551:20;:3;15563:7;15551:20;:11;:20;:::i;:::-;15531:16;:40;;;;;;;-1:-1:-1;;15167:412:0:o;19630:171::-;19686:4;19711:1;19707;:5;19703:91;;;-1:-1:-1;19736:1:0;19729:8;;19703:91;-1:-1:-1;19777:5:0;;;19770:12;;608:17920;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;-1:-1;608:17920:0;;;-1:-1:-1;;608:17920:0:o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

bzzr://d806abf0892fd307a1753128e425681882ab77bc344c7f117f16121a26c2c993
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.