Sponsored Link:  Download the Monaco app for Android and iOS on Aug 31 - www.mona.co
Contract Overview
ETH Balance: 18.116515501204215028 Ether
ETH USD Value: $6,669.41 (@ $368.14/ETH)
No Of Transactions: 1493 txns
  Latest 25 txns from a total Of 1493 transactions View All

TxHash Age From To Value [TxFee]
0xcf2ae9e86ac70755b314c6a2a912e3c5d2a0db1e9b2e4eedf3a4497f6fa713b18 days 4 hrs ago0x9e206dbbd35c0cf7e27e166ef79103c03ea73aeb  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.004
0x1882294e39a3565b7289bf6f29600e42515a2e1ff7b6c7f383cf587b713d076d11 days 12 hrs ago0x05ce3588c52902dc8cef16a63a3cb7b353d191ea  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.00099056
0xe097ca398946ea577c562103e47ae99d2ac25e0752c27e3ccadcf12560eeaf7711 days 20 hrs ago0xb425c25a09400a2ea9d7a91098a40dd1ee358e70  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.0024764
0x83388759f25948519ccbbae67674c8bbe1bba8c533333afd9768e338ef50ad6112 days 58 mins ago0xb1a7a09a01c9d43e08d60846c91167da3cf22643  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x07d496b98cbfaedacfd7ebd3c5e30f941f91d7949d250def6fee34574522392f12 days 1 hr ago0xc480334141e5abb335b8e931d8601b326d20da88  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x93002f36814a5d06b225d56be16758fedc752a414a030682953c7f90733cb01312 days 1 hr ago0x8c54268a995cc285e34158d72c3f7d4c3a98db0c  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.00049528
0xa01b5bf6a05079a0bdd1639a127944822d0482499374054c59352b9ab511790612 days 2 hrs ago0x7bbb6e620481c4ccf33acfb8e26ca2e13f04d50c  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0xa67729bc908fccd0465fa78858065fd47f5328cb3077320b4831a2e1fe817aad12 days 4 hrs ago0xf7c1b443968b117b5dd9b755572fcd39ca5ec04b  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.00193584
0x373e882aaab0e135cd0d229b343bfebe6c3466870615e9e4363e5d465b487dc512 days 5 hrs ago0x83156c79d8e9adf4dbc940c6a56dc58f5e5f8cd5  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.00099056
0x6306d6b36a6007976577c144c97e7c9384e1c02b4c0dceb53321994947454f0e12 days 9 hrs ago0x00acb450c00c9d7470448b37d64efd8f8bc838ce  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001355088
0x90232e43695354ca9cebeedc16f36c7df0c7f87fa890e066c0c9a827210dcf0f12 days 12 hrs ago0x8d213107afd8dada51d27352eedbbfa593a5c26f  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0xcc26bbdc22d727eb1ea025176f06735f038bfa531a7009027eddf96673fc111612 days 16 hrs ago0xc7d682370cd7cd0b14650e4917564821bf311321  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.0024764
0xfc8f85cb8a2458d0c5d96a7f8e8ec9f8053d1d4ab42525815ad665ca1c7de7c012 days 17 hrs ago0xc308bb9793e21779720d802d2160be26314fe6fd  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x04ba75b12e8ddd602671de24483475c4d5a2c338c7eb0c91ba6f5241dea640d812 days 17 hrs ago0x932fa7f07fdf6224184fd5fd9f9cec1710e03449  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x2fe7f36374753451f69c7685d426388c14cc8255bf8ed8be60a39def90449d3d12 days 18 hrs ago0x3833f8dbdbd6bdcb6a883ff209b869148965b364  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.000891504
0x29b6b347c45e9eaa954179c108eb3d890d62948b817a3d96b1aa51770a83be2312 days 23 hrs ago0x60334fe7f5c0ee0018d8752f9912ecf39059a753  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001419616
0xf037d34a4a320f95c4d943254e91c1aa9105f2ded34c9154184d60d447c4a1d313 days 5 hrs ago0x659afd2e8bbafc882c3e2249d40e9d68b94b240c  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001355088
0x6e7630aea433b21a03c189856aecbcdbcfa516a200d9dfe619a122535a37ada313 days 10 hrs ago0x3aed2e24a953904fed7e1498df70495980f3d6f3  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0xf9b5d0952a3ffce672f7cd12a3128e61212434632aab8f215ed5214ea13bce1313 days 10 hrs ago0x3aed2e24a953904fed7e1498df70495980f3d6f3  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.000446712
0x280d5a4f2b68374495d2d5efe460f4f64feef44e436dda865df27cc4e14492b713 days 10 hrs ago0x34331f7296250646b6ed86c5e1fbec55ce35f425  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x499f737e882a5a9cf7856771ec790a3f1092b4eb54f7f1a604c9468410a2fe5913 days 10 hrs ago0x311949a1230dbc30eaaac3dc315ec8c4236429ba  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0xbafd9ec4544f26e57e8e5af660b2ca34e830cf87ddc82a9636e6908652f6c7da13 days 11 hrs ago0x3aed2e24a953904fed7e1498df70495980f3d6f3  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.000446712
0xa98f42f900741b2dae82d9e58a4bf9418652deb2a232986e569af4f5fd5c67bf13 days 12 hrs ago0x47743cec7af4bef67be022267ff11eadac1da43b  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
0x118496675db7be1b95330f5cc5984e9213a267cd14fdc317ed680107c81c2f3a13 days 15 hrs ago0x51b7c915795b28542240d0ff405fc640fd0378ab  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.00297168
0x07eba378fa151ed65027baf89c8bc3f25301d916c1a2bafd8d8a9defeb0b84c413 days 19 hrs ago0x460d35a3eb7be555059ac3c3b2e19c9a789c3534  IN   0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50 Ether0.001040088
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
  Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0x4601570dd2706778fff2411184f1acb9d788295987c557b03a8ceee9b6615620459058610 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195558878606116 Ether
0x63be06bc0ce6a7ca2a086d9f181befaa81a9c40079218e61d0154e099a10b48b459054023 mins ago0x49fddeae0b521dab8d0c4b77e7161094f971320d0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.007946211845470956 Ether
0x3061bb59dc0af20a3f8964372c942975713513697f0a06d05aeb661eb5214ceb459053224 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00221658878606116 Ether
0x54483d84a0a24e02595cf744c5b42e300219b1d7b22997d780b89de7603b07a7459052725 mins ago0x49fddeae0b521dab8d0c4b77e7161094f971320d0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195558878606116 Ether
0x2ac84a0d9f5e10d2b618e90114fdc72a1a23bdcc0bd00ced6b718adb7c3cbc58459051228 mins ago0x7da90089a73edd14c75b0c827cb54f4248d47ecc0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00590658878606116 Ether
0xbb280e86a6c2f10a671a0e16448db603fe2dc888445bd6e7c1ddc6b78d3ab7fd459046637 mins ago0x49fddeae0b521dab8d0c4b77e7161094f971320d0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00266658878606116 Ether
0x45c326ad7625601c7ae4b54e3352fd918b28de174550cb535ae5e48f3a361582459041648 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00221658878606116 Ether
0xb04c180cdfc0041d2b15181b65e44f29e7cd935fb0a63368af9a588bde29a6ec459041648 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195558878606116 Ether
0x7155f5d779cbcfcfde9cd0b9c79829d71e6d6548b71988fbaf31bd10b3a1f86945903661 hr 1 min ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00456738878606116 Ether
0xf0bee6d70a38cac13216f8824fadc7578fb1d3811efacf0f62db5a1bc9d6285045903571 hr 5 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.02804658878606116 Ether
0xff9610afccfcb9c61cedd0119d90e362497280403958e1883ad024492e82b99f45903481 hr 7 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00375738878606116 Ether
0xa74349d4d80a31a58a660bacc096b7668ca2e066d9d41ebf5fb6ee148f36891e45903191 hr 14 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195738878606116 Ether
0x7974e53525de6f0a5690aa164e7464e898a30753d1695e9b657bc092fbaa368545902431 hr 31 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00221658878606116 Ether
0x5ba8744ead0578a45ee12c34567f8e88d34148794d01c804c82a9ba68cc9615c45902331 hr 35 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00221658878606116 Ether
0xb62eaa8dce6f1b84dc7fe26b7d31d8c81d289a173a1de9411b97602d1701779445902061 hr 42 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00248658878606116 Ether
0xfc6dff73b0fee6051e47501cdba4d851bb4a43847d458f54b18071c62731da1145885178 hrs 14 mins ago0x41ff0796a6c7a201476bff53c4cb2c48b084e5e00x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.000005048214478421 Ether
0x90b23d875c05de4ac062fd6990ee84f073f7c4c41ade3ab458776706f14ac347458686114 hrs 40 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195738878606116 Ether
0xbfe302cf76f35cef5a2d54af2e8d54a276cbb70aad5692a275fe72775f477c49458683714 hrs 45 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00429558878606116 Ether
0xfd779d40d5d6ad2870d6937385f9ba7ed8375ea214b8e41f67002a4760a31f2f458682614 hrs 47 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00204738878606116 Ether
0x9dcb91b4e8b167102b8993229b9f788b62c4bde3c7ba670045ef7348dcb05981458680114 hrs 52 mins ago0xdd98b423dc61a756e1070de151b14854255059540x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00195558878606116 Ether
0xdd48b700439e2640fbc47aecfa0ee236410d52f3f0d9132fc43de87ab460c897458675515 hrs 1 min ago0x7da90089a73edd14c75b0c827cb54f4248d47ecc0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00196458878606116 Ether
0xcebea7e2a81b0081e59116a690c5b2315d029b7d25e7c9cd02a8589725d16b9c458673215 hrs 5 mins ago0x41ff0796a6c7a201476bff53c4cb2c48b084e5e00x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.000003828214478421 Ether
0x90e3c18472005b3f5a3f05a452882e6d01e3cee19ac9b1cb69e4e001c6016ad8458670015 hrs 13 mins ago0x7da90089a73edd14c75b0c827cb54f4248d47ecc0x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.00196458878606116 Ether
0xdcf0139be50fdad539864b7bfdd2ab325d63513951b9343f33c533845ccae916458668015 hrs 16 mins ago0x41ff0796a6c7a201476bff53c4cb2c48b084e5e00x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.000008135268098027 Ether
0x1496b09333494d2352467c062dc02da0e0e0562c8da8f940ee8cabaef911ab7a458666715 hrs 20 mins ago0x41ff0796a6c7a201476bff53c4cb2c48b084e5e00x51ffc1b089392a5bb65bf24eaf04d07d0e6f88b50.000022632857913687 Ether
[ Download CSV Export  ] 
Contract Name: ProfitContainer
Compiler Version: v0.4.6+commit.2dabbdf0
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.0;
/*
This vSlice token contract is based on the ERC20 token contract. Additional
functionality has been integrated:
* the contract Lockable, which is used as a parent of the Token contract
* the function mintTokens(), which makes use of the currentSwapRate() and safeToAdd() helpers
* the function disableTokenSwapLock()
*/

contract Lockable {
    uint public numOfCurrentEpoch;
    uint public creationTime;
    uint public constant UNLOCKED_TIME = 25 days;
    uint public constant LOCKED_TIME = 5 days;
    uint public constant EPOCH_LENGTH = 30 days;
    bool public lock;
    bool public tokenSwapLock;

    event Locked();
    event Unlocked();

    // This modifier should prevent tokens transfers while the tokenswap
    // is still ongoing
    modifier isTokenSwapOn {
        if (tokenSwapLock) throw;
        _;
    }

    // This modifier checks and, if needed, updates the value of current
    // token contract epoch, before executing a token transfer of any
    // kind
    modifier isNewEpoch {
        if (numOfCurrentEpoch * EPOCH_LENGTH + creationTime < now ) {
            numOfCurrentEpoch = (now - creationTime) / EPOCH_LENGTH + 1;
        }
        _;
    }

    // This modifier check whether the contract should be in a locked
    // or unlocked state, then acts and updates accordingly if
    // necessary
    modifier checkLock {
        if ((creationTime + numOfCurrentEpoch * UNLOCKED_TIME) +
        (numOfCurrentEpoch - 1) * LOCKED_TIME < now) {
            // avoids needless lock state change and event spamming
            if (lock) throw;

            lock = true;
            Locked();
            return;
        }
        else {
            // only set to false if in a locked state, to avoid
            // needless state change and event spam
            if (lock) {
                lock = false;
                Unlocked();
            }
        }
        _;
    }

    function Lockable() {
        creationTime = now;
        numOfCurrentEpoch = 1;
        tokenSwapLock = true;
    }
}


contract ERC20 {
    function totalSupply() constant returns (uint);
    function balanceOf(address who) constant returns (uint);
    function allowance(address owner, address spender) constant returns (uint);

    function transfer(address to, uint value) returns (bool ok);
    function transferFrom(address from, address to, uint value) returns (bool ok);
    function approve(address spender, uint value) returns (bool ok);

    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
}

contract Token is ERC20, Lockable {

  mapping( address => uint ) _balances;
  mapping( address => mapping( address => uint ) ) _approvals;
  uint _supply;
  address public walletAddress;

  event TokenMint(address newTokenHolder, uint amountOfTokens);
  event TokenSwapOver();

  modifier onlyFromWallet {
      if (msg.sender != walletAddress) throw;
      _;
  }

  function Token( uint initial_balance, address wallet) {
    _balances[msg.sender] = initial_balance;
    _supply = initial_balance;
    walletAddress = wallet;
  }

  function totalSupply() constant returns (uint supply) {
    return _supply;
  }

  function balanceOf( address who ) constant returns (uint value) {
    return _balances[who];
  }

  function allowance(address owner, address spender) constant returns (uint _allowance) {
    return _approvals[owner][spender];
  }

  // A helper to notify if overflow occurs
  function safeToAdd(uint a, uint b) internal returns (bool) {
    return (a + b >= a && a + b >= b);
  }

  function transfer( address to, uint value)
    isTokenSwapOn
    isNewEpoch
    checkLock
    returns (bool ok) {

    if( _balances[msg.sender] < value ) {
        throw;
    }
    if( !safeToAdd(_balances[to], value) ) {
        throw;
    }

    _balances[msg.sender] -= value;
    _balances[to] += value;
    Transfer( msg.sender, to, value );
    return true;
  }

  function transferFrom( address from, address to, uint value)
    isTokenSwapOn
    isNewEpoch
    checkLock
    returns (bool ok) {
    // if you don't have enough balance, throw
    if( _balances[from] < value ) {
        throw;
    }
    // if you don't have approval, throw
    if( _approvals[from][msg.sender] < value ) {
        throw;
    }
    if( !safeToAdd(_balances[to], value) ) {
        throw;
    }
    // transfer and return true
    _approvals[from][msg.sender] -= value;
    _balances[from] -= value;
    _balances[to] += value;
    Transfer( from, to, value );
    return true;
  }

  function approve(address spender, uint value)
    isTokenSwapOn
    isNewEpoch
    checkLock
    returns (bool ok) {
    _approvals[msg.sender][spender] = value;
    Approval( msg.sender, spender, value );
    return true;
  }

  // The function currentSwapRate() returns the current exchange rate
  // between vSlice tokens and Ether during the token swap period
  function currentSwapRate() constant returns(uint) {
      if (creationTime + 1 weeks > now) {
          return 130;
      }
      else if (creationTime + 2 weeks > now) {
          return 120;
      }
      else if (creationTime + 4 weeks > now) {
          return 100;
      }
      else {
          return 0;
      }
  }

  // The function mintTokens is only usable by the chosen wallet
  // contract to mint a number of tokens proportional to the
  // amount of ether sent to the wallet contract. The function
  // can only be called during the tokenswap period
  function mintTokens(address newTokenHolder, uint etherAmount)
    external
    onlyFromWallet {

        uint tokensAmount = currentSwapRate() * etherAmount;
        if(!safeToAdd(_balances[newTokenHolder],tokensAmount )) throw;
        if(!safeToAdd(_supply,tokensAmount)) throw;

        _balances[newTokenHolder] += tokensAmount;
        _supply += tokensAmount;

        TokenMint(newTokenHolder, tokensAmount);
  }

  // The function disableTokenSwapLock() is called by the wallet
  // contract once the token swap has reached its end conditions
  function disableTokenSwapLock()
    external
    onlyFromWallet {
        tokenSwapLock = false;
        TokenSwapOver();
  }
}


pragma solidity ^0.4.0;
/*
The ProfitContainer contract receives profits from the vDice games and allows a
a fair distribution between token holders.
*/

contract Ownable {
  address public owner;

  function Ownable() {
    owner = msg.sender;
  }

  modifier onlyOwner() {
    if (msg.sender == owner)
      _;
  }

  function transferOwnership(address _newOwner)
      external
      onlyOwner {
      if (_newOwner == address(0x0)) throw;
      owner = _newOwner;
  }

}

contract ProfitContainer is Ownable {
    uint public currentEpoch;
    //This is to mitigate supersend and the possibility of
    //different payouts for same token ownership during payout phase
    uint public initEpochBalance;
    mapping (address => uint) lastPaidOutEpoch;
    Token public tokenCtr;

    event WithdrawalEnabled();
    event ProfitWithdrawn(address tokenHolder, uint amountPaidOut);
    event TokenContractChanged(address newTokenContractAddr);

    // The modifier onlyNotPaidOut prevents token holders who have
    // already withdrawn their share of profits in the epoch, to cash
    // out additional shares.
    modifier onlyNotPaidOut {
        if (lastPaidOutEpoch[msg.sender] == currentEpoch) throw;
        _;
    }

    // The modifier onlyLocked prevents token holders from collecting
    // their profits when the token contract is in an unlocked state
    modifier onlyLocked {
        if (!tokenCtr.lock()) throw;
        _;
    }

    // The modifier resetPaidOut updates the currenct epoch, and
    // enables the smart contract to track when a token holder
    // has already received their fair share of profits or not
    // and sets the balance for the epoch using current balance
    modifier resetPaidOut {
        if(currentEpoch < tokenCtr.numOfCurrentEpoch()) {
            currentEpoch = tokenCtr.numOfCurrentEpoch();
            initEpochBalance = this.balance;
            WithdrawalEnabled();
        }
        _;
    }

    function ProfitContainer(address _token) {
        tokenCtr = Token(_token);
    }

    function ()
        payable {

    }

    // The function withdrawalProfit() enables token holders
    // to collect a fair share of profits from the ProfitContainer,
    // proportional to the amount of tokens they own. Token holders
    // will be able to collect their profits only once
    function withdrawalProfit()
        external
        resetPaidOut
        onlyLocked
        onlyNotPaidOut {
        uint currentEpoch = tokenCtr.numOfCurrentEpoch();
        uint tokenBalance = tokenCtr.balanceOf(msg.sender);
        uint totalSupply = tokenCtr.totalSupply();

        if (tokenBalance == 0) throw;

        lastPaidOutEpoch[msg.sender] = currentEpoch;

        // Overflow risk only exists if balance is greater than
        // 1e+33 ether, assuming max of 96M tokens minted.
        // Functions throws, as such a state should never be reached
        // Unless significantly more tokens are minted
        if (!safeToMultiply(tokenBalance, initEpochBalance)) throw;
        uint senderPortion = (tokenBalance * initEpochBalance);

        uint amountToPayOut = senderPortion / totalSupply;

        if(!msg.sender.send(amountToPayOut)) {
            throw;
        }

        ProfitWithdrawn(msg.sender, amountToPayOut);
    }

    function changeTokenContract(address _newToken)
        external
        onlyOwner {

        if (_newToken == address(0x0)) throw;

        tokenCtr = Token(_newToken);
        TokenContractChanged(_newToken);
    }

    // returns expected payout for tokenholder during lock phase
    function expectedPayout(address _tokenHolder)
        external
        constant returns (uint) {

        if (!tokenCtr.lock())
            return 0;

        return (tokenCtr.balanceOf(_tokenHolder) * initEpochBalance) / tokenCtr.totalSupply();
    }

    function safeToMultiply(uint _a, uint _b)
        private
        constant returns (bool) {

        return (_b == 0 || ((_a * _b) / _b) == _a);
    }
}

    Contract ABI  
[{"constant":false,"inputs":[],"name":"withdrawalProfit","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_tokenHolder","type":"address"}],"name":"expectedPayout","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"initEpochBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newToken","type":"address"}],"name":"changeTokenContract","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"currentEpoch","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"tokenCtr","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"_token","type":"address"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[],"name":"WithdrawalEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenHolder","type":"address"},{"indexed":false,"name":"amountPaidOut","type":"uint256"}],"name":"ProfitWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newTokenContractAddr","type":"address"}],"name":"TokenContractChanged","type":"event"}]

  Contract Creation Code Switch To Opcodes View
6060604052346100005760405160208061085483398101604052515b5b60008054600160a060020a0319166c01000000000000000000000000338102041790555b60048054600160a060020a0319166c01000000000000000000000000838102041790555b505b6107e0806100746000396000f36060604052361561006c5760e060020a60003504632ebec916811461007557806336bc32a21461008457806350148ed2146100a6578063523aee69146100c557806376671808146100d75780638da5cb5b146100f6578063aef251a71461011f578063f2fde38b14610148575b6100735b5b565b005b346100005761007361015a565b005b346100005761009460043561052c565b60408051918252519081900360200190f35b3461000057610094610694565b60408051918252519081900360200190f35b346100005761007360043561069a565b005b3461000057610094610739565b60408051918252519081900360200190f35b346100005761010361073f565b60408051600160a060020a039092168252519081900360200190f35b346100005761010361074e565b60408051600160a060020a039092168252519081900360200190f35b346100005761007360043561075d565b005b60006000600060006000600460009054906101000a9004600160a060020a0316600160a060020a031663018e13d06000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604051516001541015905061026d57600460009054906101000a9004600160a060020a0316600160a060020a031663018e13d06000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040518051600155600160a060020a033016316002557f66f7d730c9ba098beec19ac6c1d94380c4f8b016455b36cb348ca4c646a075bc9150600090a15b600460009054906101000a9004600160a060020a0316600160a060020a031663f83d08ba6000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151151590506102dc57610000565b600154600160a060020a033316600090815260036020526040902054141561030357610000565b600460009054906101000a9004600160a060020a0316600160a060020a031663018e13d06000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f115610000575050604080518051600480546000602094850181905285517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a03338116948201949094529551939b50911694506370a08231936024808201949392918390030190829087803b156100005760325a03f115610000575050604080518051600480546000602094850181905285517f18160ddd0000000000000000000000000000000000000000000000000000000081529551939a50600160a060020a0390911695506318160ddd94808301949392908390030190829087803b156100005760325a03f1156100005750506040515193505083151561046557610000565b600160a060020a033316600090815260036020526040902085905560025461048e9085906107bf565b151561049957610000565b6002548402915082828115610000576040519190049150600160a060020a0333169082156108fc029083906000818181858888f1935050505015156104dd57610000565b60408051600160a060020a03331681526020810183905281517f016e128b6bdadd9e9068abd0b18db2fc8b27ed3dbced50e4aa6cc0a6934251ab929181900390910190a15b5b5b5b5050505050565b6000600460009054906101000a9004600160a060020a0316600160a060020a031663f83d08ba6000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060405151151590506105a05750600061068f565b600460009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6000604051602001526040518160e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750505060405180519060200150600254600460009054906101000a9004600160a060020a0316600160a060020a03166370a08231856000604051602001526040518260e060020a0281526004018082600160a060020a03168152602001915050602060405180830381600087803b156100005760325a03f115610000575050604051519190910290508115610000570490505b919050565b60025481565b60005433600160a060020a039081169116141561073457600160a060020a03811615156106c657610000565b6004805473ffffffffffffffffffffffffffffffffffffffff19166c010000000000000000000000008381020417905560408051600160a060020a038316815290517fe89f98a27789c8313baa22de83cdb921b7026d66af0ee02973c97d45f952b6be916020908290030190a15b5b5b50565b60015481565b600054600160a060020a031681565b600454600160a060020a031681565b60005433600160a060020a039081169116141561073457600160a060020a038116151561078957610000565b6000805473ffffffffffffffffffffffffffffffffffffffff19166c01000000000000000000000000838102041790555b5b5b50565b60008115806107d75750828283850281156100005704145b90505b9291505056

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

-----Decoded View---------------
Found 1 constructor arguments :
Arg [0] : 0000000000000000000000005c543e7ae0a1104f78406c340e9c64fd9fce5170

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.