Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 34 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Touch | 5241895 | 2437 days ago | IN | 0 ETH | 0.00022325 | ||||
Touch | 5241086 | 2437 days ago | IN | 0 ETH | 0.00029076 | ||||
Transfer | 5217424 | 2441 days ago | IN | 1.59 ETH | 0.00048853 | ||||
Transfer | 5212893 | 2442 days ago | IN | 2 ETH | 0.00286143 | ||||
Transfer | 5212849 | 2442 days ago | IN | 2 ETH | 0.00105178 | ||||
Transfer | 5212596 | 2442 days ago | IN | 150 ETH | 0.00041816 | ||||
Transfer | 5212197 | 2442 days ago | IN | 160 ETH | 0.00026066 | ||||
Transfer | 5212182 | 2442 days ago | IN | 160 ETH | 0.00028035 | ||||
Resume | 5206515 | 2443 days ago | IN | 0 ETH | 0.00031641 | ||||
Tune | 5206498 | 2443 days ago | IN | 0 ETH | 0.00030715 | ||||
Suspend | 5206486 | 2443 days ago | IN | 0 ETH | 0.00028454 | ||||
Transfer | 5158582 | 2451 days ago | IN | 0.05 ETH | 0.00286143 | ||||
Resume | 5134490 | 2455 days ago | IN | 0 ETH | 0.00031641 | ||||
Tune | 5134435 | 2455 days ago | IN | 0 ETH | 0.00030715 | ||||
Suspend | 5134399 | 2455 days ago | IN | 0 ETH | 0.00028454 | ||||
Transfer | 5105989 | 2460 days ago | IN | 0.5 ETH | 0.00224643 | ||||
Transfer | 5105958 | 2460 days ago | IN | 0.4 ETH | 0.00224643 | ||||
Transfer | 5105921 | 2460 days ago | IN | 0.1 ETH | 0.00224643 | ||||
Transfer | 5105897 | 2460 days ago | IN | 0.1 ETH | 0.00355 | ||||
Transfer | 5105867 | 2460 days ago | IN | 0.1 ETH | 0.00100092 | ||||
Transfer | 5104904 | 2460 days ago | IN | 0.1 ETH | 0.000504 | ||||
Transfer | 5094039 | 2462 days ago | IN | 0.05 ETH | 0.00224643 | ||||
Transfer | 5086676 | 2463 days ago | IN | 0.05 ETH | 0.00286143 | ||||
Start | 5086645 | 2463 days ago | IN | 0 ETH | 0.00071193 | ||||
Disable Whitelis... | 5086638 | 2463 days ago | IN | 0 ETH | 0.00027276 |
Latest 8 internal transactions
Advanced mode:
Loading...
Loading
Contract Name:
MDPreICO
Compiler Version
v0.4.18+commit.9cf6e910
Optimization Enabled:
Yes with 500 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-02-12 */ pragma solidity ^0.4.18; // File: contracts/flavours/Ownable.sol /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ function Ownable() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); OwnershipTransferred(owner, newOwner); owner = newOwner; } } // File: contracts/commons/SafeMath.sol /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } // File: contracts/flavours/Lockable.sol /** * @title Lockable * @dev Base contract which allows children to * implement main operations locking mechanism. */ contract Lockable is Ownable { event Lock(); event Unlock(); bool public locked = false; /** * @dev Modifier to make a function callable * only when the contract is not locked. */ modifier whenNotLocked() { require(!locked); _; } /** * @dev Modifier to make a function callable * only when the contract is locked. */ modifier whenLocked() { require(locked); _; } /** * @dev called by the owner to locke, triggers locked state */ function lock() onlyOwner whenNotLocked public { locked = true; Lock(); } /** * @dev called by the owner * to unlock, returns to unlocked state */ function unlock() onlyOwner whenLocked public { locked = false; Unlock(); } } // File: contracts/base/BaseFixedERC20Token.sol contract BaseFixedERC20Token is Lockable { using SafeMath for uint; /// @dev ERC20 Total supply uint public totalSupply; mapping(address => uint) balances; mapping(address => mapping (address => uint)) private allowed; /// @dev Fired if Token transfered accourding to ERC20 event Transfer(address indexed from, address indexed to, uint value); /// @dev Fired if Token withdraw is approved accourding to ERC20 event Approval(address indexed owner, address indexed spender, uint value); /** * @dev Gets the balance of the specified address. * @param owner_ The address to query the the balance of. * @return An uint representing the amount owned by the passed address. */ function balanceOf(address owner_) public view returns (uint balance) { return balances[owner_]; } /** * @dev Transfer token for a specified address * @param to_ The address to transfer to. * @param value_ The amount to be transferred. */ function transfer(address to_, uint value_) whenNotLocked public returns (bool) { require(to_ != address(0) && value_ <= balances[msg.sender]); // SafeMath.sub will throw if there is not enough balance. balances[msg.sender] = balances[msg.sender].sub(value_); balances[to_] = balances[to_].add(value_); Transfer(msg.sender, to_, value_); return true; } /** * @dev Transfer tokens from one address to another * @param from_ address The address which you want to send tokens from * @param to_ address The address which you want to transfer to * @param value_ uint the amount of tokens to be transferred */ function transferFrom(address from_, address to_, uint value_) whenNotLocked public returns (bool) { require(to_ != address(0) && value_ <= balances[from_] && value_ <= allowed[from_][msg.sender]); balances[from_] = balances[from_].sub(value_); balances[to_] = balances[to_].add(value_); allowed[from_][msg.sender] = allowed[from_][msg.sender].sub(value_); Transfer(from_, to_, value_); return true; } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * * Beware that changing an allowance with this method brings the risk that someone may use both the old * and the new allowance by unfortunate transaction ordering. * * To change the approve amount you first have to reduce the addresses * allowance to zero by calling `approve(spender_, 0)` if it is not * already 0 to mitigate the race condition described in: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * @param spender_ The address which will spend the funds. * @param value_ The amount of tokens to be spent. */ function approve(address spender_, uint value_) whenNotLocked public returns (bool) { if (value_ != 0 && allowed[msg.sender][spender_] != 0) { revert(); } allowed[msg.sender][spender_] = value_; Approval(msg.sender, spender_, value_); return true; } /** * @dev Function to check the amount of tokens that an owner allowed to a spender. * @param owner_ address The address which owns the funds. * @param spender_ address The address which will spend the funds. * @return A uint specifying the amount of tokens still available for the spender. */ function allowance(address owner_, address spender_) view public returns (uint) { return allowed[owner_][spender_]; } } // File: contracts/base/BaseICOToken.sol /** * @dev Not mintable, ERC20 compilant token, distributed by ICO/Pre-ICO. */ contract BaseICOToken is BaseFixedERC20Token { /// @dev Available supply of tokens uint public availableSupply; /// @dev ICO/Pre-ICO smart contract allowed to distribute public funds for this address public ico; /// @dev Fired if investment for `amount` of tokens performed by `to` address event ICOTokensInvested(address indexed to, uint amount); /// @dev ICO contract changed for this token event ICOChanged(address indexed icoContract); /** * @dev Not mintable, ERC20 compilant token, distributed by ICO/Pre-ICO. * @param totalSupply_ Total tokens supply. */ function BaseICOToken(uint totalSupply_) public { locked = true; totalSupply = totalSupply_; availableSupply = totalSupply_; } /** * @dev Set address of ICO smart-contract which controls token * initial token distribution. * @param ico_ ICO contract address. */ function changeICO(address ico_) onlyOwner public { ico = ico_; ICOChanged(ico); } function isValidICOInvestment(address to_, uint amount_) internal view returns(bool) { return msg.sender == ico && to_ != address(0) && amount_ <= availableSupply; } /** * @dev Assign `amount_` of tokens to investor identified by `to_` address. * @param to_ Investor address. * @param amount_ Number of tokens distributed. */ function icoInvestment(address to_, uint amount_) public returns (uint) { require(isValidICOInvestment(to_, amount_)); availableSupply -= amount_; balances[to_] = balances[to_].add(amount_); ICOTokensInvested(to_, amount_); return amount_; } } // File: contracts/base/BaseICO.sol /** * @dev Base abstract smart contract for any ICO */ contract BaseICO is Ownable { /// @dev ICO state enum State { // ICO is not active and not started Inactive, // ICO is active, tokens can be distributed among investors. // ICO parameters (end date, hard/low caps) cannot be changed. Active, // ICO is suspended, tokens cannot be distributed among investors. // ICO can be resumed to `Active state`. // ICO parameters (end date, hard/low caps) may changed. Suspended, // ICO is termnated by owner, ICO cannot be resumed. Terminated, // ICO goals are not reached, // ICO terminated and cannot be resumed. NotCompleted, // ICO completed, ICO goals reached successfully, // ICO terminated and cannot be resumed. Completed } /// @dev Token which controlled by this ICO BaseICOToken public token; /// @dev Current ICO state. State public state; /// @dev ICO start date seconds since epoch. uint public startAt; /// @dev ICO end date seconds since epoch. uint public endAt; /// @dev Minimal amount of investments in wei needed for successfull ICO uint public lowCapWei; /// @dev Maximal amount of investments in wei for this ICO. /// If reached ICO will be in `Completed` state. uint public hardCapWei; /// @dev Minimal amount of investments in wei per investor. uint public lowCapTxWei; /// @dev Maximal amount of investments in wei per investor. uint public hardCapTxWei; /// @dev Number of investments collected by this ICO uint public collectedWei; /// @dev Team wallet used to collect funds address public teamWallet; /// @dev True if whitelist enabled bool public whitelistEnabled = true; /// @dev ICO whitelist mapping (address => bool) public whitelist; // ICO state transition events event ICOStarted(uint indexed endAt, uint lowCapWei, uint hardCapWei, uint lowCapTxWei, uint hardCapTxWei); event ICOResumed(uint indexed endAt, uint lowCapWei, uint hardCapWei, uint lowCapTxWei, uint hardCapTxWei); event ICOSuspended(); event ICOTerminated(); event ICONotCompleted(); event ICOCompleted(uint collectedWei); event ICOInvestment(address indexed from, uint investedWei, uint tokens, uint8 bonusPct); event ICOWhitelisted(address indexed addr); event ICOBlacklisted(address indexed addr); modifier isSuspended() { require(state == State.Suspended); _; } modifier isActive() { require(state == State.Active); _; } /** * Add address to ICO whitelist * @param address_ Investor address */ function whitelist(address address_) external onlyOwner { whitelist[address_] = true; ICOWhitelisted(address_); } /** * Remove address from ICO whitelist * @param address_ Investor address */ function blacklist(address address_) external onlyOwner { delete whitelist[address_]; ICOBlacklisted(address_); } /** * @dev Returns true if given address in ICO whitelist */ function whitelisted(address address_) public view returns (bool) { if (whitelistEnabled) { return whitelist[address_]; } else { return true; } } /** * @dev Enable whitelisting */ function enableWhitelist() public onlyOwner { whitelistEnabled = true; } /** * @dev Disable whitelisting */ function disableWhitelist() public onlyOwner { whitelistEnabled = false; } /** * @dev Trigger start of ICO. * @param endAt_ ICO end date, seconds since epoch. */ function start(uint endAt_) onlyOwner public { require(endAt_ > block.timestamp && state == State.Inactive); endAt = endAt_; startAt = block.timestamp; state = State.Active; ICOStarted(endAt, lowCapWei, hardCapWei, lowCapTxWei, hardCapTxWei); } /** * @dev Suspend this ICO. * ICO can be activated later by calling `resume()` function. * In suspend state, ICO owner can change basic ICO paraneter using `tune()` function, * tokens cannot be distributed among investors. */ function suspend() onlyOwner isActive public { state = State.Suspended; ICOSuspended(); } /** * @dev Terminate the ICO. * ICO goals are not reached, ICO terminated and cannot be resumed. */ function terminate() onlyOwner public { require(state != State.Terminated && state != State.NotCompleted && state != State.Completed); state = State.Terminated; ICOTerminated(); } /** * @dev Change basic ICO paraneters. Can be done only during `Suspended` state. * Any provided parameter is used only if it is not zero. * @param endAt_ ICO end date seconds since epoch. Used if it is not zero. * @param lowCapWei_ ICO low capacity. Used if it is not zero. * @param hardCapWei_ ICO hard capacity. Used if it is not zero. * @param lowCapTxWei_ Min limit for ICO per transaction * @param hardCapTxWei_ Hard limit for ICO per transaction */ function tune(uint endAt_, uint lowCapWei_, uint hardCapWei_, uint lowCapTxWei_, uint hardCapTxWei_) onlyOwner isSuspended public { if (endAt_ > block.timestamp) { endAt = endAt_; } if (lowCapWei_ > 0) { lowCapWei = lowCapWei_; } if (hardCapWei_ > 0) { hardCapWei = hardCapWei_; } if (lowCapTxWei_ > 0) { lowCapTxWei = lowCapTxWei_; } if (hardCapTxWei_ > 0) { hardCapTxWei = hardCapTxWei_; } require(lowCapWei <= hardCapWei && lowCapTxWei <= hardCapTxWei); touch(); } /** * @dev Resume a previously suspended ICO. */ function resume() onlyOwner isSuspended public { state = State.Active; ICOResumed(endAt, lowCapWei, hardCapWei, lowCapTxWei, hardCapTxWei); touch(); } /** * @dev Send ether to the fund collection wallet */ function forwardFunds() internal { teamWallet.transfer(msg.value); } /** * @dev Recalculate ICO state based on current block time. * Should be called periodically by ICO owner. */ function touch() public; /** * @dev Buy tokens */ function buyTokens() public payable; } // File: contracts/MDPreICO.sol /** * @title MD tokens Pre-ICO contract. */ contract MDPreICO is BaseICO { using SafeMath for uint; /// @dev 18 decimals for token uint internal constant ONE_TOKEN = 1e18; /// @dev 1e18 WEI == 1ETH == 1000 tokens uint public constant ETH_TOKEN_EXCHANGE_RATIO = 1000; /// @dev 100% bonus for pre-ICO uint8 internal constant BONUS = 100; // 100% function MDPreICO(address icoToken_, address teamWallet_, uint lowCapWei_, uint hardCapWei_, uint lowCapTxWei_, uint hardCapTxWei_) public { require(icoToken_ != address(0) && teamWallet_ != address(0)); token = BaseICOToken(icoToken_); teamWallet = teamWallet_; state = State.Inactive; lowCapWei = lowCapWei_; hardCapWei = hardCapWei_; lowCapTxWei = lowCapTxWei_; hardCapTxWei = hardCapTxWei_; } /** * @dev Recalculate ICO state based on current block time. * Should be called periodically by ICO owner. */ function touch() public { if (state != State.Active && state != State.Suspended) { return; } if (collectedWei >= hardCapWei) { state = State.Completed; endAt = block.timestamp; ICOCompleted(collectedWei); } else if (block.timestamp >= endAt) { if (collectedWei < lowCapWei) { state = State.NotCompleted; ICONotCompleted(); } else { state = State.Completed; ICOCompleted(collectedWei); } } } function buyTokens() public payable { require(state == State.Active && block.timestamp <= endAt && msg.value >= lowCapTxWei && msg.value <= hardCapTxWei && collectedWei + msg.value <= hardCapWei && whitelisted(msg.sender)); uint amountWei = msg.value; uint iwei = amountWei.mul(100 + BONUS).div(100); uint itokens = iwei * ETH_TOKEN_EXCHANGE_RATIO; token.icoInvestment(msg.sender, itokens); // Transfer tokens to investor collectedWei = collectedWei.add(amountWei); ICOInvestment(msg.sender, amountWei, itokens, BONUS); forwardFunds(); touch(); } /** * Accept direct payments */ function() external payable { buyTokens(); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[],"name":"resume","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"terminate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ETH_TOKEN_EXCHANGE_RATIO","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hardCapTxWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lowCapTxWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endAt","outputs":[{"name":"","type":"uint256"}],"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":"endAt_","type":"uint256"}],"name":"start","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"address_","type":"address"}],"name":"whitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"touch","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"state","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startAt","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"disableWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"address_","type":"address"}],"name":"whitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"endAt_","type":"uint256"},{"name":"lowCapWei_","type":"uint256"},{"name":"hardCapWei_","type":"uint256"},{"name":"lowCapTxWei_","type":"uint256"},{"name":"hardCapTxWei_","type":"uint256"}],"name":"tune","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"suspend","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"hardCapWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"collectedWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lowCapWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"address_","type":"address"}],"name":"blacklist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"icoToken_","type":"address"},{"name":"teamWallet_","type":"address"},{"name":"lowCapWei_","type":"uint256"},{"name":"hardCapWei_","type":"uint256"},{"name":"lowCapTxWei_","type":"uint256"},{"name":"hardCapTxWei_","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"endAt","type":"uint256"},{"indexed":false,"name":"lowCapWei","type":"uint256"},{"indexed":false,"name":"hardCapWei","type":"uint256"},{"indexed":false,"name":"lowCapTxWei","type":"uint256"},{"indexed":false,"name":"hardCapTxWei","type":"uint256"}],"name":"ICOStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"endAt","type":"uint256"},{"indexed":false,"name":"lowCapWei","type":"uint256"},{"indexed":false,"name":"hardCapWei","type":"uint256"},{"indexed":false,"name":"lowCapTxWei","type":"uint256"},{"indexed":false,"name":"hardCapTxWei","type":"uint256"}],"name":"ICOResumed","type":"event"},{"anonymous":false,"inputs":[],"name":"ICOSuspended","type":"event"},{"anonymous":false,"inputs":[],"name":"ICOTerminated","type":"event"},{"anonymous":false,"inputs":[],"name":"ICONotCompleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"collectedWei","type":"uint256"}],"name":"ICOCompleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"investedWei","type":"uint256"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"bonusPct","type":"uint8"}],"name":"ICOInvestment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"}],"name":"ICOWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"}],"name":"ICOBlacklisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60606040526009805460a060020a60ff02191674010000000000000000000000000000000000000000179055341561003657600080fd5b60405160c080610fae83398101604052808051919060200180519190602001805191906020018051919060200180519190602001805160008054600160a060020a03191633600160a060020a0390811691909117909155909250871615801591506100a95750600160a060020a03851615155b15156100b457600080fd5b6001805460098054600160a060020a03988916600160a060020a03199182161790915597909616969095169590951760a060020a60ff021916909355600491909155600555600655600755610ea08061010e6000396000f3006060604052600436106101535763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663046f7da2811461015d5780630c08bf8814610170578063281ae55814610183578063387ed59b146101a857806338d2b172146101bb57806351fb012d146101ce57806359927044146101f55780637cc3ae8c146102245780638da5cb5b1461023757806395805dad1461024a5780639b19251a14610260578063a55526db1461027f578063c19d93fb14610292578063c7446565146102c9578063cdfb2b4e146102dc578063d0febe4c14610153578063d6b0f484146102ef578063d936547e14610302578063e18b170e14610321578063e6400bbe14610343578063e923e70714610356578063f2fde38b14610369578063f637b7da14610388578063f8b2e2591461039b578063f9f92be4146103ae578063fc0c546a146103cd575b61015b6103e0565b005b341561016857600080fd5b61015b610597565b341561017b57600080fd5b61015b610663565b341561018e57600080fd5b610196610750565b60405190815260200160405180910390f35b34156101b357600080fd5b610196610756565b34156101c657600080fd5b61019661075c565b34156101d957600080fd5b6101e1610762565b604051901515815260200160405180910390f35b341561020057600080fd5b610208610772565b604051600160a060020a03909116815260200160405180910390f35b341561022f57600080fd5b610196610781565b341561024257600080fd5b610208610787565b341561025557600080fd5b61015b600435610796565b341561026b57600080fd5b61015b600160a060020a0360043516610871565b341561028a57600080fd5b61015b6108df565b341561029d57600080fd5b6102a5610a8f565b604051808260058111156102b557fe5b60ff16815260200191505060405180910390f35b34156102d457600080fd5b610196610a9f565b34156102e757600080fd5b61015b610aa5565b34156102fa57600080fd5b61015b610ae6565b341561030d57600080fd5b6101e1600160a060020a0360043516610b21565b341561032c57600080fd5b61015b600435602435604435606435608435610b61565b341561034e57600080fd5b61015b610c1c565b341561036157600080fd5b610196610cbd565b341561037457600080fd5b61015b600160a060020a0360043516610cc3565b341561039357600080fd5b610196610d5e565b34156103a657600080fd5b610196610d64565b34156103b957600080fd5b61015b600160a060020a0360043516610d6a565b34156103d857600080fd5b610208610dd5565b600080806001805460a060020a900460ff1660058111156103fd57fe5b14801561040c57506003544211155b801561041a57506006543410155b801561042857506007543411155b801561043a5750600554346008540111155b801561044a575061044a33610b21565b151561045557600080fd5b34925061047a606461046e8560c863ffffffff610de416565b9063ffffffff610e1a16565b6001549092506103e883029150600160a060020a0316637277236b33836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104fc57600080fd5b6102c65a03f1151561050d57600080fd5b5050506040518051505060085461052a908463ffffffff610e3116565b600855600160a060020a0333167f6e36893a4e5bef2f5ed1c0125b68495c13ad948e138ef22973b4528514ef566884836064604051928352602083019190915260ff166040808301919091526060909101905180910390a261058a610e40565b6105926108df565b505050565b60005433600160a060020a039081169116146105b257600080fd5b600260015460a060020a900460ff1660058111156105cc57fe5b146105d657600080fd5b60018054819074ff0000000000000000000000000000000000000000191660a060020a8202179055506003547f6bf99bbfcd93ccaeb69bf505b279813e6ea9427a02f344aebeca8e4b3e10cc466004546005546006546007546040518085815260200184815260200183815260200182815260200194505050505060405180910390a26106616108df565b565b60005433600160a060020a0390811691161461067e57600080fd5b600360015460a060020a900460ff16600581111561069857fe5b141580156106be5750600460015460a060020a900460ff1660058111156106bb57fe5b14155b80156106e25750600560015460a060020a900460ff1660058111156106df57fe5b14155b15156106ed57600080fd5b6001805474ff00000000000000000000000000000000000000001916740300000000000000000000000000000000000000001790557f1e2466c660fb4c22a780bb95549acaa2a7b03cca14c1dc1c82a7e36c8d5b357460405160405180910390a1565b6103e881565b60075481565b60065481565b60095460a060020a900460ff1681565b600954600160a060020a031681565b60035481565b600054600160a060020a031681565b60005433600160a060020a039081169116146107b157600080fd5b42811180156107d75750600060015460a060020a900460ff1660058111156107d557fe5b145b15156107e257600080fd5b60038190554260025560018054819074ff0000000000000000000000000000000000000000191660a060020a8202179055506003547f87e7dc5f7915642959de5fa47a1cb6307b5107406d5506813504ed14a7a30a516004546005546006546007546040518085815260200184815260200183815260200182815260200194505050505060405180910390a250565b60005433600160a060020a0390811691161461088c57600080fd5b600160a060020a0381166000818152600a602052604090819020805460ff191660011790557fd49ab244ff4dcab14bc41675d0476050d6f212b0856bb84100e1d474d6ec996b905160405180910390a250565b6001805460a060020a900460ff1660058111156108f857fe5b1415801561091e5750600260015460a060020a900460ff16600581111561091b57fe5b14155b1561092857610661565b600554600854106109a7576001805474ff0000000000000000000000000000000000000000191674050000000000000000000000000000000000000000179055426003556008547f81a5e88b00c2660f790b27221f79127ebaae2e3ffd4422e63456682041f567189060405190815260200160405180910390a1610661565b6003544210610661576004546008541015610a22576001805474ff00000000000000000000000000000000000000001916740400000000000000000000000000000000000000001790557f98a1803cd1adfb4ad3bb0c3428807a3115d46cd6bed95016864944bd67c121f960405160405180910390a1610661565b6001805474ff00000000000000000000000000000000000000001916740500000000000000000000000000000000000000001790556008547f81a5e88b00c2660f790b27221f79127ebaae2e3ffd4422e63456682041f567189060405190815260200160405180910390a1565b60015460a060020a900460ff1681565b60025481565b60005433600160a060020a03908116911614610ac057600080fd5b6009805474ff0000000000000000000000000000000000000000191660a060020a179055565b60005433600160a060020a03908116911614610b0157600080fd5b6009805474ff000000000000000000000000000000000000000019169055565b60095460009060a060020a900460ff1615610b585750600160a060020a0381166000908152600a602052604090205460ff16610b5c565b5060015b919050565b60005433600160a060020a03908116911614610b7c57600080fd5b600260015460a060020a900460ff166005811115610b9657fe5b14610ba057600080fd5b42851115610bae5760038590555b6000841115610bbd5760048490555b6000831115610bcc5760058390555b6000821115610bdb5760068290555b6000811115610bea5760078190555b60055460045411158015610c02575060075460065411155b1515610c0d57600080fd5b610c156108df565b5050505050565b60005433600160a060020a03908116911614610c3757600080fd5b6001805460a060020a900460ff166005811115610c5057fe5b14610c5a57600080fd5b6001805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f05bf9ecee4a9d8d35d42deb54e912956a511544fa82392cb8c65e5010eff55d460405160405180910390a1565b60055481565b60005433600160a060020a03908116911614610cde57600080fd5b600160a060020a0381161515610cf357600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60085481565b60045481565b60005433600160a060020a03908116911614610d8557600080fd5b600160a060020a0381166000818152600a602052604090819020805460ff191690557ff0e86f93f7127c0fbbe66c81d3f9ffc791a274118b803ecaa8843f4f18c5978f905160405180910390a250565b600154600160a060020a031681565b600080831515610df75760009150610e13565b50828202828482811515610e0757fe5b0414610e0f57fe5b8091505b5092915050565b6000808284811515610e2857fe5b04949350505050565b600082820183811015610e0f57fe5b600954600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561066157600080fd00a165627a7a723058206b82e78c7cab087b82d4e08fff614582eb0e3c65418f2c07105da7afab8041bd00290000000000000000000000008198e349afd0a09efb06b460452ec1beab7a20aa00000000000000000000000069bd2a1f4cd8435a136e2612bc54467642f59ade00000000000000000000000000000000000000000000032d26d12e980b600000000000000000000000000000000000000000000000000fe1c215e8f838e0000000000000000000000000000000000000000000000000000000b1a2bc2ec50000000000000000000000000000000000000000000000000fe1c215e8f838e00000
Deployed Bytecode
0x6060604052600436106101535763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663046f7da2811461015d5780630c08bf8814610170578063281ae55814610183578063387ed59b146101a857806338d2b172146101bb57806351fb012d146101ce57806359927044146101f55780637cc3ae8c146102245780638da5cb5b1461023757806395805dad1461024a5780639b19251a14610260578063a55526db1461027f578063c19d93fb14610292578063c7446565146102c9578063cdfb2b4e146102dc578063d0febe4c14610153578063d6b0f484146102ef578063d936547e14610302578063e18b170e14610321578063e6400bbe14610343578063e923e70714610356578063f2fde38b14610369578063f637b7da14610388578063f8b2e2591461039b578063f9f92be4146103ae578063fc0c546a146103cd575b61015b6103e0565b005b341561016857600080fd5b61015b610597565b341561017b57600080fd5b61015b610663565b341561018e57600080fd5b610196610750565b60405190815260200160405180910390f35b34156101b357600080fd5b610196610756565b34156101c657600080fd5b61019661075c565b34156101d957600080fd5b6101e1610762565b604051901515815260200160405180910390f35b341561020057600080fd5b610208610772565b604051600160a060020a03909116815260200160405180910390f35b341561022f57600080fd5b610196610781565b341561024257600080fd5b610208610787565b341561025557600080fd5b61015b600435610796565b341561026b57600080fd5b61015b600160a060020a0360043516610871565b341561028a57600080fd5b61015b6108df565b341561029d57600080fd5b6102a5610a8f565b604051808260058111156102b557fe5b60ff16815260200191505060405180910390f35b34156102d457600080fd5b610196610a9f565b34156102e757600080fd5b61015b610aa5565b34156102fa57600080fd5b61015b610ae6565b341561030d57600080fd5b6101e1600160a060020a0360043516610b21565b341561032c57600080fd5b61015b600435602435604435606435608435610b61565b341561034e57600080fd5b61015b610c1c565b341561036157600080fd5b610196610cbd565b341561037457600080fd5b61015b600160a060020a0360043516610cc3565b341561039357600080fd5b610196610d5e565b34156103a657600080fd5b610196610d64565b34156103b957600080fd5b61015b600160a060020a0360043516610d6a565b34156103d857600080fd5b610208610dd5565b600080806001805460a060020a900460ff1660058111156103fd57fe5b14801561040c57506003544211155b801561041a57506006543410155b801561042857506007543411155b801561043a5750600554346008540111155b801561044a575061044a33610b21565b151561045557600080fd5b34925061047a606461046e8560c863ffffffff610de416565b9063ffffffff610e1a16565b6001549092506103e883029150600160a060020a0316637277236b33836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156104fc57600080fd5b6102c65a03f1151561050d57600080fd5b5050506040518051505060085461052a908463ffffffff610e3116565b600855600160a060020a0333167f6e36893a4e5bef2f5ed1c0125b68495c13ad948e138ef22973b4528514ef566884836064604051928352602083019190915260ff166040808301919091526060909101905180910390a261058a610e40565b6105926108df565b505050565b60005433600160a060020a039081169116146105b257600080fd5b600260015460a060020a900460ff1660058111156105cc57fe5b146105d657600080fd5b60018054819074ff0000000000000000000000000000000000000000191660a060020a8202179055506003547f6bf99bbfcd93ccaeb69bf505b279813e6ea9427a02f344aebeca8e4b3e10cc466004546005546006546007546040518085815260200184815260200183815260200182815260200194505050505060405180910390a26106616108df565b565b60005433600160a060020a0390811691161461067e57600080fd5b600360015460a060020a900460ff16600581111561069857fe5b141580156106be5750600460015460a060020a900460ff1660058111156106bb57fe5b14155b80156106e25750600560015460a060020a900460ff1660058111156106df57fe5b14155b15156106ed57600080fd5b6001805474ff00000000000000000000000000000000000000001916740300000000000000000000000000000000000000001790557f1e2466c660fb4c22a780bb95549acaa2a7b03cca14c1dc1c82a7e36c8d5b357460405160405180910390a1565b6103e881565b60075481565b60065481565b60095460a060020a900460ff1681565b600954600160a060020a031681565b60035481565b600054600160a060020a031681565b60005433600160a060020a039081169116146107b157600080fd5b42811180156107d75750600060015460a060020a900460ff1660058111156107d557fe5b145b15156107e257600080fd5b60038190554260025560018054819074ff0000000000000000000000000000000000000000191660a060020a8202179055506003547f87e7dc5f7915642959de5fa47a1cb6307b5107406d5506813504ed14a7a30a516004546005546006546007546040518085815260200184815260200183815260200182815260200194505050505060405180910390a250565b60005433600160a060020a0390811691161461088c57600080fd5b600160a060020a0381166000818152600a602052604090819020805460ff191660011790557fd49ab244ff4dcab14bc41675d0476050d6f212b0856bb84100e1d474d6ec996b905160405180910390a250565b6001805460a060020a900460ff1660058111156108f857fe5b1415801561091e5750600260015460a060020a900460ff16600581111561091b57fe5b14155b1561092857610661565b600554600854106109a7576001805474ff0000000000000000000000000000000000000000191674050000000000000000000000000000000000000000179055426003556008547f81a5e88b00c2660f790b27221f79127ebaae2e3ffd4422e63456682041f567189060405190815260200160405180910390a1610661565b6003544210610661576004546008541015610a22576001805474ff00000000000000000000000000000000000000001916740400000000000000000000000000000000000000001790557f98a1803cd1adfb4ad3bb0c3428807a3115d46cd6bed95016864944bd67c121f960405160405180910390a1610661565b6001805474ff00000000000000000000000000000000000000001916740500000000000000000000000000000000000000001790556008547f81a5e88b00c2660f790b27221f79127ebaae2e3ffd4422e63456682041f567189060405190815260200160405180910390a1565b60015460a060020a900460ff1681565b60025481565b60005433600160a060020a03908116911614610ac057600080fd5b6009805474ff0000000000000000000000000000000000000000191660a060020a179055565b60005433600160a060020a03908116911614610b0157600080fd5b6009805474ff000000000000000000000000000000000000000019169055565b60095460009060a060020a900460ff1615610b585750600160a060020a0381166000908152600a602052604090205460ff16610b5c565b5060015b919050565b60005433600160a060020a03908116911614610b7c57600080fd5b600260015460a060020a900460ff166005811115610b9657fe5b14610ba057600080fd5b42851115610bae5760038590555b6000841115610bbd5760048490555b6000831115610bcc5760058390555b6000821115610bdb5760068290555b6000811115610bea5760078190555b60055460045411158015610c02575060075460065411155b1515610c0d57600080fd5b610c156108df565b5050505050565b60005433600160a060020a03908116911614610c3757600080fd5b6001805460a060020a900460ff166005811115610c5057fe5b14610c5a57600080fd5b6001805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f05bf9ecee4a9d8d35d42deb54e912956a511544fa82392cb8c65e5010eff55d460405160405180910390a1565b60055481565b60005433600160a060020a03908116911614610cde57600080fd5b600160a060020a0381161515610cf357600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60085481565b60045481565b60005433600160a060020a03908116911614610d8557600080fd5b600160a060020a0381166000818152600a602052604090819020805460ff191690557ff0e86f93f7127c0fbbe66c81d3f9ffc791a274118b803ecaa8843f4f18c5978f905160405180910390a250565b600154600160a060020a031681565b600080831515610df75760009150610e13565b50828202828482811515610e0757fe5b0414610e0f57fe5b8091505b5092915050565b6000808284811515610e2857fe5b04949350505050565b600082820183811015610e0f57fe5b600954600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561066157600080fd00a165627a7a723058206b82e78c7cab087b82d4e08fff614582eb0e3c65418f2c07105da7afab8041bd0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008198e349afd0a09efb06b460452ec1beab7a20aa00000000000000000000000069bd2a1f4cd8435a136e2612bc54467642f59ade00000000000000000000000000000000000000000000032d26d12e980b600000000000000000000000000000000000000000000000000fe1c215e8f838e0000000000000000000000000000000000000000000000000000000b1a2bc2ec50000000000000000000000000000000000000000000000000fe1c215e8f838e00000
-----Decoded View---------------
Arg [0] : icoToken_ (address): 0x8198e349AFD0A09EfB06B460452eC1BeAb7a20aa
Arg [1] : teamWallet_ (address): 0x69BD2a1F4cd8435a136e2612bC54467642f59ADe
Arg [2] : lowCapWei_ (uint256): 15000000000000000000000
Arg [3] : hardCapWei_ (uint256): 75000000000000000000000
Arg [4] : lowCapTxWei_ (uint256): 50000000000000000
Arg [5] : hardCapTxWei_ (uint256): 75000000000000000000000
-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000008198e349afd0a09efb06b460452ec1beab7a20aa
Arg [1] : 00000000000000000000000069bd2a1f4cd8435a136e2612bc54467642f59ade
Arg [2] : 00000000000000000000000000000000000000000000032d26d12e980b600000
Arg [3] : 000000000000000000000000000000000000000000000fe1c215e8f838e00000
Arg [4] : 00000000000000000000000000000000000000000000000000b1a2bc2ec50000
Arg [5] : 000000000000000000000000000000000000000000000fe1c215e8f838e00000
Swarm Source
bzzr://6b82e78c7cab087b82d4e08fff614582eb0e3c65418f2c07105da7afab8041bd
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.