Contract 0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa

 

TxHash Block Age From To Value [TxFee]
0xf74d7a5db6a04bac35f20b1a3b830e4c392269e4092ead358dc77187d884e15973994013 days 16 hrs ago0xedef83171003220f52e2bf55dc10251a1505860d IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000268318005
0x4ad1a336962e85366fb6ed8fc9dc207e392bb29a887e0e7987361ecfe322659573937974 days 13 hrs ago0x2fca93811f6fd46a1b104700ea7638c2a2ff3c33 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000629964
0xb2e3684e3f511293b218bca8444781e7cc2cce0c00d622f229c4e7005f5f2e9f73882335 days 10 hrs ago0x51f40f848191019e86735d6592ade7109e640837 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000093328
0xc256e2cadf1ad6219f6dc1fa83a41e2aec01d879e96f4da0ebc315270307eee873622569 days 10 hrs ago0x545891e5805c7a23e415d12b2c90eb1d15a68e4f IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000094264
0x922d230a6ca35beed78a4ecf4497027be0022365f5f4a165b6d61810bdd3b1a573613119 days 14 hrs ago0x2fca93811f6fd46a1b104700ea7638c2a2ff3c33 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000419976
0xf80a12900c6058cdc912f764eace62836cb0e19f1217e6ecff14eb6325339919735869610 days 14 mins ago0xd1ce969c209e63137d6ec9946de49f5c45d630a1 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00011666
0x4082d7ccc1268feb138ab664d85cb0795d0f878aeb0e0cc94c053f3e3b50658a734850511 days 14 hrs ago0x2fca93811f6fd46a1b104700ea7638c2a2ff3c33 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000489972
0x1b88ebaa4da3d9d4d39c3f6953c0f4965379de8bc633fb9a3ac9c8c5e1f45510734849411 days 14 hrs ago0x2fca93811f6fd46a1b104700ea7638c2a2ff3c33 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000489972
0x6ee562509c3b379a33b1779246a668f2cafb13483f731c11ab83cfddab6e2e2e734417612 days 6 hrs ago0xedef83171003220f52e2bf55dc10251a1505860d IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.0001119936
0xd24c7011114183b0c875e7c26b6c67db36535143f9cfdc94054bcabfb121425c734417012 days 6 hrs ago0xedef83171003220f52e2bf55dc10251a1505860d IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.0001119936
0x457ff9c7bc0749275073ceedcd3a808ea2a2cfbd43e9f74fce22ba86819deb1a733659813 days 10 hrs ago0x03aa2d9a297b9d05dd84ba3f6230a653fde1569d IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000047132
0x23be07feb4598768f06da5d6e26209aeff2784d4e6484262c2d365ed55b12cb4733528813 days 15 hrs ago0xa89f535e47ff7f2eeaffc28af3d35370f09c5b2f IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000186656
0x54abe9a3a4aff3c2da92c7ce491c3596f50fafe36c1472f9ddd374bbb6852e49733477013 days 17 hrs ago0x70dbf64f87ba272306aa935f5f44980ad57885d4 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00005786
0xdea5976492e6c158e718e17f78afe32cef76e9ecc3c7ac92dd3159ef323b576a733476813 days 17 hrs ago0x83fbea5c94bc921040515e1cc19f6f351e2da248 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00013746
0x89f04d599ee0f770855261f1f1c627543d3dca990bef1057bba3e3e651aa05a2733476113 days 17 hrs ago0xcd0ce14938574ae3fabd46125149ac42fd8c85ac IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00046011
0xdeb10fed0507bf087b59c75a193ca71cefd31f277537abfc367c52249ed37240733475613 days 17 hrs ago0xe5426db6a802f595b4cd448e36ab49b8aefc5c14 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00044551
0x5d7eb1cc00a37f15cb4a5d32fce8b1963faf2d48facb046001866714c5822a4c733473613 days 17 hrs ago0x49e0c3739a736829d34a6f23c28bd0696e1a1e23 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0.1 Ether0.00120577
0xeecc2bbd6405cf4a6bb65f611a858084a7b73e099deffa554b172cf05b60a25c733467613 days 17 hrs ago0xff6c369edd4b7efff378f1b8b574db46718dfafa IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00022051
0x3aa5f7033e3aabaf93a5dd6b578a6e9d4a94b13f2243f125ced2afb21329309e733464013 days 18 hrs ago0xcb1c86f2b20cbab255b732c97cdd41be95995ae2 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00088204
0xb9c6d81fa8564ac07fb0df30d567521ab4c1711b66e2a5e48d80fc507ce5284d733463013 days 18 hrs ago0x2c9088730c58d992b3ee3c26763fb3daf657674b IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00088204
0xa6e73fc0ad1c5dacce1e7647de78d2a47783566e13d513298cb386510ef718b5733455613 days 18 hrs ago0xf1a04d4c1a4e811b50dea4443db08257bae1a803 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000264612
0x85e737e7dbbe92feefdf1f08dadd5001cdad577554a29d095f49b39386ca23d9733455213 days 18 hrs ago0x9709ce1768034e91ef15008ea1c1f4fa54523af2 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000266016
0x58e521a77a14aa84f8e78f2eebac87efb2edbc67a863e0b4a18cf74ee47c9cf5733449613 days 18 hrs ago0x66bccda4a465f8cfa915a71dda9e33fa7aa0f5a2 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.000132306
0xbe41017172482dc8da906985cc1e47b4cd8e9fd4817202a9c52752694fadc360733448613 days 18 hrs ago0xe2803a1255dea2e74542f9fa85629619bf7c9178 IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.00022051
0x94c86b4ec236ff81e8f358ac73f8782565a60861a19cb489a0d6de645c7ed274733440013 days 19 hrs ago0xbf4e10fb6d08fa8669bd33723cf38e2efcf0341b IN  0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0 Ether0.001808182
[ Download CSV Export 

Latest 25 internal transaction, Click here to view more Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0x89f04d599ee0f770855261f1f1c627543d3dca990bef1057bba3e3e651aa05a2733476113 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xcd0ce14938574ae3fabd46125149ac42fd8c85ac0.044307403211739465 Ether
0xdeb10fed0507bf087b59c75a193ca71cefd31f277537abfc367c52249ed37240733475613 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xe5426db6a802f595b4cd448e36ab49b8aefc5c141.11 Ether
0x5d7eb1cc00a37f15cb4a5d32fce8b1963faf2d48facb046001866714c5822a4c733473613 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xd9cd3bde6a31e2a46d6f8c6669bbc470ae338e360.0015 Ether
0x5d7eb1cc00a37f15cb4a5d32fce8b1963faf2d48facb046001866714c5822a4c733473613 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x6c9033c1cd5b9129fd7d1b49947afca645c261530.0015 Ether
0x5d7eb1cc00a37f15cb4a5d32fce8b1963faf2d48facb046001866714c5822a4c733473613 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xe225b515f9e7ce922f18f99098f594969548e9b80.007 Ether
0xeecc2bbd6405cf4a6bb65f611a858084a7b73e099deffa554b172cf05b60a25c733467613 days 17 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xff6c369edd4b7efff378f1b8b574db46718dfafa0.0145 Ether
0x3aa5f7033e3aabaf93a5dd6b578a6e9d4a94b13f2243f125ced2afb21329309e733464013 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xcb1c86f2b20cbab255b732c97cdd41be95995ae20.054 Ether
0xb9c6d81fa8564ac07fb0df30d567521ab4c1711b66e2a5e48d80fc507ce5284d733463013 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x2c9088730c58d992b3ee3c26763fb3daf657674b0.00133838579509 Ether
0xa6e73fc0ad1c5dacce1e7647de78d2a47783566e13d513298cb386510ef718b5733455613 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xf1a04d4c1a4e811b50dea4443db08257bae1a8030.02 Ether
0x85e737e7dbbe92feefdf1f08dadd5001cdad577554a29d095f49b39386ca23d9733455213 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x9709ce1768034e91ef15008ea1c1f4fa54523af20.105105 Ether
0x58e521a77a14aa84f8e78f2eebac87efb2edbc67a863e0b4a18cf74ee47c9cf5733449613 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x66bccda4a465f8cfa915a71dda9e33fa7aa0f5a20.012 Ether
0xbe41017172482dc8da906985cc1e47b4cd8e9fd4817202a9c52752694fadc360733448613 days 18 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xe2803a1255dea2e74542f9fa85629619bf7c91780.03 Ether
0x94c86b4ec236ff81e8f358ac73f8782565a60861a19cb489a0d6de645c7ed274733440013 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xbf4e10fb6d08fa8669bd33723cf38e2efcf0341b0.005 Ether
0xc14a563f0d293414200a99f939a5ee45b216836292c333d0a2502b2e63c84411733434613 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x61e450c9384a6c9e952fae934d2f7ba48567de710.035 Ether
0x0f89d628b0672c9afeedf7b67e42fedc3d226ee3572451d316c0972f95d32b34733433713 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xf55705bb8c30ea4b721d53cd0ed7987d7764c8b10.05 Ether
0x117d080e242535e77c3da6b7e80d8483a16fea0d7e53eda8e464208585ee018a733425513 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x94ee1ba6cc4e0cef78cc942c450b05533f85ab0e0.008 Ether
0x3353ead39216e2941f16045c63daea25e53ae10b0af22335195343892223ab67733424913 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xfbe6e7a5e1505315255ac1985640c8047cf2ea910.10605 Ether
0x48aeebe23f38d44f08e9225a0a75d39790a1e25c8ed8e9ce2181667f0358c273733421413 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x5194dfe2a843465a1152cb55482ff34bd845d8400.088 Ether
0xee3342b97e0faa0cc86f7fb48e873f834863e54adcb1ba3c82353a603c2ac568733419613 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x5ab2e42d6772e727e9a031fc17f7d97b3f20cbd10.178 Ether
0x2a1d3aa106ce301a14c46fdab8837c5ef33384e55a05419aae86162f3a8efb11733417013 days 19 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x6ed3b3658f5e4d281df8ad496a641f6b119e9a5f0.82996662 Ether
0x99277ca2545fb24775c3f39044ed6ddf0c044cda284edd90af45d3deee40c79a733411013 days 20 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xd0f7eb70b6894649b6f0e889978fe1ef319ba1870.3 Ether
0x1f98cd0d234ec3e35abc5467fcac2a6ae76a9c8bf01c745340b4b7c3865a3418733404213 days 20 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x3afa1e679661f132717a70e3799b9ee712e50fd50.04 Ether
0xb63f1acfe09aa6d6d8c502d66d0bd587376531e10d96225c662ced476472db88733402413 days 20 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0x2b2780dcc4c501bcfd27c812472224b1100a4ca50.55125 Ether
0xc59a7a5431846619fbbba787d15ee7aa8fba34cdc8c2b912200aaece4770bae0733396213 days 20 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xb04de9a4175c99238f48eb22443ba4bb41d7b0320.029293899838297672 Ether
0x344c3335da9ec653ea4b6b788ae180893cc97e8f560f0cde1ca1cb8d97e8cc41733374713 days 21 hrs ago0xcc70db1ac810677c06d9cc1cdd8c953b12edd3fa0xe066add2331e3666f931aa22cad605ab4194bbdd0.5250525 Ether
[ Download CSV Export 

Contract Source Code Verified (Exact Match)

Contract Name:
EthRV

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes

Runs (Optimizer):
200

Contract Source Code

pragma solidity 0.4.25;


contract EthRV {
  using SafeMath for uint;

  struct Investor {
    uint deposit;
    uint paymentTime;
    uint withdrawal;
    uint boostStartup;
    bool isParticipant;
  }

  mapping (address => Investor) public investors;
  address public admin1Address;
  address public admin2Address;
  address public admin3Address;
  address public owner;
  uint public investmentsNumber;
  uint public investorsNumber;

  modifier onlyOwner() {
    require(msg.sender == owner, "access denied");
    _;
  }

  event OnRefLink(address indexed referral, uint referrarBonus, address indexed referrer,  uint referrerBonus, uint time);
  event OnNewInvestor(address indexed addr, uint time);
  event OnInvesment(address indexed addr, uint deposit, uint time);
  event OnBoostChanged(address indexed addr, bool isActive, uint time);
  event OnEarlyWithdrawal(address indexed addr, uint withdrawal, uint time);
  event OnDeleteInvestor(address indexed addr, uint time);
  event OnWithdraw(address indexed addr, uint withdrawal, uint time);
  event OnBoostBonus(address indexed addr, uint bonus, uint time);
  event OnNotEnoughBalance(uint time);

  constructor() public {
    owner = msg.sender;
    admin1Address = msg.sender;
    admin2Address = msg.sender;
    admin3Address = msg.sender;
  }

  function() external payable {
    if (msg.value == 0) {
      withdraw();
    } else if (msg.value == 0.0077777 ether) {
      boost();
    } else if (msg.value == 0.0088888 ether) {
      earlyWithdrawal();
    } else {
      deposit(bytes2address(msg.data));
    }
  }

  function disown() public onlyOwner {
    owner = address(0x0);
  }

  function setAdminsAddress(uint n, address addr) public onlyOwner {
    require(n >= 1 && n <= 3, "invalid number of admin`s address");
    if (n == 1) {
      admin1Address = addr;
    } else if (n == 2) {
      admin2Address = addr;
    } else {
      admin3Address = addr;
    }
  }

  function investorDividends(address investorAddr) public view returns(uint dividends, uint boostBonus) {
    return getDividends(investorAddr);
  }

  function withdraw() public {
    address investorAddr = msg.sender;
    (uint dividends, uint boostBonus) = getDividends(investorAddr);
    require(dividends > 0, "cannot to pay zero dividends");
    require(address(this).balance > 0, "fund is empty");
    uint withdrawal = dividends + boostBonus;

    // fund limit
    if (address(this).balance <= withdrawal) {
      emit OnNotEnoughBalance(now);
      withdrawal = address(this).balance;
    }

    Investor storage investor = investors[investorAddr];
    uint withdrawalLimit = investor.deposit * 200 / 100; // 200%
    uint totalWithdrawal = withdrawal + investor.withdrawal;

    // withdrawal limit - 200%
    if (totalWithdrawal >= withdrawalLimit) {
      withdrawal = withdrawalLimit.sub(investor.withdrawal);
      if (boostBonus > 0 ) {
        emit OnBoostBonus(investorAddr, boostBonus, now);
      }
      deleteInvestor(investorAddr);
    } else {
      // normal withdraw - dont use boostBonus
      if (withdrawal > dividends) {
        withdrawal = dividends;
      }
      investor.withdrawal += withdrawal;
      investor.paymentTime = now;
      if (investor.boostStartup > 0) {
        investor.boostStartup = 0;
        emit OnBoostChanged(investorAddr, false, now);
      }
    }

    investorAddr.transfer(withdrawal);
    emit OnWithdraw(investorAddr, withdrawal, now);
  }

  function earlyWithdrawal() public {
    address investorAddr = msg.sender;
    Investor storage investor = investors[investorAddr];
    require(investor.deposit > 0, "sender must be an investor");

    uint earlyWithdrawalLimit = investor.deposit * 70 / 100; // 70%
    require(earlyWithdrawalLimit > investor.withdrawal, "early withdraw only before 70% deposit`s withdrawal");

    uint withdrawal = earlyWithdrawalLimit.sub(investor.withdrawal); 
    investorAddr.transfer(withdrawal);
    emit OnEarlyWithdrawal(investorAddr, withdrawal, now);

    deleteInvestor(investorAddr);
  }

  function boost() public {
    Investor storage investor = investors[msg.sender];
    require(investor.deposit > 0, "sender must be an investor");
    require(investor.boostStartup == 0, "boost is already activated");
    investor.boostStartup = now;
    emit OnBoostChanged(msg.sender, true, now);
  }

  function deposit(address referrerAddr) public payable {
    uint depositAmount = msg.value;
    address investorAddr = msg.sender;
    require(isNotContract(investorAddr), "invest from contracts is not supported");
    require(depositAmount > 0, "deposit amount cannot be zero");

    admin1Address.send(depositAmount * 70 / 1000); //   7%
    admin2Address.send(depositAmount * 15 / 1000); // 1.5%
    admin3Address.send(depositAmount * 15 / 1000); // 1.5%

    Investor storage investor = investors[investorAddr];
    bool senderIsNotPaticipant = !investor.isParticipant;
    bool referrerIsParticipant = investors[referrerAddr].isParticipant;

    // ref link
    if (senderIsNotPaticipant && referrerIsParticipant && referrerAddr != investorAddr) {
      uint referrerBonus = depositAmount * 3 / 100; // 3%
      uint referralBonus = depositAmount * 1 / 100; // 1%
      referrerAddr.transfer(referrerBonus);
      investorAddr.transfer(referralBonus);
      emit OnRefLink(investorAddr, referralBonus, referrerAddr, referrerBonus, now);
    }

    if (investor.deposit == 0) {
      investorsNumber++;
      investor.isParticipant = true;
      emit OnNewInvestor(investorAddr, now);
    }

    investor.deposit += depositAmount;
    investor.paymentTime = now;

    investmentsNumber++;
    emit OnInvesment(investorAddr, depositAmount, now);
  }

  function getDividends(address investorAddr) internal view returns(uint dividends, uint boostBonus) {
    Investor storage investor = investors[investorAddr];
    if (investor.deposit == 0) {
      return (0, 0);
    }

    if (investor.boostStartup > 0) {
      uint boostDays = now.sub(investor.boostStartup).div(24 hours);
      boostBonus = boostDays * investor.deposit * 5 / 100000; // 0.005%
    }

    uint depositDays = now.sub(investor.paymentTime).div(24 hours);
    dividends = depositDays * investor.deposit * 1 / 100; // 1%

    uint depositAmountBonus;
    if (10 ether <= investor.deposit && investor.deposit <= 50 ether) {
      depositAmountBonus = depositDays * investor.deposit * 5 / 10000; // 0.05%
    } else if (50 ether < investor.deposit) {
      depositAmountBonus = depositDays * investor.deposit * 11 / 10000; // 0.11%
    }

    dividends += depositAmountBonus;
  }

  function isNotContract(address addr) internal view returns (bool) {
    uint length;
    assembly { length := extcodesize(addr) }
    return length == 0;
  }

  function bytes2address(bytes memory source) internal pure returns(address addr) {
    assembly { addr := mload(add(source, 0x14)) }
    return addr;
  }

  function deleteInvestor(address investorAddr) private {
    delete investors[investorAddr].deposit;
    delete investors[investorAddr].paymentTime;
    delete investors[investorAddr].withdrawal;
    delete investors[investorAddr].boostStartup;
    emit OnDeleteInvestor(investorAddr, now);
    investorsNumber--;
  }
}

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

  /**
  * @dev Multiplies two numbers, reverts on overflow.
  */
  function mul(uint256 _a, uint256 _b) internal pure returns (uint256) {
    // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
    // benefit is lost if 'b' is also tested.
    // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
    if (_a == 0) {
      return 0;
    }

    uint256 c = _a * _b;
    require(c / _a == _b);

    return c;
  }

  /**
  * @dev Integer division of two numbers truncating the quotient, reverts on division by zero.
  */
  function div(uint256 _a, uint256 _b) internal pure returns (uint256) {
    require(_b > 0); // Solidity only automatically asserts 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 c;
  }

  /**
  * @dev Subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 _a, uint256 _b) internal pure returns (uint256) {
    require(_b <= _a);
    uint256 c = _a - _b;

    return c;
  }

  /**
  * @dev Adds two numbers, reverts on overflow.
  */
  function add(uint256 _a, uint256 _b) internal pure returns (uint256) {
    uint256 c = _a + _b;
    require(c >= _a);

    return c;
  }

  /**
  * @dev Divides two numbers and returns the remainder (unsigned integer modulo),
  * reverts when dividing by zero.
  */
  function mod(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b != 0);
    return a % b;
  }
}

Contract ABI

[{"constant":true,"inputs":[{"name":"investorAddr","type":"address"}],"name":"investorDividends","outputs":[{"name":"dividends","type":"uint256"},{"name":"boostBonus","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin1Address","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin2Address","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disown","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"admin3Address","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"n","type":"uint256"},{"name":"addr","type":"address"}],"name":"setAdminsAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"investorsNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"investors","outputs":[{"name":"deposit","type":"uint256"},{"name":"paymentTime","type":"uint256"},{"name":"withdrawal","type":"uint256"},{"name":"boostStartup","type":"uint256"},{"name":"isParticipant","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"earlyWithdrawal","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"investmentsNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"boost","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"referrerAddr","type":"address"}],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"referral","type":"address"},{"indexed":false,"name":"referrarBonus","type":"uint256"},{"indexed":true,"name":"referrer","type":"address"},{"indexed":false,"name":"referrerBonus","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnRefLink","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnNewInvestor","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"deposit","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnInvesment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"isActive","type":"bool"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnBoostChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"withdrawal","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnEarlyWithdrawal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnDeleteInvestor","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"withdrawal","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"bonus","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"OnBoostBonus","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"time","type":"uint256"}],"name":"OnNotEnoughBalance","type":"event"}]

Contract Creation Code

608060405234801561001057600080fd5b506004805433600160a060020a031991821681179092556001805482168317905560028054821683179055600380549091169091179055611068806100566000396000f3006080604052600436106100cf5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630482cfa881146101555780630fb599da1461018f57806319e25623146101c05780631e9bf0da146101d55780633ccfd60b146101ea57806349af9e7c146101ff5780635e77eec014610214578063653c3174146102385780636f7bc9be1461025f5780638da5cb5b146102ad5780639197b7cd146102c25780639ec6e054146102d7578063a66f42c0146102ec578063f340fa0114610301575b3415156100e3576100de610315565b610153565b34661ba1c6e5ab680014156100fa576100de6105c2565b34661f9451067ac0001415610111576100de6106cc565b61015361014e6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843750610867945050505050565b61086e565b005b34801561016157600080fd5b50610176600160a060020a0360043516610be3565b6040805192835260208301919091528051918290030190f35b34801561019b57600080fd5b506101a4610bf8565b60408051600160a060020a039092168252519081900360200190f35b3480156101cc57600080fd5b506101a4610c07565b3480156101e157600080fd5b50610153610c16565b3480156101f657600080fd5b50610153610315565b34801561020b57600080fd5b506101a4610c97565b34801561022057600080fd5b50610153600435600160a060020a0360243516610ca6565b34801561024457600080fd5b5061024d610e2f565b60408051918252519081900360200190f35b34801561026b57600080fd5b50610280600160a060020a0360043516610e35565b60408051958652602086019490945284840192909252606084015215156080830152519081900360a00190f35b3480156102b957600080fd5b506101a4610e67565b3480156102ce57600080fd5b506101536106cc565b3480156102e357600080fd5b5061024d610e76565b3480156102f857600080fd5b506101536105c2565b610153600160a060020a036004351661086e565b336000808080808061032687610e7c565b909650945060008611610383576040805160e560020a62461bcd02815260206004820152601c60248201527f63616e6e6f7420746f20706179207a65726f206469766964656e647300000000604482015290519081900360640190fd5b60003031116103dc576040805160e560020a62461bcd02815260206004820152600d60248201527f66756e6420697320656d70747900000000000000000000000000000000000000604482015290519081900360640190fd5b858501935030318410610421576040805142815290517f4bc9b070b42d687df44b2bced54e9dc5f730da426d8bbe0dfdf4e229348b1bdb9181900360200190a1303193505b505050600160a060020a038416600090815260208190526040902080546002820154606460c8909202919091049083018181106104ca57600283015461046e90839063ffffffff610f8e16565b935060008511156104bc57604080518681524260208201528151600160a060020a038a16927fd6bba72cfdd019dac120a28d9c5b47a55253fc3d7a15e214638f4ab72f825d0a928290030190a25b6104c587610fa5565b610540565b858411156104d6578593505b6002830180548501905542600184015560038301546000101561054057600060038401819055604080519182524260208301528051600160a060020a038a16927f53ae0ebde6e4862a1b50a7500508fd6a928f2ad0428d2b8aa9bfd0b7eda125e192908290030190a25b604051600160a060020a0388169085156108fc029086906000818181858888f19350505050158015610576573d6000803e3d6000fd5b50604080518581524260208201528151600160a060020a038a16927f2062721aee90a8bb8a5f4bd9268516248f25c0d9eddeda19278dca76aaea84d3928290030190a250505050505050565b336000908152602081905260408120805490911061062a576040805160e560020a62461bcd02815260206004820152601a60248201527f73656e646572206d75737420626520616e20696e766573746f72000000000000604482015290519081900360640190fd5b600381015415610684576040805160e560020a62461bcd02815260206004820152601a60248201527f626f6f737420697320616c726561647920616374697661746564000000000000604482015290519081900360640190fd5b426003820181905560408051600181526020810192909252805133927f53ae0ebde6e4862a1b50a7500508fd6a928f2ad0428d2b8aa9bfd0b7eda125e192908290030190a250565b336000818152602081905260408120805490919081908110610738576040805160e560020a62461bcd02815260206004820152601a60248201527f73656e646572206d75737420626520616e20696e766573746f72000000000000604482015290519081900360640190fd5b82546064906046020491508260020154821115156107c6576040805160e560020a62461bcd02815260206004820152603360248201527f6561726c79207769746864726177206f6e6c79206265666f726520373025206460448201527f65706f7369746073207769746864726177616c00000000000000000000000000606482015290519081900360840190fd5b60028301546107dc90839063ffffffff610f8e16565b604051909150600160a060020a0385169082156108fc029083906000818181858888f19350505050158015610815573d6000803e3d6000fd5b50604080518281524260208201528151600160a060020a038716927fc2a65ccee1f24869c24110d00effa70494405c116f825f7c4bc9a8c4c61f52e6928290030190a261086184610fa5565b50505050565b6014015190565b343360008080808061087f86611014565b15156108fb576040805160e560020a62461bcd02815260206004820152602660248201527f696e766573742066726f6d20636f6e747261637473206973206e6f742073757060448201527f706f727465640000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60008711610953576040805160e560020a62461bcd02815260206004820152601d60248201527f6465706f73697420616d6f756e742063616e6e6f74206265207a65726f000000604482015290519081900360640190fd5b600154604051600160a060020a03909116906103e860468a020480156108fc02916000818181858888f15050600254604051600160a060020a0390911693506103e8600f8c020480156108fc02935091506000818181858888f15050600354604051600160a060020a0390911693506103e8600f8c020480156108fc02935091506000818181858888f1505050600160a060020a03808916600090815260208190526040808220600480820154948f16845291909220015490985060ff918216159750169450859150508015610a265750825b8015610a44575085600160a060020a031688600160a060020a031614155b15610b195760646003880204915060648704905087600160a060020a03166108fc839081150290604051600060405180830381858888f19350505050158015610a91573d6000803e3d6000fd5b50604051600160a060020a0387169082156108fc029083906000818181858888f19350505050158015610ac8573d6000803e3d6000fd5b50604080518281526020810184905242818301529051600160a060020a03808b1692908916917f3c5c410adfbff31bca41d5057afa8ec961a887f3a3532131567939c5dcb7ceec9181900360600190a35b84541515610b7c5760068054600190810190915560048601805460ff19169091179055604080514281529051600160a060020a038816917f1c60e9994717b7a38e90d1375a1b49c38a4c8ce7a75da9a17cb79ac3e79188f2919081900360200190a25b8454870185554260018087018290556005805490910190556040805189815260208101929092528051600160a060020a038916927fdaa9a18108ac949df27ff6e414406ff7b98cb63e38a8ec8bd8d1f916656381cc92908290030190a25050505050505050565b600080610bef83610e7c565b91509150915091565b600154600160a060020a031681565b600254600160a060020a031681565b600454600160a060020a03163314610c78576040805160e560020a62461bcd02815260206004820152600d60248201527f6163636573732064656e69656400000000000000000000000000000000000000604482015290519081900360640190fd5b6004805473ffffffffffffffffffffffffffffffffffffffff19169055565b600354600160a060020a031681565b600454600160a060020a03163314610d08576040805160e560020a62461bcd02815260206004820152600d60248201527f6163636573732064656e69656400000000000000000000000000000000000000604482015290519081900360640190fd5b60018210158015610d1a575060038211155b1515610d96576040805160e560020a62461bcd02815260206004820152602160248201527f696e76616c6964206e756d626572206f662061646d696e60732061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b8160011415610dcc576001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055610e2b565b8160021415610e02576002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055610e2b565b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5050565b60065481565b600060208190529081526040902080546001820154600283015460038401546004909401549293919290919060ff1685565b600454600160a060020a031681565b60055481565b600160a060020a038116600090815260208190526040812080548291908290819081901515610eb15760009550859450610f85565b600084600301541115610efb57610ee862015180610edc866003015442610f8e90919063ffffffff16565b9063ffffffff61101916565b8454909350620186a09084026005020494505b610f1962015180610edc866001015442610f8e90919063ffffffff16565b84546064828202049750909250678ac7230489e8000011801590610f47575083546802b5e3af16b188000010155b15610f5f578354612710908302600502049050610f80565b83546802b5e3af16b18800001015610f80578354612710908302600b020490505b948501945b50505050915091565b60008083831115610f9e57600080fd5b5050900390565b600160a060020a038116600081815260208181526040808320838155600181018490556002810184905560030192909255815142815291517fbc2d26651a09654ddcc793a5a4b05002aabb6680f39189afe97b7072230413429281900390910190a25060068054600019019055565b3b1590565b60008080831161102857600080fd5b828481151561103357fe5b049493505050505600a165627a7a72305820ae4086ee2e671ad34e39adfa5d542e7fc26afc96c5121ca69355290870611f830029

Swarm Source

bzzr://ae4086ee2e671ad34e39adfa5d542e7fc26afc96c5121ca69355290870611f83
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.