More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 928 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Purchase | 13041794 | 1197 days ago | IN | 0.07799791 ETH | 0.00369108 | ||||
Withdraw Balance | 11013144 | 1510 days ago | IN | 0 ETH | 0.00104649 | ||||
Withdraw Balance | 11013125 | 1510 days ago | IN | 0 ETH | 0.00185034 | ||||
Transfer From | 10914921 | 1526 days ago | IN | 0 ETH | 0.00267105 | ||||
Transfer From | 10914901 | 1526 days ago | IN | 0 ETH | 0.00267105 | ||||
Approve | 8847976 | 1853 days ago | IN | 0 ETH | 0.00003123 | ||||
Approve | 8847976 | 1853 days ago | IN | 0 ETH | 0.00004623 | ||||
Approve | 8169723 | 1959 days ago | IN | 0 ETH | 0.00004623 | ||||
Approve | 8012742 | 1983 days ago | IN | 0 ETH | 0.00004623 | ||||
Approve | 6929083 | 2167 days ago | IN | 0 ETH | 0.0000971 | ||||
Approve | 6929043 | 2167 days ago | IN | 0 ETH | 0.00013871 | ||||
Approve | 6591944 | 2222 days ago | IN | 0 ETH | 0.00008746 | ||||
Approve | 6591861 | 2222 days ago | IN | 0 ETH | 0.00013917 | ||||
Purchase | 6248719 | 2279 days ago | IN | 0.27627637 ETH | 0.00017428 | ||||
Purchase | 6248713 | 2279 days ago | IN | 0.06109836 ETH | 0.00013528 | ||||
Purchase | 6248709 | 2279 days ago | IN | 0.04254256 ETH | 0.0001737 | ||||
Purchase | 6248457 | 2279 days ago | IN | 0.06109836 ETH | 0.00016759 | ||||
Purchase | 6248453 | 2279 days ago | IN | 0.10402319 ETH | 0.00016759 | ||||
Approve | 6155302 | 2294 days ago | IN | 0 ETH | 0.00013871 | ||||
Approve | 6124546 | 2300 days ago | IN | 0 ETH | 0.00012495 | ||||
Approve | 6124523 | 2300 days ago | IN | 0 ETH | 0.00062478 | ||||
Purchase | 6095117 | 2305 days ago | IN | 0.20715553 ETH | 0.00008203 | ||||
Approve | 6086714 | 2306 days ago | IN | 0 ETH | 0.00004998 | ||||
Approve | 6083974 | 2306 days ago | IN | 0 ETH | 0.00003123 | ||||
Approve | 6083811 | 2306 days ago | IN | 0 ETH | 0.00003123 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
13041794 | 1197 days ago | 0.07331803 ETH | ||||
11013144 | 1510 days ago | 3.90560187 ETH | ||||
11013125 | 1510 days ago | 0.1 ETH | ||||
6248719 | 2279 days ago | 0.25969979 ETH | ||||
6248713 | 2279 days ago | 0.05743246 ETH | ||||
6248709 | 2279 days ago | 0.03999001 ETH | ||||
6248457 | 2279 days ago | 0.05743246 ETH | ||||
6248453 | 2279 days ago | 0.0977818 ETH | ||||
6095117 | 2305 days ago | 0.1947262 ETH | ||||
6035683 | 2315 days ago | 0.03999001 ETH | ||||
5743581 | 2365 days ago | 0.01938829 ETH | ||||
5565216 | 2396 days ago | 3.95 ETH | ||||
5210148 | 2456 days ago | 0.03999001 ETH | ||||
5207452 | 2457 days ago | 0.03999001 ETH | ||||
5207451 | 2457 days ago | 0.02784489 ETH | ||||
5207447 | 2457 days ago | 0.02784489 ETH | ||||
5205029 | 2457 days ago | 0.02784489 ETH | ||||
5203681 | 2457 days ago | 0.01938829 ETH | ||||
5203680 | 2457 days ago | 0.01938829 ETH | ||||
5202959 | 2458 days ago | 0.01938829 ETH | ||||
5202954 | 2458 days ago | 0.0135 ETH | ||||
5202951 | 2458 days ago | 0.0135 ETH | ||||
5202909 | 2458 days ago | 0.0135 ETH | ||||
5202794 | 2458 days ago | 0.0135 ETH | ||||
5201501 | 2458 days ago | 0.03999001 ETH |
Loading...
Loading
Contract Name:
CryptoArtsToken
Compiler Version
v0.4.18+commit.9cf6e910
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-02-14 */ pragma solidity ^0.4.18; // inspired by // https://github.com/axiomzen/cryptokitties-bounty/blob/master/contracts/KittyAccessControl.sol contract AccessControl { /// @dev The addresses of the accounts (or contracts) that can execute actions within each roles address public ceoAddress; address public cooAddress; /// @dev Keeps track whether the contract is paused. When that is true, most actions are blocked bool public paused = false; /// @dev The AccessControl constructor sets the original C roles of the contract to the sender account function AccessControl() public { ceoAddress = msg.sender; cooAddress = msg.sender; } /// @dev Access modifier for CEO-only functionality modifier onlyCEO() { require(msg.sender == ceoAddress); _; } /// @dev Access modifier for COO-only functionality modifier onlyCOO() { require(msg.sender == cooAddress); _; } /// @dev Access modifier for any CLevel functionality modifier onlyCLevel() { require(msg.sender == ceoAddress || msg.sender == cooAddress); _; } /// @dev Assigns a new address to act as the CEO. Only available to the current CEO /// @param _newCEO The address of the new CEO function setCEO(address _newCEO) public onlyCEO { require(_newCEO != address(0)); ceoAddress = _newCEO; } /// @dev Assigns a new address to act as the COO. Only available to the current CEO /// @param _newCOO The address of the new COO function setCOO(address _newCOO) public onlyCEO { require(_newCOO != address(0)); cooAddress = _newCOO; } /// @dev Modifier to allow actions only when the contract IS NOT paused modifier whenNotPaused() { require(!paused); _; } /// @dev Modifier to allow actions only when the contract IS paused modifier whenPaused { require(paused); _; } /// @dev Pause the smart contract. Only can be called by the CEO function pause() public onlyCEO whenNotPaused { paused = true; } /// @dev Unpauses the smart contract. Only can be called by the CEO function unpause() public onlyCEO whenPaused { paused = false; } } // https://github.com/dharmaprotocol/NonFungibleToken/blob/master/contracts/ERC721.sol // https://github.com/dharmaprotocol/NonFungibleToken/blob/master/contracts/DetailedERC721.sol /** * Interface for required functionality in the ERC721 standard * for non-fungible tokens. * * Author: Nadav Hollander (nadav at dharma.io) */ contract ERC721 { // Events event Transfer(address indexed _from, address indexed _to, uint256 _tokenId); event Approval(address indexed _owner, address indexed _approved, uint256 _tokenId); /// For querying totalSupply of token. function totalSupply() public view returns (uint256 _totalSupply); /// For querying balance of a particular account. /// @param _owner The address for balance query. /// @dev Required for ERC-721 compliance. function balanceOf(address _owner) public view returns (uint256 _balance); /// For querying owner of token. /// @param _tokenId The tokenID for owner inquiry. /// @dev Required for ERC-721 compliance. function ownerOf(uint256 _tokenId) public view returns (address _owner); /// @notice Grant another address the right to transfer token via takeOwnership() and transferFrom() /// @param _to The address to be granted transfer approval. Pass address(0) to /// clear all approvals. /// @param _tokenId The ID of the Token that can be transferred if this call succeeds. /// @dev Required for ERC-721 compliance. function approve(address _to, uint256 _tokenId) public; // NOT IMPLEMENTED // function getApproved(uint256 _tokenId) public view returns (address _approved); /// Third-party initiates transfer of token from address _from to address _to. /// @param _from The address for the token to be transferred from. /// @param _to The address for the token to be transferred to. /// @param _tokenId The ID of the Token that can be transferred if this call succeeds. /// @dev Required for ERC-721 compliance. function transferFrom(address _from, address _to, uint256 _tokenId) public; /// Owner initates the transfer of the token to another account. /// @param _to The address of the recipient, can be a user or contract. /// @param _tokenId The ID of the token to transfer. /// @dev Required for ERC-721 compliance. function transfer(address _to, uint256 _tokenId) public; /// function implementsERC721() public view returns (bool _implementsERC721); // EXTRA /// @notice Allow pre-approved user to take ownership of a token. /// @param _tokenId The ID of the token that can be transferred if this call succeeds. /// @dev Required for ERC-721 compliance. function takeOwnership(uint256 _tokenId) public; } /** * Interface for optional functionality in the ERC721 standard * for non-fungible tokens. * * Author: Nadav Hollander (nadav at dharma.io) */ contract DetailedERC721 is ERC721 { function name() public view returns (string _name); function symbol() public view returns (string _symbol); // function tokenMetadata(uint256 _tokenId) public view returns (string _infoUrl); // function tokenOfOwnerByIndex(address _owner, uint256 _index) public view returns (uint256 _tokenId); } contract CryptoArtsToken is AccessControl, DetailedERC721 { using SafeMath for uint256; /// @dev The TokenCreated event is fired whenever a new token is created. event TokenCreated(uint256 tokenId, string name, uint256 price, address owner); /// @dev The TokenSold event is fired whenever a token is sold. event TokenSold(uint256 indexed tokenId, string name, uint256 sellingPrice, uint256 newPrice, address indexed oldOwner, address indexed newOwner); /// @dev A mapping from tokenIds to the address that owns them. All tokens have /// some valid owner address. mapping (uint256 => address) private tokenIdToOwner; /// @dev A mapping from TokenIds to the price of the token. mapping (uint256 => uint256) private tokenIdToPrice; /// @dev A mapping from owner address to count of tokens that address owns. /// Used internally inside balanceOf() to resolve ownership count. mapping (address => uint256) private ownershipTokenCount; /// @dev A mapping from TokenIds to an address that has been approved to call /// transferFrom(). Each Token can only have one approved address for transfer /// at any time. A zero value means no approval is outstanding mapping (uint256 => address) public tokenIdToApproved; struct Art { string name; } Art[] private arts; uint256 private startingPrice = 0.01 ether; bool private erc721Enabled = false; modifier onlyERC721() { require(erc721Enabled); _; } /// @dev Creates a new token with the given name and _price and assignes it to an _owner. function createToken(string _name, address _owner, uint256 _price) public onlyCLevel { require(_owner != address(0)); require(_price >= startingPrice); _createToken(_name, _owner, _price); } /// @dev Creates a new token with the given name. function createToken(string _name) public onlyCLevel { _createToken(_name, address(this), startingPrice); } function _createToken(string _name, address _owner, uint256 _price) private { Art memory _art = Art({ name: _name }); uint256 newTokenId = arts.push(_art) - 1; tokenIdToPrice[newTokenId] = _price; TokenCreated(newTokenId, _name, _price, _owner); // This will assign ownership, and also emit the Transfer event as per ERC721 draft _transfer(address(0), _owner, newTokenId); } function getToken(uint256 _tokenId) public view returns ( string _tokenName, uint256 _price, uint256 _nextPrice, address _owner ) { _tokenName = arts[_tokenId].name; _price = tokenIdToPrice[_tokenId]; _nextPrice = nextPriceOf(_tokenId); _owner = tokenIdToOwner[_tokenId]; } function getAllTokens() public view returns ( uint256[], uint256[], address[] ) { uint256 total = totalSupply(); uint256[] memory prices = new uint256[](total); uint256[] memory nextPrices = new uint256[](total); address[] memory owners = new address[](total); for (uint256 i = 0; i < total; i++) { prices[i] = tokenIdToPrice[i]; nextPrices[i] = nextPriceOf(i); owners[i] = tokenIdToOwner[i]; } return (prices, nextPrices, owners); } function tokensOf(address _owner) public view returns(uint256[]) { uint256 tokenCount = balanceOf(_owner); if (tokenCount == 0) { // Return an empty array return new uint256[](0); } else { uint256[] memory result = new uint256[](tokenCount); uint256 total = totalSupply(); uint256 resultIndex = 0; for (uint256 i = 0; i < total; i++) { if (tokenIdToOwner[i] == _owner) { result[resultIndex] = i; resultIndex++; } } return result; } } /// @dev This function withdraws the contract owner's cut. /// Any amount may be withdrawn as there is no user funds. /// User funds are immediately sent to the old owner in `purchase` function withdrawBalance(address _to, uint256 _amount) public onlyCEO { require(_amount <= this.balance); if (_amount == 0) { _amount = this.balance; } if (_to == address(0)) { ceoAddress.transfer(_amount); } else { _to.transfer(_amount); } } // Send ether and obtain the token function purchase(uint256 _tokenId) public payable whenNotPaused { address oldOwner = ownerOf(_tokenId); address newOwner = msg.sender; uint256 sellingPrice = priceOf(_tokenId); // active tokens require(oldOwner != address(0)); // maybe one day newOwner's logic allows this to happen require(newOwner != address(0)); // don't buy from yourself require(oldOwner != newOwner); // don't sell to contracts // but even this doesn't prevent bad contracts to become an owner of a token require(!_isContract(newOwner)); // another check to be sure that token is active require(sellingPrice > 0); // min required amount check require(msg.value >= sellingPrice); // transfer to the new owner _transfer(oldOwner, newOwner, _tokenId); // update fields before emitting an event tokenIdToPrice[_tokenId] = nextPriceOf(_tokenId); // emit event TokenSold(_tokenId, arts[_tokenId].name, sellingPrice, priceOf(_tokenId), oldOwner, newOwner); // extra ether which should be returned back to buyer uint256 excess = msg.value.sub(sellingPrice); // contract owner's cut which is left in contract and accesed by withdrawBalance uint256 contractCut = sellingPrice.mul(6).div(100); // 6% // no need to transfer if it's initial sell if (oldOwner != address(this)) { // transfer payment to seller minus the contract's cut oldOwner.transfer(sellingPrice.sub(contractCut)); } // return extra ether if (excess > 0) { newOwner.transfer(excess); } } function priceOf(uint256 _tokenId) public view returns (uint256 _price) { return tokenIdToPrice[_tokenId]; } uint256 private increaseLimit1 = 0.05 ether; uint256 private increaseLimit2 = 0.5 ether; uint256 private increaseLimit3 = 5 ether; function nextPriceOf(uint256 _tokenId) public view returns (uint256 _nextPrice) { uint256 price = priceOf(_tokenId); if (price < increaseLimit1) { return price.mul(135).div(94); } else if (price < increaseLimit2) { return price.mul(120).div(94); } else if (price < increaseLimit3) { return price.mul(118).div(94); } else { return price.mul(116).div(94); } } /*** ERC-721 ***/ // Unlocks ERC721 behaviour, allowing for trading on third party platforms. function enableERC721() onlyCEO public { erc721Enabled = true; } function totalSupply() public view returns (uint256 _totalSupply) { _totalSupply = arts.length; } function balanceOf(address _owner) public view returns (uint256 _balance) { _balance = ownershipTokenCount[_owner]; } function ownerOf(uint256 _tokenId) public view returns (address _owner) { _owner = tokenIdToOwner[_tokenId]; // require(_owner != address(0)); } function approve(address _to, uint256 _tokenId) public whenNotPaused onlyERC721 { require(_owns(msg.sender, _tokenId)); tokenIdToApproved[_tokenId] = _to; Approval(msg.sender, _to, _tokenId); } function transferFrom(address _from, address _to, uint256 _tokenId) public whenNotPaused onlyERC721 { require(_to != address(0)); require(_owns(_from, _tokenId)); require(_approved(msg.sender, _tokenId)); _transfer(_from, _to, _tokenId); } function transfer(address _to, uint256 _tokenId) public whenNotPaused onlyERC721 { require(_to != address(0)); require(_owns(msg.sender, _tokenId)); // Reassign ownership, clear pending approvals, emit Transfer event. _transfer(msg.sender, _to, _tokenId); } function implementsERC721() public view whenNotPaused returns (bool) { return erc721Enabled; } function takeOwnership(uint256 _tokenId) public whenNotPaused onlyERC721 { require(_approved(msg.sender, _tokenId)); _transfer(tokenIdToOwner[_tokenId], msg.sender, _tokenId); } function name() public view returns (string _name) { _name = "CryptoArts"; } function symbol() public view returns (string _symbol) { _symbol = "XART"; } /*** PRIVATES ***/ /// @dev Check for token ownership. function _owns(address _claimant, uint256 _tokenId) private view returns (bool) { return tokenIdToOwner[_tokenId] == _claimant; } /// @dev For checking approval of transfer for address _to. function _approved(address _to, uint256 _tokenId) private view returns (bool) { return tokenIdToApproved[_tokenId] == _to; } /// @dev Assigns ownership of a specific token to an address. function _transfer(address _from, address _to, uint256 _tokenId) private { // Since the number of tokens is capped to 2^32 we can't overflow this ownershipTokenCount[_to]++; // Transfer ownership tokenIdToOwner[_tokenId] = _to; // When creating new token _from is 0x0, but we can't account that address. if (_from != address(0)) { ownershipTokenCount[_from]--; // clear any previously approved ownership exchange delete tokenIdToApproved[_tokenId]; } // Emit the transfer event. Transfer(_from, _to, _tokenId); } /// @dev Checks if the address ia a contract or not function _isContract(address addr) private view returns (bool) { uint256 size; assembly { size := extcodesize(addr) } return size > 0; } } // https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol // v1.6.0 /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ 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; } /** * @dev Integer division of two numbers, truncating the quotient. */ 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; } /** * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"_name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ceoAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"implementsERC721","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newCEO","type":"address"}],"name":"setCEO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getAllTokens","outputs":[{"name":"","type":"uint256[]"},{"name":"","type":"uint256[]"},{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newCOO","type":"address"}],"name":"setCOO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"createToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"tokensOf","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"nextPriceOf","outputs":[{"name":"_nextPrice","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":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableERC721","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"}],"name":"createToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"cooAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"priceOf","outputs":[{"name":"_price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getToken","outputs":[{"name":"_tokenName","type":"string"},{"name":"_price","type":"uint256"},{"name":"_nextPrice","type":"uint256"},{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"tokenIdToApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"purchase","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"owner","type":"address"}],"name":"TokenCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"sellingPrice","type":"uint256"},{"indexed":false,"name":"newPrice","type":"uint256"},{"indexed":true,"name":"oldOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"TokenSold","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_approved","type":"address"},{"indexed":false,"name":"_tokenId","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
60606040526000600160146101000a81548160ff021916908315150217905550662386f26fc100006007556000600860006101000a81548160ff02191690831515021790555066b1a2bc2ec500006009556706f05b59d3b20000600a55674563918244f40000600b55336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506124e4806100f86000396000f30060606040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461016f578063095ea7b3146101fd5780630a0f81681461023f5780630cf20cc9146102945780631051db34146102d657806318160ddd1461030357806323b872dd1461032c57806327d7874c1461038d5780632a5c792a146103c65780632ba73c15146104c05780633f4ba83a146104f957806345576f941461050e5780635a3f26721461056b5780635ba9e48e146105f95780635c975abb146106305780636352211e1461065d57806370a08231146106c057806371dc761e1461070d57806373b4df05146107225780638456cb59146107a757806395d89b41146107bc578063a9059cbb1461084a578063b047fb501461088c578063b2e6ceeb146108e1578063b9186d7d14610904578063e4b50cb81461093b578063eb5653d714610a18578063efef39a114610a7b575b600080fd5b341561017a57600080fd5b610182610a93565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c25780820151818401526020810190506101a7565b50505050905090810190601f1680156101ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020857600080fd5b61023d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610ad6565b005b341561024a57600080fd5b610252610bdd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561029f57600080fd5b6102d4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c02565b005b34156102e157600080fd5b6102e9610d87565b604051808215151515815260200191505060405180910390f35b341561030e57600080fd5b610316610dba565b6040518082815260200191505060405180910390f35b341561033757600080fd5b61038b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610dc7565b005b341561039857600080fd5b6103c4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e74565b005b34156103d157600080fd5b6103d9610f4e565b60405180806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b83811015610424578082015181840152602081019050610409565b50505050905001848103835286818151815260200191508051906020019060200280838360005b8381101561046657808201518184015260208101905061044b565b50505050905001848103825285818151815260200191508051906020019060200280838360005b838110156104a857808201518184015260208101905061048d565b50505050905001965050505050505060405180910390f35b34156104cb57600080fd5b6104f7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506110ef565b005b341561050457600080fd5b61050c6111ca565b005b341561051957600080fd5b610569600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061125d565b005b341561057657600080fd5b6105a2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611320565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105e55780820151818401526020810190506105ca565b505050509050019250505060405180910390f35b341561060457600080fd5b61061a6004808035906020019091905050611456565b6040518082815260200191505060405180910390f35b341561063b57600080fd5b61064361153c565b604051808215151515815260200191505060405180910390f35b341561066857600080fd5b61067e600480803590602001909190505061154f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106cb57600080fd5b6106f7600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061158c565b6040518082815260200191505060405180910390f35b341561071857600080fd5b6107206115d5565b005b341561072d57600080fd5b6107a5600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061164d565b005b34156107b257600080fd5b6107ba61175d565b005b34156107c757600080fd5b6107cf6117f0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561080f5780820151818401526020810190506107f4565b50505050905090810190601f16801561083c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561085557600080fd5b61088a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611833565b005b341561089757600080fd5b61089f6118ca565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108ec57600080fd5b61090260048080359060200190919050506118f0565b005b341561090f57600080fd5b610925600480803590602001909190505061197d565b6040518082815260200191505060405180910390f35b341561094657600080fd5b61095c600480803590602001909190505061199a565b60405180806020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825286818151815260200191508051906020019080838360005b838110156109da5780820151818401526020810190506109bf565b50505050905090810190601f168015610a075780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b3415610a2357600080fd5b610a396004808035906020019091905050611abd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610a916004808035906020019091905050611af0565b005b610a9b612306565b6040805190810160405280600a81526020017f43727970746f4172747300000000000000000000000000000000000000000000815250905090565b600160149054906101000a900460ff16151515610af257600080fd5b600860009054906101000a900460ff161515610b0d57600080fd5b610b173382611e72565b1515610b2257600080fd5b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c5d57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff16318111151515610c8357600080fd5b6000811415610ca7573073ffffffffffffffffffffffffffffffffffffffff163190505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d42576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610d3d57600080fd5b610d83565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610d8257600080fd5b5b5050565b6000600160149054906101000a900460ff16151515610da557600080fd5b600860009054906101000a900460ff16905090565b6000600680549050905090565b600160149054906101000a900460ff16151515610de357600080fd5b600860009054906101000a900460ff161515610dfe57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610e3a57600080fd5b610e448382611e72565b1515610e4f57600080fd5b610e593382611ede565b1515610e6457600080fd5b610e6f838383611f4a565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ecf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f0b57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610f5661231a565b610f5e61231a565b610f6661232e565b6000610f7061231a565b610f7861231a565b610f8061232e565b6000610f8a610dba565b945084604051805910610f9a5750595b9080825280602002602001820160405250935084604051805910610fbb5750595b9080825280602002602001820160405250925084604051805910610fdc5750595b90808252806020026020018201604052509150600090505b848110156110dc576003600082815260200190815260200160002054848281518110151561101e57fe5b906020019060200201818152505061103581611456565b838281518110151561104357fe5b90602001906020020181815250506002600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828281518110151561109357fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050610ff4565b8383839750975097505050505050909192565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118657600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561122557600080fd5b600160149054906101000a900460ff16151561124057600080fd5b6000600160146101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806113055750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561131057600080fd5b61131d8130600754612112565b50565b61132861231a565b600061133261231a565b60008060006113408761158c565b9450600085141561137257600060405180591061135a5750595b9080825280602002602001820160405250955061144c565b846040518059106113805750595b9080825280602002602001820160405250935061139b610dba565b925060009150600090505b82811015611448578673ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561143b5780848381518110151561142457fe5b906020019060200201818152505081806001019250505b80806001019150506113a6565b8395505b5050505050919050565b6000806114628361197d565b905060095481101561149c57611495605e61148760878461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b600a548110156114d4576114cd605e6114bf60788461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b600b5481101561150c57611505605e6114f760768461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b611533605e61152560748461228490919063ffffffff16565b6122bf90919063ffffffff16565b91505b50919050565b600160149054906101000a900460ff1681565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561163057600080fd5b6001600860006101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806116f55750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561170057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561173c57600080fd5b600754811015151561174d57600080fd5b611758838383612112565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117b857600080fd5b600160149054906101000a900460ff161515156117d457600080fd5b60018060146101000a81548160ff021916908315150217905550565b6117f8612306565b6040805190810160405280600481526020017f5841525400000000000000000000000000000000000000000000000000000000815250905090565b600160149054906101000a900460ff1615151561184f57600080fd5b600860009054906101000a900460ff16151561186a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156118a657600080fd5b6118b03382611e72565b15156118bb57600080fd5b6118c6338383611f4a565b5050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160149054906101000a900460ff1615151561190c57600080fd5b600860009054906101000a900460ff16151561192757600080fd5b6119313382611ede565b151561193c57600080fd5b61197a6002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff163383611f4a565b50565b600060036000838152602001908152602001600020549050919050565b6119a2612306565b60008060006006858154811015156119b657fe5b90600052602060002090016000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611a585780601f10611a2d57610100808354040283529160200191611a58565b820191906000526020600020905b815481529060010190602001808311611a3b57829003601f168201915b5050505050935060036000868152602001908152602001600020549250611a7e85611456565b91506002600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690509193509193565b60056020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000600160149054906101000a900460ff16151515611b1457600080fd5b611b1d8661154f565b9450339350611b2b8661197d565b9250600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614151515611b6957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515611ba557600080fd5b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614151515611be057600080fd5b611be9846122da565b151515611bf557600080fd5b600083111515611c0457600080fd5b823410151515611c1357600080fd5b611c1e858588611f4a565b611c2786611456565b60036000888152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16877fef3f7c55f619f7c9178e080691f6d9bc90a74668d32c107dea7c87da023c9a0f60068a815481101515611c9d57fe5b906000526020600020900160000187611cb58c61197d565b6040518080602001848152602001838152602001828103825285818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611d4a5780601f10611d1f57610100808354040283529160200191611d4a565b820191906000526020600020905b815481529060010190602001808311611d2d57829003601f168201915b505094505050505060405180910390a4611d6d83346122ed90919063ffffffff16565b9150611d966064611d8860068661228490919063ffffffff16565b6122bf90919063ffffffff16565b90503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141515611e20578473ffffffffffffffffffffffffffffffffffffffff166108fc611dfa83866122ed90919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611e1f57600080fd5b5b6000821115611e6a578373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515611e6957600080fd5b5b505050505050565b60008273ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff166005600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001019190505550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415156120a857600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055506005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b61211a612342565b6000602060405190810160405280868152509150600160068054806001018281612144919061235c565b916000526020600020900160008590919091506000820151816000019080519060200190612173929190612388565b5050500390508260036000838152602001908152602001600020819055507fd306967beeb39489cb6724748118d29c59bd0f0e17a5dd711b4f4d3dea3a1c478186858760405180858152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b83811015612234578082015181840152602081019050612219565b50505050905090810190601f1680156122615780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a161227d60008583611f4a565b5050505050565b600080600084141561229957600091506122b8565b82840290508284828115156122aa57fe5b041415156122b457fe5b8091505b5092915050565b60008082848115156122cd57fe5b0490508091505092915050565b600080823b905060008111915050919050565b60008282111515156122fb57fe5b818303905092915050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280612356612408565b81525090565b81548183558181151161238357818360005260206000209182019101612382919061241c565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123c957805160ff19168380011785556123f7565b828001600101855582156123f7579182015b828111156123f65782518255916020019190600101906123db565b5b509050612404919061244b565b5090565b602060405190810160405280600081525090565b61244891905b80821115612444576000808201600061243b9190612470565b50600101612422565b5090565b90565b61246d91905b80821115612469576000816000905550600101612451565b5090565b90565b50805460018160011615610100020316600290046000825580601f1061249657506124b5565b601f0160209004906000526020600020908101906124b4919061244b565b5b505600a165627a7a72305820f75947c10751da17b9f6cd9202d827b1ed0eca753a4ad9efc1812c60129bd36e0029
Deployed Bytecode
0x60606040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461016f578063095ea7b3146101fd5780630a0f81681461023f5780630cf20cc9146102945780631051db34146102d657806318160ddd1461030357806323b872dd1461032c57806327d7874c1461038d5780632a5c792a146103c65780632ba73c15146104c05780633f4ba83a146104f957806345576f941461050e5780635a3f26721461056b5780635ba9e48e146105f95780635c975abb146106305780636352211e1461065d57806370a08231146106c057806371dc761e1461070d57806373b4df05146107225780638456cb59146107a757806395d89b41146107bc578063a9059cbb1461084a578063b047fb501461088c578063b2e6ceeb146108e1578063b9186d7d14610904578063e4b50cb81461093b578063eb5653d714610a18578063efef39a114610a7b575b600080fd5b341561017a57600080fd5b610182610a93565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c25780820151818401526020810190506101a7565b50505050905090810190601f1680156101ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020857600080fd5b61023d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610ad6565b005b341561024a57600080fd5b610252610bdd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561029f57600080fd5b6102d4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c02565b005b34156102e157600080fd5b6102e9610d87565b604051808215151515815260200191505060405180910390f35b341561030e57600080fd5b610316610dba565b6040518082815260200191505060405180910390f35b341561033757600080fd5b61038b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610dc7565b005b341561039857600080fd5b6103c4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e74565b005b34156103d157600080fd5b6103d9610f4e565b60405180806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b83811015610424578082015181840152602081019050610409565b50505050905001848103835286818151815260200191508051906020019060200280838360005b8381101561046657808201518184015260208101905061044b565b50505050905001848103825285818151815260200191508051906020019060200280838360005b838110156104a857808201518184015260208101905061048d565b50505050905001965050505050505060405180910390f35b34156104cb57600080fd5b6104f7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506110ef565b005b341561050457600080fd5b61050c6111ca565b005b341561051957600080fd5b610569600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061125d565b005b341561057657600080fd5b6105a2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611320565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105e55780820151818401526020810190506105ca565b505050509050019250505060405180910390f35b341561060457600080fd5b61061a6004808035906020019091905050611456565b6040518082815260200191505060405180910390f35b341561063b57600080fd5b61064361153c565b604051808215151515815260200191505060405180910390f35b341561066857600080fd5b61067e600480803590602001909190505061154f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106cb57600080fd5b6106f7600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061158c565b6040518082815260200191505060405180910390f35b341561071857600080fd5b6107206115d5565b005b341561072d57600080fd5b6107a5600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061164d565b005b34156107b257600080fd5b6107ba61175d565b005b34156107c757600080fd5b6107cf6117f0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561080f5780820151818401526020810190506107f4565b50505050905090810190601f16801561083c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561085557600080fd5b61088a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611833565b005b341561089757600080fd5b61089f6118ca565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108ec57600080fd5b61090260048080359060200190919050506118f0565b005b341561090f57600080fd5b610925600480803590602001909190505061197d565b6040518082815260200191505060405180910390f35b341561094657600080fd5b61095c600480803590602001909190505061199a565b60405180806020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825286818151815260200191508051906020019080838360005b838110156109da5780820151818401526020810190506109bf565b50505050905090810190601f168015610a075780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b3415610a2357600080fd5b610a396004808035906020019091905050611abd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610a916004808035906020019091905050611af0565b005b610a9b612306565b6040805190810160405280600a81526020017f43727970746f4172747300000000000000000000000000000000000000000000815250905090565b600160149054906101000a900460ff16151515610af257600080fd5b600860009054906101000a900460ff161515610b0d57600080fd5b610b173382611e72565b1515610b2257600080fd5b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c5d57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff16318111151515610c8357600080fd5b6000811415610ca7573073ffffffffffffffffffffffffffffffffffffffff163190505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d42576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610d3d57600080fd5b610d83565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610d8257600080fd5b5b5050565b6000600160149054906101000a900460ff16151515610da557600080fd5b600860009054906101000a900460ff16905090565b6000600680549050905090565b600160149054906101000a900460ff16151515610de357600080fd5b600860009054906101000a900460ff161515610dfe57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610e3a57600080fd5b610e448382611e72565b1515610e4f57600080fd5b610e593382611ede565b1515610e6457600080fd5b610e6f838383611f4a565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ecf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f0b57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610f5661231a565b610f5e61231a565b610f6661232e565b6000610f7061231a565b610f7861231a565b610f8061232e565b6000610f8a610dba565b945084604051805910610f9a5750595b9080825280602002602001820160405250935084604051805910610fbb5750595b9080825280602002602001820160405250925084604051805910610fdc5750595b90808252806020026020018201604052509150600090505b848110156110dc576003600082815260200190815260200160002054848281518110151561101e57fe5b906020019060200201818152505061103581611456565b838281518110151561104357fe5b90602001906020020181815250506002600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828281518110151561109357fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050610ff4565b8383839750975097505050505050909192565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118657600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561122557600080fd5b600160149054906101000a900460ff16151561124057600080fd5b6000600160146101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806113055750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561131057600080fd5b61131d8130600754612112565b50565b61132861231a565b600061133261231a565b60008060006113408761158c565b9450600085141561137257600060405180591061135a5750595b9080825280602002602001820160405250955061144c565b846040518059106113805750595b9080825280602002602001820160405250935061139b610dba565b925060009150600090505b82811015611448578673ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561143b5780848381518110151561142457fe5b906020019060200201818152505081806001019250505b80806001019150506113a6565b8395505b5050505050919050565b6000806114628361197d565b905060095481101561149c57611495605e61148760878461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b600a548110156114d4576114cd605e6114bf60788461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b600b5481101561150c57611505605e6114f760768461228490919063ffffffff16565b6122bf90919063ffffffff16565b9150611536565b611533605e61152560748461228490919063ffffffff16565b6122bf90919063ffffffff16565b91505b50919050565b600160149054906101000a900460ff1681565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561163057600080fd5b6001600860006101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806116f55750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561170057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561173c57600080fd5b600754811015151561174d57600080fd5b611758838383612112565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117b857600080fd5b600160149054906101000a900460ff161515156117d457600080fd5b60018060146101000a81548160ff021916908315150217905550565b6117f8612306565b6040805190810160405280600481526020017f5841525400000000000000000000000000000000000000000000000000000000815250905090565b600160149054906101000a900460ff1615151561184f57600080fd5b600860009054906101000a900460ff16151561186a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156118a657600080fd5b6118b03382611e72565b15156118bb57600080fd5b6118c6338383611f4a565b5050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160149054906101000a900460ff1615151561190c57600080fd5b600860009054906101000a900460ff16151561192757600080fd5b6119313382611ede565b151561193c57600080fd5b61197a6002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff163383611f4a565b50565b600060036000838152602001908152602001600020549050919050565b6119a2612306565b60008060006006858154811015156119b657fe5b90600052602060002090016000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611a585780601f10611a2d57610100808354040283529160200191611a58565b820191906000526020600020905b815481529060010190602001808311611a3b57829003601f168201915b5050505050935060036000868152602001908152602001600020549250611a7e85611456565b91506002600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690509193509193565b60056020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000600160149054906101000a900460ff16151515611b1457600080fd5b611b1d8661154f565b9450339350611b2b8661197d565b9250600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614151515611b6957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515611ba557600080fd5b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614151515611be057600080fd5b611be9846122da565b151515611bf557600080fd5b600083111515611c0457600080fd5b823410151515611c1357600080fd5b611c1e858588611f4a565b611c2786611456565b60036000888152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16877fef3f7c55f619f7c9178e080691f6d9bc90a74668d32c107dea7c87da023c9a0f60068a815481101515611c9d57fe5b906000526020600020900160000187611cb58c61197d565b6040518080602001848152602001838152602001828103825285818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611d4a5780601f10611d1f57610100808354040283529160200191611d4a565b820191906000526020600020905b815481529060010190602001808311611d2d57829003601f168201915b505094505050505060405180910390a4611d6d83346122ed90919063ffffffff16565b9150611d966064611d8860068661228490919063ffffffff16565b6122bf90919063ffffffff16565b90503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141515611e20578473ffffffffffffffffffffffffffffffffffffffff166108fc611dfa83866122ed90919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611e1f57600080fd5b5b6000821115611e6a578373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515611e6957600080fd5b5b505050505050565b60008273ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff166005600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001019190505550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415156120a857600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055506005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b61211a612342565b6000602060405190810160405280868152509150600160068054806001018281612144919061235c565b916000526020600020900160008590919091506000820151816000019080519060200190612173929190612388565b5050500390508260036000838152602001908152602001600020819055507fd306967beeb39489cb6724748118d29c59bd0f0e17a5dd711b4f4d3dea3a1c478186858760405180858152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b83811015612234578082015181840152602081019050612219565b50505050905090810190601f1680156122615780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a161227d60008583611f4a565b5050505050565b600080600084141561229957600091506122b8565b82840290508284828115156122aa57fe5b041415156122b457fe5b8091505b5092915050565b60008082848115156122cd57fe5b0490508091505092915050565b600080823b905060008111915050919050565b60008282111515156122fb57fe5b818303905092915050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b602060405190810160405280612356612408565b81525090565b81548183558181151161238357818360005260206000209182019101612382919061241c565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123c957805160ff19168380011785556123f7565b828001600101855582156123f7579182015b828111156123f65782518255916020019190600101906123db565b5b509050612404919061244b565b5090565b602060405190810160405280600081525090565b61244891905b80821115612444576000808201600061243b9190612470565b50600101612422565b5090565b90565b61246d91905b80821115612469576000816000905550600101612451565b5090565b90565b50805460018160011615610100020316600290046000825580601f1061249657506124b5565b601f0160209004906000526020600020908101906124b4919061244b565b5b505600a165627a7a72305820f75947c10751da17b9f6cd9202d827b1ed0eca753a4ad9efc1812c60129bd36e0029
Swarm Source
bzzr://f75947c10751da17b9f6cd9202d827b1ed0eca753a4ad9efc1812c60129bd36e
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,335.74 | 0.00467987 | $15.61 |
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.