Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 100 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
End Auction | 5310469 | 2673 days ago | IN | 0 ETH | 0.00020792 | ||||
Transfer | 5310235 | 2673 days ago | IN | 31.20383375 ETH | 0.0131595 | ||||
Transfer | 5310232 | 2673 days ago | IN | 28.89243865 ETH | 0.0131595 | ||||
Transfer | 5306200 | 2674 days ago | IN | 26.75225801 ETH | 0.00043865 | ||||
Transfer | 5305078 | 2674 days ago | IN | 25 ETH | 0.0010285 | ||||
Transfer | 5305059 | 2674 days ago | IN | 22.93574932 ETH | 0.00144754 | ||||
Transfer | 5305035 | 2674 days ago | IN | 25 ETH | 0.00005142 | ||||
Transfer | 5304855 | 2674 days ago | IN | 19.66370827 ETH | 0.00008773 | ||||
Transfer | 5304701 | 2674 days ago | IN | 18.20713728 ETH | 0.00030705 | ||||
Transfer | 5304666 | 2674 days ago | IN | 16.85846045 ETH | 0.00008773 | ||||
Transfer | 5304649 | 2674 days ago | IN | 15.6096856 ETH | 0.00030705 | ||||
Transfer | 5304633 | 2674 days ago | IN | 14.45341259 ETH | 0.00008773 | ||||
Transfer | 5304598 | 2674 days ago | IN | 13.38278944 ETH | 0.00096503 | ||||
Transfer | 5304595 | 2674 days ago | IN | 12.3914717 ETH | 0.00008773 | ||||
Transfer | 5292185 | 2676 days ago | IN | 11.47358491 ETH | 0.00048251 | ||||
Transfer | 5290052 | 2676 days ago | IN | 0.35 ETH | 0.00002334 | ||||
Transfer | 5290052 | 2676 days ago | IN | 0.00225 ETH | 0.00002334 | ||||
Transfer | 5290035 | 2676 days ago | IN | 0.00225 ETH | 0.00002334 | ||||
Transfer | 5289898 | 2676 days ago | IN | 0.00225 ETH | 0.00002334 | ||||
Transfer | 5289714 | 2676 days ago | IN | 11 ETH | 0.00077035 | ||||
Transfer | 5289711 | 2676 days ago | IN | 12 ETH | 0.0006171 | ||||
Transfer | 5289702 | 2676 days ago | IN | 10 ETH | 0.00051425 | ||||
Transfer | 5289701 | 2676 days ago | IN | 11 ETH | 0.0006171 | ||||
Transfer | 5289698 | 2676 days ago | IN | 9 ETH | 0.00023344 | ||||
Transfer | 5289697 | 2676 days ago | IN | 10 ETH | 0.00169702 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 5310469 | 2673 days ago | 23.40325031 ETH | ||||
Transfer | 5310235 | 2673 days ago | 29.47028743 ETH | ||||
Transfer | 5310232 | 2673 days ago | 27.28730317 ETH | ||||
Transfer | 5306200 | 2674 days ago | 25.26602146 ETH | ||||
Transfer | 5305078 | 2674 days ago | 0.22939072 ETH | ||||
Transfer | 5305078 | 2674 days ago | 23.39446431 ETH | ||||
Transfer | 5305059 | 2674 days ago | 21.66154103 ETH | ||||
Transfer | 5305035 | 2674 days ago | 3.76319506 ETH | ||||
Transfer | 5305035 | 2674 days ago | 20.05698243 ETH | ||||
Transfer | 5304855 | 2674 days ago | 18.57128003 ETH | ||||
Transfer | 5304701 | 2674 days ago | 17.19562966 ETH | ||||
Transfer | 5304666 | 2674 days ago | 15.92187931 ETH | ||||
Transfer | 5304649 | 2674 days ago | 14.74248084 ETH | ||||
Transfer | 5304633 | 2674 days ago | 13.65044523 ETH | ||||
Transfer | 5304598 | 2674 days ago | 12.63930113 ETH | ||||
Transfer | 5304595 | 2674 days ago | 11.70305661 ETH | ||||
Transfer | 5292185 | 2676 days ago | 10.83616352 ETH | ||||
Transfer | 5289711 | 2676 days ago | 1.37631026 ETH | ||||
Transfer | 5289711 | 2676 days ago | 10.03348474 ETH | ||||
Transfer | 5289702 | 2676 days ago | 0.16325024 ETH | ||||
Transfer | 5289702 | 2676 days ago | 9.29026365 ETH | ||||
Transfer | 5289701 | 2676 days ago | 1.89189837 ETH | ||||
Transfer | 5289701 | 2676 days ago | 8.60209597 ETH | ||||
Transfer | 5289697 | 2676 days ago | 1.56657257 ETH | ||||
Transfer | 5289697 | 2676 days ago | 7.96490368 ETH |
Loading...
Loading
Contract Name:
ETPotatoPresale
Compiler Version
v0.4.21+commit.dfe3193c
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-03-20 */ pragma solidity ^0.4.21; // SafeMath is a part of Zeppelin Solidity library // licensed under MIT License // https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/LICENSE /** * @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; } } // https://github.com/OpenZeppelin/zeppelin-solidity /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { function totalSupply() public view returns (uint256); 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); } /** * @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); } /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) balances; uint256 totalSupply_; /** * @dev Protection from short address attack */ modifier onlyPayloadSize(uint size) { assert(msg.data.length == size + 4); _; } /** * @dev total number of tokens in existence */ function totalSupply() public view returns (uint256) { return totalSupply_; } /** * @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) onlyPayloadSize(2 * 32) 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); emit Transfer(msg.sender, _to, _value); _postTransferHook(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]; } /** * @dev Hook for custom actions to be executed after transfer has completed * @param _from Transferred from * @param _to Transferred to * @param _value Value transferred */ function _postTransferHook(address _from, address _to, uint256 _value) internal; } /** * @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); emit Transfer(_from, _to, _value); _postTransferHook(_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; emit 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); emit 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); } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } contract Owned { address owner; modifier onlyOwner { require(msg.sender == owner); _; } /// @dev Contract constructor function Owned() public { owner = msg.sender; } } contract AcceptsTokens { ETToken public tokenContract; function AcceptsTokens(address _tokenContract) public { tokenContract = ETToken(_tokenContract); } modifier onlyTokenContract { require(msg.sender == address(tokenContract)); _; } function acceptTokens(address _from, uint256 _value, uint256 param1, uint256 param2, uint256 param3) external; } contract ETToken is Owned, StandardToken { using SafeMath for uint; string public name = "ETH.TOWN Token"; string public symbol = "ETIT"; uint8 public decimals = 18; address public beneficiary; address public oracle; address public heroContract; modifier onlyOracle { require(msg.sender == oracle); _; } mapping (uint32 => address) public floorContracts; mapping (address => bool) public canAcceptTokens; mapping (address => bool) public isMinter; modifier onlyMinters { require(msg.sender == owner || isMinter[msg.sender]); _; } event Dividend(uint256 value); event Withdrawal(address indexed to, uint256 value); event Burn(address indexed from, uint256 value); function ETToken() public { oracle = owner; beneficiary = owner; totalSupply_ = 0; } function setOracle(address _oracle) external onlyOwner { oracle = _oracle; } function setBeneficiary(address _beneficiary) external onlyOwner { beneficiary = _beneficiary; } function setHeroContract(address _heroContract) external onlyOwner { heroContract = _heroContract; } function _mintTokens(address _user, uint256 _amount) private { require(_user != 0x0); balances[_user] = balances[_user].add(_amount); totalSupply_ = totalSupply_.add(_amount); emit Transfer(address(this), _user, _amount); } function authorizeFloor(uint32 _index, address _floorContract) external onlyOwner { floorContracts[_index] = _floorContract; } function _acceptDividends(uint256 _value) internal { uint256 beneficiaryShare = _value / 5; uint256 poolShare = _value.sub(beneficiaryShare); beneficiary.transfer(beneficiaryShare); emit Dividend(poolShare); } function acceptDividends(uint256 _value, uint32 _floorIndex) external { require(floorContracts[_floorIndex] == msg.sender); _acceptDividends(_value); } function rewardTokensFloor(address _user, uint256 _tokens, uint32 _floorIndex) external { require(floorContracts[_floorIndex] == msg.sender); _mintTokens(_user, _tokens); } function rewardTokens(address _user, uint256 _tokens) external onlyMinters { _mintTokens(_user, _tokens); } function() payable public { // Intentionally left empty, for use by floors } function payoutDividends(address _user, uint256 _value) external onlyOracle { _user.transfer(_value); emit Withdrawal(_user, _value); } function accountAuth(uint256 /*_challenge*/) external { // Does nothing by design } function burn(uint256 _amount) external { require(balances[msg.sender] >= _amount); balances[msg.sender] = balances[msg.sender].sub(_amount); totalSupply_ = totalSupply_.sub(_amount); emit Burn(msg.sender, _amount); } function setCanAcceptTokens(address _address, bool _value) external onlyOwner { canAcceptTokens[_address] = _value; } function setIsMinter(address _address, bool _value) external onlyOwner { isMinter[_address] = _value; } function _invokeTokenRecipient(address _from, address _to, uint256 _value, uint256 _param1, uint256 _param2, uint256 _param3) internal { if (!canAcceptTokens[_to]) { return; } AcceptsTokens recipient = AcceptsTokens(_to); recipient.acceptTokens(_from, _value, _param1, _param2, _param3); } /** * @dev transfer token for a specified address and forward the parameters to token recipient if any * @param _to The address to transfer to. * @param _value The amount to be transferred. * @param _param1 Parameter 1 for the token recipient * @param _param2 Parameter 2 for the token recipient * @param _param3 Parameter 3 for the token recipient */ function transferWithParams(address _to, uint256 _value, uint256 _param1, uint256 _param2, uint256 _param3) onlyPayloadSize(5 * 32) external 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); emit Transfer(msg.sender, _to, _value); _invokeTokenRecipient(msg.sender, _to, _value, _param1, _param2, _param3); return true; } /** * @dev Hook for custom actions to be executed after transfer has completed * @param _from Transferred from * @param _to Transferred to * @param _value Value transferred */ function _postTransferHook(address _from, address _to, uint256 _value) internal { _invokeTokenRecipient(_from, _to, _value, 0, 0, 0); } } contract PresaleContract is Owned { ETToken public tokenContract; /// @dev Contract constructor function PresaleContract(address _tokenContract) public { tokenContract = ETToken(_tokenContract); } } contract ETPotatoPresale is PresaleContract { using SafeMath for uint; uint256 public auctionEnd; uint256 public itemType; address public highestBidder; uint256 public highestBid = 0.001 ether; bool public ended; event Bid(address from, uint256 amount); event AuctionEnded(address winner, uint256 amount); function ETPotatoPresale(address _presaleToken, uint256 _auctionEnd, uint256 _itemType) PresaleContract(_presaleToken) public { auctionEnd = _auctionEnd; itemType = _itemType; } function _isContract(address _user) internal view returns (bool) { uint size; assembly { size := extcodesize(_user) } return size > 0; } function auctionExpired() public view returns (bool) { return now > auctionEnd; } function nextBid() public view returns (uint256) { if (highestBid < 0.1 ether) { return highestBid.add(highestBid / 2); } else if (highestBid < 1 ether) { return highestBid.add(highestBid.mul(15).div(100)); } else { return highestBid.add(highestBid.mul(8).div(100)); } } function() public payable { require(!_isContract(msg.sender)); require(!auctionExpired()); uint256 requiredBid = nextBid(); require(msg.value >= requiredBid); uint256 change = msg.value.sub(requiredBid); uint256 difference = requiredBid.sub(highestBid); uint256 reward = difference / 4; if (highestBidder != 0x0) { highestBidder.transfer(highestBid.add(reward)); } if (change > 0) { msg.sender.transfer(change); } highestBidder = msg.sender; highestBid = requiredBid; emit Bid(msg.sender, requiredBid); } function endAuction() public onlyOwner { require(auctionExpired()); require(!ended); ended = true; emit AuctionEnded(highestBidder, highestBid); tokenContract.rewardTokens(highestBidder, highestBid * 200); owner.transfer(address(this).balance); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"ended","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"nextBid","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"auctionEnd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"auctionExpired","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"highestBidder","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"highestBid","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"itemType","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"endAuction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_presaleToken","type":"address"},{"name":"_auctionEnd","type":"uint256"},{"name":"_itemType","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Bid","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"winner","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AuctionEnded","type":"event"}]
Contract Creation Code
606060405266038d7ea4c68000600555341561001a57600080fd5b60405160608061066783398101604052808051919060200180519190602001805160008054600160a060020a03338116600160a060020a031992831617909255600180549290971691161790945550506002556003556105e88061007f6000396000f3006060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166312fa6feb811461021c57806327151526146102435780632a24f46c1461026857806355a373d61461027b5780636a3f5146146102aa57806391f90157146102bd578063d57bde79146102d0578063f5470d7b146102e3578063fe67a54b146102f6575b6000806000806100a73361030b565b156100b157600080fd5b6100b9610313565b156100c357600080fd5b6100cb61031c565b935034849010156100db57600080fd5b6100eb348563ffffffff6103b016565b9250610102600554856103b090919063ffffffff16565b6004805491935083049150600160a060020a03161561016657600454600554600160a060020a03909116906108fc90610141908463ffffffff6103c216565b9081150290604051600060405180830381858888f19350505050151561016657600080fd5b60008311156101a057600160a060020a03331683156108fc0284604051600060405180830381858888f1935050505015156101a057600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a0381169190911790915560058590557fe684a55f31b79eca403df938249029212a5925ec6be8012e099b45bc1019e5d29085604051600160a060020a03909216825260208201526040908101905180910390a150505050005b341561022757600080fd5b61022f6103dc565b604051901515815260200160405180910390f35b341561024e57600080fd5b61025661031c565b60405190815260200160405180910390f35b341561027357600080fd5b6102566103e5565b341561028657600080fd5b61028e6103eb565b604051600160a060020a03909116815260200160405180910390f35b34156102b557600080fd5b61022f610313565b34156102c857600080fd5b61028e6103fa565b34156102db57600080fd5b610256610409565b34156102ee57600080fd5b61025661040f565b341561030157600080fd5b610309610415565b005b6000903b1190565b60025442115b90565b600067016345785d8a000060055410156103475760055461034090600281046103c2565b9050610319565b670de0b6b3a76400006005541015610392576103406103836064610377600f60055461057a90919063ffffffff16565b9063ffffffff6105a516565b6005549063ffffffff6103c216565b6103406103836064610377600860055461057a90919063ffffffff16565b6000828211156103bc57fe5b50900390565b6000828201838110156103d157fe5b8091505b5092915050565b60065460ff1681565b60025481565b600154600160a060020a031681565b600454600160a060020a031681565b60055481565b60035481565b60005433600160a060020a0390811691161461043057600080fd5b610438610313565b151561044357600080fd5b60065460ff161561045357600080fd5b6006805460ff191660011790556004546005547fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda91600160a060020a031690604051600160a060020a03909216825260208201526040908101905180910390a1600154600454600554600160a060020a03928316926381a4af1592169060c8026040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561052f57600080fd5b5af1151561053c57600080fd5b5050600054600160a060020a03908116915030163180156108fc0290604051600060405180830381858888f19350505050151561057857600080fd5b565b60008083151561058d57600091506103d5565b5082820282848281151561059d57fe5b04146103d157fe5b60008082848115156105b357fe5b049493505050505600a165627a7a723058208955545c9a8c2a50fa441f05c4892d1f3263e4ffd96583d6c19692f4ad33fa8600290000000000000000000000008fe19c447821b4cdcdd5012bca1b5469ca96d80d000000000000000000000000000000000000000000000000000000005ab5a3100000000000000000000000000000000000000000000000000000000000000003
Deployed Bytecode
0x6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166312fa6feb811461021c57806327151526146102435780632a24f46c1461026857806355a373d61461027b5780636a3f5146146102aa57806391f90157146102bd578063d57bde79146102d0578063f5470d7b146102e3578063fe67a54b146102f6575b6000806000806100a73361030b565b156100b157600080fd5b6100b9610313565b156100c357600080fd5b6100cb61031c565b935034849010156100db57600080fd5b6100eb348563ffffffff6103b016565b9250610102600554856103b090919063ffffffff16565b6004805491935083049150600160a060020a03161561016657600454600554600160a060020a03909116906108fc90610141908463ffffffff6103c216565b9081150290604051600060405180830381858888f19350505050151561016657600080fd5b60008311156101a057600160a060020a03331683156108fc0284604051600060405180830381858888f1935050505015156101a057600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a0381169190911790915560058590557fe684a55f31b79eca403df938249029212a5925ec6be8012e099b45bc1019e5d29085604051600160a060020a03909216825260208201526040908101905180910390a150505050005b341561022757600080fd5b61022f6103dc565b604051901515815260200160405180910390f35b341561024e57600080fd5b61025661031c565b60405190815260200160405180910390f35b341561027357600080fd5b6102566103e5565b341561028657600080fd5b61028e6103eb565b604051600160a060020a03909116815260200160405180910390f35b34156102b557600080fd5b61022f610313565b34156102c857600080fd5b61028e6103fa565b34156102db57600080fd5b610256610409565b34156102ee57600080fd5b61025661040f565b341561030157600080fd5b610309610415565b005b6000903b1190565b60025442115b90565b600067016345785d8a000060055410156103475760055461034090600281046103c2565b9050610319565b670de0b6b3a76400006005541015610392576103406103836064610377600f60055461057a90919063ffffffff16565b9063ffffffff6105a516565b6005549063ffffffff6103c216565b6103406103836064610377600860055461057a90919063ffffffff16565b6000828211156103bc57fe5b50900390565b6000828201838110156103d157fe5b8091505b5092915050565b60065460ff1681565b60025481565b600154600160a060020a031681565b600454600160a060020a031681565b60055481565b60035481565b60005433600160a060020a0390811691161461043057600080fd5b610438610313565b151561044357600080fd5b60065460ff161561045357600080fd5b6006805460ff191660011790556004546005547fdaec4582d5d9595688c8c98545fdd1c696d41c6aeaeb636737e84ed2f5c00eda91600160a060020a031690604051600160a060020a03909216825260208201526040908101905180910390a1600154600454600554600160a060020a03928316926381a4af1592169060c8026040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561052f57600080fd5b5af1151561053c57600080fd5b5050600054600160a060020a03908116915030163180156108fc0290604051600060405180830381858888f19350505050151561057857600080fd5b565b60008083151561058d57600091506103d5565b5082820282848281151561059d57fe5b04146103d157fe5b60008082848115156105b357fe5b049493505050505600a165627a7a723058208955545c9a8c2a50fa441f05c4892d1f3263e4ffd96583d6c19692f4ad33fa860029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008fe19c447821b4cdcdd5012bca1b5469ca96d80d000000000000000000000000000000000000000000000000000000005ab5a3100000000000000000000000000000000000000000000000000000000000000003
-----Decoded View---------------
Arg [0] : _presaleToken (address): 0x8fe19C447821B4cdCdd5012BCa1B5469cA96d80D
Arg [1] : _auctionEnd (uint256): 1521853200
Arg [2] : _itemType (uint256): 3
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000008fe19c447821b4cdcdd5012bca1b5469ca96d80d
Arg [1] : 000000000000000000000000000000000000000000000000000000005ab5a310
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000003
Swarm Source
bzzr://8955545c9a8c2a50fa441f05c4892d1f3263e4ffd96583d6c19692f4ad33fa86
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 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.