More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 4,956 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Team Token... | 7278313 | 2235 days ago | IN | 0 ETH | 0.00082846 | ||||
Claim Team Token... | 6186846 | 2426 days ago | IN | 0 ETH | 0.00030504 | ||||
Enable Token Tra... | 5073267 | 2617 days ago | IN | 0 ETH | 0.0006708 | ||||
Finalize | 5072996 | 2617 days ago | IN | 0 ETH | 0.00153156 | ||||
Enable Token Tra... | 5072899 | 2617 days ago | IN | 0 ETH | 0.00044032 | ||||
Transfer | 4994127 | 2630 days ago | IN | 20 ETH | 0.00063 | ||||
Transfer | 4994071 | 2630 days ago | IN | 4 ETH | 0.00114815 | ||||
Transfer | 4993977 | 2630 days ago | IN | 7 ETH | 0.00052585 | ||||
Transfer | 4970604 | 2634 days ago | IN | 2.14130923 ETH | 0.0055028 | ||||
Set End Time | 4970464 | 2634 days ago | IN | 0 ETH | 0.0014566 | ||||
Send Tokens To A... | 4970277 | 2634 days ago | IN | 0 ETH | 0.00439685 | ||||
Transfer | 4965606 | 2635 days ago | IN | 0.15463918 ETH | 0.000441 | ||||
Transfer | 4965606 | 2635 days ago | IN | 0.05154639 ETH | 0.000651 | ||||
Transfer | 4964689 | 2635 days ago | IN | 2.5 ETH | 0 | ||||
Transfer | 4962590 | 2636 days ago | IN | 2 ETH | 0.00057779 | ||||
Transfer | 4962188 | 2636 days ago | IN | 0.14 ETH | 0.00068785 | ||||
Transfer | 4960665 | 2636 days ago | IN | 7 ETH | 0.003325 | ||||
Transfer | 4960665 | 2636 days ago | IN | 8 ETH | 0.00003026 | ||||
Transfer | 4959234 | 2636 days ago | IN | 3 ETH | 0 | ||||
Transfer | 4958718 | 2636 days ago | IN | 0.2 ETH | 0.00057779 | ||||
Transfer | 4958641 | 2636 days ago | IN | 1 ETH | 0.00082542 | ||||
Transfer | 4958637 | 2636 days ago | IN | 11 ETH | 0.00082542 | ||||
Transfer | 4958410 | 2636 days ago | IN | 0.4 ETH | 0.000441 | ||||
Transfer | 4958407 | 2636 days ago | IN | 0.4 ETH | 0.00082542 | ||||
Transfer | 4958248 | 2636 days ago | IN | 1.8 ETH | 0.00110056 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 4957575 | 2636 days ago | 0.00207344 ETH | ||||
Transfer | 4957574 | 2636 days ago | 0.00224469 ETH | ||||
Transfer | 4957561 | 2636 days ago | 0.0010267 ETH | ||||
Transfer | 4957552 | 2636 days ago | 0.01 ETH | ||||
Transfer | 4957551 | 2636 days ago | 0.05 ETH | ||||
Transfer | 4957550 | 2636 days ago | 0.01 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.45 ETH | ||||
Transfer | 4957547 | 2636 days ago | 1 ETH | ||||
Transfer | 4957547 | 2636 days ago | 30 ETH | ||||
Transfer | 4957547 | 2636 days ago | 3.25 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.7 ETH | ||||
Transfer | 4957547 | 2636 days ago | 6.13 ETH | ||||
Transfer | 4957547 | 2636 days ago | 1 ETH | ||||
Transfer | 4957547 | 2636 days ago | 4 ETH | ||||
Transfer | 4957547 | 2636 days ago | 35.1 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.5 ETH | ||||
Transfer | 4957547 | 2636 days ago | 1.5 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.55 ETH | ||||
Transfer | 4957547 | 2636 days ago | 2.07926385 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.5 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.9 ETH | ||||
Transfer | 4957547 | 2636 days ago | 1 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.7 ETH | ||||
Transfer | 4957547 | 2636 days ago | 1 ETH | ||||
Transfer | 4957547 | 2636 days ago | 0.3 ETH |
Loading...
Loading
Contract Name:
RestartEnergyCrowdsale
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-01-14 */ pragma solidity ^0.4.18; // ----------------- //begin 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; } } //end Ownable.sol // ----------------- //begin 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) { // assert(b > 0); // Solidity automatically throws 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; } 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; } } //end SafeMath.sol // ----------------- //begin ERC20Basic.sol /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { uint256 public totalSupply; function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } //end ERC20Basic.sol // ----------------- //begin Pausable.sol /** * @title Pausable * @dev Base contract which allows children to implement an emergency stop mechanism. */ contract Pausable is Ownable { event Pause(); event Unpause(); bool public paused = false; /** * @dev Modifier to make a function callable only when the contract is not paused. */ modifier whenNotPaused() { require(!paused); _; } /** * @dev Modifier to make a function callable only when the contract is paused. */ modifier whenPaused() { require(paused); _; } /** * @dev called by the owner to pause, triggers stopped state */ function pause() onlyOwner whenNotPaused public { paused = true; Pause(); } /** * @dev called by the owner to unpause, returns to normal state */ function unpause() onlyOwner whenPaused public { paused = false; Unpause(); } } //end Pausable.sol // ----------------- //begin BasicToken.sol /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) balances; /** * @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, uint256 _value) public returns (bool) { require(_to != address(0)); require(_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 Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return An uint256 representing the amount owned by the passed address. */ function balanceOf(address _owner) public view returns (uint256 balance) { return balances[_owner]; } } //end BasicToken.sol // ----------------- //begin ERC20.sol /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } //end ERC20.sol // ----------------- //begin StandardToken.sol /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * @dev https://github.com/ethereum/EIPs/issues/20 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) internal allowed; /** * @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 uint256 the amount of tokens to be transferred */ function transferFrom(address _from, address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_value <= balances[_from]); require(_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. One possible solution to mitigate this * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: * 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, uint256 _value) public returns (bool) { 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 uint256 specifying the amount of tokens still available for the spender. */ function allowance(address _owner, address _spender) public view returns (uint256) { return allowed[_owner][_spender]; } /** * @dev Increase the amount of tokens that an owner allowed to a spender. * * approve should be called when allowed[_spender] == 0. To increment * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _addedValue The amount of tokens to increase the allowance by. */ function increaseApproval(address _spender, uint _addedValue) public returns (bool) { allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue); Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } /** * @dev Decrease the amount of tokens that an owner allowed to a spender. * * approve should be called when allowed[_spender] == 0. To decrement * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _subtractedValue The amount of tokens to decrease the allowance by. */ function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) { uint oldValue = allowed[msg.sender][_spender]; if (_subtractedValue > oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue); } Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } //end StandardToken.sol // ----------------- //begin MintableToken.sol /** * @title Mintable token * @dev Simple ERC20 Token example, with mintable token creation * @dev Issue: * https://github.com/OpenZeppelin/zeppelin-solidity/issues/120 * Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol */ contract MintableToken is StandardToken, Ownable { event Mint(address indexed to, uint256 amount); event MintFinished(); bool public mintingFinished = false; modifier canMint() { require(!mintingFinished); _; } /** * @dev Function to mint tokens * @param _to The address that will receive the minted tokens. * @param _amount The amount of tokens to mint. * @return A boolean that indicates if the operation was successful. */ function mint(address _to, uint256 _amount) onlyOwner canMint public returns (bool) { totalSupply = totalSupply.add(_amount); balances[_to] = balances[_to].add(_amount); Mint(_to, _amount); Transfer(address(0), _to, _amount); return true; } /** * @dev Function to stop minting new tokens. * @return True if the operation was successful. */ function finishMinting() onlyOwner canMint public returns (bool) { mintingFinished = true; MintFinished(); return true; } } //end MintableToken.sol // ----------------- //begin PausableToken.sol /** * @title Pausable token * * @dev StandardToken modified with pausable transfers. **/ contract PausableToken is StandardToken, Pausable { function transfer(address _to, uint256 _value) public whenNotPaused returns (bool) { return super.transfer(_to, _value); } function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) { return super.transferFrom(_from, _to, _value); } function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) { return super.approve(_spender, _value); } function increaseApproval(address _spender, uint _addedValue) public whenNotPaused returns (bool success) { return super.increaseApproval(_spender, _addedValue); } function decreaseApproval(address _spender, uint _subtractedValue) public whenNotPaused returns (bool success) { return super.decreaseApproval(_spender, _subtractedValue); } } //end PausableToken.sol // ----------------- //begin RestartEnergyToken.sol contract RestartEnergyToken is MintableToken, PausableToken { string public name = "RED MWAT"; string public symbol = "MWAT"; uint256 public decimals = 18; } //end RestartEnergyToken.sol // ----------------- //begin Crowdsale.sol /** * @title Crowdsale * @dev Crowdsale is a base contract for managing a token crowdsale. * Crowdsales have a start and end timestamps, where investors can make * token purchases and the crowdsale will assign them tokens based * on a token per ETH rate. Funds collected are forwarded to a wallet * as they arrive. */ contract Crowdsale { using SafeMath for uint256; // The token being sold MintableToken public token; // start and end timestamps where investments are allowed (both inclusive) uint256 public startTime; uint256 public endTime; // address where funds are collected address public wallet; // how many token units a buyer gets per wei uint256 public rate; // amount of raised money in wei uint256 public weiRaised; /** * event for token purchase logging * @param purchaser who paid for the tokens * @param beneficiary who got the tokens * @param value weis paid for purchase * @param amount amount of tokens purchased */ event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount); function Crowdsale(uint256 _startTime, uint256 _endTime, uint256 _rate, address _wallet) public { require(_startTime >= now); require(_endTime >= _startTime); require(_rate > 0); require(_wallet != address(0)); token = createTokenContract(); startTime = _startTime; endTime = _endTime; rate = _rate; wallet = _wallet; } // creates the token to be sold. // override this method to have crowdsale of a specific mintable token. function createTokenContract() internal returns (MintableToken) { return new MintableToken(); } // fallback function can be used to buy tokens function () external payable { buyTokens(msg.sender); } // low level token purchase function function buyTokens(address beneficiary) public payable { require(beneficiary != address(0)); require(validPurchase()); uint256 weiAmount = msg.value; // calculate token amount to be created uint256 tokens = weiAmount.mul(rate); // update state weiRaised = weiRaised.add(weiAmount); token.mint(beneficiary, tokens); TokenPurchase(msg.sender, beneficiary, weiAmount, tokens); forwardFunds(); } // send ether to the fund collection wallet // override to create custom fund forwarding mechanisms function forwardFunds() internal { wallet.transfer(msg.value); } // @return true if the transaction can buy tokens function validPurchase() internal view returns (bool) { bool withinPeriod = now >= startTime && now <= endTime; bool nonZeroPurchase = msg.value != 0; return withinPeriod && nonZeroPurchase; } // @return true if crowdsale event has ended function hasEnded() public view returns (bool) { return now > endTime; } } //end Crowdsale.sol // ----------------- //begin TimedCrowdsale.sol contract TimedCrowdsale is Crowdsale, Ownable { uint256 public presaleStartTime; uint256 public presaleEndTime; event EndTimeChanged(uint newEndTime); event StartTimeChanged(uint newStartTime); event PresaleStartTimeChanged(uint newPresaleStartTime); event PresaleEndTimeChanged(uint newPresaleEndTime); function setEndTime(uint time) public onlyOwner { require(now < time); require(time > startTime); endTime = time; EndTimeChanged(endTime); } function setStartTime(uint time) public onlyOwner { require(now < time); require(time > presaleEndTime); startTime = time; StartTimeChanged(startTime); } function setPresaleStartTime(uint time) public onlyOwner { require(now < time); require(time < presaleEndTime); presaleStartTime = time; PresaleStartTimeChanged(presaleStartTime); } function setPresaleEndTime(uint time) public onlyOwner { require(now < time); require(time > presaleStartTime); presaleEndTime = time; PresaleEndTimeChanged(presaleEndTime); } } //end TimedCrowdsale.sol // ----------------- //begin FinalizableCrowdsale.sol /** * @title FinalizableCrowdsale * @dev Extension of Crowdsale where an owner can do extra work * after finishing. */ contract FinalizableCrowdsale is Crowdsale, Ownable { using SafeMath for uint256; bool public isFinalized = false; event Finalized(); /** * @dev Must be called after crowdsale ends, to do some extra finalization * work. Calls the contract's finalization function. */ function finalize() onlyOwner public { require(!isFinalized); require(hasEnded()); finalization(); Finalized(); isFinalized = true; } /** * @dev Can be overridden to add finalization logic. The overriding function * should call super.finalization() to ensure the chain of finalization is * executed entirely. */ function finalization() internal { } } //end FinalizableCrowdsale.sol // ----------------- //begin TokenCappedCrowdsale.sol contract TokenCappedCrowdsale is FinalizableCrowdsale { using SafeMath for uint256; uint256 public hardCap; uint256 public totalTokens; function TokenCappedCrowdsale() internal { hardCap = 400000000 * 1 ether; totalTokens = 500000000 * 1 ether; } function notExceedingSaleLimit(uint256 amount) internal constant returns (bool) { return hardCap >= amount.add(token.totalSupply()); } /** * Finalization logic. We take the expected sale cap * ether and find the difference from the actual minted tokens. * The remaining balance and the reserved amount for the team are minted * to the team wallet. */ function finalization() internal { super.finalization(); } } //end TokenCappedCrowdsale.sol // ----------------- //begin RestartEnergyCrowdsale.sol contract RestartEnergyCrowdsale is TimedCrowdsale, TokenCappedCrowdsale, Pausable { uint256 public presaleLimit = 10 * 1 ether; // how many token units a buyer gets per ether with basic presale discount uint16 public presaleRate = 120; uint256 public soldTokens = 0; uint16 public etherRate = 130; // address where tokens for team, advisors and bounty ar minted address public tokensWallet; // How much ETH each address has invested to this crowdsale mapping(address => uint256) public purchasedAmountOf; // How many tokens this crowdsale has credited for each investor address mapping(address => uint256) public tokenAmountOf; function RestartEnergyCrowdsale(uint256 _presaleStartTime, uint256 _presaleEndTime, uint256 _startTime, uint256 _endTime, address _wallet, address _tokensWallet) public TokenCappedCrowdsale() Crowdsale(_startTime, _endTime, 100, _wallet) { presaleStartTime = _presaleStartTime; presaleEndTime = _presaleEndTime; tokensWallet = _tokensWallet; require(now <= presaleStartTime); require(presaleEndTime > presaleStartTime); require(presaleEndTime < startTime); } /** * Creates the token automatically (inherited from zeppelin Crowdsale) */ function createTokenContract() internal returns (MintableToken) { return RestartEnergyToken(0x0); } /** * create the token manually to consume less gas per transaction when deploying */ function buildTokenContract() public onlyOwner { require(token == address(0x0)); RestartEnergyToken _token = new RestartEnergyToken(); _token.pause(); token = _token; } function buy() public whenNotPaused payable { buyTokens(msg.sender); } function buyTokens(address beneficiary) public whenNotPaused payable { require(!isFinalized); require(beneficiary != 0x0); require(validPresalePurchase() || validPurchase()); uint256 weiAmount = msg.value; // calculate token amount to be created uint256 tokens = weiAmount.mul(getRate()); require(notExceedingSaleLimit(tokens)); // update state weiRaised = weiRaised.add(weiAmount); soldTokens = soldTokens.add(tokens); // mint the tokens token.mint(beneficiary, tokens); // update purchaser purchasedAmountOf[msg.sender] = purchasedAmountOf[msg.sender].add(msg.value); tokenAmountOf[msg.sender] = tokenAmountOf[msg.sender].add(tokens); //event TokenPurchase(msg.sender, beneficiary, weiAmount, tokens); //forward funds to our wallet forwardFunds(); } /** * Send tokens by the owner directly to an address. */ function sendTokensToAddress(uint256 amount, address to) public onlyOwner { require(!isFinalized); require(notExceedingSaleLimit(amount)); tokenAmountOf[to] = tokenAmountOf[to].add(amount); soldTokens = soldTokens.add(amount); token.mint(to, amount); TokenPurchase(msg.sender, to, 0, amount); } function enableTokenTransfers() public onlyOwner { require(isFinalized); require(now > endTime + 15 days); require(RestartEnergyToken(token).paused()); RestartEnergyToken(token).unpause(); } // the team wallet is the 'wallet' field bool public firstPartOfTeamTokensClaimed = false; bool public secondPartOfTeamTokensClaimed = false; function claimTeamTokens() public onlyOwner { require(isFinalized); require(!secondPartOfTeamTokensClaimed); require(now > endTime + 182 days); uint256 tokensToMint = totalTokens.mul(3).div(100); if (!firstPartOfTeamTokensClaimed) { token.mint(tokensWallet, tokensToMint); firstPartOfTeamTokensClaimed = true; } else { require(now > endTime + 365 days); token.mint(tokensWallet, tokensToMint); secondPartOfTeamTokensClaimed = true; token.finishMinting(); } } /** * the rate (how much tokens are given for 1 ether) * is calculated according to presale/sale period and the amount of ether */ function getRate() internal view returns (uint256) { uint256 calcRate = rate; //check if this sale is in presale period if (validPresalePurchase()) { calcRate = presaleRate; } else { //if not validPresalePurchase() and not validPurchase() this function is not called // so no need to check validPurchase() again here uint256 daysPassed = (now - startTime) / 1 days; if (daysPassed < 15) { calcRate = 100 + (15 - daysPassed); } } calcRate = calcRate.mul(etherRate); return calcRate; } function setEtherRate(uint16 _etherRate) public onlyOwner { etherRate = _etherRate; // the presaleLimit must be $10000 in eth at the defined 'etherRate' presaleLimit = uint256(1 ether).mul(10000).div(etherRate).div(10); } // @return true if the transaction can buy tokens in presale function validPresalePurchase() internal constant returns (bool) { bool withinPeriod = now >= presaleStartTime && now <= presaleEndTime; bool nonZeroPurchase = msg.value != 0; bool validPresaleLimit = msg.value >= presaleLimit; return withinPeriod && nonZeroPurchase && validPresaleLimit; } function finalization() internal { super.finalization(); // mint 14% of total Tokens (3% for bounty, 5% for advisors, 6% for team) into team wallet uint256 toMintNow = totalTokens.mul(14).div(100); token.mint(tokensWallet, toMintNow); } } //end RestartEnergyCrowdsale.sol
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"tokensWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableTokenTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"presaleEndTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_etherRate","type":"uint16"}],"name":"setEtherRate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"setPresaleStartTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"claimTeamTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"rate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"firstPartOfTeamTokensClaimed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"setStartTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"presaleRate","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"presaleLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"soldTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"purchasedAmountOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"secondPartOfTeamTokensClaimed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isFinalized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokenAmountOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"buildTokenContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"presaleStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"to","type":"address"}],"name":"sendTokensToAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"setEndTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"setPresaleEndTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"etherRate","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"hasEnded","outputs":[{"name":"","type":"bool"}],"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":"hardCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_presaleStartTime","type":"uint256"},{"name":"_presaleEndTime","type":"uint256"},{"name":"_startTime","type":"uint256"},{"name":"_endTime","type":"uint256"},{"name":"_wallet","type":"address"},{"name":"_tokensWallet","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[],"name":"Finalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newEndTime","type":"uint256"}],"name":"EndTimeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newStartTime","type":"uint256"}],"name":"StartTimeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newPresaleStartTime","type":"uint256"}],"name":"PresaleStartTimeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newPresaleEndTime","type":"uint256"}],"name":"PresaleEndTimeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenPurchase","type":"event"}]
Contract Creation Code
60606040526009805460ff19908116909155600c80549091169055678ac7230489e80000600d55600e805461ffff199081166078179091556000600f55601080548216608217905560138054909116905534156200005c57600080fd5b60405160c080620026f783398101604052808051919060200180519190602001805191906020018051919060200180519190602001805191508490508360648442841015620000aa57600080fd5b83831015620000b857600080fd5b60008211620000c657600080fd5b600160a060020a0381161515620000dc57600080fd5b620000f464010000000062001560620001ca82021704565b60008054600160a060020a0319908116600160a060020a039384161790915560019590955560029390935560049190915560038054841691831691909117905560068054909216338216179091556b014adf4b7320334b90000000600a556b019d971e4fe8401e74000000600b5560078790556008869055601080546201000060b060020a031916620100009284169290920291909117905542869011156200019c57600080fd5b60075460085411620001ad57600080fd5b60015460085410620001be57600080fd5b505050505050620001cf565b600090565b61251880620001df6000396000f300606060405260043610620001e55763ffffffff60e060020a60003504166302d8146e8114620001f25780631788de801462000224578063249b7c19146200023a578063256bdaa41462000262578063296cab55146200027f5780632af5356a14620002985780632c4e722e14620002ae5780633197cbb614620002c4578063321b315714620002da5780633e0a322d14620003045780633f4ba83a146200031d5780634042b66f146200033357806342f3938114620003495780634bb278f31462000376578063521eb273146200038c578063525b3fe314620003a25780635c975abb14620003b85780635ed9ebfc14620003ce57806378e9792514620003e45780637d40e9e014620003fa5780637e1c0c09146200041c5780638456cb5914620004325780638bcba45a14620004485780638d4e4083146200045e5780638da5cb5b146200047457806397b150ca146200048a578063a0d0ee3b14620004ac578063a6f2ae3a14620004c2578063a82524b214620004cc578063a838523114620004e2578063ccb98ffc1462000507578063cfa0136f1462000520578063d0f7a6011462000539578063ec8ac4d8146200054f578063ecb70fb71462000565578063f2fde38b146200057b578063fb86a404146200059d578063fc0c546a14620005b3575b620001f033620005c9565b005b3415620001fe57600080fd5b62000208620007e3565b604051600160a060020a03909116815260200160405180910390f35b34156200023057600080fd5b620001f0620007f8565b34156200024657600080fd5b62000250620008fe565b60405190815260200160405180910390f35b34156200026e57600080fd5b620001f061ffff6004351662000904565b34156200028b57600080fd5b620001f06004356200096b565b3415620002a457600080fd5b620001f0620009df565b3415620002ba57600080fd5b6200025062000c23565b3415620002d057600080fd5b6200025062000c29565b3415620002e657600080fd5b620002f062000c2f565b604051901515815260200160405180910390f35b34156200031057600080fd5b620001f060043562000c38565b34156200032957600080fd5b620001f062000cac565b34156200033f57600080fd5b6200025062000d12565b34156200035557600080fd5b6200035f62000d18565b60405161ffff909116815260200160405180910390f35b34156200038257600080fd5b620001f062000d22565b34156200039857600080fd5b6200020862000daa565b3415620003ae57600080fd5b6200025062000db9565b3415620003c457600080fd5b620002f062000dbf565b3415620003da57600080fd5b6200025062000dc8565b3415620003f057600080fd5b6200025062000dce565b34156200040657600080fd5b62000250600160a060020a036004351662000dd4565b34156200042857600080fd5b6200025062000de6565b34156200043e57600080fd5b620001f062000dec565b34156200045457600080fd5b620002f062000e54565b34156200046a57600080fd5b620002f062000e62565b34156200048057600080fd5b6200020862000e6b565b34156200049657600080fd5b62000250600160a060020a036004351662000e7a565b3415620004b857600080fd5b620001f062000e8c565b620001f062000f68565b3415620004d857600080fd5b6200025062000f86565b3415620004ee57600080fd5b620001f0600435600160a060020a036024351662000f8c565b34156200051357600080fd5b620001f0600435620010ff565b34156200052c57600080fd5b620001f060043562001173565b34156200054557600080fd5b6200035f620011e7565b620001f0600160a060020a0360043516620005c9565b34156200057157600080fd5b620002f0620011f1565b34156200058757600080fd5b620001f0600160a060020a0360043516620011f9565b3415620005a957600080fd5b6200025062001296565b3415620005bf57600080fd5b620002086200129c565b600c54600090819060ff1615620005df57600080fd5b60095460ff1615620005f057600080fd5b600160a060020a03831615156200060657600080fd5b62000610620012ab565b8062000621575062000621620012f4565b15156200062d57600080fd5b3491506200064c6200063e62001326565b839063ffffffff6200138e16565b90506200065981620013c8565b15156200066557600080fd5b6005546200067a908363ffffffff6200144a16565b600555600f5462000692908263ffffffff6200144a16565b600f5560008054600160a060020a0316906340c10f1990859084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515620006f857600080fd5b6102c65a03f115156200070a57600080fd5b50505060405180515050600160a060020a0333166000908152601160205260409020546200073f903463ffffffff6200144a16565b600160a060020a03331660009081526011602090815260408083209390935560129052205462000776908263ffffffff6200144a16565b600160a060020a033381166000818152601260205260409081902093909355908516917f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad1890859085905191825260208201526040908101905180910390a3620007de6200145a565b505050565b601054620100009004600160a060020a031681565b60065433600160a060020a039081169116146200081457600080fd5b60095460ff1615156200082657600080fd5b6002546213c6800142116200083a57600080fd5b60008054600160a060020a031690635c975abb90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156200088457600080fd5b6102c65a03f115156200089657600080fd5b505050604051805190501515620008ac57600080fd5b600054600160a060020a0316633f4ba83a6040518163ffffffff1660e060020a028152600401600060405180830381600087803b1515620008ec57600080fd5b6102c65a03f11515620007de57600080fd5b60085481565b60065433600160a060020a039081169116146200092057600080fd5b6010805461ffff191661ffff83811691909117918290556200096591600a9162000958911681670de0b6b3a76400006127106200138e565b9063ffffffff6200148f16565b600d5550565b60065433600160a060020a039081169116146200098757600080fd5b428190106200099557600080fd5b6008548110620009a457600080fd5b60078190557fc5b3a4293c315161e3e66fec46b6de935d706f719f6a0f58d30470bace3018aa8160405190815260200160405180910390a150565b60065460009033600160a060020a03908116911614620009fe57600080fd5b60095460ff16151562000a1057600080fd5b601354610100900460ff161562000a2657600080fd5b60025462eff10001421162000a3a57600080fd5b62000a586064620009586003600b546200138e90919063ffffffff16565b60135490915060ff16151562000b085760008054601054600160a060020a03918216926340c10f1992620100009092049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000ad957600080fd5b6102c65a03f1151562000aeb57600080fd5b505050604051805150506013805460ff1916600117905562000c20565b6002546301e1338001421162000b1d57600080fd5b60008054601054600160a060020a03918216926340c10f1992620100009092049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000b8e57600080fd5b6102c65a03f1151562000ba057600080fd5b505050604051805150506013805461ff00191661010017905560008054600160a060020a031690637d64bcb490604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151562000c0357600080fd5b6102c65a03f1151562000c1557600080fd5b505050604051805150505b50565b60045481565b60025481565b60135460ff1681565b60065433600160a060020a0390811691161462000c5457600080fd5b4281901062000c6257600080fd5b600854811162000c7157600080fd5b60018190557fe1bebe43f86306f5ef8fd2a26a1397f3ed16fc225a632b04401a1dfd3a84f85b8160405190815260200160405180910390a150565b60065433600160a060020a0390811691161462000cc857600080fd5b600c5460ff16151562000cda57600080fd5b600c805460ff191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60055481565b600e5461ffff1681565b60065433600160a060020a0390811691161462000d3e57600080fd5b60095460ff161562000d4f57600080fd5b62000d59620011f1565b151562000d6557600080fd5b62000d6f620014a7565b7f6823b073d48d6e3a7d385eeb601452d680e74bb46afe3255a7d778f3a9b1768160405160405180910390a16009805460ff19166001179055565b600354600160a060020a031681565b600d5481565b600c5460ff1681565b600f5481565b60015481565b60116020526000908152604090205481565b600b5481565b60065433600160a060020a0390811691161462000e0857600080fd5b600c5460ff161562000e1957600080fd5b600c805460ff191660011790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b601354610100900460ff1681565b60095460ff1681565b600654600160a060020a031681565b60126020526000908152604090205481565b60065460009033600160a060020a0390811691161462000eab57600080fd5b600054600160a060020a03161562000ec257600080fd5b62000ecc6200154f565b604051809103906000f080151562000ee357600080fd5b905080600160a060020a0316638456cb596040518163ffffffff1660e060020a028152600401600060405180830381600087803b151562000f2357600080fd5b6102c65a03f1151562000f3557600080fd5b50506000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03939093169290921790915550565b600c5460ff161562000f7957600080fd5b62000f8433620005c9565b565b60075481565b60065433600160a060020a0390811691161462000fa857600080fd5b60095460ff161562000fb957600080fd5b62000fc482620013c8565b151562000fd057600080fd5b600160a060020a03811660009081526012602052604090205462000ffb908363ffffffff6200144a16565b600160a060020a038216600090815260126020526040902055600f5462001029908363ffffffff6200144a16565b600f5560008054600160a060020a0316906340c10f1990839085906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156200108f57600080fd5b6102c65a03f11515620010a157600080fd5b505050604051805190505080600160a060020a031633600160a060020a03167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad1860008560405191825260208201526040908101905180910390a35050565b60065433600160a060020a039081169116146200111b57600080fd5b428190106200112957600080fd5b60015481116200113857600080fd5b60028190557f4485cece32d9db6c6241132c7fcb681eeb994d86af3a03ae3931c65d85a0b6548160405190815260200160405180910390a150565b60065433600160a060020a039081169116146200118f57600080fd5b428190106200119d57600080fd5b6007548111620011ac57600080fd5b60088190557f7bacfb0ce8bf68d1259a4a90dbc9c392d734ab59d2a1f7a425087a80f90db7908160405190815260200160405180910390a150565b60105461ffff1681565b600254421190565b60065433600160a060020a039081169116146200121557600080fd5b600160a060020a03811615156200122b57600080fd5b600654600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600a5481565b600054600160a060020a031681565b6000806000806007544210158015620012c657506008544211155b925034600014159150600d543410159050828015620012e25750815b8015620012ec5750805b935050505090565b600080600060015442101580156200130e57506002544211155b9150503415158180156200131f5750805b9250505090565b6004546000908162001337620012ab565b156200134c57600e5461ffff1691506200136d565b60015462015180904203049050600f8110156200136d5780600f0360640191505b6010546200138790839061ffff1663ffffffff6200138e16565b9392505050565b600080831515620013a35760009150620013c1565b50828202828482811515620013b457fe5b0414620013bd57fe5b8091505b5092915050565b600080546200143f90600160a060020a03166318160ddd83604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156200141657600080fd5b6102c65a03f115156200142857600080fd5b505050604051805184915063ffffffff6200144a16565b600a54101592915050565b600082820183811015620013bd57fe5b600354600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151562000f8457600080fd5b60008082848115156200149e57fe5b04949350505050565b6000620014b362001545565b620014d1606462000958600e600b546200138e90919063ffffffff16565b60008054601054929350600160a060020a03908116926340c10f1992620100009091049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000c0357600080fd5b62000f8462000f84565b604051610f87806200156683390190565b6000905600606060409081526003805460a060020a61ffff02191690558051908101604052600881527f524544204d5741540000000000000000000000000000000000000000000000006020820152600490805161005c9291602001906100ca565b5060408051908101604052600481527f4d57415400000000000000000000000000000000000000000000000000000000602082015260059080516100a49291602001906100ca565b50601260065560038054600160a060020a03191633600160a060020a0316179055610165565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610138565b82800160010185558215610138579182015b8281111561013857825182559160200191906001019061011d565b50610144929150610148565b5090565b61016291905b80821115610144576000815560010161014e565b90565b610e13806101746000396000f3006060604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461010b57806306fdde0314610132578063095ea7b3146101bc57806318160ddd146101de57806323b872dd14610203578063313ce5671461022b5780633f4ba83a1461023e57806340c10f19146102535780635c975abb14610275578063661884631461028857806370a08231146102aa5780637d64bcb4146102c95780638456cb59146102dc5780638da5cb5b146102ef57806395d89b411461031e578063a9059cbb14610331578063d73dd62314610353578063dd62ed3e14610375578063f2fde38b1461039a575b600080fd5b341561011657600080fd5b61011e6103b9565b604051901515815260200160405180910390f35b341561013d57600080fd5b6101456103c9565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610181578082015183820152602001610169565b50505050905090810190601f1680156101ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101c757600080fd5b61011e600160a060020a0360043516602435610467565b34156101e957600080fd5b6101f1610492565b60405190815260200160405180910390f35b341561020e57600080fd5b61011e600160a060020a0360043581169060243516604435610498565b341561023657600080fd5b6101f16104c5565b341561024957600080fd5b6102516104cb565b005b341561025e57600080fd5b61011e600160a060020a036004351660243561054b565b341561028057600080fd5b61011e610658565b341561029357600080fd5b61011e600160a060020a0360043516602435610668565b34156102b557600080fd5b6101f1600160a060020a036004351661068c565b34156102d457600080fd5b61011e6106a7565b34156102e757600080fd5b610251610732565b34156102fa57600080fd5b6103026107b7565b604051600160a060020a03909116815260200160405180910390f35b341561032957600080fd5b6101456107c6565b341561033c57600080fd5b61011e600160a060020a0360043516602435610831565b341561035e57600080fd5b61011e600160a060020a0360043516602435610855565b341561038057600080fd5b6101f1600160a060020a0360043581169060243516610879565b34156103a557600080fd5b610251600160a060020a03600435166108a4565b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045f5780601f106104345761010080835404028352916020019161045f565b820191906000526020600020905b81548152906001019060200180831161044257829003601f168201915b505050505081565b60035460009060a860020a900460ff161561048157600080fd5b61048b838361093f565b9392505050565b60005481565b60035460009060a860020a900460ff16156104b257600080fd5b6104bd8484846109ab565b949350505050565b60065481565b60035433600160a060020a039081169116146104e657600080fd5b60035460a860020a900460ff1615156104fe57600080fd5b6003805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60035460009033600160a060020a0390811691161461056957600080fd5b60035460a060020a900460ff161561058057600080fd5b600054610593908363ffffffff610b2d16565b6000908155600160a060020a0384168152600160205260409020546105be908363ffffffff610b2d16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b60035460a860020a900460ff1681565b60035460009060a860020a900460ff161561068257600080fd5b61048b8383610b3c565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a039081169116146106c557600080fd5b60035460a060020a900460ff16156106dc57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035433600160a060020a0390811691161461074d57600080fd5b60035460a860020a900460ff161561076457600080fd5b6003805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045f5780601f106104345761010080835404028352916020019161045f565b60035460009060a860020a900460ff161561084b57600080fd5b61048b8383610c36565b60035460009060a860020a900460ff161561086f57600080fd5b61048b8383610d31565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a039081169116146108bf57600080fd5b600160a060020a03811615156108d457600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6000600160a060020a03831615156109c257600080fd5b600160a060020a0384166000908152600160205260409020548211156109e757600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610a1a57600080fd5b600160a060020a038416600090815260016020526040902054610a43908363ffffffff610dd516565b600160a060020a038086166000908152600160205260408082209390935590851681522054610a78908363ffffffff610b2d16565b600160a060020a03808516600090815260016020908152604080832094909455878316825260028152838220339093168252919091522054610ac0908363ffffffff610dd516565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60008282018381101561048b57fe5b600160a060020a03338116600090815260026020908152604080832093861683529290529081205480831115610b9957600160a060020a033381166000908152600260209081526040808320938816835292905290812055610bd0565b610ba9818463ffffffff610dd516565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b6000600160a060020a0383161515610c4d57600080fd5b600160a060020a033316600090815260016020526040902054821115610c7257600080fd5b600160a060020a033316600090815260016020526040902054610c9b908363ffffffff610dd516565b600160a060020a033381166000908152600160205260408082209390935590851681522054610cd0908363ffffffff610b2d16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610d69908363ffffffff610b2d16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600082821115610de157fe5b509003905600a165627a7a723058203214ea38ed42cdd3a326b9571cb87881dc1e526c8eabfe87b645ce9915828bfd0029a165627a7a72305820d16f3a8134493069850204d11bceaa87b16feb4d1cc3b2d646e214a71f058c430029000000000000000000000000000000000000000000000000000000005a5c7ba0000000000000000000000000000000000000000000000000000000005a8181c0000000000000000000000000000000000000000000000000000000005a837c00000000000000000000000000000000000000000000000000000000005aa86600000000000000000000000000752de51aa9f42565d270b30d62670595d933b3bc000000000000000000000000a55a01a46fd7ccea7675b632ec23fd5a4c507693
Deployed Bytecode
0x606060405260043610620001e55763ffffffff60e060020a60003504166302d8146e8114620001f25780631788de801462000224578063249b7c19146200023a578063256bdaa41462000262578063296cab55146200027f5780632af5356a14620002985780632c4e722e14620002ae5780633197cbb614620002c4578063321b315714620002da5780633e0a322d14620003045780633f4ba83a146200031d5780634042b66f146200033357806342f3938114620003495780634bb278f31462000376578063521eb273146200038c578063525b3fe314620003a25780635c975abb14620003b85780635ed9ebfc14620003ce57806378e9792514620003e45780637d40e9e014620003fa5780637e1c0c09146200041c5780638456cb5914620004325780638bcba45a14620004485780638d4e4083146200045e5780638da5cb5b146200047457806397b150ca146200048a578063a0d0ee3b14620004ac578063a6f2ae3a14620004c2578063a82524b214620004cc578063a838523114620004e2578063ccb98ffc1462000507578063cfa0136f1462000520578063d0f7a6011462000539578063ec8ac4d8146200054f578063ecb70fb71462000565578063f2fde38b146200057b578063fb86a404146200059d578063fc0c546a14620005b3575b620001f033620005c9565b005b3415620001fe57600080fd5b62000208620007e3565b604051600160a060020a03909116815260200160405180910390f35b34156200023057600080fd5b620001f0620007f8565b34156200024657600080fd5b62000250620008fe565b60405190815260200160405180910390f35b34156200026e57600080fd5b620001f061ffff6004351662000904565b34156200028b57600080fd5b620001f06004356200096b565b3415620002a457600080fd5b620001f0620009df565b3415620002ba57600080fd5b6200025062000c23565b3415620002d057600080fd5b6200025062000c29565b3415620002e657600080fd5b620002f062000c2f565b604051901515815260200160405180910390f35b34156200031057600080fd5b620001f060043562000c38565b34156200032957600080fd5b620001f062000cac565b34156200033f57600080fd5b6200025062000d12565b34156200035557600080fd5b6200035f62000d18565b60405161ffff909116815260200160405180910390f35b34156200038257600080fd5b620001f062000d22565b34156200039857600080fd5b6200020862000daa565b3415620003ae57600080fd5b6200025062000db9565b3415620003c457600080fd5b620002f062000dbf565b3415620003da57600080fd5b6200025062000dc8565b3415620003f057600080fd5b6200025062000dce565b34156200040657600080fd5b62000250600160a060020a036004351662000dd4565b34156200042857600080fd5b6200025062000de6565b34156200043e57600080fd5b620001f062000dec565b34156200045457600080fd5b620002f062000e54565b34156200046a57600080fd5b620002f062000e62565b34156200048057600080fd5b6200020862000e6b565b34156200049657600080fd5b62000250600160a060020a036004351662000e7a565b3415620004b857600080fd5b620001f062000e8c565b620001f062000f68565b3415620004d857600080fd5b6200025062000f86565b3415620004ee57600080fd5b620001f0600435600160a060020a036024351662000f8c565b34156200051357600080fd5b620001f0600435620010ff565b34156200052c57600080fd5b620001f060043562001173565b34156200054557600080fd5b6200035f620011e7565b620001f0600160a060020a0360043516620005c9565b34156200057157600080fd5b620002f0620011f1565b34156200058757600080fd5b620001f0600160a060020a0360043516620011f9565b3415620005a957600080fd5b6200025062001296565b3415620005bf57600080fd5b620002086200129c565b600c54600090819060ff1615620005df57600080fd5b60095460ff1615620005f057600080fd5b600160a060020a03831615156200060657600080fd5b62000610620012ab565b8062000621575062000621620012f4565b15156200062d57600080fd5b3491506200064c6200063e62001326565b839063ffffffff6200138e16565b90506200065981620013c8565b15156200066557600080fd5b6005546200067a908363ffffffff6200144a16565b600555600f5462000692908263ffffffff6200144a16565b600f5560008054600160a060020a0316906340c10f1990859084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515620006f857600080fd5b6102c65a03f115156200070a57600080fd5b50505060405180515050600160a060020a0333166000908152601160205260409020546200073f903463ffffffff6200144a16565b600160a060020a03331660009081526011602090815260408083209390935560129052205462000776908263ffffffff6200144a16565b600160a060020a033381166000818152601260205260409081902093909355908516917f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad1890859085905191825260208201526040908101905180910390a3620007de6200145a565b505050565b601054620100009004600160a060020a031681565b60065433600160a060020a039081169116146200081457600080fd5b60095460ff1615156200082657600080fd5b6002546213c6800142116200083a57600080fd5b60008054600160a060020a031690635c975abb90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156200088457600080fd5b6102c65a03f115156200089657600080fd5b505050604051805190501515620008ac57600080fd5b600054600160a060020a0316633f4ba83a6040518163ffffffff1660e060020a028152600401600060405180830381600087803b1515620008ec57600080fd5b6102c65a03f11515620007de57600080fd5b60085481565b60065433600160a060020a039081169116146200092057600080fd5b6010805461ffff191661ffff83811691909117918290556200096591600a9162000958911681670de0b6b3a76400006127106200138e565b9063ffffffff6200148f16565b600d5550565b60065433600160a060020a039081169116146200098757600080fd5b428190106200099557600080fd5b6008548110620009a457600080fd5b60078190557fc5b3a4293c315161e3e66fec46b6de935d706f719f6a0f58d30470bace3018aa8160405190815260200160405180910390a150565b60065460009033600160a060020a03908116911614620009fe57600080fd5b60095460ff16151562000a1057600080fd5b601354610100900460ff161562000a2657600080fd5b60025462eff10001421162000a3a57600080fd5b62000a586064620009586003600b546200138e90919063ffffffff16565b60135490915060ff16151562000b085760008054601054600160a060020a03918216926340c10f1992620100009092049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000ad957600080fd5b6102c65a03f1151562000aeb57600080fd5b505050604051805150506013805460ff1916600117905562000c20565b6002546301e1338001421162000b1d57600080fd5b60008054601054600160a060020a03918216926340c10f1992620100009092049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000b8e57600080fd5b6102c65a03f1151562000ba057600080fd5b505050604051805150506013805461ff00191661010017905560008054600160a060020a031690637d64bcb490604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151562000c0357600080fd5b6102c65a03f1151562000c1557600080fd5b505050604051805150505b50565b60045481565b60025481565b60135460ff1681565b60065433600160a060020a0390811691161462000c5457600080fd5b4281901062000c6257600080fd5b600854811162000c7157600080fd5b60018190557fe1bebe43f86306f5ef8fd2a26a1397f3ed16fc225a632b04401a1dfd3a84f85b8160405190815260200160405180910390a150565b60065433600160a060020a0390811691161462000cc857600080fd5b600c5460ff16151562000cda57600080fd5b600c805460ff191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60055481565b600e5461ffff1681565b60065433600160a060020a0390811691161462000d3e57600080fd5b60095460ff161562000d4f57600080fd5b62000d59620011f1565b151562000d6557600080fd5b62000d6f620014a7565b7f6823b073d48d6e3a7d385eeb601452d680e74bb46afe3255a7d778f3a9b1768160405160405180910390a16009805460ff19166001179055565b600354600160a060020a031681565b600d5481565b600c5460ff1681565b600f5481565b60015481565b60116020526000908152604090205481565b600b5481565b60065433600160a060020a0390811691161462000e0857600080fd5b600c5460ff161562000e1957600080fd5b600c805460ff191660011790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b601354610100900460ff1681565b60095460ff1681565b600654600160a060020a031681565b60126020526000908152604090205481565b60065460009033600160a060020a0390811691161462000eab57600080fd5b600054600160a060020a03161562000ec257600080fd5b62000ecc6200154f565b604051809103906000f080151562000ee357600080fd5b905080600160a060020a0316638456cb596040518163ffffffff1660e060020a028152600401600060405180830381600087803b151562000f2357600080fd5b6102c65a03f1151562000f3557600080fd5b50506000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03939093169290921790915550565b600c5460ff161562000f7957600080fd5b62000f8433620005c9565b565b60075481565b60065433600160a060020a0390811691161462000fa857600080fd5b60095460ff161562000fb957600080fd5b62000fc482620013c8565b151562000fd057600080fd5b600160a060020a03811660009081526012602052604090205462000ffb908363ffffffff6200144a16565b600160a060020a038216600090815260126020526040902055600f5462001029908363ffffffff6200144a16565b600f5560008054600160a060020a0316906340c10f1990839085906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156200108f57600080fd5b6102c65a03f11515620010a157600080fd5b505050604051805190505080600160a060020a031633600160a060020a03167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad1860008560405191825260208201526040908101905180910390a35050565b60065433600160a060020a039081169116146200111b57600080fd5b428190106200112957600080fd5b60015481116200113857600080fd5b60028190557f4485cece32d9db6c6241132c7fcb681eeb994d86af3a03ae3931c65d85a0b6548160405190815260200160405180910390a150565b60065433600160a060020a039081169116146200118f57600080fd5b428190106200119d57600080fd5b6007548111620011ac57600080fd5b60088190557f7bacfb0ce8bf68d1259a4a90dbc9c392d734ab59d2a1f7a425087a80f90db7908160405190815260200160405180910390a150565b60105461ffff1681565b600254421190565b60065433600160a060020a039081169116146200121557600080fd5b600160a060020a03811615156200122b57600080fd5b600654600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600a5481565b600054600160a060020a031681565b6000806000806007544210158015620012c657506008544211155b925034600014159150600d543410159050828015620012e25750815b8015620012ec5750805b935050505090565b600080600060015442101580156200130e57506002544211155b9150503415158180156200131f5750805b9250505090565b6004546000908162001337620012ab565b156200134c57600e5461ffff1691506200136d565b60015462015180904203049050600f8110156200136d5780600f0360640191505b6010546200138790839061ffff1663ffffffff6200138e16565b9392505050565b600080831515620013a35760009150620013c1565b50828202828482811515620013b457fe5b0414620013bd57fe5b8091505b5092915050565b600080546200143f90600160a060020a03166318160ddd83604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156200141657600080fd5b6102c65a03f115156200142857600080fd5b505050604051805184915063ffffffff6200144a16565b600a54101592915050565b600082820183811015620013bd57fe5b600354600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151562000f8457600080fd5b60008082848115156200149e57fe5b04949350505050565b6000620014b362001545565b620014d1606462000958600e600b546200138e90919063ffffffff16565b60008054601054929350600160a060020a03908116926340c10f1992620100009091049091169084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000c0357600080fd5b62000f8462000f84565b604051610f87806200156683390190565b6000905600606060409081526003805460a060020a61ffff02191690558051908101604052600881527f524544204d5741540000000000000000000000000000000000000000000000006020820152600490805161005c9291602001906100ca565b5060408051908101604052600481527f4d57415400000000000000000000000000000000000000000000000000000000602082015260059080516100a49291602001906100ca565b50601260065560038054600160a060020a03191633600160a060020a0316179055610165565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610138565b82800160010185558215610138579182015b8281111561013857825182559160200191906001019061011d565b50610144929150610148565b5090565b61016291905b80821115610144576000815560010161014e565b90565b610e13806101746000396000f3006060604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461010b57806306fdde0314610132578063095ea7b3146101bc57806318160ddd146101de57806323b872dd14610203578063313ce5671461022b5780633f4ba83a1461023e57806340c10f19146102535780635c975abb14610275578063661884631461028857806370a08231146102aa5780637d64bcb4146102c95780638456cb59146102dc5780638da5cb5b146102ef57806395d89b411461031e578063a9059cbb14610331578063d73dd62314610353578063dd62ed3e14610375578063f2fde38b1461039a575b600080fd5b341561011657600080fd5b61011e6103b9565b604051901515815260200160405180910390f35b341561013d57600080fd5b6101456103c9565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610181578082015183820152602001610169565b50505050905090810190601f1680156101ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101c757600080fd5b61011e600160a060020a0360043516602435610467565b34156101e957600080fd5b6101f1610492565b60405190815260200160405180910390f35b341561020e57600080fd5b61011e600160a060020a0360043581169060243516604435610498565b341561023657600080fd5b6101f16104c5565b341561024957600080fd5b6102516104cb565b005b341561025e57600080fd5b61011e600160a060020a036004351660243561054b565b341561028057600080fd5b61011e610658565b341561029357600080fd5b61011e600160a060020a0360043516602435610668565b34156102b557600080fd5b6101f1600160a060020a036004351661068c565b34156102d457600080fd5b61011e6106a7565b34156102e757600080fd5b610251610732565b34156102fa57600080fd5b6103026107b7565b604051600160a060020a03909116815260200160405180910390f35b341561032957600080fd5b6101456107c6565b341561033c57600080fd5b61011e600160a060020a0360043516602435610831565b341561035e57600080fd5b61011e600160a060020a0360043516602435610855565b341561038057600080fd5b6101f1600160a060020a0360043581169060243516610879565b34156103a557600080fd5b610251600160a060020a03600435166108a4565b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045f5780601f106104345761010080835404028352916020019161045f565b820191906000526020600020905b81548152906001019060200180831161044257829003601f168201915b505050505081565b60035460009060a860020a900460ff161561048157600080fd5b61048b838361093f565b9392505050565b60005481565b60035460009060a860020a900460ff16156104b257600080fd5b6104bd8484846109ab565b949350505050565b60065481565b60035433600160a060020a039081169116146104e657600080fd5b60035460a860020a900460ff1615156104fe57600080fd5b6003805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60035460009033600160a060020a0390811691161461056957600080fd5b60035460a060020a900460ff161561058057600080fd5b600054610593908363ffffffff610b2d16565b6000908155600160a060020a0384168152600160205260409020546105be908363ffffffff610b2d16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b60035460a860020a900460ff1681565b60035460009060a860020a900460ff161561068257600080fd5b61048b8383610b3c565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a039081169116146106c557600080fd5b60035460a060020a900460ff16156106dc57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035433600160a060020a0390811691161461074d57600080fd5b60035460a860020a900460ff161561076457600080fd5b6003805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045f5780601f106104345761010080835404028352916020019161045f565b60035460009060a860020a900460ff161561084b57600080fd5b61048b8383610c36565b60035460009060a860020a900460ff161561086f57600080fd5b61048b8383610d31565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a039081169116146108bf57600080fd5b600160a060020a03811615156108d457600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6000600160a060020a03831615156109c257600080fd5b600160a060020a0384166000908152600160205260409020548211156109e757600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610a1a57600080fd5b600160a060020a038416600090815260016020526040902054610a43908363ffffffff610dd516565b600160a060020a038086166000908152600160205260408082209390935590851681522054610a78908363ffffffff610b2d16565b600160a060020a03808516600090815260016020908152604080832094909455878316825260028152838220339093168252919091522054610ac0908363ffffffff610dd516565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60008282018381101561048b57fe5b600160a060020a03338116600090815260026020908152604080832093861683529290529081205480831115610b9957600160a060020a033381166000908152600260209081526040808320938816835292905290812055610bd0565b610ba9818463ffffffff610dd516565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b6000600160a060020a0383161515610c4d57600080fd5b600160a060020a033316600090815260016020526040902054821115610c7257600080fd5b600160a060020a033316600090815260016020526040902054610c9b908363ffffffff610dd516565b600160a060020a033381166000908152600160205260408082209390935590851681522054610cd0908363ffffffff610b2d16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610d69908363ffffffff610b2d16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600082821115610de157fe5b509003905600a165627a7a723058203214ea38ed42cdd3a326b9571cb87881dc1e526c8eabfe87b645ce9915828bfd0029a165627a7a72305820d16f3a8134493069850204d11bceaa87b16feb4d1cc3b2d646e214a71f058c430029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000005a5c7ba0000000000000000000000000000000000000000000000000000000005a8181c0000000000000000000000000000000000000000000000000000000005a837c00000000000000000000000000000000000000000000000000000000005aa86600000000000000000000000000752DE51Aa9f42565d270B30D62670595D933b3Bc000000000000000000000000A55a01a46FD7ccea7675b632EC23Fd5A4c507693
-----Decoded View---------------
Arg [0] : _presaleStartTime (uint256): 1516010400
Arg [1] : _presaleEndTime (uint256): 1518436800
Arg [2] : _startTime (uint256): 1518566400
Arg [3] : _endTime (uint256): 1520985600
Arg [4] : _wallet (address): 0x752DE51Aa9f42565d270B30D62670595D933b3Bc
Arg [5] : _tokensWallet (address): 0xA55a01a46FD7ccea7675b632EC23Fd5A4c507693
-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000000000005a5c7ba0
Arg [1] : 000000000000000000000000000000000000000000000000000000005a8181c0
Arg [2] : 000000000000000000000000000000000000000000000000000000005a837c00
Arg [3] : 000000000000000000000000000000000000000000000000000000005aa86600
Arg [4] : 000000000000000000000000752DE51Aa9f42565d270B30D62670595D933b3Bc
Arg [5] : 000000000000000000000000A55a01a46FD7ccea7675b632EC23Fd5A4c507693
Swarm Source
bzzr://d16f3a8134493069850204d11bceaa87b16feb4d1cc3b2d646e214a71f058c43
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.