Contract Overview
Transactions:
1,387 txns
Latest 25 transactions from a total of 1,387 transactions
[ Download CSV Export ]
Latest 1 Internal Transaction Internal Transactions as a result of Contract Execution
Parent TxHash | Block | Age | From | To | Value | |
---|---|---|---|---|---|---|
0x37a33962a5a6cac3cf75225a8cf0b34e0d7821c72914dc67dd5b09af536b6d54 | 4283775 | 524 days 5 hrs ago | 0x7600431745bd5bb27315f8376971c81cc8026a78 | 0x956fdf7be4453e26859b0c859d236c268b79ceb1 | 1,900.707484832560991606 Ether |
[ Download CSV Export ]
Warning: The compiled contract might be susceptible to ExpExponentCleanup (medium/high-severity), NestedArrayFunctionCallDecoder (medium-severity), ZeroFunctionSelector (very low-severity) Solidity Compiler Bugs.
Contract Source Code Verified (Exact Match)
Contract Source Code Verified (Exact Match)
Contract Name: | BMPre_ICO |
Compiler Version: | v0.4.15+commit.bbb8e64f |
Optimization Enabled: | No |
Runs (Optimizer): | 200 |
Contract Source Code
pragma solidity ^0.4.15; contract BMICOAffiliateProgramm { function add_referral(address referral, string promo, uint256 amount) external returns(address, uint256, uint256); } contract BMPre_ICO { mapping (address => uint256) public holders; mapping (address => uint256) public holdersBonus; uint256 public amount_investments = 0; uint256 public amount_bonus = 0; uint256 public countHolders = 0; uint256 public preIcoStart = 1503219600; //20.08.2017 12:00 MSK uint256 public preIcoEnd = 1504990800; //10.00.2017 00:00 MSK uint256 public lastCallstopPreICO = 1503219600; uint256 public minSizeInvest = 100 finney; address public owner; address public affiliate; BMICOAffiliateProgramm contractAffiliate; event Investment(address holder, uint256 value); event EndPreICO(uint256 EndDate); function BMPre_ICO() { owner = msg.sender; affiliate = address(0x0); } modifier isOwner() { assert(msg.sender == owner); _; } function changeOwner(address new_owner) isOwner { assert(new_owner!=address(0x0)); assert(new_owner!=address(this)); owner = new_owner; } function setAffiliateContract(address new_address) isOwner { assert(new_address!=address(0x0)); assert(new_address!=address(this)); affiliate = new_address; contractAffiliate = BMICOAffiliateProgramm(new_address); } function getDataHolders(address holder) external constant returns(uint256) { return holders[holder]; } function getDataHoldersRefBonus(address holder) external constant returns(uint256) { return holdersBonus[holder]; } uint256 public stopBlock = 0; function stopPreIco_step1() { assert(now - lastCallstopPreICO > 12 hours); lastCallstopPreICO = now; stopBlock = block.number + 5; } function stopPreIco_step2() { if (stopBlock != 0 && stopBlock < block.number) { bytes32 hash = block.blockhash(stopBlock); if (uint256(hash) > 0) { uint8 value = uint8(uint256(sha3(hash, msg.sender)) % 100); uint8 limit = uint8((amount_investments*100)/100000000000000000000000); if(value < limit) { if(preIcoEnd - now > 1 days) { preIcoEnd -= 1 days; } EndPreICO(preIcoEnd); } } stopBlock = 0; } } function sendInvestmentsToOwner() isOwner { assert(now >= preIcoEnd); owner.transfer(this.balance); } function buy(string promo) payable { assert(now < preIcoEnd); assert(now >= preIcoStart); assert(msg.value>=minSizeInvest); if(holders[msg.sender] == 0){ countHolders += 1; } holders[msg.sender] += msg.value; amount_investments += msg.value; Investment(msg.sender, msg.value); if(affiliate != address(0x0)){ var (partner_address, partner_bonus, referral_bonus) = contractAffiliate.add_referral(msg.sender, promo, msg.value); if(partner_bonus > 0 && partner_address != address(0x0)){ holdersBonus[partner_address] += msg.value; amount_bonus += msg.value; } if(referral_bonus > 0){ holdersBonus[msg.sender] = referral_bonus; amount_bonus += referral_bonus; } } stopPreIco_step2(); } function () payable { buy(''); } }
Contract ABI
[{"constant":true,"inputs":[],"name":"countHolders","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"minSizeInvest","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"holders","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"preIcoStart","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"holdersBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stopBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"affiliate","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"promo","type":"string"}],"name":"buy","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"amount_investments","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"preIcoEnd","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":"amount_bonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"sendInvestmentsToOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_owner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"stopPreIco_step2","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_address","type":"address"}],"name":"setAffiliateContract","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"holder","type":"address"}],"name":"getDataHoldersRefBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"holder","type":"address"}],"name":"getDataHolders","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"lastCallstopPreICO","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"stopPreIco_step1","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"holder","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Investment","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"EndDate","type":"uint256"}],"name":"EndPreICO","type":"event"}]
Contract Creation Code
60606040526000600255600060035560006004556359994f906005556359b456506006556359994f9060075567016345785d8a00006008556000600c55341561004757600080fd5b5b33600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b610f81806100dc6000396000f30060606040523615610110576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063033c6ee61461012d57806317c2d98b1461015657806318a5bbdc1461017f5780633d741994146101cc57806343cc113b146101f557806344bb3b2f1461024257806345e05f431461026b578063492cc769146102c05780636c48a09714610312578063833270d81461033b5780638da5cb5b1461036457806393859188146103b95780639779dcd9146103e2578063a6f9dae1146103f7578063bf70bd7514610430578063c161594514610445578063cd74096a1461047e578063ecbdb633146104cb578063fa41fd3214610518578063ff3d1be014610541575b5b61012a6020604051908101604052806000815250610556565b5b005b341561013857600080fd5b610140610971565b6040518082815260200191505060405180910390f35b341561016157600080fd5b610169610977565b6040518082815260200191505060405180910390f35b341561018a57600080fd5b6101b6600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061097d565b6040518082815260200191505060405180910390f35b34156101d757600080fd5b6101df610995565b6040518082815260200191505060405180910390f35b341561020057600080fd5b61022c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061099b565b6040518082815260200191505060405180910390f35b341561024d57600080fd5b6102556109b3565b6040518082815260200191505060405180910390f35b341561027657600080fd5b61027e6109b9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610310600480803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610556565b005b341561031d57600080fd5b6103256109df565b6040518082815260200191505060405180910390f35b341561034657600080fd5b61034e6109e5565b6040518082815260200191505060405180910390f35b341561036f57600080fd5b6103776109eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156103c457600080fd5b6103cc610a11565b6040518082815260200191505060405180910390f35b34156103ed57600080fd5b6103f5610a17565b005b341561040257600080fd5b61042e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610afb565b005b341561043b57600080fd5b610443610c0b565b005b341561045057600080fd5b61047c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d46565b005b341561048957600080fd5b6104b5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e97565b6040518082815260200191505060405180910390f35b34156104d657600080fd5b610502600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ee1565b6040518082815260200191505060405180910390f35b341561052357600080fd5b61052b610f2a565b6040518082815260200191505060405180910390f35b341561054c57600080fd5b610554610f30565b005b60008060006006544210151561056857fe5b600554421015151561057657fe5b600854341015151561058457fe5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156105dd5760016004600082825401925050819055505b346000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550346002600082825401925050819055507ffe123a1efb6782dccd20e9790951adcfab3cd0e11b85a6f06d8b9222d299a0a33334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1600073ffffffffffffffffffffffffffffffffffffffff16600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561096257600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166264d6183386346000604051606001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156107e95780820151818401525b6020810190506107cd565b50505050905090810190601f1680156108165780820380516001836020036101000a031916815260200191505b50945050505050606060405180830381600087803b151561083657600080fd5b6102c65a03f1151561084757600080fd5b505050604051805190602001805190602001805190509250925092506000821180156108a05750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156109035734600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550346003600082825401925050819055505b60008111156109615780600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806003600082825401925050819055505b5b61096a610c0b565b5b50505050565b60045481565b60085481565b60006020528060005260406000206000915090505481565b60055481565b60016020528060005260406000206000915090505481565b600c5481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b60065481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7057fe5b6006544210151515610a7e57fe5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515610af757600080fd5b5b5b565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b5457fe5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b8d57fe5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610bc557fe5b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b600080600080600c5414158015610c23575043600c54105b15610d4057600c54409250600083600190041115610d3757606483336040518083600019166000191681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140192505050604051809103902060019004811515610cab57fe5b06915069152d02c7e14af6800000606460025402811515610cc857fe5b0490508060ff168260ff161015610d36576201518042600654031115610cfc57620151806006600082825403925050819055505b7fa8cc3abea3d61424c24989795fb86a992cd5d5c5592af0a950a25b5fab2b8a856006546040518082815260200191505060405180910390a15b5b6000600c819055505b5b505050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9f57fe5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dd857fe5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e1057fe5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60075481565b61a8c06007544203111515610f4157fe5b4260078190555060054301600c819055505b5600a165627a7a72305820c5b860031172f7f2bfe2e6b51d9f95d09c18d6269b7b67dfdfde0455d5a0ebd90029
Swarm Source:
bzzr://c5b860031172f7f2bfe2e6b51d9f95d09c18d6269b7b67dfdfde0455d5a0ebd9
Block | Age | transaction | Difficulty | GasUsed | Reward |
---|
Block | Age | Uncle Number | Difficulty | GasUsed | Reward |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.