Contract 0x599640dDacb546B1446FA149f4a9CEEcd3fcc87a 2

 

Contract Overview

Balance:
0 BNB

BNB Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x0e02f8f2ef762f7732e2e6e37b7582434b64a0d5b0050c9da0e031adbfa0082dWithdraw112393072021-09-26 2:48:551 min ago0x24b23bb643082026227e945c7833b81426057b10 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00064522
0xa93dc9a4d8c3fede4d6e62fb94a34d9d2f602f9fa830dfaf38b9a0919b921d7bReinvest112322312021-09-25 20:55:005 hrs 55 mins ago0xb74d092a91bb0a80f7c752a637f2327c7f780e46 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0x99015267033b1aa9bdff84e59a71361b8767db74009a58abb871f2e123a1c3beWithdraw112320112021-09-25 20:44:006 hrs 6 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0xe773b018d518089a900cdc6b4e09d9fce70861f1251bb2e5946da8b0eb4b0f24Reinvest112300192021-09-25 19:04:157 hrs 45 mins ago0x32e94a95bab47962fa0ff89e534e8a98b0dc204f IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0x1f447e503cdbbea6e539bf7b8252731e2c183804edea13393183c30fa64cccb3Reinvest112268252021-09-25 16:22:1110 hrs 27 mins ago0xe7106e57f771189f13ae5cea691be53ab60defec IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000642205
0x3ed16363eedc6793f0d89fa1b4dfd450dc5dd64785483d4ed8677e9419463c3eReinvest112251922021-09-25 15:00:1011 hrs 49 mins ago0x5b57b83c142e3ada7e7affb9dfc4904838ea43a7 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0xfe99eb89e2e6a928cdcf3f6525828bfe820cfca5cf5c011ba1edb9321f38c128Reinvest112238722021-09-25 13:53:0612 hrs 56 mins ago0x820e2bb953fb4f958f0c7faf512fea104a61bdfb IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0x286d3929a70076afe55c67f08f85293cf9d725a998454d50cc3461234a9a9767Withdraw112203922021-09-25 10:58:0415 hrs 51 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0x09d2253367fd7aa0368e76b804e443caa4aa894c014b04efa0cd90ebc9e65dc2Sell112203852021-09-25 10:57:4315 hrs 52 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000370665
0xbd39cc159071a78248fd1f61eea49e7728182682c2b14b1a8f6fb2c69f3c8bbbWithdraw112190082021-09-25 9:48:5217 hrs 1 min ago0x1dcbfa12ffd789806de22dd92f8e68c9c5d86ab7 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0x9bd4fb55f5265f341802d3a679ae2998acccd03ee6ce6de2b3f0e8dafe3fa8ecWithdraw112184622021-09-25 9:21:3417 hrs 28 mins ago0xcf1f3eb83dbcf4e5f47e88361228180e4cd9cbb9 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0x8c544b244621c10866169b31f14d72fe7898c1a408ef75685de284a79925b4e6Withdraw112181302021-09-25 9:04:5817 hrs 45 mins ago0xf69363517efaa773fc0eabf3091b430fd584d622 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00064522
0xd3ee852b78c5258d63ff71c4baafac0ebd7616d9498544989a3c44fff7d847f5Reinvest112149682021-09-25 6:26:1020 hrs 23 mins ago0xe0aa325958c47210b9de670c1e8aab10392ac1a4 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0xc7a91c78f0aae201924ff7b4d2e1efc851c09a86625bb9289fc3e640b324e3f6Withdraw112149672021-09-25 6:26:0720 hrs 23 mins ago0xed711756b522c5a4b4d4932f739083f5519e058c IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0x3a9364f57eeedcd84dde05029531ae2385632510d77897b7f4ea36271385d26fWithdraw112135002021-09-25 5:12:0021 hrs 38 mins ago0xb7355636ed4ed8a20ac1bdc02ea9deaff3bccf0e IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0x675a0972ef4c13407a12a6b96fe1191dc94b523715bd4009ee7dc42fc287a579Withdraw112125202021-09-25 4:22:4022 hrs 27 mins ago0x539460bd8d7d6130ce6c4a65c0b59da3b3d2da42 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00051988
0x1adf14d33424bb419e4018eede61d81da2600c7e6c1a4818089907d43eb5bcb8Withdraw112098992021-09-25 2:11:121 day 38 mins ago0x24b23bb643082026227e945c7833b81426057b10 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00059488
0xde054023bf9998b945b6f8d71b89a5c22f82eac55764f54d18835451ef811affReinvest112085252021-09-25 1:01:351 day 1 hr ago0xa19ac06de5760c440ba2423606b432b8f5a8e74c IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000642205
0xbab8fd10acf321a91d421582b49bbdef58b87c70a05695f45ea09ec8058295a0Withdraw112059122021-09-24 22:50:321 day 3 hrs ago0x857101a370a9a9fdd961d958bb82a170bf94085c IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00051988
0x133939f8e530646302ed91c361cdae73b47ac2f8f23a0a44a21be9009e66e179Reinvest112055072021-09-24 22:30:171 day 4 hrs ago0xac58212b46cb8b6bd5f6b31f3410bf99b52830a4 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0xfa9f3b3204fa214d5b56b1a5e283367bd309a418cc0ab9a594fed6ecf268ecb5Withdraw112047802021-09-24 21:53:561 day 4 hrs ago0x89a18cb34db232c032873b5cdad131ec286eb0bf IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00051988
0xf78dbeb3de851925ee978254bed1045d8ae3fb61bff3a45084e3139ec11c6ffbReinvest112026332021-09-24 20:06:151 day 6 hrs ago0xcba7c43b18ab426e8b882d0495eac2c295c84536 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0x0089f6eb4089d67d1419721a8a97dd6fa7dc77a0969ddb8043a1f4c6080b7865Reinvest112011752021-09-24 18:52:211 day 7 hrs ago0x4728840cea5a12cc242f841373f3c8891fe5959e IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000642205
0x9d5e1d443c76d1391cdc760c5dcc00de38ba0e07fac02587b12a60fe1477cddeReinvest111964882021-09-24 14:57:401 day 11 hrs ago0x0810818c20c456c429ce9139a0dde0946a8c7d0d IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.000591865
0xd801d573accf90528c98d5ae7ea0091db316cdd1e923df9abdd5515e3baf2f11Withdraw111962762021-09-24 14:47:041 day 12 hrs ago0x8e4d77d58c9260bc4a6b25a30449bdd3d484c2e1 IN  0x599640ddacb546b1446fa149f4a9ceecd3fcc87a0 BNB0.00051988
[ 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.