Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 37 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer Token O... | 5928301 | 2433 days ago | IN | 0 ETH | 0.00139244 | ||||
Allocate | 5886514 | 2440 days ago | IN | 0 ETH | 0.00265155 | ||||
Allocate | 5805292 | 2454 days ago | IN | 0 ETH | 0.00265155 | ||||
Transfer | 5750239 | 2464 days ago | IN | 7.18 ETH | 0.00248542 | ||||
Transfer | 5749913 | 2464 days ago | IN | 1.0750929 ETH | 0.00371542 | ||||
Transfer | 5734077 | 2467 days ago | IN | 1.6 ETH | 0.00063434 | ||||
Transfer | 5675423 | 2477 days ago | IN | 0.0424444 ETH | 0.00371542 | ||||
Transfer | 5657295 | 2480 days ago | IN | 0.1 ETH | 0.0054372 | ||||
Transfer | 5625177 | 2486 days ago | IN | 0.1 ETH | 0.00248542 | ||||
Transfer | 5603937 | 2490 days ago | IN | 0.1 ETH | 0.00030248 | ||||
Transfer | 5579171 | 2494 days ago | IN | 0.29218458 ETH | 0.00248542 | ||||
Transfer | 5579141 | 2494 days ago | IN | 0.2 ETH | 0.00371542 | ||||
Transfer | 5577983 | 2494 days ago | IN | 0.9918 ETH | 0.00371542 | ||||
Transfer | 5572872 | 2495 days ago | IN | 0.1008 ETH | 0.00018124 | ||||
Allocate | 5572087 | 2495 days ago | IN | 0 ETH | 0.00290736 | ||||
Allocate | 5572071 | 2495 days ago | IN | 0 ETH | 0.00291312 | ||||
Allocate | 5572059 | 2495 days ago | IN | 0 ETH | 0.00291024 | ||||
Allocate | 5572007 | 2495 days ago | IN | 0 ETH | 0.00291024 | ||||
Allocate | 5571991 | 2495 days ago | IN | 0 ETH | 0.00223524 | ||||
Allocate | 5571927 | 2495 days ago | IN | 0 ETH | 0.00291024 | ||||
Allocate | 5571920 | 2495 days ago | IN | 0 ETH | 0.00291024 | ||||
Allocate | 5571912 | 2495 days ago | IN | 0 ETH | 0.00290736 | ||||
Allocate | 5571906 | 2495 days ago | IN | 0 ETH | 0.00290736 | ||||
Allocate | 5571903 | 2495 days ago | IN | 0 ETH | 0.00291312 | ||||
Allocate | 5571884 | 2495 days ago | IN | 0 ETH | 0.00291024 |
Latest 14 internal transactions
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 5750239 | 2464 days ago | 7.18 ETH | ||||
Transfer | 5749913 | 2464 days ago | 1.0750929 ETH | ||||
Transfer | 5734077 | 2467 days ago | 1.6 ETH | ||||
Transfer | 5675423 | 2477 days ago | 0.0424444 ETH | ||||
Transfer | 5657295 | 2480 days ago | 0.1 ETH | ||||
Transfer | 5625177 | 2486 days ago | 0.1 ETH | ||||
Transfer | 5603937 | 2490 days ago | 0.1 ETH | ||||
Transfer | 5579171 | 2494 days ago | 0.29218458 ETH | ||||
Transfer | 5579141 | 2494 days ago | 0.2 ETH | ||||
Transfer | 5577983 | 2494 days ago | 0.9918 ETH | ||||
Transfer | 5572872 | 2495 days ago | 0.1008 ETH | ||||
Transfer | 5571795 | 2495 days ago | 0.02 ETH | ||||
Transfer | 5571559 | 2495 days ago | 0.04 ETH | ||||
Transfer | 5571492 | 2495 days ago | 0.005 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
AllstocksCrowdsale
Compiler Version
v0.4.23+commit.124ca40d
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-05-07 */ pragma solidity 0.4.23; // ---------------------------------------------------------------------------- // Safe maths // ---------------------------------------------------------------------------- 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; } } // ---------------------------------------------------------------------------- // ERC Token Standard #20 Interface // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md // ---------------------------------------------------------------------------- contract ERC20Interface { function totalSupply() public constant returns (uint256); function balanceOf(address tokenOwner) public constant returns (uint256 balance); function allowance(address tokenOwner, address spender) public constant returns (uint256 remaining); function transfer(address to, uint256 tokens) public returns (bool success); function approve(address spender, uint256 tokens) public returns (bool success); function transferFrom(address from, address to, uint256 tokens) public returns (bool success); function mint(address _to, uint256 _amount) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 tokens); event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens); } // ---------------------------------------------------------------------------- // Owned contract // ---------------------------------------------------------------------------- contract Owned { address public owner; event OwnershipTransferred(address indexed _from, address indexed _to); constructor() public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } function transferOwnership(address _newOwner) public onlyOwner { require(_newOwner != address(0)); require(owner == msg.sender); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } /** * @title AllstocksCrowdsale * @dev Crowdsale is a base contract for managing a token crowdsale, * allowing investors to purchase tokens with ether. This contract implements * such functionality in its most fundamental form and can be extended to provide additional * functionality and/or custom behavior. * The external interface represents the basic interface for purchasing tokens, and conform * the base architecture for crowdsales. They are *not* intended to be modified / overriden. * The internal interface conforms the extensible and modifiable surface of crowdsales. Override * the methods to add functionality. Consider using 'super' where appropiate to concatenate * behavior. */ contract AllstocksCrowdsale is Owned { using SafeMath for uint256; // The token being sold //ERC20Interface public token; address public token; // Address where funds are collected address public ethFundDeposit; // How many token units a buyer gets per wei // starts with 625 Allstocks tokens per 1 ETH uint256 public tokenExchangeRate = 625; // 25m hard cap uint256 public tokenCreationCap = 25 * (10**6) * 10**18; // 25m maximum; //2.5m softcap uint256 public tokenCreationMin = 25 * (10**5) * 10**18; // 2.5m minimum // Amount of wei raised uint256 public _raised = 0; // switched to true in after setup bool public isActive = false; //start time uint256 public fundingStartTime = 0; //end time uint256 public fundingEndTime = 0; // switched to true in operational state bool public isFinalized = false; //refund list - will hold a list of all contributers mapping(address => uint256) public refunds; /** * Event for token Allocate logging * @param allocator for the tokens * @param beneficiary who got the tokens * @param amount amount of tokens purchased */ event TokenAllocated(address indexed allocator, address indexed beneficiary, uint256 amount); event LogRefund(address indexed _to, uint256 _value); constructor() public { tokenExchangeRate = 625; } function setup (uint256 _fundingStartTime, uint256 _fundingEndTime, address _token) onlyOwner external { require (isActive == false); require (isFinalized == false); require (msg.sender == owner); // locks finalize to the ultimate ETH owner require(_fundingStartTime > 0); require(_fundingEndTime > 0 && _fundingEndTime > _fundingStartTime); require(_token != address(0)); isFinalized = false; // controls pre through crowdsale state isActive = true; // set sale status to be true ethFundDeposit = owner; // set ETH wallet owner fundingStartTime = _fundingStartTime; fundingEndTime = _fundingEndTime; //set token token = _token; } /// @dev send funding to safe wallet if minimum is reached function vaultFunds() public onlyOwner { require(msg.sender == owner); // Allstocks double chack require(_raised >= tokenCreationMin); // have to sell minimum to move to operational ethFundDeposit.transfer(address(this).balance); // send the eth to Allstocks } // ----------------------------------------- // Crowdsale external interface // ----------------------------------------- /** * @dev fallback function ***DO NOT OVERRIDE*** */ function () external payable { buyTokens(msg.sender, msg.value); } /** * @dev low level token purchase ***DO NOT OVERRIDE*** * @param _beneficiary Address performing the token purchase */ function buyTokens(address _beneficiary, uint256 _value) internal { _preValidatePurchase(_beneficiary, _value); // calculate token amount to be created uint256 tokens = _getTokenAmount(_value); // update state uint256 checkedSupply = _raised.add(tokens); //check that we are not over cap require(checkedSupply <= tokenCreationCap); _raised = checkedSupply; bool mined = ERC20Interface(token).mint(_beneficiary, tokens); require(mined); //add sent eth to refunds list refunds[_beneficiary] = _value.add(refunds[_beneficiary]); // safeAdd emit TokenAllocated(this, _beneficiary, tokens); // log it //forward funds to deposite only in minimum was reached if(_raised >= tokenCreationMin) { _forwardFunds(); } } // @dev method for manageing bonus phases function setRate(uint256 _value) external onlyOwner { require (isActive == true); require(msg.sender == owner); // Allstocks double check owner // Range is set between 500 to 625, based on the bonus program stated in whitepaper. // Upper range is set to 1500 (x3 times margin based on ETH price) . require (_value >= 500 && _value <= 1500); tokenExchangeRate = _value; } // @dev method for allocate tokens to beneficiary account function allocate(address _beneficiary, uint256 _value) public onlyOwner returns (bool success) { require (isActive == true); // sale have to be active require (_value > 0); // value must be greater then 0 require (msg.sender == owner); // Allstocks double chack require(_beneficiary != address(0)); // none empty address uint256 checkedSupply = _raised.add(_value); require(checkedSupply <= tokenCreationCap); //check that we dont over cap _raised = checkedSupply; bool sent = ERC20Interface(token).mint(_beneficiary, _value); // mint using ERC20 interface require(sent); emit TokenAllocated(this, _beneficiary, _value); // log it return true; } //claim back token ownership function transferTokenOwnership(address _newTokenOwner) public onlyOwner { require(_newTokenOwner != address(0)); require(owner == msg.sender); Owned(token).transferOwnership(_newTokenOwner); } /// @dev Allows contributors to recover their ether in the case of a failed funding campaign. function refund() external { require (isFinalized == false); // prevents refund if operational require (isActive == true); // only if sale is active require (now > fundingEndTime); // prevents refund until sale period is over require(_raised < tokenCreationMin); // no refunds if we sold enough require(msg.sender != owner); // Allstocks not entitled to a refund //get contribution amount in eth uint256 ethValRefund = refunds[msg.sender]; //refund should be greater then zero require(ethValRefund > 0); //zero sender refund balance refunds[msg.sender] = 0; //check user balance uint256 allstocksVal = ERC20Interface(token).balanceOf(msg.sender); //substruct from total raised - please notice main assumption is that tokens are not tradeble at this stage. _raised = _raised.sub(allstocksVal); // extra safe //send eth back to user msg.sender.transfer(ethValRefund); // if you're using a contract; make sure it works with .send gas limits emit LogRefund(msg.sender, ethValRefund); // log it } /// @dev Ends the funding period and sends the ETH home function finalize() external onlyOwner { require (isFinalized == false); require(msg.sender == owner); // Allstocks double chack require(_raised >= tokenCreationMin); // have to sell minimum to move to operational require(_raised > 0); if (now < fundingEndTime) { //if try to close before end time, check that we reach max cap require(_raised >= tokenCreationCap); } else require(now >= fundingEndTime); //allow finilize only after time ends //transfer token ownership back to original owner transferTokenOwnership(owner); // move to operational isFinalized = true; vaultFunds(); // send the eth to Allstocks } // ----------------------------------------- // Internal interface (extensible) // ----------------------------------------- /** * @dev Validation of an incoming purchase. Use require statements to revert state when conditions are not met. Use super to concatenate validations. * @param _beneficiary Address performing the token purchase * @param _weiAmount Value in wei involved in the purchase */ function _preValidatePurchase(address _beneficiary, uint256 _weiAmount) view internal { require(now >= fundingStartTime); require(now < fundingEndTime); require(_beneficiary != address(0)); require(_weiAmount != 0); } /** * @dev Override to extend the way in which ether is converted to tokens. * @param _weiAmount Value in wei to be converted into tokens * @return Number of tokens that can be purchased with the specified _weiAmount */ function _getTokenAmount(uint256 _weiAmount) internal view returns (uint256) { return _weiAmount.mul(tokenExchangeRate); } /** * @dev Determines how ETH is stored/forwarded on purchases. */ function _forwardFunds() internal { ethFundDeposit.transfer(msg.value); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_fundingStartTime","type":"uint256"},{"name":"_fundingEndTime","type":"uint256"},{"name":"_token","type":"address"}],"name":"setup","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"fundingStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newTokenOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setRate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"vaultFunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenExchangeRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenCreationCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"fundingEndTime","outputs":[{"name":"","type":"uint256"}],"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":"ethFundDeposit","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_beneficiary","type":"address"},{"name":"_value","type":"uint256"}],"name":"allocate","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"refunds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenCreationMin","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_raised","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":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"allocator","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenAllocated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"LogRefund","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60806040526102716003556a14adf4b7320334b90000006004556a0211654585005212800000600555600060068190556007805460ff199081169091556008829055600991909155600a8054909116905534801561005c57600080fd5b5060008054600160a060020a033316600160a060020a0319909116179055610271600355610de08061008f6000396000f3006080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663080fbebf811461011d5780631df935581461014457806321e6b53d1461016b57806322f3e2d41461018c57806334fcf437146101b55780633aa51e41146101cd5780634172d080146101e25780634bb278f3146101f7578063590e1ae31461020c5780636f7920fd1461022157806374eedd46146102365780638d4e40831461024b5780638da5cb5b14610260578063a81c3bdf14610291578063b78b52df146102a6578063bc3da535146102ca578063c039daf6146102eb578063f2fde38b14610300578063f5ac631914610321578063fc0c546a14610336575b61011b333461034b565b005b34801561012957600080fd5b5061011b600435602435600160a060020a03604435166104d5565b34801561015057600080fd5b506101596105ca565b60408051918252519081900360200190f35b34801561017757600080fd5b5061011b600160a060020a03600435166105d0565b34801561019857600080fd5b506101a1610696565b604080519115158252519081900360200190f35b3480156101c157600080fd5b5061011b60043561069f565b3480156101d957600080fd5b5061011b61070d565b3480156101ee57600080fd5b50610159610792565b34801561020357600080fd5b5061011b610798565b34801561021857600080fd5b5061011b610859565b34801561022d57600080fd5b50610159610a18565b34801561024257600080fd5b50610159610a1e565b34801561025757600080fd5b506101a1610a24565b34801561026c57600080fd5b50610275610a2d565b60408051600160a060020a039092168252519081900360200190f35b34801561029d57600080fd5b50610275610a3c565b3480156102b257600080fd5b506101a1600160a060020a0360043516602435610a4b565b3480156102d657600080fd5b50610159600160a060020a0360043516610be5565b3480156102f757600080fd5b50610159610bf7565b34801561030c57600080fd5b5061011b600160a060020a0360043516610bfd565b34801561032d57600080fd5b50610159610cb0565b34801561034257600080fd5b50610275610cb6565b600080600061035a8585610cc5565b61036384610d07565b600654909350610379908463ffffffff610d2416565b60045490925082111561038b57600080fd5b6006829055600154604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03888116600483015260248201879052915191909216916340c10f199160448083019260209291908290030181600087803b1580156103ff57600080fd5b505af1158015610413573d6000803e3d6000fd5b505050506040513d602081101561042957600080fd5b5051905080151561043957600080fd5b600160a060020a0385166000908152600b602052604090205461046390859063ffffffff610d2416565b600160a060020a038087166000818152600b60209081526040918290209490945580518781529051919330909316927f918348ece72b49a58054829fde7465a1e06386019b2a981c2daee97b0f795ede92918290030190a3600554600654106104ce576104ce610d3e565b5050505050565b60005433600160a060020a039081169116146104f057600080fd5b60075460ff161561050057600080fd5b600a5460ff161561051057600080fd5b60005433600160a060020a0390811691161461052b57600080fd5b6000831161053857600080fd5b60008211801561054757508282115b151561055257600080fd5b600160a060020a038116151561056757600080fd5b600a805460ff1990811690915560078054909116600190811790915560005460028054600160a060020a0392831673ffffffffffffffffffffffffffffffffffffffff199182161790915560089590955560099390935580549093169116179055565b60085481565b60005433600160a060020a039081169116146105eb57600080fd5b600160a060020a038116151561060057600080fd5b60005433600160a060020a0390811691161461061b57600080fd5b600154604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561068257600080fd5b505af11580156104ce573d6000803e3d6000fd5b60075460ff1681565b60005433600160a060020a039081169116146106ba57600080fd5b60075460ff1615156001146106ce57600080fd5b60005433600160a060020a039081169116146106e957600080fd5b6101f481101580156106fd57506105dc8111155b151561070857600080fd5b600355565b60005433600160a060020a0390811691161461072857600080fd5b60005433600160a060020a0390811691161461074357600080fd5b600554600654101561075457600080fd5b600254604051600160a060020a039182169130163180156108fc02916000818181858888f1935050505015801561078f573d6000803e3d6000fd5b50565b60035481565b60005433600160a060020a039081169116146107b357600080fd5b600a5460ff16156107c357600080fd5b60005433600160a060020a039081169116146107de57600080fd5b60055460065410156107ef57600080fd5b6006546000106107fe57600080fd5b60095442101561081e57600454600654101561081957600080fd5b61082d565b60095442101561082d57600080fd5b60005461084290600160a060020a03166105d0565b600a805460ff1916600117905561085761070d565b565b600a54600090819060ff161561086e57600080fd5b60075460ff16151560011461088257600080fd5b600954421161089057600080fd5b600554600654106108a057600080fd5b60005433600160a060020a03908116911614156108bc57600080fd5b600160a060020a0333166000908152600b6020526040812054925082116108e257600080fd5b600160a060020a033381166000818152600b6020908152604080832083905560015481517f70a08231000000000000000000000000000000000000000000000000000000008152600481019590955290519416936370a0823193602480820194918390030190829087803b15801561095957600080fd5b505af115801561096d573d6000803e3d6000fd5b505050506040513d602081101561098357600080fd5b505160065490915061099b908263ffffffff610d7716565b600655604051600160a060020a0333169083156108fc029084906000818181858888f193505050501580156109d4573d6000803e3d6000fd5b50604080518381529051600160a060020a033316917fb6c0eca8138e097d71e2dd31e19a1266487f0553f170b7260ffe68bcbe9ff8a7919081900360200190a25050565b60045481565b60095481565b600a5460ff1681565b600054600160a060020a031681565b600254600160a060020a031681565b600080548190819033600160a060020a03908116911614610a6b57600080fd5b60075460ff161515600114610a7f57600080fd5b60008411610a8c57600080fd5b60005433600160a060020a03908116911614610aa757600080fd5b600160a060020a0385161515610abc57600080fd5b600654610acf908563ffffffff610d2416565b600454909250821115610ae157600080fd5b6006829055600154604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03888116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b158015610b5557600080fd5b505af1158015610b69573d6000803e3d6000fd5b505050506040513d6020811015610b7f57600080fd5b50519050801515610b8f57600080fd5b84600160a060020a031630600160a060020a03167f918348ece72b49a58054829fde7465a1e06386019b2a981c2daee97b0f795ede866040518082815260200191505060405180910390a3506001949350505050565b600b6020526000908152604090205481565b60055481565b60005433600160a060020a03908116911614610c1857600080fd5b600160a060020a0381161515610c2d57600080fd5b60005433600160a060020a03908116911614610c4857600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60065481565b600154600160a060020a031681565b600854421015610cd457600080fd5b6009544210610ce257600080fd5b600160a060020a0382161515610cf757600080fd5b801515610d0357600080fd5b5050565b6000610d1e60035483610d8990919063ffffffff16565b92915050565b600082820183811015610d3357fe5b8091505b5092915050565b600254604051600160a060020a03909116903480156108fc02916000818181858888f1935050505015801561078f573d6000803e3d6000fd5b600082821115610d8357fe5b50900390565b600080831515610d9c5760009150610d37565b50828202828482811515610dac57fe5b0414610d3357fe00a165627a7a723058201c33262d42051211ecc64c850de6aa1cd460e5411e1d63713862e227b2880fdd0029
Deployed Bytecode
0x6080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663080fbebf811461011d5780631df935581461014457806321e6b53d1461016b57806322f3e2d41461018c57806334fcf437146101b55780633aa51e41146101cd5780634172d080146101e25780634bb278f3146101f7578063590e1ae31461020c5780636f7920fd1461022157806374eedd46146102365780638d4e40831461024b5780638da5cb5b14610260578063a81c3bdf14610291578063b78b52df146102a6578063bc3da535146102ca578063c039daf6146102eb578063f2fde38b14610300578063f5ac631914610321578063fc0c546a14610336575b61011b333461034b565b005b34801561012957600080fd5b5061011b600435602435600160a060020a03604435166104d5565b34801561015057600080fd5b506101596105ca565b60408051918252519081900360200190f35b34801561017757600080fd5b5061011b600160a060020a03600435166105d0565b34801561019857600080fd5b506101a1610696565b604080519115158252519081900360200190f35b3480156101c157600080fd5b5061011b60043561069f565b3480156101d957600080fd5b5061011b61070d565b3480156101ee57600080fd5b50610159610792565b34801561020357600080fd5b5061011b610798565b34801561021857600080fd5b5061011b610859565b34801561022d57600080fd5b50610159610a18565b34801561024257600080fd5b50610159610a1e565b34801561025757600080fd5b506101a1610a24565b34801561026c57600080fd5b50610275610a2d565b60408051600160a060020a039092168252519081900360200190f35b34801561029d57600080fd5b50610275610a3c565b3480156102b257600080fd5b506101a1600160a060020a0360043516602435610a4b565b3480156102d657600080fd5b50610159600160a060020a0360043516610be5565b3480156102f757600080fd5b50610159610bf7565b34801561030c57600080fd5b5061011b600160a060020a0360043516610bfd565b34801561032d57600080fd5b50610159610cb0565b34801561034257600080fd5b50610275610cb6565b600080600061035a8585610cc5565b61036384610d07565b600654909350610379908463ffffffff610d2416565b60045490925082111561038b57600080fd5b6006829055600154604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03888116600483015260248201879052915191909216916340c10f199160448083019260209291908290030181600087803b1580156103ff57600080fd5b505af1158015610413573d6000803e3d6000fd5b505050506040513d602081101561042957600080fd5b5051905080151561043957600080fd5b600160a060020a0385166000908152600b602052604090205461046390859063ffffffff610d2416565b600160a060020a038087166000818152600b60209081526040918290209490945580518781529051919330909316927f918348ece72b49a58054829fde7465a1e06386019b2a981c2daee97b0f795ede92918290030190a3600554600654106104ce576104ce610d3e565b5050505050565b60005433600160a060020a039081169116146104f057600080fd5b60075460ff161561050057600080fd5b600a5460ff161561051057600080fd5b60005433600160a060020a0390811691161461052b57600080fd5b6000831161053857600080fd5b60008211801561054757508282115b151561055257600080fd5b600160a060020a038116151561056757600080fd5b600a805460ff1990811690915560078054909116600190811790915560005460028054600160a060020a0392831673ffffffffffffffffffffffffffffffffffffffff199182161790915560089590955560099390935580549093169116179055565b60085481565b60005433600160a060020a039081169116146105eb57600080fd5b600160a060020a038116151561060057600080fd5b60005433600160a060020a0390811691161461061b57600080fd5b600154604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561068257600080fd5b505af11580156104ce573d6000803e3d6000fd5b60075460ff1681565b60005433600160a060020a039081169116146106ba57600080fd5b60075460ff1615156001146106ce57600080fd5b60005433600160a060020a039081169116146106e957600080fd5b6101f481101580156106fd57506105dc8111155b151561070857600080fd5b600355565b60005433600160a060020a0390811691161461072857600080fd5b60005433600160a060020a0390811691161461074357600080fd5b600554600654101561075457600080fd5b600254604051600160a060020a039182169130163180156108fc02916000818181858888f1935050505015801561078f573d6000803e3d6000fd5b50565b60035481565b60005433600160a060020a039081169116146107b357600080fd5b600a5460ff16156107c357600080fd5b60005433600160a060020a039081169116146107de57600080fd5b60055460065410156107ef57600080fd5b6006546000106107fe57600080fd5b60095442101561081e57600454600654101561081957600080fd5b61082d565b60095442101561082d57600080fd5b60005461084290600160a060020a03166105d0565b600a805460ff1916600117905561085761070d565b565b600a54600090819060ff161561086e57600080fd5b60075460ff16151560011461088257600080fd5b600954421161089057600080fd5b600554600654106108a057600080fd5b60005433600160a060020a03908116911614156108bc57600080fd5b600160a060020a0333166000908152600b6020526040812054925082116108e257600080fd5b600160a060020a033381166000818152600b6020908152604080832083905560015481517f70a08231000000000000000000000000000000000000000000000000000000008152600481019590955290519416936370a0823193602480820194918390030190829087803b15801561095957600080fd5b505af115801561096d573d6000803e3d6000fd5b505050506040513d602081101561098357600080fd5b505160065490915061099b908263ffffffff610d7716565b600655604051600160a060020a0333169083156108fc029084906000818181858888f193505050501580156109d4573d6000803e3d6000fd5b50604080518381529051600160a060020a033316917fb6c0eca8138e097d71e2dd31e19a1266487f0553f170b7260ffe68bcbe9ff8a7919081900360200190a25050565b60045481565b60095481565b600a5460ff1681565b600054600160a060020a031681565b600254600160a060020a031681565b600080548190819033600160a060020a03908116911614610a6b57600080fd5b60075460ff161515600114610a7f57600080fd5b60008411610a8c57600080fd5b60005433600160a060020a03908116911614610aa757600080fd5b600160a060020a0385161515610abc57600080fd5b600654610acf908563ffffffff610d2416565b600454909250821115610ae157600080fd5b6006829055600154604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03888116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b158015610b5557600080fd5b505af1158015610b69573d6000803e3d6000fd5b505050506040513d6020811015610b7f57600080fd5b50519050801515610b8f57600080fd5b84600160a060020a031630600160a060020a03167f918348ece72b49a58054829fde7465a1e06386019b2a981c2daee97b0f795ede866040518082815260200191505060405180910390a3506001949350505050565b600b6020526000908152604090205481565b60055481565b60005433600160a060020a03908116911614610c1857600080fd5b600160a060020a0381161515610c2d57600080fd5b60005433600160a060020a03908116911614610c4857600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60065481565b600154600160a060020a031681565b600854421015610cd457600080fd5b6009544210610ce257600080fd5b600160a060020a0382161515610cf757600080fd5b801515610d0357600080fd5b5050565b6000610d1e60035483610d8990919063ffffffff16565b92915050565b600082820183811015610d3357fe5b8091505b5092915050565b600254604051600160a060020a03909116903480156108fc02916000818181858888f1935050505015801561078f573d6000803e3d6000fd5b600082821115610d8357fe5b50900390565b600080831515610d9c5760009150610d37565b50828202828482811515610dac57fe5b0414610d3357fe00a165627a7a723058201c33262d42051211ecc64c850de6aa1cd460e5411e1d63713862e227b2880fdd0029
Swarm Source
bzzr://1c33262d42051211ecc64c850de6aa1cd460e5411e1d63713862e227b2880fdd
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.