Address Contract Partially Verified
Address
0x48C1B2f3eFA85fbafb2ab951bF4Ba860a08cdBB7
Balance
2.0000 ETH ($3958.92)
Nonce
1
Code Size
7464 bytes
Creator
0x4395CaA6...c9F2 at tx 0xf2bae638...f49ac2
Indexed Transactions
0 (1 on-chain, 1.2% indexed)
Contract Bytecode
7464 bytes
0x606060405260043610610149576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610221578063095ea7b3146102af57806318160ddd1461030957806318f729da1461033257806323b872dd1461039b5780632dc9ad7f14610414578063313ce56714610477578063384f58eb146104a65780633ba0b9a9146104fb5780633ccfd60b1461052457806340528f9814610539578063485469711461057b5780634ee3dc911461059057806370a08231146105b957806374e7493b14610606578063788649ea14610629578063846786f114610662578063927a90da1461067757806395d89b41146106a457806396dfcc2114610732578063a9059cbb14610747578063bb389952146107a1578063d5abeb01146107b6578063dd62ed3e146107df578063f26c159f1461084b575b600060011515600560009054906101000a900460ff16151514151561016d57600080fd5b670de0b6b3a7640000341015151561018457600080fd5b6101a3670de0b6b3a7640000600454340261088490919063ffffffff16565b905060015481111515156101b657600080fd5b80600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506102188160015461089f90919063ffffffff16565b60018190555050005b341561022c57600080fd5b6102346108b8565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610274578082015181840152602081019050610259565b50505050905090810190601f1680156102a15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102ba57600080fd5b6102ef600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610956565b604051808215151515815260200191505060405180910390f35b341561031457600080fd5b61031c610aa6565b6040518082815260200191505060405180910390f35b341561033d57600080fd5b610369600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610aaf565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b34156103a657600080fd5b6103fa600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610ae5565b604051808215151515815260200191505060405180910390f35b341561041f57600080fd5b610475600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019091905050610d7f565b005b341561048257600080fd5b61048a610e18565b604051808260ff1660ff16815260200191505060405180910390f35b34156104b157600080fd5b6104b9610e2b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561050657600080fd5b61050e610e51565b6040518082815260200191505060405180910390f35b341561052f57600080fd5b610537610e57565b005b341561054457600080fd5b610579600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610f2e565b005b341561058657600080fd5b61058e61108b565b005b341561059b57600080fd5b6105a3611126565b6040518082815260200191505060405180910390f35b34156105c457600080fd5b6105f0600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061112c565b6040518082815260200191505060405180910390f35b341561061157600080fd5b6106276004808035906020019091905050611175565b005b341561063457600080fd5b610660600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111db565b005b341561066d57600080fd5b610675611292565b005b341561068257600080fd5b61068a61130b565b604051808215151515815260200191505060405180910390f35b34156106af57600080fd5b6106b761131e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106f75780820151818401526020810190506106dc565b50505050905090810190601f1680156107245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561073d57600080fd5b6107456113bc565b005b341561075257600080fd5b610787600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506114c2565b604051808215151515815260200191505060405180910390f35b34156107ac57600080fd5b6107b461167a565b005b34156107c157600080fd5b6107c96119f3565b6040518082815260200191505060405180910390f35b34156107ea57600080fd5b610835600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506119f9565b6040518082815260200191505060405180910390f35b341561085657600080fd5b610882600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a80565b005b600080828481151561089257fe5b0490508091505092915050565b60008282111515156108ad57fe5b818303905092915050565b600a8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561094e5780601f106109235761010080835404028352916020019161094e565b820191906000526020600020905b81548152906001019060200180831161093157829003601f168201915b505050505081565b6000801515600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156109b657600080fd5b81600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60008054905090565b60086020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b600080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610bb65750828110155b1515610bc157600080fd5b82600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811015610d0e5782600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60008083519150600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482840211151515610dd657600080fd5b600090505b81811015610e1257610e048482815181101515610df457fe5b90602001906020020151846114c2565b508080600101915050610ddb565b50505050565b600b60009054906101000a900460ff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610eb357600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515610f2c57600080fd5b565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f8a57600080fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410151515610fdb57600080fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555080600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508060008082825401925050819055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110e757600080fd5b60011515600560009054906101000a900460ff16151514151561110957600080fd5b6000600560006101000a81548160ff021916908315150217905550565b60015481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111d157600080fd5b8060048190555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123757600080fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112ee57600080fd5b6001600560006101000a81548160ff021916908315150217905550565b600560009054906101000a900460ff1681565b600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113b45780601f10611389576101008083540402835291602001916113b4565b820191906000526020600020905b81548152906001019060200180831161139757829003601f168201915b505050505081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561141857600080fd5b60015460066000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506114b7600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001546114c2565b506000600181905550565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561151257600080fd5b60001515600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561157157600080fd5b81600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401546001600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154030102600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015401421015151561179c57600080fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201541115156117ed57600080fd5b611884600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461088490919063ffffffff16565b905080600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555080600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282540392505081905550806000808282540192505081905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008154809291906001900391905055507f09d03d90545d2ed6aa0cc5365506a63d1a32a8ef263b0995364bef1661ff07f53382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60025481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611adc57600080fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b9357600080fd5b82600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555042600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018190555080600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040181905550505050505600a165627a7a72305820fa377f383c806c860476fca45efad8b9ee65810ca8611ffe5c7b38c30ba7ad810029
Verified Source Code Partial Match
Compiler: v0.4.19+commit.c4cbbb05
Optimization: No
HAND.sol 271 lines
pragma solidity ^0.4.19;
library SafeMath {
function mul(uint256 a, uint256 b) internal constant returns (uint256) {
uint256 c = a * b;
assert(a == 0 || c / a == b);
return c;
}
function div(uint256 a, uint256 b) internal constant returns (uint256) {
// assert(b > 0); // Solidity automatically throws when dividing by 0
uint256 c = a / b;
return c;
}
function sub(uint256 a, uint256 b) internal constant returns (uint256) {
assert(b <= a);
return a - b;
}
function add(uint256 a, uint256 b) internal constant returns (uint256) {
uint256 c = a + b;
assert(c >= a);
return c;
}
}
contract HAND{
using SafeMath for uint256;
uint256 constant MAX_UINT256 = 2**256 - 1;
uint256 _initialAmount = 0;
uint256 public publicToken = 4*10**11; // 40% of total, for public sale
uint256 public maxSupply = 10**12;
address public contract_owner;
uint256 public exchangeRate = 3900000; // exchangeRate for public sale, token per ETH
bool public icoOpen = false; // whether ICO is open and accept public investment
address privateSaleAdd = 0x85e4FE33c590b8A5812fBF926a0f9fe64E6d8b35;
mapping (address => uint256) balances;
mapping (address => mapping (address => uint256)) allowed;
// lock struct for founder
struct founderLock {
uint256 amount;
uint256 startTime;
uint remainRound;
uint totalRound;
uint256 period;
}
mapping (address => founderLock) public founderLockance;
mapping (address => bool) isFreezed;
// uint256 totalSupply;
event Transfer(address indexed _from, address indexed _to, uint256 _value);
event Approval(address indexed _owner, address indexed _spender, uint256 _value);
event FounderUnlock(address _sender, uint256 _amount);
/*
NOTE:
The following variables are OPTIONAL vanities. One does not have to include them.
*/
string public name = "ShowHand"; //fancy name: eg Simon Bucks
uint8 public decimals = 0; //How many decimals to show.
string public symbol = "HAND"; //An identifier: eg SBX
/**
* @dev Fix for the ERC20 short address attack.
*/
modifier onlyPayloadSize(uint size) {
require(msg.data.length >= size + 4);
_;
}
modifier onlyOwner() {
require(msg.sender == contract_owner);
_;
}
modifier inIco() {
require(icoOpen==true);
_;
}
// token distribution, 60% in this part
address address1 = 0x85e4FE33c590b8A5812fBF926a0f9fe64E6d8b35;
address address2 = 0x5af6353F2BB222DF6FCD82065ed2e6db1bB12291;
address address3 = 0x6c24A6EfdfF15230EE284E2E72D86656ac752e48;
address address4 = 0xCB946d83617eDb6fbCa19148AD83e17Ea7B67294;
address address5 = 0x76360A75dC6e4bC5c6C0a20A4B74b8823fAFad8C;
address address6 = 0x356399eE0ebCB6AfB13dF33168fD2CC54Ba219C2;
address address7 = 0x8b46b43cA5412311A5Dfa08EF1149B5942B5FE22;
address address8 = 0xA51551B57CB4e37Ea20B3226ceA61ebc7135a11a;
address address9 = 0x174bC643442bE89265500E6C2c236D32248A4FaE;
address address10 = 0x0D78E82ECEd57aC3CE65fE3B828f4d52fF712f31;
address address11 = 0xe31062592358Cd489Bdc09e8217543C8cc3D5C1C;
address address12 = 0x0DB8c855C4BB0efd5a1c32de2362c5ABCFa4CA33;
address address13 = 0xF25A3ccDC54A746d56A90197d911d9a1f27cF512;
address address14 = 0x102d36210d312FB9A9Cf5f5c3A293a8f6598BD50;
address address15 = 0x8Dd1cDD513b05D07726a6F8C75b57602991a9c34;
address address16 = 0x9d566BCc1BDda779a00a1D44E0b4cA07FB68EFEF;
address address17 = 0x1cfCe9A13aBC3381100e85BFA21160C98f8B103D;
address address18 = 0x61F0c924C0F91f4d17c82C534cfaF716A7893c13;
address address19 = 0xE76c0618Dd52403ad1907D3BCbF930226bFEa46B;
address address20 = 0xeF2f04dbd3E3aD126979646383c94Fd29E29de9F;
function HAND() public {
// set sender as contract_owner
contract_owner = msg.sender;
_initialAmount += publicToken;
setFounderLock(address1, 800*10**8, 4, 180 days);
setFounderLock(address2, 40*10**8, 4, 180 days);
setFounderLock(address3, 5*10**8, 4, 180 days);
setFounderLock(address4, 5*10**8, 4, 180 days);
setFounderLock(address5, 300*10**8, 4, 180 days);
setFounderLock(address6, 200*10**8, 4, 180 days);
setFounderLock(address7, 100*10**8, 4, 180 days);
setFounderLock(address8, 50*10**8, 4, 180 days);
setFounderLock(address9, 600*10**8, 4, 180 days);
setFounderLock(address10, 150*10**8, 4, 180 days);
setFounderLock(address11, 100*10**8, 4, 180 days);
setFounderLock(address12, 800*10**8, 4, 180 days);
setFounderLock(address13, 2400*10**8, 4, 180 days);
setFounderLock(address14, 100*10**8, 4, 180 days);
setFounderLock(address15, 135*10**8, 4, 180 days);
setFounderLock(address16, 25*10**8, 4, 180 days);
setFounderLock(address17, 20*10**8, 4, 180 days);
setFounderLock(address18, 40*10**8, 4, 180 days);
setFounderLock(address19, 20*10**8, 4, 180 days);
setFounderLock(address20, 110*10**8, 4, 180 days);
}
function totalSupply() constant returns (uint256 _totalSupply){
_totalSupply = _initialAmount;
}
function transfer(address _to, uint256 _value) public returns (bool success) {
//Default assumes totalSupply can't be over max (2^256 - 1).
//If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap.
//Replace the if with this one instead.
//require(balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]);
require(balances[msg.sender] >= _value);
require(isFreezed[msg.sender]==false);
balances[msg.sender] -= _value;
balances[_to] += _value;
Transfer(msg.sender, _to, _value);
return true;
}
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
//same as above. Replace this line with the following if you want to protect against wrapping uints.
//require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]);
uint256 allowance = allowed[_from][msg.sender];
require(balances[_from] >= _value && allowance >= _value);
balances[_to] += _value;
balances[_from] -= _value;
if (allowance < MAX_UINT256) {
allowed[_from][msg.sender] -= _value;
}
Transfer(_from, _to, _value);
return true;
}
function balanceOf(address _owner) view public returns (uint256 balance) {
return balances[_owner];
}
function approve(address _spender, uint256 _value) public returns (bool success) {
require(isFreezed[msg.sender]==false);
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
function allowance(address _owner, address _spender)
view public returns (uint256 remaining) {
return allowed[_owner][_spender];
}
function multisend(address[] addrs, uint256 _value)
{
uint length = addrs.length;
require(_value * length <= balances[msg.sender]);
uint i = 0;
while (i < length) {
transfer(addrs[i], _value);
i ++;
}
}
// lock token of founder for periodically release
// _address: founder address;
// _value: totoal locked token;
// _round: rounds founder could withdraw;
// _period: interval time between two rounds
function setFounderLock(address _address, uint256 _value, uint _round, uint256 _period) internal onlyOwner{
founderLockance[_address].amount = _value;
founderLockance[_address].startTime = now;
founderLockance[_address].remainRound = _round;
founderLockance[_address].totalRound = _round;
founderLockance[_address].period = _period;
}
// allow locked token to be obtained for founder
function unlockFounder () {
require(now >= founderLockance[msg.sender].startTime + (founderLockance[msg.sender].totalRound - founderLockance[msg.sender].remainRound + 1) * founderLockance[msg.sender].period);
require(founderLockance[msg.sender].remainRound > 0);
uint256 changeAmount = founderLockance[msg.sender].amount.div(founderLockance[msg.sender].remainRound);
balances[msg.sender] += changeAmount;
founderLockance[msg.sender].amount -= changeAmount;
_initialAmount += changeAmount;
founderLockance[msg.sender].remainRound --;
FounderUnlock(msg.sender, changeAmount);
}
function freezeAccount (address _target) onlyOwner {
isFreezed[_target] = true;
}
function unfreezeAccount (address _target) onlyOwner {
isFreezed[_target] = false;
}
function ownerUnlock (address _target, uint256 _value) onlyOwner {
require(founderLockance[_target].amount >= _value);
founderLockance[_target].amount -= _value;
balances[_target] += _value;
_initialAmount += _value;
}
// starts ICO
function openIco () onlyOwner{
icoOpen = true;
}
// ends ICO
function closeIco () onlyOwner inIco{
icoOpen = false;
}
// transfer all unsold token to bounty balance;
function weAreClosed () onlyOwner{
balances[contract_owner] += publicToken;
transfer(privateSaleAdd, publicToken);
publicToken = 0;
}
// change rate of public sale
function changeRate (uint256 _rate) onlyOwner{
exchangeRate = _rate;
}
// withdraw ETH from contract
function withdraw() onlyOwner{
contract_owner.transfer(this.balance);
}
// fallback function for receive ETH during ICO
function () payable inIco{
require(msg.value >= 10**18);
uint256 tokenChange = (msg.value * exchangeRate).div(10**18);
require(tokenChange <= publicToken);
balances[msg.sender] += tokenChange;
publicToken = publicToken.sub(tokenChange);
}
}
Read Contract
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
contract_owner 0x384f58eb → address
decimals 0x313ce567 → uint8
exchangeRate 0x3ba0b9a9 → uint256
founderLockance 0x18f729da → uint256, uint256, uint256, uint256, uint256
icoOpen 0x927a90da → bool
maxSupply 0xd5abeb01 → uint256
name 0x06fdde03 → string
publicToken 0x4ee3dc91 → uint256
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
Write Contract 13 functions
These functions modify contract state and require a wallet transaction to execute.
approve 0x095ea7b3
address _spender
uint256 _value
returns: bool
changeRate 0x74e7493b
uint256 _rate
closeIco 0x48546971
No parameters
freezeAccount 0xf26c159f
address _target
multisend 0x2dc9ad7f
address[] addrs
uint256 _value
openIco 0x846786f1
No parameters
ownerUnlock 0x40528f98
address _target
uint256 _value
transfer 0xa9059cbb
address _to
uint256 _value
returns: bool
transferFrom 0x23b872dd
address _from
address _to
uint256 _value
returns: bool
unfreezeAccount 0x788649ea
address _target
unlockFounder 0xbb389952
No parameters
weAreClosed 0x96dfcc21
No parameters
withdraw 0x3ccfd60b
No parameters
Recent Transactions
This address has 1 on-chain transactions, but only 1.2% of the chain is indexed. Transactions will appear as indexing progresses. View on Etherscan →