ERC-20
Overview
Max Total Supply
190 CityToken
Holders
51
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 0 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TokenLayer
Compiler Version
v0.4.20+commit.3155dd80
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-03-13 */ pragma solidity ^0.4.18; // solhint-disable-line library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } contract ERC721 { function approve(address _to, uint256 _tokenID) public; function balanceOf(address _owner) public view returns (uint256 balance); function implementsERC721() public pure returns (bool); function ownerOf(uint256 _tokenID) public view returns (address addr); function takeOwnership(uint256 _tokenID) public; function totalSupply() public view returns (uint256 total); function transferFrom(address _from, address _to, uint256 _tokenID) public; function transfer(address _to, uint256 _tokenID) public; event Transfer(address indexed from, address indexed to, uint256 tokenID); // solhint-disable-line event Approval(address indexed owner, address indexed approved, uint256 tokenID); function name() public pure returns (string); function symbol() public pure returns (string); } contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function Ownable() public { owner = msg.sender; } modifier onlyOwner() { require(msg.sender == owner); _; } function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); OwnershipTransferred(owner, newOwner); owner = newOwner; } } contract Manageable is Ownable { address public manager; bool public contractLock; event ManagerTransferred(address indexed previousManager, address indexed newManager); event ContractLockChanged(address admin, bool state); function Manageable() public { manager = msg.sender; contractLock = false; } modifier onlyManager() { require(msg.sender == manager); _; } modifier onlyAdmin() { require((msg.sender == manager) || (msg.sender == owner)); _; } modifier isUnlocked() { require(!contractLock); _; } function transferManager(address newManager) public onlyAdmin { require(newManager != address(0)); ManagerTransferred(manager, newManager); manager = newManager; } function setContractLock(bool setting) public onlyAdmin { contractLock = setting; ContractLockChanged(msg.sender, setting); } function payout(address _to) public onlyOwner { if (_to == address(0)) { owner.transfer(this.balance); } else { _to.transfer(this.balance); } } function withdrawFunds(address _to, uint256 amount) public onlyOwner { require(this.balance >= amount); if (_to == address(0)) { owner.transfer(amount); } else { _to.transfer(amount); } } } contract TokenLayer is ERC721, Manageable { using SafeMath for uint256; /********************************************** EVENTS **********************************************/ event TokenCreated(uint256 tokenId, bytes32 name, uint256 parentId, address owner); event TokenDeleted(uint256 tokenId); event TokenSold( uint256 tokenId, uint256 oldPrice, uint256 newPrice, address prevOwner, address winner, bytes32 name, uint256 parentId ); event PriceChanged(uint256 tokenId, uint256 oldPrice, uint256 newPrice); event ParentChanged(uint256 tokenId, uint256 oldParentId, uint256 newParentId); event NameChanged(uint256 tokenId, bytes32 oldName, bytes32 newName); event MetaDataChanged(uint256 tokenId, bytes32 oldMeta, bytes32 newMeta); /****************************************************************************************************/ /******************************************** STORAGE ***********************************************/ uint256 private constant DEFAULTPARENT = 123456789; mapping (uint256 => Token) private tokenIndexToToken; mapping (address => uint256) private ownershipTokenCount; address public gameAddress; address public parentAddr; uint256 private totalTokens; uint256 public devFee = 50; uint256 public ownerFee = 200; uint256[10] private chainFees = [10]; struct Token { bool exists; address approved; address owner; bytes32 metadata; bytes32 name; uint256 lastBlock; uint256 parentId; uint256 price; } /****************************************************************************************************/ /******************************************* MODIFIERS **********************************************/ modifier onlySystem() { require((msg.sender == gameAddress) || (msg.sender == manager)); _; } /****************************************************************************************************/ /****************************************** CONSTRUCTOR *********************************************/ function TokenLayer(address _gameAddress, address _parentAddr) public { gameAddress = _gameAddress; parentAddr = _parentAddr; } /****************************************************************************************************/ /********************************************** PUBLIC **********************************************/ function implementsERC721() public pure returns (bool) { return true; } function name() public pure returns (string) { return "CryptoCities"; } function symbol() public pure returns (string) { return "CityToken"; } function approve(address _to, uint256 _tokenId, address _from) public onlySystem { _approve(_to, _tokenId, _from); } function approve(address _to, uint256 _tokenId) public isUnlocked { _approve(_to, _tokenId, msg.sender); } function balanceOf(address _owner) public view returns (uint256 balance) { return ownershipTokenCount[_owner]; } function bundleToken(uint256 _tokenId) public view returns(uint256[8] _tokenData) { Token storage token = tokenIndexToToken[_tokenId]; uint256[8] memory tokenData; tokenData[0] = uint256(token.name); tokenData[1] = token.parentId; tokenData[2] = token.price; tokenData[3] = uint256(token.owner); tokenData[4] = _getNextPrice(_tokenId); tokenData[5] = devFee+getChainFees(_tokenId); tokenData[6] = uint256(token.approved); tokenData[7] = uint256(token.metadata); return tokenData; } function takeOwnership(uint256 _tokenId, address _to) public onlySystem { _takeOwnership(_tokenId, _to); } function takeOwnership(uint256 _tokenId) public isUnlocked { _takeOwnership(_tokenId, msg.sender); } function tokensOfOwner(address _owner) public view returns (uint256[] ownerTokens) { uint256 tokenCount = balanceOf(_owner); if (tokenCount == 0) { return new uint256[](0); } else { uint256[] memory result = new uint256[](tokenCount); uint256 _totalTokens = totalSupply(); uint256 resultIndex = 0; uint256 tokenId = 0; uint256 tokenIndex = 0; while (tokenIndex <= _totalTokens) { if (exists(tokenId)) { tokenIndex++; if (tokenIndexToToken[tokenId].owner == _owner) { result[resultIndex] = tokenId; resultIndex++; } } tokenId++; } return result; } } function totalSupply() public view returns (uint256 total) { return totalTokens; } function transfer(address _to, address _from, uint256 _tokenId) public onlySystem { _checkThenTransfer(_from, _to, _tokenId); } function transfer(address _to, uint256 _tokenId) public isUnlocked { _checkThenTransfer(msg.sender, _to, _tokenId); } function transferFrom(address _from, address _to, uint256 _tokenId) public onlySystem { _transferFrom(_from, _to, _tokenId); } function transferFrom(address _from, uint256 _tokenId) public isUnlocked { _transferFrom(_from, msg.sender, _tokenId); } function createToken( uint256 _tokenId, address _owner, bytes32 _name, uint256 _parentId, uint256 _price, bytes32 _metadata ) public onlyAdmin { require(_price > 0); require(_addressNotNull(_owner)); require(_tokenId == uint256(uint32(_tokenId))); require(!exists(_tokenId)); totalTokens++; Token memory _token = Token({ name: _name, parentId: _parentId, exists: true, price: _price, owner: _owner, approved : 0, lastBlock : block.number, metadata : _metadata }); tokenIndexToToken[_tokenId] = _token; TokenCreated(_tokenId, _name, _parentId, _owner); _transfer(address(0), _owner, _tokenId); } function createTokens( uint256[] _tokenIds, address[] _owners, bytes32[] _names, uint256[] _parentIds, uint256[] _prices, bytes32[] _metadatas ) public onlyAdmin { for (uint256 id = 0; id < _tokenIds.length; id++) { createToken( _tokenIds[id], _owners[id], _names[id], _parentIds[id], _prices[id], _metadatas[id] ); } } function deleteToken(uint256 _tokenId) public onlyAdmin { require(_tokenId == uint256(uint32(_tokenId))); require(exists(_tokenId)); totalTokens--; address oldOwner = tokenIndexToToken[_tokenId].owner; ownershipTokenCount[oldOwner] = ownershipTokenCount[oldOwner]--; delete tokenIndexToToken[_tokenId]; TokenDeleted(_tokenId); } function incrementPrice(uint256 _tokenId, address _to) public onlySystem { require(exists(_tokenId)); uint256 _price = tokenIndexToToken[_tokenId].price; address _owner = tokenIndexToToken[_tokenId].owner; uint256 _totalFees = getChainFees(_tokenId); tokenIndexToToken[_tokenId].price = _price.mul(1000+ownerFee).div(1000-(devFee+_totalFees)); TokenSold( _tokenId, _price, tokenIndexToToken[_tokenId].price, _owner, _to, tokenIndexToToken[_tokenId].name, tokenIndexToToken[_tokenId].parentId ); } function ownerOf(uint256 _tokenId) public view returns (address _owner) { require(exists(_tokenId)); _owner = tokenIndexToToken[_tokenId].owner; } function blocked(uint256 _tokenId) public view returns (bool _blocked) { return (tokenIndexToToken[_tokenId].lastBlock == block.number); } function exists(uint256 _tokenId) public view returns(bool) { return (tokenIndexToToken[_tokenId].exists); } /****************************************************************************************************/ /********************************************** SETTERS *********************************************/ function setLayerParent(address _parent) public onlyAdmin { parentAddr = _parent; } function setGame(address _gameAddress) public onlyAdmin { gameAddress = _gameAddress; } function setPrice(uint256 _tokenId, uint256 _price, address _owner) public onlySystem { require(_owns(_owner, _tokenId)); uint256 oldPrice = tokenIndexToToken[_tokenId].price; tokenIndexToToken[_tokenId].price = _price; PriceChanged(_tokenId, oldPrice, _price); } function setParent(uint256 _tokenId, uint256 _parentId) public onlyAdmin { require(exists(_tokenId)); uint256 oldParentId = tokenIndexToToken[_tokenId].parentId; tokenIndexToToken[_tokenId].parentId = _parentId; ParentChanged(_tokenId, oldParentId, _parentId); } function setName(uint256 _tokenId, bytes32 _name) public onlyAdmin { require(exists(_tokenId)); bytes32 oldName = tokenIndexToToken[_tokenId].name; tokenIndexToToken[_tokenId].name = _name; NameChanged(_tokenId, oldName, _name); } function setMetadata(uint256 _tokenId, bytes32 _metadata) public onlyAdmin { require(exists(_tokenId)); bytes32 oldMeta = tokenIndexToToken[_tokenId].metadata; tokenIndexToToken[_tokenId].metadata = _metadata; MetaDataChanged(_tokenId, oldMeta, _metadata); } function setDevFee(uint256 _devFee) public onlyAdmin { devFee = _devFee; } function setOwnerFee(uint256 _ownerFee) public onlyAdmin { ownerFee = _ownerFee; } function setChainFees(uint256[10] _chainFees) public onlyAdmin { chainFees = _chainFees; } /****************************************************************************************************/ /********************************************** GETTERS *********************************************/ function getToken(uint256 _tokenId) public view returns ( bytes32 tokenName, uint256 parentId, uint256 price, address _owner, uint256 nextPrice, uint256 nextPriceFees, address approved, bytes32 metadata ) { Token storage token = tokenIndexToToken[_tokenId]; tokenName = token.name; parentId = token.parentId; price = token.price; _owner = token.owner; nextPrice = _getNextPrice(_tokenId); nextPriceFees = devFee+getChainFees(_tokenId); metadata = token.metadata; approved = token.approved; } function getChainFees(uint256 _tokenId) public view returns (uint256 _total) { uint256 chainLength = _getChainLength(_tokenId); uint256 totalFee = 0; for (uint id = 0; id < chainLength; id++) { totalFee = totalFee + chainFees[id]; } return(totalFee); } function getChainFeeArray() public view returns (uint256[10] memory _chainFees) { return(chainFees); } function getPriceOf(uint256 _tokenId) public view returns (uint256 price) { require(exists(_tokenId)); return tokenIndexToToken[_tokenId].price; } function getParentOf(uint256 _tokenId) public view returns (uint256 parentId) { require(exists(_tokenId)); return tokenIndexToToken[_tokenId].parentId; } function getMetadataOf(uint256 _tokenId) public view returns (bytes32 metadata) { require(exists(_tokenId)); return (tokenIndexToToken[_tokenId].metadata); } function getChain(uint256 _tokenId) public view returns (address[10] memory _owners) { require(exists(_tokenId)); uint256 _parentId = getParentOf(_tokenId); address _parentAddr = parentAddr; address[10] memory result; if (_parentId != DEFAULTPARENT && _addressNotNull(_parentAddr)) { uint256 resultIndex = 0; TokenLayer layer = TokenLayer(_parentAddr); bool parentExists = layer.exists(_parentId); while ((_parentId != DEFAULTPARENT) && _addressNotNull(_parentAddr) && parentExists) { parentExists = layer.exists(_parentId); if (!parentExists) { return(result); } result[resultIndex] = layer.ownerOf(_parentId); resultIndex++; _parentId = layer.getParentOf(_parentId); _parentAddr = layer.parentAddr(); layer = TokenLayer(_parentAddr); } return(result); } } /****************************************************************************************************/ /******************************************** PRIVATE ***********************************************/ function _addressNotNull(address _to) private pure returns (bool) { return _to != address(0); } function _approved(address _to, uint256 _tokenId) private view returns (bool) { return (tokenIndexToToken[_tokenId].approved == _to); } function _owns(address claimant, uint256 _tokenId) private view returns (bool) { return claimant == tokenIndexToToken[_tokenId].owner; } function _checkThenTransfer(address _from, address _to, uint256 _tokenId) private { require(_owns(_from, _tokenId)); require(_addressNotNull(_to)); require(exists(_tokenId)); _transfer(_from, _to, _tokenId); } function _transfer(address _from, address _to, uint256 _tokenId) private { ownershipTokenCount[_to]++; tokenIndexToToken[_tokenId].owner = _to; tokenIndexToToken[_tokenId].lastBlock = block.number; if (_from != address(0)) { ownershipTokenCount[_from]--; tokenIndexToToken[_tokenId].approved = 0; } Transfer(_from, _to, _tokenId); } function _approve(address _to, uint256 _tokenId, address _from) private { require(_owns(_from, _tokenId)); tokenIndexToToken[_tokenId].approved = _to; Approval(_from, _to, _tokenId); } function _takeOwnership(uint256 _tokenId, address _to) private { address newOwner = _to; address oldOwner = tokenIndexToToken[_tokenId].owner; require(_addressNotNull(newOwner)); require(_approved(newOwner, _tokenId)); _transfer(oldOwner, newOwner, _tokenId); } function _transferFrom(address _from, address _to, uint256 _tokenId) private { require(_owns(_from, _tokenId)); require(_approved(_to, _tokenId)); require(_addressNotNull(_to)); _transfer(_from, _to, _tokenId); } function _getChainLength(uint256 _tokenId) private view returns (uint256 _length) { uint256 length; uint256 _parentId = getParentOf(_tokenId); address _parentAddr = parentAddr; if (_parentId == DEFAULTPARENT || !_addressNotNull(_parentAddr)) { return 0; } TokenLayer layer = TokenLayer(_parentAddr); bool parentExists = layer.exists(_parentId); while ((_parentId != DEFAULTPARENT) && _addressNotNull(_parentAddr) && parentExists) { parentExists = layer.exists(_parentId); if(!parentExists) { return(length); } _parentId = layer.getParentOf(_parentId); _parentAddr = layer.parentAddr(); layer = TokenLayer(_parentAddr); length++; } return(length); } function _getNextPrice(uint256 _tokenId) private view returns (uint256 _nextPrice) { uint256 _price = tokenIndexToToken[_tokenId].price; uint256 _totalFees = getChainFees(_tokenId); _price = _price.mul(1000+ownerFee).div(1000-(devFee+_totalFees)); return(_price); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"payout","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_owner","type":"address"},{"name":"_name","type":"bytes32"},{"name":"_parentId","type":"uint256"},{"name":"_price","type":"uint256"},{"name":"_metadata","type":"bytes32"}],"name":"createToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"implementsERC721","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"},{"name":"_from","type":"address"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getParentOf","outputs":[{"name":"parentId","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"parentAddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getMetadataOf","outputs":[{"name":"metadata","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_devFee","type":"uint256"}],"name":"setDevFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_parentId","type":"uint256"}],"name":"setParent","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"_chainFees","type":"uint256[10]"}],"name":"setChainFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_metadata","type":"bytes32"}],"name":"setMetadata","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"manager","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"exists","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"setting","type":"bool"}],"name":"setContractLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"deleteToken","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"_tokenId","type":"uint256"}],"name":"bundleToken","outputs":[{"name":"_tokenData","type":"uint256[8]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"devFee","outputs":[{"name":"","type":"uint256"}],"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":"_parent","type":"address"}],"name":"setLayerParent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_gameAddress","type":"address"}],"name":"setGame","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"tokensOfOwner","outputs":[{"name":"ownerTokens","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenIds","type":"uint256[]"},{"name":"_owners","type":"address[]"},{"name":"_names","type":"bytes32[]"},{"name":"_parentIds","type":"uint256[]"},{"name":"_prices","type":"uint256[]"},{"name":"_metadatas","type":"bytes32[]"}],"name":"createTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getChainFees","outputs":[{"name":"_total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gameAddress","outputs":[{"name":"","type":"address"}],"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":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getPriceOf","outputs":[{"name":"price","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getChain","outputs":[{"name":"_owners","type":"address[10]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_to","type":"address"}],"name":"incrementPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newManager","type":"address"}],"name":"transferManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_from","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"amount","type":"uint256"}],"name":"withdrawFunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getChainFeeArray","outputs":[{"name":"_chainFees","type":"uint256[10]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"contractLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"blocked","outputs":[{"name":"_blocked","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ownerFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getToken","outputs":[{"name":"tokenName","type":"bytes32"},{"name":"parentId","type":"uint256"},{"name":"price","type":"uint256"},{"name":"_owner","type":"address"},{"name":"nextPrice","type":"uint256"},{"name":"nextPriceFees","type":"uint256"},{"name":"approved","type":"address"},{"name":"metadata","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_price","type":"uint256"},{"name":"_owner","type":"address"}],"name":"setPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_ownerFee","type":"uint256"}],"name":"setOwnerFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_to","type":"address"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_gameAddress","type":"address"},{"name":"_parentAddr","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"name","type":"bytes32"},{"indexed":false,"name":"parentId","type":"uint256"},{"indexed":false,"name":"owner","type":"address"}],"name":"TokenCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"TokenDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldPrice","type":"uint256"},{"indexed":false,"name":"newPrice","type":"uint256"},{"indexed":false,"name":"prevOwner","type":"address"},{"indexed":false,"name":"winner","type":"address"},{"indexed":false,"name":"name","type":"bytes32"},{"indexed":false,"name":"parentId","type":"uint256"}],"name":"TokenSold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldPrice","type":"uint256"},{"indexed":false,"name":"newPrice","type":"uint256"}],"name":"PriceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldParentId","type":"uint256"},{"indexed":false,"name":"newParentId","type":"uint256"}],"name":"ParentChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldName","type":"bytes32"},{"indexed":false,"name":"newName","type":"bytes32"}],"name":"NameChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"oldMeta","type":"bytes32"},{"indexed":false,"name":"newMeta","type":"bytes32"}],"name":"MetaDataChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousManager","type":"address"},{"indexed":true,"name":"newManager","type":"address"}],"name":"ManagerTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"admin","type":"address"},{"indexed":false,"name":"state","type":"bool"}],"name":"ContractLockChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"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
6060604052603260075560c86008556020604051908101604052600a81526200002d906009906001620000b2565b5034156200003a57600080fd5b60405160408062002836833981016040528080519190602001805160008054600160a060020a031990811633600160a060020a0390811691821790935560018054831690911760a060020a60ff02191690556004805482169683169690961790955560058054909516911617909255506200011a9050565b82600a8101928215620000e8579160200282015b82811115620000e8578251829060ff16905591602001919060010190620000c6565b50620000f6929150620000fa565b5090565b6200011791905b80821115620000f6576000815560010162000101565b90565b61270c806200012a6000396000f3006060604052600436106102425763ffffffff60e060020a60003504166301c6adc3811461024757806306fdde031461026b578063095ea7b3146102f55780630b7e9c44146103175780630c990004146103365780631051db34146103645780631271f09a1461038b57806313e75206146103b457806315328109146103dc57806318160ddd1461040b57806318384df21461041e5780631c75b6b214610434578063223e97be1461044a57806323b872dd146104635780632ce0ca6b1461048b5780633151609e146104c7578063481c6a75146104e05780634f558e79146104f357806353ebf6bd146105095780636297c16c146105215780636352211e14610537578063645cd0461461054d5780636827e7641461059c57806370a08231146105af578063718eaa50146105ce578063819912a2146105ed5780638462151c1461060c578063897a7dab1461067e5780638da5cb5b1461080d57806395d89b41146108205780639d77e4f814610833578063a12396aa14610849578063a168d87314610862578063a9059cbb14610875578063b2e6ceeb14610897578063b54b4fb9146108ad578063b6791ad4146108c3578063b7d9549c146108f4578063ba0e930a14610916578063beabacc814610935578063c10753291461095d578063ce2c6ad51461097f578063cf837fad14610992578063d5182b70146109a5578063d5b2a01a146109bb578063e4b50cb8146109ce578063f2fde38b14610a34578063f83fcdea14610a53578063fbf0ade114610a78578063ff5f8b4b14610a8e575b600080fd5b341561025257600080fd5b610269600160a060020a0360043516602435610ab0565b005b341561027657600080fd5b61027e610ad6565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102ba5780820151838201526020016102a2565b50505050905090810190601f1680156102e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561030057600080fd5b610269600160a060020a0360043516602435610b18565b341561032257600080fd5b610269600160a060020a0360043516610b3a565b341561034157600080fd5b610269600435600160a060020a036024351660443560643560843560a435610be3565b341561036f57600080fd5b610377610dd3565b604051901515815260200160405180910390f35b341561039657600080fd5b610269600160a060020a036004358116906024359060443516610dd8565b34156103bf57600080fd5b6103ca600435610e1e565b60405190815260200160405180910390f35b34156103e757600080fd5b6103ef610e4a565b604051600160a060020a03909116815260200160405180910390f35b341561041657600080fd5b6103ca610e59565b341561042957600080fd5b6103ca600435610e5f565b341561043f57600080fd5b610269600435610e8c565b341561045557600080fd5b610269600435602435610ec7565b341561046e57600080fd5b610269600160a060020a0360043581169060243516604435610f7d565b341561049657600080fd5b610269600461014481600a610140604051908101604052919082826101408082843750939550610fbe945050505050565b34156104d257600080fd5b610269600435602435611001565b34156104eb57600080fd5b6103ef6110b7565b34156104fe57600080fd5b6103776004356110c6565b341561051457600080fd5b61026960043515156110db565b341561052c57600080fd5b610269600435611182565b341561054257600080fd5b6103ef600435611290565b341561055857600080fd5b6105636004356112c5565b604051808261010080838360005b83811015610589578082015183820152602001610571565b5050505090500191505060405180910390f35b34156105a757600080fd5b6103ca611363565b34156105ba57600080fd5b6103ca600160a060020a0360043516611369565b34156105d957600080fd5b610269600160a060020a0360043516611384565b34156105f857600080fd5b610269600160a060020a03600435166113dc565b341561061757600080fd5b61062b600160a060020a0360043516611434565b60405160208082528190810183818151815260200191508051906020019060200280838360005b8381101561066a578082015183820152602001610652565b505050509050019250505060405180910390f35b341561068957600080fd5b6102696004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061153495505050505050565b341561081857600080fd5b6103ef61160e565b341561082b57600080fd5b61027e61161d565b341561083e57600080fd5b6103ca60043561165e565b341561085457600080fd5b6102696004356024356116a4565b341561086d57600080fd5b6103ef61175a565b341561088057600080fd5b610269600160a060020a0360043516602435611769565b34156108a257600080fd5b61026960043561178b565b34156108b857600080fd5b6103ca6004356117ac565b34156108ce57600080fd5b6108d96004356117d8565b60405180826101408083836000815183820152602001610571565b34156108ff57600080fd5b610269600435600160a060020a0360243516611ab6565b341561092157600080fd5b610269600160a060020a0360043516611c07565b341561094057600080fd5b610269600160a060020a0360043581169060243516604435611cb0565b341561096857600080fd5b610269600160a060020a0360043516602435611cf1565b341561098a57600080fd5b6108d9611d9d565b341561099d57600080fd5b610377611ddc565b34156109b057600080fd5b610377600435611dec565b34156109c657600080fd5b6103ca611e03565b34156109d957600080fd5b6109e4600435611e09565b6040519788526020880196909652604080880195909552600160a060020a039384166060880152608087019290925260a08601521660c084015260e0830191909152610100909101905180910390f35b3415610a3f57600080fd5b610269600160a060020a0360043516611e84565b3415610a5e57600080fd5b610269600435602435600160a060020a0360443516611f12565b3415610a8357600080fd5b610269600435611fca565b3415610a9957600080fd5b610269600435600160a060020a0360243516612005565b60015460a060020a900460ff1615610ac757600080fd5b610ad2823383612045565b5050565b610ade6125c6565b60408051908101604052600c81527f43727970746f4369746965730000000000000000000000000000000000000000602082015290505b90565b60015460a060020a900460ff1615610b2f57600080fd5b610ad282823361208e565b60005433600160a060020a03908116911614610b5557600080fd5b600160a060020a0381161515610ba357600054600160a060020a039081169030163180156108fc0290604051600060405180830381858888f193505050501515610b9e57600080fd5b610be0565b80600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610be057600080fd5b50565b610beb6125d8565b60015433600160a060020a0390811691161480610c16575060005433600160a060020a039081169116145b1515610c2157600080fd5b60008311610c2e57600080fd5b610c3786612123565b1515610c4257600080fd5b63ffffffff87168714610c5457600080fd5b610c5d876110c6565b15610c6757600080fd5b60068054600101905561010060405190810160409081526001825260006020808401829052600160a060020a038a168385015260608401869052608084018990524360a085015260c0840188905260e084018790528a8252600290522090915081908151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160028201556080820151600382015560a0820151816004015560c0820151816005015560e0820151600690910155507f50149f528b157cc2203af9bb98c3c320364694d9ffc6da5cc0b5ef6d2e8a1398878686896040519384526020840192909252604080840191909152600160a060020a0390911660608301526080909101905180910390a1610dca60008789612131565b50505050505050565b600190565b60045433600160a060020a0390811691161480610e03575060015433600160a060020a039081169116145b1515610e0e57600080fd5b610e1983838361208e565b505050565b6000610e29826110c6565b1515610e3457600080fd5b5060009081526002602052604090206005015490565b600554600160a060020a031681565b60065490565b6000610e6a826110c6565b1515610e7557600080fd5b506000908152600260208190526040909120015490565b60015433600160a060020a0390811691161480610eb7575060005433600160a060020a039081169116145b1515610ec257600080fd5b600755565b60015460009033600160a060020a0390811691161480610ef5575060005433600160a060020a039081169116145b1515610f0057600080fd5b610f09836110c6565b1515610f1457600080fd5b5060008281526002602052604090819020600501805490839055907fd6c4347571cebd49451e87a1c1b833ca84791009a139f27d0dcf3159e96a08a5908490839085905180848152602001838152602001828152602001935050505060405180910390a1505050565b60045433600160a060020a0390811691161480610fa8575060015433600160a060020a039081169116145b1515610fb357600080fd5b610e19838383612045565b60015433600160a060020a0390811691161480610fe9575060005433600160a060020a039081169116145b1515610ff457600080fd5b610ad2600982600a61261c565b60015460009033600160a060020a039081169116148061102f575060005433600160a060020a039081169116145b151561103a57600080fd5b611043836110c6565b151561104e57600080fd5b5060008281526002602081905260409182902001805490839055907fb7b3fa00c09f5253e4c6bc72c004a0977965613f9f533cfb93014dade835fcb5908490839085905192835260208301919091526040808301919091526060909101905180910390a1505050565b600154600160a060020a031681565b60009081526002602052604090205460ff1690565b60015433600160a060020a0390811691161480611106575060005433600160a060020a039081169116145b151561111157600080fd5b6001805474ff0000000000000000000000000000000000000000191660a060020a831515021790557fd1b3ccafda2b2f8613e51c6ac4f6e844932f92b0058df6d7ee800b152f55a00d3382604051600160a060020a039092168252151560208201526040908101905180910390a150565b60015460009033600160a060020a03908116911614806111b0575060005433600160a060020a039081169116145b15156111bb57600080fd5b63ffffffff821682146111cd57600080fd5b6111d6826110c6565b15156111e157600080fd5b50600680546000190181556000828152600260208190526040808320600181018054825474ffffffffffffffffffffffffffffffffffffffffff19168355600160a060020a0319811690915592810184905560038101849055600481018490556005810184905590930191909155600160a060020a0316907f5dd85a7dcd757c302c9d79eb5d4c00cfb8c98f5f4f41c52408f7d25233e54e959083905190815260200160405180910390a15050565b600061129b826110c6565b15156112a657600080fd5b50600090815260026020526040902060010154600160a060020a031690565b6112cd61265a565b60006112d761265a565b600084815260026020908152604091829020600381015484526005810154918401919091526006810154918301919091526001810154600160a060020a0316606083015291506113268461221b565b60808201526113348461165e565b6007540160a082015281546101009004600160a060020a031660c082015260029091015460e082015292915050565b60075481565b600160a060020a031660009081526003602052604090205490565b60015433600160a060020a03908116911614806113af575060005433600160a060020a039081169116145b15156113ba57600080fd5b60058054600160a060020a031916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161480611407575060005433600160a060020a039081169116145b151561141257600080fd5b60048054600160a060020a031916600160a060020a0392909216919091179055565b61143c6125c6565b60006114466125c6565b60008060008061145588611369565b955085151561148557600060405180591061146d5750595b90808252806020026020018201604052509650611529565b856040518059106114935750595b908082528060200260200182016040525094506114ae610e59565b93506000925060009150600090505b838111611525576114cd826110c6565b1561151a576000828152600260205260409020600190810154910190600160a060020a038981169116141561151a578185848151811061150957fe5b602090810290910101526001909201915b6001909101906114bd565b8496505b505050505050919050565b60015460009033600160a060020a0390811691161480611562575060005433600160a060020a039081169116145b151561156d57600080fd5b5060005b8651811015610dca5761160687828151811061158957fe5b9060200190602002015187838151811061159f57fe5b906020019060200201518784815181106115b557fe5b906020019060200201518785815181106115cb57fe5b906020019060200201518786815181106115e157fe5b906020019060200201518787815181106115f757fe5b90602001906020020151610be3565b600101611571565b600054600160a060020a031681565b6116256125c6565b60408051908101604052600981527f43697479546f6b656e00000000000000000000000000000000000000000000006020820152905090565b60008060008061166d85612266565b925060009150600090505b8281101561169c57600981600a811061168d57fe5b01549190910190600101611678565b509392505050565b60015460009033600160a060020a03908116911614806116d2575060005433600160a060020a039081169116145b15156116dd57600080fd5b6116e6836110c6565b15156116f157600080fd5b5060008281526002602052604090819020600301805490839055907f6e94426bbffb1bc76323b8410b8c5a5197aee10363f4ed90079eb17a4c07eef5908490839085905192835260208301919091526040808301919091526060909101905180910390a1505050565b600454600160a060020a031681565b60015460a060020a900460ff161561178057600080fd5b610ad23383836124a8565b60015460a060020a900460ff16156117a257600080fd5b610be081336124da565b60006117b7826110c6565b15156117c257600080fd5b5060009081526002602052604090206006015490565b6117e0612682565b6000806117eb612682565b60008060006117f9886110c6565b151561180457600080fd5b61180d88610e1e565b600554909650600160a060020a0316945063075bcd158614801590611836575061183685612123565b15611529576000925084915081600160a060020a0316634f558e798760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561189157600080fd5b6102c65a03f115156118a257600080fd5b50505060405180519150505b63075bcd1586141580156118c657506118c685612123565b80156118cf5750805b15611aae5781600160a060020a0316634f558e798760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561192357600080fd5b6102c65a03f1151561193457600080fd5b505050604051805191505080151561194e57839650611529565b81600160a060020a0316636352211e8760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561199d57600080fd5b6102c65a03f115156119ae57600080fd5b505050604051805190508484600a81106119c457fe5b600160a060020a03928316602091909102919091015260019093019282166313e752068760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515611a2757600080fd5b6102c65a03f11515611a3857600080fd5b5050506040518051965050600160a060020a03821663153281096000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611a8957600080fd5b6102c65a03f11515611a9a57600080fd5b5050506040518051905094508491506118ae565b839650611529565b6004546000908190819033600160a060020a0390811691161480611ae8575060015433600160a060020a039081169116145b1515611af357600080fd5b611afc856110c6565b1515611b0757600080fd5b60008581526002602052604090206006810154600190910154909350600160a060020a03169150611b378561165e565b9050611b6a81600754016103e803611b5e6008546103e8018661253190919063ffffffff16565b9063ffffffff61256716565b600086815260026020526040908190206006810183905560038101546005909101547feb27367f0e316117420e252c8ac385803e0c10190473338e035ef412226cf17a9389938893919288928b92909190519687526020870195909552604080870194909452600160a060020a0392831660608701529116608085015260a084015260c083019190915260e0909101905180910390a15050505050565b60015433600160a060020a0390811691161480611c32575060005433600160a060020a039081169116145b1515611c3d57600080fd5b600160a060020a0381161515611c5257600080fd5b600154600160a060020a0380831691167f9cb45c728de594dab506a1f1a8554e24c8eeaf983618d5ec5dd7bc6f3c49feee60405160405180910390a360018054600160a060020a031916600160a060020a0392909216919091179055565b60045433600160a060020a0390811691161480611cdb575060015433600160a060020a039081169116145b1515611ce657600080fd5b610e198284836124a8565b60005433600160a060020a03908116911614611d0c57600080fd5b600160a060020a0330163181901015611d2457600080fd5b600160a060020a0382161515611d6c57600054600160a060020a031681156108fc0282604051600060405180830381858888f193505050501515611d6757600080fd5b610ad2565b600160a060020a03821681156108fc0282604051600060405180830381858888f193505050501515610ad257600080fd5b611da56126ab565b6009600a6101406040519081016040529190610140830182845b815481526020019060010190808311611dbf575050505050905090565b60015460a060020a900460ff1681565b600090815260026020526040902060040154431490565b60085481565b60008181526002602052604081206003810154600582015460068301546001840154929491939092600160a060020a03169190819081908190611e4b8a61221b565b9450611e568a61165e565b600754600283015492549a9c999b5097999698959701956101009004600160a060020a031694909350915050565b60005433600160a060020a03908116911614611e9f57600080fd5b600160a060020a0381161515611eb457600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008054600160a060020a031916600160a060020a0392909216919091179055565b60045460009033600160a060020a0390811691161480611f40575060015433600160a060020a039081169116145b1515611f4b57600080fd5b611f55828561257e565b1515611f6057600080fd5b5060008381526002602052604090819020600601805490849055907f2bce37c591c5b0d254c3056688b080a088f160fff82b6e79f456c8a20d5570f6908590839086905180848152602001838152602001828152602001935050505060405180910390a150505050565b60015433600160a060020a0390811691161480611ff5575060005433600160a060020a039081169116145b151561200057600080fd5b600855565b60045433600160a060020a0390811691161480612030575060015433600160a060020a039081169116145b151561203b57600080fd5b610ad282826124da565b61204f838261257e565b151561205a57600080fd5b61206482826125a1565b151561206f57600080fd5b61207882612123565b151561208357600080fd5b610e19838383612131565b612098818361257e565b15156120a357600080fd5b600082815260026020526040908190208054600160a060020a03808716610100810274ffffffffffffffffffffffffffffffffffffffff00199093169290921790925591908316907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a3505050565b600160a060020a0316151590565b600160a060020a0380831660008181526003602090815260408083208054600190810190915586845260029092529091209081018054600160a060020a031916909217909155436004909101558316156121cf57600160a060020a0383166000908152600360209081526040808320805460001901905583835260029091529020805474ffffffffffffffffffffffffffffffffffffffff00191690555b81600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b600081815260026020526040812060060154816122378461165e565b905061225e81600754016103e803611b5e6008546103e8018561253190919063ffffffff16565b949350505050565b60008060008060008061227887610e1e565b600554909450600160a060020a0316925063075bcd158414806122a1575061229f83612123565b155b156122af576000955061249e565b82915081600160a060020a0316634f558e798560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561230157600080fd5b6102c65a03f1151561231257600080fd5b50505060405180519150505b63075bcd158414158015612336575061233683612123565b801561233f5750805b1561249a5781600160a060020a0316634f558e798560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561239357600080fd5b6102c65a03f115156123a457600080fd5b50505060405180519150508015156123be5784955061249e565b81600160a060020a03166313e752068560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561240d57600080fd5b6102c65a03f1151561241e57600080fd5b5050506040518051945050600160a060020a03821663153281096000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561246f57600080fd5b6102c65a03f1151561248057600080fd5b5050506040518051600190960195935083925061231e9050565b8495505b5050505050919050565b6124b2838261257e565b15156124bd57600080fd5b6124c682612123565b15156124d157600080fd5b612078816110c6565b6000828152600260205260409020600101548190600160a060020a031661250082612123565b151561250b57600080fd5b61251582856125a1565b151561252057600080fd5b61252b818386612131565b50505050565b6000808315156125445760009150612560565b5082820282848281151561255457fe5b041461255c57fe5b8091505b5092915050565b600080828481151561257557fe5b04949350505050565b600090815260026020526040902060010154600160a060020a0390811691161490565b6000908152600260205260409020546101009004600160a060020a0390811691161490565b60206040519081016040526000815290565b6101006040519081016040908152600080835260208301819052908201819052606082018190526080820181905260a0820181905260c0820181905260e082015290565b82600a810192821561264a579160200282015b8281111561264a57825182559160200191906001019061262f565b506126569291506126c6565b5090565b6101006040519081016040526008815b600081526020019060019003908161266a5790505090565b610140604051908101604052600a815b6000815260001990910190602001816126925790505090565b6101406040519081016040526000815260096020820161266a565b610b1591905b8082111561265657600081556001016126cc5600a165627a7a72305820b4cdfd0479c44ba7511bcab3a7743f8bfce4f6a6499f69950e7228221f392a220029000000000000000000000000ca82cfcfbe9eed35f7afee9c17755c679be132410000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6060604052600436106102425763ffffffff60e060020a60003504166301c6adc3811461024757806306fdde031461026b578063095ea7b3146102f55780630b7e9c44146103175780630c990004146103365780631051db34146103645780631271f09a1461038b57806313e75206146103b457806315328109146103dc57806318160ddd1461040b57806318384df21461041e5780631c75b6b214610434578063223e97be1461044a57806323b872dd146104635780632ce0ca6b1461048b5780633151609e146104c7578063481c6a75146104e05780634f558e79146104f357806353ebf6bd146105095780636297c16c146105215780636352211e14610537578063645cd0461461054d5780636827e7641461059c57806370a08231146105af578063718eaa50146105ce578063819912a2146105ed5780638462151c1461060c578063897a7dab1461067e5780638da5cb5b1461080d57806395d89b41146108205780639d77e4f814610833578063a12396aa14610849578063a168d87314610862578063a9059cbb14610875578063b2e6ceeb14610897578063b54b4fb9146108ad578063b6791ad4146108c3578063b7d9549c146108f4578063ba0e930a14610916578063beabacc814610935578063c10753291461095d578063ce2c6ad51461097f578063cf837fad14610992578063d5182b70146109a5578063d5b2a01a146109bb578063e4b50cb8146109ce578063f2fde38b14610a34578063f83fcdea14610a53578063fbf0ade114610a78578063ff5f8b4b14610a8e575b600080fd5b341561025257600080fd5b610269600160a060020a0360043516602435610ab0565b005b341561027657600080fd5b61027e610ad6565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102ba5780820151838201526020016102a2565b50505050905090810190601f1680156102e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561030057600080fd5b610269600160a060020a0360043516602435610b18565b341561032257600080fd5b610269600160a060020a0360043516610b3a565b341561034157600080fd5b610269600435600160a060020a036024351660443560643560843560a435610be3565b341561036f57600080fd5b610377610dd3565b604051901515815260200160405180910390f35b341561039657600080fd5b610269600160a060020a036004358116906024359060443516610dd8565b34156103bf57600080fd5b6103ca600435610e1e565b60405190815260200160405180910390f35b34156103e757600080fd5b6103ef610e4a565b604051600160a060020a03909116815260200160405180910390f35b341561041657600080fd5b6103ca610e59565b341561042957600080fd5b6103ca600435610e5f565b341561043f57600080fd5b610269600435610e8c565b341561045557600080fd5b610269600435602435610ec7565b341561046e57600080fd5b610269600160a060020a0360043581169060243516604435610f7d565b341561049657600080fd5b610269600461014481600a610140604051908101604052919082826101408082843750939550610fbe945050505050565b34156104d257600080fd5b610269600435602435611001565b34156104eb57600080fd5b6103ef6110b7565b34156104fe57600080fd5b6103776004356110c6565b341561051457600080fd5b61026960043515156110db565b341561052c57600080fd5b610269600435611182565b341561054257600080fd5b6103ef600435611290565b341561055857600080fd5b6105636004356112c5565b604051808261010080838360005b83811015610589578082015183820152602001610571565b5050505090500191505060405180910390f35b34156105a757600080fd5b6103ca611363565b34156105ba57600080fd5b6103ca600160a060020a0360043516611369565b34156105d957600080fd5b610269600160a060020a0360043516611384565b34156105f857600080fd5b610269600160a060020a03600435166113dc565b341561061757600080fd5b61062b600160a060020a0360043516611434565b60405160208082528190810183818151815260200191508051906020019060200280838360005b8381101561066a578082015183820152602001610652565b505050509050019250505060405180910390f35b341561068957600080fd5b6102696004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061153495505050505050565b341561081857600080fd5b6103ef61160e565b341561082b57600080fd5b61027e61161d565b341561083e57600080fd5b6103ca60043561165e565b341561085457600080fd5b6102696004356024356116a4565b341561086d57600080fd5b6103ef61175a565b341561088057600080fd5b610269600160a060020a0360043516602435611769565b34156108a257600080fd5b61026960043561178b565b34156108b857600080fd5b6103ca6004356117ac565b34156108ce57600080fd5b6108d96004356117d8565b60405180826101408083836000815183820152602001610571565b34156108ff57600080fd5b610269600435600160a060020a0360243516611ab6565b341561092157600080fd5b610269600160a060020a0360043516611c07565b341561094057600080fd5b610269600160a060020a0360043581169060243516604435611cb0565b341561096857600080fd5b610269600160a060020a0360043516602435611cf1565b341561098a57600080fd5b6108d9611d9d565b341561099d57600080fd5b610377611ddc565b34156109b057600080fd5b610377600435611dec565b34156109c657600080fd5b6103ca611e03565b34156109d957600080fd5b6109e4600435611e09565b6040519788526020880196909652604080880195909552600160a060020a039384166060880152608087019290925260a08601521660c084015260e0830191909152610100909101905180910390f35b3415610a3f57600080fd5b610269600160a060020a0360043516611e84565b3415610a5e57600080fd5b610269600435602435600160a060020a0360443516611f12565b3415610a8357600080fd5b610269600435611fca565b3415610a9957600080fd5b610269600435600160a060020a0360243516612005565b60015460a060020a900460ff1615610ac757600080fd5b610ad2823383612045565b5050565b610ade6125c6565b60408051908101604052600c81527f43727970746f4369746965730000000000000000000000000000000000000000602082015290505b90565b60015460a060020a900460ff1615610b2f57600080fd5b610ad282823361208e565b60005433600160a060020a03908116911614610b5557600080fd5b600160a060020a0381161515610ba357600054600160a060020a039081169030163180156108fc0290604051600060405180830381858888f193505050501515610b9e57600080fd5b610be0565b80600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f193505050501515610be057600080fd5b50565b610beb6125d8565b60015433600160a060020a0390811691161480610c16575060005433600160a060020a039081169116145b1515610c2157600080fd5b60008311610c2e57600080fd5b610c3786612123565b1515610c4257600080fd5b63ffffffff87168714610c5457600080fd5b610c5d876110c6565b15610c6757600080fd5b60068054600101905561010060405190810160409081526001825260006020808401829052600160a060020a038a168385015260608401869052608084018990524360a085015260c0840188905260e084018790528a8252600290522090915081908151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160028201556080820151600382015560a0820151816004015560c0820151816005015560e0820151600690910155507f50149f528b157cc2203af9bb98c3c320364694d9ffc6da5cc0b5ef6d2e8a1398878686896040519384526020840192909252604080840191909152600160a060020a0390911660608301526080909101905180910390a1610dca60008789612131565b50505050505050565b600190565b60045433600160a060020a0390811691161480610e03575060015433600160a060020a039081169116145b1515610e0e57600080fd5b610e1983838361208e565b505050565b6000610e29826110c6565b1515610e3457600080fd5b5060009081526002602052604090206005015490565b600554600160a060020a031681565b60065490565b6000610e6a826110c6565b1515610e7557600080fd5b506000908152600260208190526040909120015490565b60015433600160a060020a0390811691161480610eb7575060005433600160a060020a039081169116145b1515610ec257600080fd5b600755565b60015460009033600160a060020a0390811691161480610ef5575060005433600160a060020a039081169116145b1515610f0057600080fd5b610f09836110c6565b1515610f1457600080fd5b5060008281526002602052604090819020600501805490839055907fd6c4347571cebd49451e87a1c1b833ca84791009a139f27d0dcf3159e96a08a5908490839085905180848152602001838152602001828152602001935050505060405180910390a1505050565b60045433600160a060020a0390811691161480610fa8575060015433600160a060020a039081169116145b1515610fb357600080fd5b610e19838383612045565b60015433600160a060020a0390811691161480610fe9575060005433600160a060020a039081169116145b1515610ff457600080fd5b610ad2600982600a61261c565b60015460009033600160a060020a039081169116148061102f575060005433600160a060020a039081169116145b151561103a57600080fd5b611043836110c6565b151561104e57600080fd5b5060008281526002602081905260409182902001805490839055907fb7b3fa00c09f5253e4c6bc72c004a0977965613f9f533cfb93014dade835fcb5908490839085905192835260208301919091526040808301919091526060909101905180910390a1505050565b600154600160a060020a031681565b60009081526002602052604090205460ff1690565b60015433600160a060020a0390811691161480611106575060005433600160a060020a039081169116145b151561111157600080fd5b6001805474ff0000000000000000000000000000000000000000191660a060020a831515021790557fd1b3ccafda2b2f8613e51c6ac4f6e844932f92b0058df6d7ee800b152f55a00d3382604051600160a060020a039092168252151560208201526040908101905180910390a150565b60015460009033600160a060020a03908116911614806111b0575060005433600160a060020a039081169116145b15156111bb57600080fd5b63ffffffff821682146111cd57600080fd5b6111d6826110c6565b15156111e157600080fd5b50600680546000190181556000828152600260208190526040808320600181018054825474ffffffffffffffffffffffffffffffffffffffffff19168355600160a060020a0319811690915592810184905560038101849055600481018490556005810184905590930191909155600160a060020a0316907f5dd85a7dcd757c302c9d79eb5d4c00cfb8c98f5f4f41c52408f7d25233e54e959083905190815260200160405180910390a15050565b600061129b826110c6565b15156112a657600080fd5b50600090815260026020526040902060010154600160a060020a031690565b6112cd61265a565b60006112d761265a565b600084815260026020908152604091829020600381015484526005810154918401919091526006810154918301919091526001810154600160a060020a0316606083015291506113268461221b565b60808201526113348461165e565b6007540160a082015281546101009004600160a060020a031660c082015260029091015460e082015292915050565b60075481565b600160a060020a031660009081526003602052604090205490565b60015433600160a060020a03908116911614806113af575060005433600160a060020a039081169116145b15156113ba57600080fd5b60058054600160a060020a031916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161480611407575060005433600160a060020a039081169116145b151561141257600080fd5b60048054600160a060020a031916600160a060020a0392909216919091179055565b61143c6125c6565b60006114466125c6565b60008060008061145588611369565b955085151561148557600060405180591061146d5750595b90808252806020026020018201604052509650611529565b856040518059106114935750595b908082528060200260200182016040525094506114ae610e59565b93506000925060009150600090505b838111611525576114cd826110c6565b1561151a576000828152600260205260409020600190810154910190600160a060020a038981169116141561151a578185848151811061150957fe5b602090810290910101526001909201915b6001909101906114bd565b8496505b505050505050919050565b60015460009033600160a060020a0390811691161480611562575060005433600160a060020a039081169116145b151561156d57600080fd5b5060005b8651811015610dca5761160687828151811061158957fe5b9060200190602002015187838151811061159f57fe5b906020019060200201518784815181106115b557fe5b906020019060200201518785815181106115cb57fe5b906020019060200201518786815181106115e157fe5b906020019060200201518787815181106115f757fe5b90602001906020020151610be3565b600101611571565b600054600160a060020a031681565b6116256125c6565b60408051908101604052600981527f43697479546f6b656e00000000000000000000000000000000000000000000006020820152905090565b60008060008061166d85612266565b925060009150600090505b8281101561169c57600981600a811061168d57fe5b01549190910190600101611678565b509392505050565b60015460009033600160a060020a03908116911614806116d2575060005433600160a060020a039081169116145b15156116dd57600080fd5b6116e6836110c6565b15156116f157600080fd5b5060008281526002602052604090819020600301805490839055907f6e94426bbffb1bc76323b8410b8c5a5197aee10363f4ed90079eb17a4c07eef5908490839085905192835260208301919091526040808301919091526060909101905180910390a1505050565b600454600160a060020a031681565b60015460a060020a900460ff161561178057600080fd5b610ad23383836124a8565b60015460a060020a900460ff16156117a257600080fd5b610be081336124da565b60006117b7826110c6565b15156117c257600080fd5b5060009081526002602052604090206006015490565b6117e0612682565b6000806117eb612682565b60008060006117f9886110c6565b151561180457600080fd5b61180d88610e1e565b600554909650600160a060020a0316945063075bcd158614801590611836575061183685612123565b15611529576000925084915081600160a060020a0316634f558e798760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561189157600080fd5b6102c65a03f115156118a257600080fd5b50505060405180519150505b63075bcd1586141580156118c657506118c685612123565b80156118cf5750805b15611aae5781600160a060020a0316634f558e798760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561192357600080fd5b6102c65a03f1151561193457600080fd5b505050604051805191505080151561194e57839650611529565b81600160a060020a0316636352211e8760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561199d57600080fd5b6102c65a03f115156119ae57600080fd5b505050604051805190508484600a81106119c457fe5b600160a060020a03928316602091909102919091015260019093019282166313e752068760006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515611a2757600080fd5b6102c65a03f11515611a3857600080fd5b5050506040518051965050600160a060020a03821663153281096000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611a8957600080fd5b6102c65a03f11515611a9a57600080fd5b5050506040518051905094508491506118ae565b839650611529565b6004546000908190819033600160a060020a0390811691161480611ae8575060015433600160a060020a039081169116145b1515611af357600080fd5b611afc856110c6565b1515611b0757600080fd5b60008581526002602052604090206006810154600190910154909350600160a060020a03169150611b378561165e565b9050611b6a81600754016103e803611b5e6008546103e8018661253190919063ffffffff16565b9063ffffffff61256716565b600086815260026020526040908190206006810183905560038101546005909101547feb27367f0e316117420e252c8ac385803e0c10190473338e035ef412226cf17a9389938893919288928b92909190519687526020870195909552604080870194909452600160a060020a0392831660608701529116608085015260a084015260c083019190915260e0909101905180910390a15050505050565b60015433600160a060020a0390811691161480611c32575060005433600160a060020a039081169116145b1515611c3d57600080fd5b600160a060020a0381161515611c5257600080fd5b600154600160a060020a0380831691167f9cb45c728de594dab506a1f1a8554e24c8eeaf983618d5ec5dd7bc6f3c49feee60405160405180910390a360018054600160a060020a031916600160a060020a0392909216919091179055565b60045433600160a060020a0390811691161480611cdb575060015433600160a060020a039081169116145b1515611ce657600080fd5b610e198284836124a8565b60005433600160a060020a03908116911614611d0c57600080fd5b600160a060020a0330163181901015611d2457600080fd5b600160a060020a0382161515611d6c57600054600160a060020a031681156108fc0282604051600060405180830381858888f193505050501515611d6757600080fd5b610ad2565b600160a060020a03821681156108fc0282604051600060405180830381858888f193505050501515610ad257600080fd5b611da56126ab565b6009600a6101406040519081016040529190610140830182845b815481526020019060010190808311611dbf575050505050905090565b60015460a060020a900460ff1681565b600090815260026020526040902060040154431490565b60085481565b60008181526002602052604081206003810154600582015460068301546001840154929491939092600160a060020a03169190819081908190611e4b8a61221b565b9450611e568a61165e565b600754600283015492549a9c999b5097999698959701956101009004600160a060020a031694909350915050565b60005433600160a060020a03908116911614611e9f57600080fd5b600160a060020a0381161515611eb457600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008054600160a060020a031916600160a060020a0392909216919091179055565b60045460009033600160a060020a0390811691161480611f40575060015433600160a060020a039081169116145b1515611f4b57600080fd5b611f55828561257e565b1515611f6057600080fd5b5060008381526002602052604090819020600601805490849055907f2bce37c591c5b0d254c3056688b080a088f160fff82b6e79f456c8a20d5570f6908590839086905180848152602001838152602001828152602001935050505060405180910390a150505050565b60015433600160a060020a0390811691161480611ff5575060005433600160a060020a039081169116145b151561200057600080fd5b600855565b60045433600160a060020a0390811691161480612030575060015433600160a060020a039081169116145b151561203b57600080fd5b610ad282826124da565b61204f838261257e565b151561205a57600080fd5b61206482826125a1565b151561206f57600080fd5b61207882612123565b151561208357600080fd5b610e19838383612131565b612098818361257e565b15156120a357600080fd5b600082815260026020526040908190208054600160a060020a03808716610100810274ffffffffffffffffffffffffffffffffffffffff00199093169290921790925591908316907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a3505050565b600160a060020a0316151590565b600160a060020a0380831660008181526003602090815260408083208054600190810190915586845260029092529091209081018054600160a060020a031916909217909155436004909101558316156121cf57600160a060020a0383166000908152600360209081526040808320805460001901905583835260029091529020805474ffffffffffffffffffffffffffffffffffffffff00191690555b81600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b600081815260026020526040812060060154816122378461165e565b905061225e81600754016103e803611b5e6008546103e8018561253190919063ffffffff16565b949350505050565b60008060008060008061227887610e1e565b600554909450600160a060020a0316925063075bcd158414806122a1575061229f83612123565b155b156122af576000955061249e565b82915081600160a060020a0316634f558e798560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561230157600080fd5b6102c65a03f1151561231257600080fd5b50505060405180519150505b63075bcd158414158015612336575061233683612123565b801561233f5750805b1561249a5781600160a060020a0316634f558e798560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561239357600080fd5b6102c65a03f115156123a457600080fd5b50505060405180519150508015156123be5784955061249e565b81600160a060020a03166313e752068560006040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561240d57600080fd5b6102c65a03f1151561241e57600080fd5b5050506040518051945050600160a060020a03821663153281096000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561246f57600080fd5b6102c65a03f1151561248057600080fd5b5050506040518051600190960195935083925061231e9050565b8495505b5050505050919050565b6124b2838261257e565b15156124bd57600080fd5b6124c682612123565b15156124d157600080fd5b612078816110c6565b6000828152600260205260409020600101548190600160a060020a031661250082612123565b151561250b57600080fd5b61251582856125a1565b151561252057600080fd5b61252b818386612131565b50505050565b6000808315156125445760009150612560565b5082820282848281151561255457fe5b041461255c57fe5b8091505b5092915050565b600080828481151561257557fe5b04949350505050565b600090815260026020526040902060010154600160a060020a0390811691161490565b6000908152600260205260409020546101009004600160a060020a0390811691161490565b60206040519081016040526000815290565b6101006040519081016040908152600080835260208301819052908201819052606082018190526080820181905260a0820181905260c0820181905260e082015290565b82600a810192821561264a579160200282015b8281111561264a57825182559160200191906001019061262f565b506126569291506126c6565b5090565b6101006040519081016040526008815b600081526020019060019003908161266a5790505090565b610140604051908101604052600a815b6000815260001990910190602001816126925790505090565b6101406040519081016040526000815260096020820161266a565b610b1591905b8082111561265657600081556001016126cc5600a165627a7a72305820b4cdfd0479c44ba7511bcab3a7743f8bfce4f6a6499f69950e7228221f392a220029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000ca82cfcfbe9eed35f7afee9c17755c679be132410000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _gameAddress (address): 0xCa82CFcfBe9EEd35F7afEe9C17755c679BE13241
Arg [1] : _parentAddr (address): 0x0000000000000000000000000000000000000000
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000ca82cfcfbe9eed35f7afee9c17755c679be13241
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000
Swarm Source
bzzr://b4cdfd0479c44ba7511bcab3a7743f8bfce4f6a6499f69950e7228221f392a22
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.