ETH Price: $3,315.93 (+1.68%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Approval For...214375592024-12-19 15:48:1143 days ago1734623291IN
Mutant Monsters Token
0 ETH0.0013512829.08358083
Set Approval For...212374992024-11-21 17:08:4771 days ago1732208927IN
Mutant Monsters Token
0 ETH0.0009011819.39615834
Transfer From208855692024-10-03 14:25:11120 days ago1727965511IN
Mutant Monsters Token
0 ETH0.001414513.22238796
Safe Transfer Fr...204532152024-08-04 5:52:11180 days ago1722750731IN
Mutant Monsters Token
0 ETH0.000138991.25004608
Set Approval For...192600622024-02-19 6:40:23347 days ago1708324823IN
Mutant Monsters Token
0 ETH0.0011192924.0905417
Set Approval For...192565512024-02-18 18:46:47348 days ago1708282007IN
Mutant Monsters Token
0 ETH0.0009703320.88447968
Set Approval For...186577222023-11-26 18:47:23432 days ago1701024443IN
Mutant Monsters Token
0 ETH0.0013711129.51056397
Set Approval For...185957202023-11-18 2:19:23440 days ago1700273963IN
Mutant Monsters Token
0 ETH0.0009236719.88028212
Set Approval For...185627942023-11-13 11:50:23445 days ago1699876223IN
Mutant Monsters Token
0 ETH0.0009332937.88659688
Set Approval For...178528832023-08-06 2:16:59544 days ago1691288219IN
Mutant Monsters Token
0 ETH0.0006413513.8037665
Set Approval For...177970042023-07-29 6:47:11552 days ago1690613231IN
Mutant Monsters Token
0 ETH0.0008069317.35868108
Set Approval For...177692122023-07-25 9:26:47556 days ago1690277207IN
Mutant Monsters Token
0 ETH0.001060322.82099335
Set Approval For...177691652023-07-25 9:17:23556 days ago1690276643IN
Mutant Monsters Token
0 ETH0.0006957726.19440411
Set Approval For...177691632023-07-25 9:16:59556 days ago1690276619IN
Mutant Monsters Token
0 ETH0.0012684427.3006361
Set Approval For...177092412023-07-16 23:53:35564 days ago1689551615IN
Mutant Monsters Token
0 ETH0.0006406613.78898341
Set Approval For...176018302023-07-01 21:20:11580 days ago1688246411IN
Mutant Monsters Token
0 ETH0.0006772814.57713737
Transfer From173891972023-06-01 23:26:11609 days ago1685661971IN
Mutant Monsters Token
0 ETH0.0030671328.67715028
Set Approval For...170211662023-04-10 23:56:59661 days ago1681171019IN
Mutant Monsters Token
0 ETH0.0011166623.99066677
Set Approval For...170211652023-04-10 23:56:47661 days ago1681171007IN
Mutant Monsters Token
0 ETH0.0009914621.33920873
Set Approval For...170211652023-04-10 23:56:47661 days ago1681171007IN
Mutant Monsters Token
0 ETH0.0009932521.33920873
Set Approval For...170084432023-04-09 4:39:11663 days ago1681015151IN
Mutant Monsters Token
0 ETH0.0004790419.45590709
Set Approval For...168752122023-03-21 9:45:59682 days ago1679391959IN
Mutant Monsters Token
0 ETH0.0007688716.54842288
Set Approval For...168486952023-03-17 16:24:59686 days ago1679070299IN
Mutant Monsters Token
0 ETH0.0009911421.33231325
Set Approval For...167692402023-03-06 12:14:11697 days ago1678104851IN
Mutant Monsters Token
0 ETH0.0010505822.61174529
Set Approval For...167002072023-02-24 19:16:11707 days ago1677266171IN
Mutant Monsters Token
0 ETH0.0012379326.64395043
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MutantMonsters

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-10-11
*/

pragma solidity ^0.4.24;

	library SafeMath {

	  function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
		if (a == 0) {
		  return 0;
		}

		c = a * b;
		assert(c / a == b);
		return c;
	  }

	  function div(uint256 a, uint256 b) internal pure returns (uint256) {
		return a / b;
	  }

	  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 c) {
		c = a + b;
		assert(c >= a);
		return c;
	  }
	}
	
	contract ReentrancyGuard {

	uint256 private guardCounter = 1;
		modifier nonReentrant() {
			guardCounter += 1;
			uint256 localCounter = guardCounter;
			_;
			require(localCounter == guardCounter);
		}

	}
	
	interface ERC165 {
	  function supportsInterface(bytes4 _interfaceId)
		external view	returns (bool);
	}

	contract ERC721Receiver {
	  bytes4 internal constant ERC721_RECEIVED = 0x150b7a02;
	  function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes _data)
		public returns(bytes4);
	}

	library AddressUtils {
	  function isContract(address addr) internal view returns (bool) {
		uint256 size;
		assembly { size := extcodesize(addr) }
		return size > 0;
	  }
	}

	contract Ownable {
	  address public owner;

	  event OwnershipRenounced(address indexed previousOwner);
	  event OwnershipTransferred(
		address indexed previousOwner,
		address indexed newOwner
	  );

	  constructor() public {
		owner = msg.sender;
	  }

	  modifier onlyOwner() {
		require(msg.sender == owner);
		_;
	  }

	  function renounceOwnership() public onlyOwner {
		emit OwnershipRenounced(owner);
		owner = address(0);
	  }

	  function transferOwnership(address _newOwner) public onlyOwner {
		_transferOwnership(_newOwner);
	  }

	  function _transferOwnership(address _newOwner) internal {
		require(_newOwner != address(0));
		emit OwnershipTransferred(owner, _newOwner);
		owner = _newOwner;
	  }
	}

	contract SupportsInterfaceWithLookup is ERC165 {
	  bytes4 public constant InterfaceId_ERC165 = 0x01ffc9a7;

	  mapping(bytes4 => bool) internal supportedInterfaces;

	  constructor() public {_registerInterface(InterfaceId_ERC165);}

	  function supportsInterface(bytes4 _interfaceId)
		external view returns (bool) {return supportedInterfaces[_interfaceId];
	  }

	  function _registerInterface(bytes4 _interfaceId) internal {
		require(_interfaceId != 0xffffffff);
		supportedInterfaces[_interfaceId] = true;
	  }
	}

	contract ERC721Basic is ERC165 {
	  event Transfer(address indexed _from,	address indexed _to, uint256 indexed _tokenId);
	  event Approval(address indexed _owner, address indexed _approved,	uint256 indexed _tokenId);
	  event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved);

	  function balanceOf(address _owner) public view returns (uint256 _balance);
	  function ownerOf(uint256 _tokenId) public view returns (address _owner);
	  function exists(uint256 _tokenId) public view returns (bool _exists);

	  function approve(address _to, uint256 _tokenId) public;
	  function getApproved(uint256 _tokenId)
		public view returns (address _operator);

	  function setApprovalForAll(address _operator, bool _approved) public;
	  function isApprovedForAll(address _owner, address _operator) public view returns (bool);

	  function transferFrom(address _from, address _to, uint256 _tokenId) public;
	  function safeTransferFrom(address _from, address _to, uint256 _tokenId)	public;

	  function safeTransferFrom(
		address _from, address _to,	uint256 _tokenId,	bytes _data)
		public;
	}

	contract ERC721Enumerable is ERC721Basic {
	  function totalSupply() public view returns (uint256);
	  function tokenOfOwnerByIndex(address _owner, uint256 _index)
		public view	returns (uint256 _tokenId);
	  function tokenByIndex(uint256 _index) public view returns (uint256);
	}

	contract ERC721Metadata is ERC721Basic {
	  function name() external view returns (string _name);
	  function symbol() external view returns (string _symbol);
	  function tokenURI(uint256 _tokenId) public view returns (string);
	}

	contract ERC721 is ERC721Basic, ERC721Enumerable, ERC721Metadata {}

	contract ERC721BasicToken is SupportsInterfaceWithLookup, ERC721Basic {

	  bytes4 private constant InterfaceId_ERC721 = 0x80ac58cd;
	  bytes4 private constant InterfaceId_ERC721Exists = 0x4f558e79;
	  using SafeMath for uint256;
	  using AddressUtils for address;
	  bytes4 private constant ERC721_RECEIVED = 0x150b7a02;
	  mapping (uint256 => address) internal tokenOwner;
	  mapping (uint256 => address) internal tokenApprovals;
	  mapping (address => uint256) internal ownedTokensCount;
	  mapping (address => mapping (address => bool)) internal operatorApprovals;
	  modifier onlyOwnerOf(uint256 _tokenId) {
		require(ownerOf(_tokenId) == msg.sender);
		_;
	  }

	  modifier canTransfer(uint256 _tokenId) {
		require(isApprovedOrOwner(msg.sender, _tokenId));
		_;
	  }

	  constructor() public {
		_registerInterface(InterfaceId_ERC721);
		_registerInterface(InterfaceId_ERC721Exists);
	  }

	  function balanceOf(address _owner) public view returns (uint256) {
		require(_owner != address(0));
		return ownedTokensCount[_owner];
	  }

	  function ownerOf(uint256 _tokenId) public view returns (address) {
		address owner = tokenOwner[_tokenId];
		require(owner != address(0));
		return owner;
	  }

	  function exists(uint256 _tokenId) public view returns (bool) {
		address owner = tokenOwner[_tokenId];
		return owner != address(0);
	  }

	  function approve(address _to, uint256 _tokenId) public {
		address owner = ownerOf(_tokenId);
		require(_to != owner);
		require(msg.sender == owner || isApprovedForAll(owner, msg.sender));
		tokenApprovals[_tokenId] = _to;
		emit Approval(owner, _to, _tokenId);
	  }

	  function getApproved(uint256 _tokenId) public view returns (address) {
		return tokenApprovals[_tokenId];
	  }

	  function setApprovalForAll(address _to, bool _approved) public {
		require(_to != msg.sender);
		operatorApprovals[msg.sender][_to] = _approved;
		emit ApprovalForAll(msg.sender, _to, _approved);
	  }

	  function isApprovedForAll(address _owner,	address _operator)	public view	returns (bool)
	  {return operatorApprovals[_owner][_operator];
    }

	  function transferFrom(address _from, address _to,	uint256 _tokenId)	public canTransfer(_tokenId) {
		require(_from != address(0));
		require(_to != address(0));
		clearApproval(_from, _tokenId);
		removeTokenFrom(_from, _tokenId);
		addTokenTo(_to, _tokenId);
		emit Transfer(_from, _to, _tokenId);
	  }

	  function safeTransferFrom(address _from, address _to, uint256 _tokenId) public canTransfer(_tokenId) {
		safeTransferFrom(_from, _to, _tokenId, "");
	  }

	  function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes _data) public canTransfer(_tokenId) {
		transferFrom(_from, _to, _tokenId);
		require(checkAndCallSafeTransfer(_from, _to, _tokenId, _data));
	  }

	  function isApprovedOrOwner(address _spender, uint256 _tokenId) internal view returns (bool) {
		address owner = ownerOf(_tokenId);
		return (
		  _spender == owner ||
		  getApproved(_tokenId) == _spender ||
		  isApprovedForAll(owner, _spender)
		);
	  }

	  function _mint(address _to, uint256 _tokenId) internal {
		require(_to != address(0));
		addTokenTo(_to, _tokenId);
		emit Transfer(address(0), _to, _tokenId);
	  }

	  function _burn(address _owner, uint256 _tokenId) internal {
		clearApproval(_owner, _tokenId);
		removeTokenFrom(_owner, _tokenId);
		emit Transfer(_owner, address(0), _tokenId);
	  }

	  function clearApproval(address _owner, uint256 _tokenId) internal {
		require(ownerOf(_tokenId) == _owner);
		if (tokenApprovals[_tokenId] != address(0)) {
		  tokenApprovals[_tokenId] = address(0);
		}
	  }

	  function addTokenTo(address _to, uint256 _tokenId) internal {
		require(tokenOwner[_tokenId] == address(0));
		tokenOwner[_tokenId] = _to;
		ownedTokensCount[_to] = ownedTokensCount[_to].add(1);
	  }

	  function removeTokenFrom(address _from, uint256 _tokenId) internal {
		require(ownerOf(_tokenId) == _from);
		ownedTokensCount[_from] = ownedTokensCount[_from].sub(1);
		tokenOwner[_tokenId] = address(0);
	  }

	  function checkAndCallSafeTransfer(address _from, address _to, uint256 _tokenId, bytes _data) internal returns (bool) {
		if (!_to.isContract()) {return true;
    }

		bytes4 retval = ERC721Receiver(_to).onERC721Received(
		msg.sender, _from, _tokenId, _data);
		return (retval == ERC721_RECEIVED);
	  }
	}

	contract ERC721Token is SupportsInterfaceWithLookup, ERC721BasicToken, ERC721 {

	  bytes4 private constant InterfaceId_ERC721Enumerable = 0x780e9d63;
	  bytes4 private constant InterfaceId_ERC721Metadata = 0x5b5e139f;
	  string internal name_;
	  string internal symbol_;
	  mapping(address => uint256[]) internal ownedTokens;
	  mapping(uint256 => uint256) internal ownedTokensIndex;
	  uint256[] internal allTokens;
	  mapping(uint256 => uint256) internal allTokensIndex;
	  mapping(uint256 => string) internal tokenURIs;

	  constructor(string _name, string _symbol) public {
		name_ = _name;
		symbol_ = _symbol;
		_registerInterface(InterfaceId_ERC721Enumerable);
		_registerInterface(InterfaceId_ERC721Metadata);
	  }

	  function name() external view returns (string) {return name_;}

	  function symbol() external view returns (string) {return symbol_;}

	  function tokenOfOwnerByIndex(address _owner, uint256 _index) public view returns (uint256) {
      require(_index < balanceOf(_owner));
      return ownedTokens[_owner][_index];
	  }

	  function totalSupply() public view returns (uint256) {
      return allTokens.length;
	  }

	  function tokenByIndex(uint256 _index) public view returns (uint256) {
      require(_index < totalSupply());
      return allTokens[_index];
	  }

	  function _setTokenURI(uint256 _tokenId, string _uri) internal {
      require(exists(_tokenId));
      tokenURIs[_tokenId] = _uri;
	  }

	  function addTokenTo(address _to, uint256 _tokenId) internal {
      super.addTokenTo(_to, _tokenId);
      uint256 length = ownedTokens[_to].length;
      ownedTokens[_to].push(_tokenId);
      ownedTokensIndex[_tokenId] = length;
	  }

	  function removeTokenFrom(address _from, uint256 _tokenId) internal {
      super.removeTokenFrom(_from, _tokenId);
      uint256 tokenIndex = ownedTokensIndex[_tokenId];
      uint256 lastTokenIndex = ownedTokens[_from].length.sub(1);
      uint256 lastToken = ownedTokens[_from][lastTokenIndex];
      ownedTokens[_from][tokenIndex] = lastToken;
      ownedTokens[_from][lastTokenIndex] = 0;
      ownedTokens[_from].length--;
      ownedTokensIndex[_tokenId] = 0;
      ownedTokensIndex[lastToken] = tokenIndex;
	  }

	  function _mint(address _to, uint256 _tokenId) internal {
      super._mint(_to, _tokenId);
      allTokensIndex[_tokenId] = allTokens.length;
      allTokens.push(_tokenId);
	  }

	  function _burn(address _owner, uint256 _tokenId) internal {
      super._burn(_owner, _tokenId);
      if (bytes(tokenURIs[_tokenId]).length != 0) {
        delete tokenURIs[_tokenId];
		}

		uint256 tokenIndex = allTokensIndex[_tokenId];
		uint256 lastTokenIndex = allTokens.length.sub(1);
		uint256 lastToken = allTokens[lastTokenIndex];
		allTokens[tokenIndex] = lastToken;
		allTokens[lastTokenIndex] = 0;
		allTokens.length--;
		allTokensIndex[_tokenId] = 0;
		allTokensIndex[lastToken] = tokenIndex;
	  }
	}

	contract MutantMonsters is ERC721Token, Ownable {

    constructor() ERC721Token("MutantMonsters", "MUMO") public {}

    // CONSTANTS
    address client;
    string host_chain = "bitchain";
    address host_contract = 0xf11bB6ba0b9ef584924ae981A5c1FceF0D3A6Ea6;
    uint256 max_supply = 1000000;
    mapping(uint256 => uint256) tokenIDs; // Option for extended interoperability
    bool interoperable = false; // "true" uses input _ID in tokenIDs mapping, "false" uses index + 1
    string baseurl = "https://api.blocktime.solutions/monsters/";

    function manageBaseURL(string new_baseurl) public onlyOwner {
      baseurl = new_baseurl;
    }

    function viewBaseURL() public view returns (string base_url) {
      base_url = baseurl;
    }

    function viewHost() public view returns (string h_chain, address h_contract) {
      h_chain = host_chain;
      h_contract = host_contract;
    }

    event BoughtToken(address indexed buyer, uint256 tokenId);

    function moreSupply() internal view returns (bool moreOK) {
      moreOK = true;
      if (allTokens.length + 1 > max_supply) {moreOK = false;}
      return moreOK;
    }

	  function mintToken (uint256 _ID) onlyOwner external {
      uint256 index = allTokens.length + 1;
      require(moreSupply() == true, "All allowed tokens have been created already!");
      _mint(msg.sender, index);
      {interoperable == true ? tokenIDs[index] = _ID : tokenIDs[index] = index;}
      emit BoughtToken(msg.sender, index);
    }

	  function mintTokenForClient (uint256 _ID, address _client) onlyOwner external {
      uint256 index = allTokens.length + 1;
      require(moreSupply() == true, "All allowed tokens have been minted already!");
      _mint(_client, index);
      {interoperable == true ? tokenIDs[index] = _ID : tokenIDs[index] = index;}
      emit BoughtToken(_client, index);
	  }

	  function transferOwnTokens (uint256[] _ids, address _to) external {
          uint256 n_tokens = _ids.length;
          address _from = msg.sender;
          require(_to != address(0));
    
          for (uint it = 0; it < n_tokens; it++) {
            require(isApprovedOrOwner(msg.sender, _ids[it]));}	
          for (uint i = 0; i < n_tokens; i++) {
            clearApproval(_from, _ids[i]);
            removeTokenFrom(_from, _ids[i]);
            addTokenTo(_to, _ids[i]);
            emit Transfer(_from, _to, _ids[i]);}
	  }

	  function myTokens() external view returns (uint256[]) {
  		return ownedTokens[msg.sender];
	  }

    function uintTostr(uint i) internal pure returns (string){
      if (i == 0) return "0"; uint j = i; uint length;
      while (j != 0){length++;j /= 10;} bytes memory bstr = new bytes(length); uint k = length - 1;
      while (i != 0){bstr[k--] = byte(48 + i % 10);i /= 10;}
      return string(bstr);
    }

    function tokenURI(uint256 _ID) public view returns (string URI) {
      require(exists(_ID));
      URI = string(abi.encodePacked(baseurl, uintTostr(tokenIDs[_ID])));
    }

    function nativeID(uint256 _ID) public view returns (uint hostID) {
      require(exists(_ID));
      hostID = tokenIDs[_ID];
    }

    /* THE OWNER CAN'T DESTROY THE CONTRACT
    function kill(uint _PIN) public {
        require(_PIN == 428874);
        if(msg.sender == owner) selfdestruct(owner);
    } */
   
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_ID","type":"uint256"},{"name":"_client","type":"address"}],"name":"mintTokenForClient","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"InterfaceId_ERC165","outputs":[{"name":"","type":"bytes4"}],"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":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"new_baseurl","type":"string"}],"name":"manageBaseURL","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"exists","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_ids","type":"uint256[]"},{"name":"_to","type":"address"}],"name":"transferOwnTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","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":"myTokens","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"viewBaseURL","outputs":[{"name":"base_url","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_ID","type":"uint256"}],"name":"nativeID","outputs":[{"name":"hostID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_ID","type":"uint256"}],"name":"mintToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_ID","type":"uint256"}],"name":"tokenURI","outputs":[{"name":"URI","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"viewHost","outputs":[{"name":"h_chain","type":"string"},{"name":"h_contract","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"buyer","type":"address"},{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"BoughtToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","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":true,"name":"_tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_approved","type":"address"},{"indexed":true,"name":"_tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_operator","type":"address"},{"indexed":false,"name":"_approved","type":"bool"}],"name":"ApprovalForAll","type":"event"}]

60c0604052600860808190527f626974636861696e00000000000000000000000000000000000000000000000060a09081526200004091600e919062000315565b50600f8054600160a060020a03191673f11bb6ba0b9ef584924ae981a5c1fcef0d3a6ea6179055620f42406010556012805460ff191690556040805160608101825260298082527f68747470733a2f2f6170692e626c6f636b74696d652e736f6c7574696f6e732f602083019081527f6d6f6e73746572732f00000000000000000000000000000000000000000000009290930191909152620000e69160139162000315565b50348015620000f457600080fd5b50604080518082018252600e81527f4d7574616e744d6f6e73746572730000000000000000000000000000000000006020808301919091528251808401909352600483527f4d554d4f000000000000000000000000000000000000000000000000000000009083015290620001927f01ffc9a700000000000000000000000000000000000000000000000000000000640100000000620002a8810204565b620001c67f80ac58cd00000000000000000000000000000000000000000000000000000000640100000000620002a8810204565b620001fa7f4f558e7900000000000000000000000000000000000000000000000000000000640100000000620002a8810204565b81516200020f90600590602085019062000315565b5080516200022590600690602084019062000315565b506200025a7f780e9d6300000000000000000000000000000000000000000000000000000000640100000000620002a8810204565b6200028e7f5b5e139f00000000000000000000000000000000000000000000000000000000640100000000620002a8810204565b5050600c8054600160a060020a03191633179055620003ba565b7fffffffff000000000000000000000000000000000000000000000000000000008082161415620002d857600080fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200035857805160ff191683800117855562000388565b8280016001018555821562000388579182015b82811115620003885782518255916020019190600101906200036b565b50620003969291506200039a565b5090565b620003b791905b80821115620003965760008155600101620003a1565b90565b611b3080620003ca6000396000f3006080604052600436106101745763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301ffc9a7811461017957806306fdde03146101af578063081812fc1461023957806308b054621461026d578063095ea7b31461029357806318160ddd146102b757806319fa8f50146102de57806323b872dd146103105780632f745c591461033a57806342842e0e1461035e5780634ad8eaf5146103885780634f558e79146103e15780634f6ccce7146103f95780635f88d837146104115780636352211e1461043f57806370a0823114610457578063715018a6146104785780638da5cb5b1461048d578063949e8acd146104a257806395d89b41146105075780639fae24ed1461051c578063a22cb46514610531578063a4fe36ec14610557578063b88d4fde1461056f578063c634d032146105de578063c87b56dd146105f6578063db52b03e1461060e578063e985e9c5146106b4578063f2fde38b146106db575b600080fd5b34801561018557600080fd5b5061019b600160e060020a0319600435166106fc565b604080519115158252519081900360200190f35b3480156101bb57600080fd5b506101c461071b565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101fe5781810151838201526020016101e6565b50505050905090810190601f16801561022b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024557600080fd5b506102516004356107b2565b60408051600160a060020a039092168252519081900360200190f35b34801561027957600080fd5b50610291600435600160a060020a03602435166107cd565b005b34801561029f57600080fd5b50610291600160a060020a0360043516602435610914565b3480156102c357600080fd5b506102cc6109ca565b60408051918252519081900360200190f35b3480156102ea57600080fd5b506102f36109d0565b60408051600160e060020a03199092168252519081900360200190f35b34801561031c57600080fd5b50610291600160a060020a03600435811690602435166044356109f4565b34801561034657600080fd5b506102cc600160a060020a0360043516602435610a99565b34801561036a57600080fd5b50610291600160a060020a0360043581169060243516604435610ae6565b34801561039457600080fd5b506040805160206004803580820135601f8101849004840285018401909552848452610291943694929360249392840191908190840183828082843750949750610b1e9650505050505050565b3480156103ed57600080fd5b5061019b600435610b4c565b34801561040557600080fd5b506102cc600435610b69565b34801561041d57600080fd5b506102916024600480358281019291013590600160a060020a03903516610b9e565b34801561044b57600080fd5b50610251600435610cbb565b34801561046357600080fd5b506102cc600160a060020a0360043516610ce5565b34801561048457600080fd5b50610291610d18565b34801561049957600080fd5b50610251610d86565b3480156104ae57600080fd5b506104b7610d95565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156104f35781810151838201526020016104db565b505050509050019250505060405180910390f35b34801561051357600080fd5b506101c4610df5565b34801561052857600080fd5b506101c4610e56565b34801561053d57600080fd5b50610291600160a060020a03600435166024351515610eb7565b34801561056357600080fd5b506102cc600435610f3b565b34801561057b57600080fd5b50604080516020601f60643560048181013592830184900484028501840190955281845261029194600160a060020a038135811695602480359092169560443595369560849401918190840183828082843750949750610f649650505050505050565b3480156105ea57600080fd5b50610291600435610fa3565b34801561060257600080fd5b506101c46004356110e0565b34801561061a57600080fd5b506106236111d7565b604051808060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b83811015610678578181015183820152602001610660565b50505050905090810190601f1680156106a55780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156106c057600080fd5b5061019b600160a060020a0360043581169060243516611281565b3480156106e757600080fd5b50610291600160a060020a03600435166112af565b600160e060020a03191660009081526020819052604090205460ff1690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b820191906000526020600020905b81548152906001019060200180831161078a57829003601f168201915b505050505090505b90565b600090815260026020526040902054600160a060020a031690565b600c54600090600160a060020a031633146107e757600080fd5b506009546001016107f66112d2565b151560011461088c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f416c6c20616c6c6f77656420746f6b656e732068617665206265656e206d696e60448201527f74656420616c7265616479210000000000000000000000000000000000000000606482015290519081900360840190fd5b61089682826112ea565b60125460ff1615156001146108bc576000818152601160205260409020819055806108cf565b6000818152601160205260409020839055825b50604080518281529051600160a060020a038416917f75424253909c2f4460f8a59099700e980f5b484608c4fdd79f600f5162ac88a5919081900360200190a2505050565b600061091f82610cbb565b9050600160a060020a03838116908216141561093a57600080fd5b33600160a060020a038216148061095657506109568133611281565b151561096157600080fd5b600082815260026020526040808220805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60095490565b7f01ffc9a70000000000000000000000000000000000000000000000000000000081565b806109ff3382611339565b1515610a0a57600080fd5b600160a060020a0384161515610a1f57600080fd5b600160a060020a0383161515610a3457600080fd5b610a3e8483611398565b610a488483611407565b610a528383611540565b8183600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a450505050565b6000610aa483610ce5565b8210610aaf57600080fd5b600160a060020a0383166000908152600760205260409020805483908110610ad357fe5b9060005260206000200154905092915050565b80610af13382611339565b1515610afc57600080fd5b610b188484846020604051908101604052806000815250610f64565b50505050565b600c54600160a060020a03163314610b3557600080fd5b8051610b48906013906020840190611a43565b5050565b600090815260016020526040902054600160a060020a0316151590565b6000610b736109ca565b8210610b7e57600080fd5b6009805483908110610b8c57fe5b90600052602060002001549050919050565b8133600080600160a060020a0385161515610bb857600080fd5b600091505b83821015610bf757610be133888885818110610bd557fe5b90506020020135611339565b1515610bec57600080fd5b600190910190610bbd565b5060005b83811015610cb257610c1f83888884818110610c1357fe5b90506020020135611398565b610c3b83888884818110610c2f57fe5b90506020020135611407565b610c5785888884818110610c4b57fe5b90506020020135611540565b868682818110610c6357fe5b9050602002013585600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4600101610bfb565b50505050505050565b600081815260016020526040812054600160a060020a0316801515610cdf57600080fd5b92915050565b6000600160a060020a0382161515610cfc57600080fd5b50600160a060020a031660009081526003602052604090205490565b600c54600160a060020a03163314610d2f57600080fd5b600c54604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a2600c805473ffffffffffffffffffffffffffffffffffffffff19169055565b600c54600160a060020a031681565b336000908152600760209081526040918290208054835181840281018401909452808452606093928301828280156107a757602002820191906000526020600020905b815481526020019060010190808311610dd8575050505050905090565b60068054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b60138054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b600160a060020a038216331415610ecd57600080fd5b336000818152600460209081526040808320600160a060020a03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6000610f4682610b4c565b1515610f5157600080fd5b5060009081526011602052604090205490565b81610f6f3382611339565b1515610f7a57600080fd5b610f858585856109f4565b610f9185858585611589565b1515610f9c57600080fd5b5050505050565b600c54600090600160a060020a03163314610fbd57600080fd5b50600954600101610fcc6112d2565b151560011461106257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f416c6c20616c6c6f77656420746f6b656e732068617665206265656e2063726560448201527f6174656420616c72656164792100000000000000000000000000000000000000606482015290519081900360840190fd5b61106c33826112ea565b60125460ff161515600114611092576000818152601160205260409020819055806110a5565b6000818152601160205260409020829055815b5060408051828152905133917f75424253909c2f4460f8a59099700e980f5b484608c4fdd79f600f5162ac88a5919081900360200190a25050565b60606110eb82610b4c565b15156110f657600080fd5b600082815260116020526040902054601390611111906116f6565b604051602001808380546001816001161561010002031660029004801561116f5780601f1061114d57610100808354040283529182019161116f565b820191906000526020600020905b81548152906001019060200180831161115b575b5050825160208401908083835b6020831061119b5780518252601f19909201916020918201910161117c565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040529050919050565b600e805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152606093600093919290918301828280156112655780601f1061123a57610100808354040283529160200191611265565b820191906000526020600020905b81548152906001019060200180831161124857829003601f168201915b5050600f549396600160a060020a039094169550929350505050565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205460ff1690565b600c54600160a060020a031633146112c657600080fd5b6112cf8161181d565b50565b60105460095460019190820111156107af5750600090565b6112f4828261189b565b600980546000838152600a60205260408120829055600182018355919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015550565b60008061134583610cbb565b905080600160a060020a031684600160a060020a03161480611380575083600160a060020a0316611375846107b2565b600160a060020a0316145b8061139057506113908185611281565b949350505050565b81600160a060020a03166113ab82610cbb565b600160a060020a0316146113be57600080fd5b600081815260026020526040902054600160a060020a031615610b48576000908152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff1916905550565b600080600061141685856118f6565b600084815260086020908152604080832054600160a060020a038916845260079092529091205490935061145190600163ffffffff61198c16565b600160a060020a03861660009081526007602052604090208054919350908390811061147957fe5b90600052602060002001549050806007600087600160a060020a0316600160a060020a03168152602001908152602001600020848154811015156114b957fe5b6000918252602080832090910192909255600160a060020a03871681526007909152604081208054849081106114eb57fe5b6000918252602080832090910192909255600160a060020a0387168152600790915260409020805490611522906000198301611ac1565b50600093845260086020526040808520859055908452909220555050565b600061154c838361199e565b50600160a060020a039091166000908152600760209081526040808320805460018101825590845282842081018590559383526008909152902055565b60008061159e85600160a060020a0316611a2e565b15156115ad57600191506116ed565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081523360048201818152600160a060020a03898116602485015260448401889052608060648501908152875160848601528751918a169463150b7a0294938c938b938b93909160a490910190602085019080838360005b83811015611640578181015183820152602001611628565b50505050905090810190601f16801561166d5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050506040513d60208110156116b957600080fd5b5051600160e060020a031981167f150b7a020000000000000000000000000000000000000000000000000000000014925090505b50949350505050565b6060600080828185151561173f5760408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201529450611814565b8593505b831561175a57600190920191600a84049350611743565b826040519080825280601f01601f191660200182016040528015611788578160200160208202803883390190505b5091505060001982015b85156118105781516000198201917f01000000000000000000000000000000000000000000000000000000000000006030600a8a0601029184919081106117d557fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a86049550611792565b8194505b50505050919050565b600160a060020a038116151561183257600080fd5b600c54604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600c805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03821615156118b057600080fd5b6118ba8282611540565b6040518190600160a060020a038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b81600160a060020a031661190982610cbb565b600160a060020a03161461191c57600080fd5b600160a060020a03821660009081526003602052604090205461194690600163ffffffff61198c16565b600160a060020a03909216600090815260036020908152604080832094909455918152600190915220805473ffffffffffffffffffffffffffffffffffffffff19169055565b60008282111561199857fe5b50900390565b600081815260016020526040902054600160a060020a0316156119c057600080fd5b6000818152600160208181526040808420805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0388169081179091558452600390915290912054611a0e91611a36565b600160a060020a0390921660009081526003602052604090209190915550565b6000903b1190565b81810182811015610cdf57fe5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611a8457805160ff1916838001178555611ab1565b82800160010185558215611ab1579182015b82811115611ab1578251825591602001919060010190611a96565b50611abd929150611aea565b5090565b815481835581811115611ae557600083815260209020611ae5918101908301611aea565b505050565b6107af91905b80821115611abd5760008155600101611af05600a165627a7a7230582010a9d69e9f5cb6d170175872cce30b3e7838049d4950116f3ebbbe5a26a1dda00029

Deployed Bytecode

0x6080604052600436106101745763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301ffc9a7811461017957806306fdde03146101af578063081812fc1461023957806308b054621461026d578063095ea7b31461029357806318160ddd146102b757806319fa8f50146102de57806323b872dd146103105780632f745c591461033a57806342842e0e1461035e5780634ad8eaf5146103885780634f558e79146103e15780634f6ccce7146103f95780635f88d837146104115780636352211e1461043f57806370a0823114610457578063715018a6146104785780638da5cb5b1461048d578063949e8acd146104a257806395d89b41146105075780639fae24ed1461051c578063a22cb46514610531578063a4fe36ec14610557578063b88d4fde1461056f578063c634d032146105de578063c87b56dd146105f6578063db52b03e1461060e578063e985e9c5146106b4578063f2fde38b146106db575b600080fd5b34801561018557600080fd5b5061019b600160e060020a0319600435166106fc565b604080519115158252519081900360200190f35b3480156101bb57600080fd5b506101c461071b565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101fe5781810151838201526020016101e6565b50505050905090810190601f16801561022b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024557600080fd5b506102516004356107b2565b60408051600160a060020a039092168252519081900360200190f35b34801561027957600080fd5b50610291600435600160a060020a03602435166107cd565b005b34801561029f57600080fd5b50610291600160a060020a0360043516602435610914565b3480156102c357600080fd5b506102cc6109ca565b60408051918252519081900360200190f35b3480156102ea57600080fd5b506102f36109d0565b60408051600160e060020a03199092168252519081900360200190f35b34801561031c57600080fd5b50610291600160a060020a03600435811690602435166044356109f4565b34801561034657600080fd5b506102cc600160a060020a0360043516602435610a99565b34801561036a57600080fd5b50610291600160a060020a0360043581169060243516604435610ae6565b34801561039457600080fd5b506040805160206004803580820135601f8101849004840285018401909552848452610291943694929360249392840191908190840183828082843750949750610b1e9650505050505050565b3480156103ed57600080fd5b5061019b600435610b4c565b34801561040557600080fd5b506102cc600435610b69565b34801561041d57600080fd5b506102916024600480358281019291013590600160a060020a03903516610b9e565b34801561044b57600080fd5b50610251600435610cbb565b34801561046357600080fd5b506102cc600160a060020a0360043516610ce5565b34801561048457600080fd5b50610291610d18565b34801561049957600080fd5b50610251610d86565b3480156104ae57600080fd5b506104b7610d95565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156104f35781810151838201526020016104db565b505050509050019250505060405180910390f35b34801561051357600080fd5b506101c4610df5565b34801561052857600080fd5b506101c4610e56565b34801561053d57600080fd5b50610291600160a060020a03600435166024351515610eb7565b34801561056357600080fd5b506102cc600435610f3b565b34801561057b57600080fd5b50604080516020601f60643560048181013592830184900484028501840190955281845261029194600160a060020a038135811695602480359092169560443595369560849401918190840183828082843750949750610f649650505050505050565b3480156105ea57600080fd5b50610291600435610fa3565b34801561060257600080fd5b506101c46004356110e0565b34801561061a57600080fd5b506106236111d7565b604051808060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b83811015610678578181015183820152602001610660565b50505050905090810190601f1680156106a55780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156106c057600080fd5b5061019b600160a060020a0360043581169060243516611281565b3480156106e757600080fd5b50610291600160a060020a03600435166112af565b600160e060020a03191660009081526020819052604090205460ff1690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b820191906000526020600020905b81548152906001019060200180831161078a57829003601f168201915b505050505090505b90565b600090815260026020526040902054600160a060020a031690565b600c54600090600160a060020a031633146107e757600080fd5b506009546001016107f66112d2565b151560011461088c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f416c6c20616c6c6f77656420746f6b656e732068617665206265656e206d696e60448201527f74656420616c7265616479210000000000000000000000000000000000000000606482015290519081900360840190fd5b61089682826112ea565b60125460ff1615156001146108bc576000818152601160205260409020819055806108cf565b6000818152601160205260409020839055825b50604080518281529051600160a060020a038416917f75424253909c2f4460f8a59099700e980f5b484608c4fdd79f600f5162ac88a5919081900360200190a2505050565b600061091f82610cbb565b9050600160a060020a03838116908216141561093a57600080fd5b33600160a060020a038216148061095657506109568133611281565b151561096157600080fd5b600082815260026020526040808220805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60095490565b7f01ffc9a70000000000000000000000000000000000000000000000000000000081565b806109ff3382611339565b1515610a0a57600080fd5b600160a060020a0384161515610a1f57600080fd5b600160a060020a0383161515610a3457600080fd5b610a3e8483611398565b610a488483611407565b610a528383611540565b8183600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a450505050565b6000610aa483610ce5565b8210610aaf57600080fd5b600160a060020a0383166000908152600760205260409020805483908110610ad357fe5b9060005260206000200154905092915050565b80610af13382611339565b1515610afc57600080fd5b610b188484846020604051908101604052806000815250610f64565b50505050565b600c54600160a060020a03163314610b3557600080fd5b8051610b48906013906020840190611a43565b5050565b600090815260016020526040902054600160a060020a0316151590565b6000610b736109ca565b8210610b7e57600080fd5b6009805483908110610b8c57fe5b90600052602060002001549050919050565b8133600080600160a060020a0385161515610bb857600080fd5b600091505b83821015610bf757610be133888885818110610bd557fe5b90506020020135611339565b1515610bec57600080fd5b600190910190610bbd565b5060005b83811015610cb257610c1f83888884818110610c1357fe5b90506020020135611398565b610c3b83888884818110610c2f57fe5b90506020020135611407565b610c5785888884818110610c4b57fe5b90506020020135611540565b868682818110610c6357fe5b9050602002013585600160a060020a031684600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4600101610bfb565b50505050505050565b600081815260016020526040812054600160a060020a0316801515610cdf57600080fd5b92915050565b6000600160a060020a0382161515610cfc57600080fd5b50600160a060020a031660009081526003602052604090205490565b600c54600160a060020a03163314610d2f57600080fd5b600c54604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a2600c805473ffffffffffffffffffffffffffffffffffffffff19169055565b600c54600160a060020a031681565b336000908152600760209081526040918290208054835181840281018401909452808452606093928301828280156107a757602002820191906000526020600020905b815481526020019060010190808311610dd8575050505050905090565b60068054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b60138054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107a75780601f1061077c576101008083540402835291602001916107a7565b600160a060020a038216331415610ecd57600080fd5b336000818152600460209081526040808320600160a060020a03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6000610f4682610b4c565b1515610f5157600080fd5b5060009081526011602052604090205490565b81610f6f3382611339565b1515610f7a57600080fd5b610f858585856109f4565b610f9185858585611589565b1515610f9c57600080fd5b5050505050565b600c54600090600160a060020a03163314610fbd57600080fd5b50600954600101610fcc6112d2565b151560011461106257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f416c6c20616c6c6f77656420746f6b656e732068617665206265656e2063726560448201527f6174656420616c72656164792100000000000000000000000000000000000000606482015290519081900360840190fd5b61106c33826112ea565b60125460ff161515600114611092576000818152601160205260409020819055806110a5565b6000818152601160205260409020829055815b5060408051828152905133917f75424253909c2f4460f8a59099700e980f5b484608c4fdd79f600f5162ac88a5919081900360200190a25050565b60606110eb82610b4c565b15156110f657600080fd5b600082815260116020526040902054601390611111906116f6565b604051602001808380546001816001161561010002031660029004801561116f5780601f1061114d57610100808354040283529182019161116f565b820191906000526020600020905b81548152906001019060200180831161115b575b5050825160208401908083835b6020831061119b5780518252601f19909201916020918201910161117c565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040529050919050565b600e805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152606093600093919290918301828280156112655780601f1061123a57610100808354040283529160200191611265565b820191906000526020600020905b81548152906001019060200180831161124857829003601f168201915b5050600f549396600160a060020a039094169550929350505050565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205460ff1690565b600c54600160a060020a031633146112c657600080fd5b6112cf8161181d565b50565b60105460095460019190820111156107af5750600090565b6112f4828261189b565b600980546000838152600a60205260408120829055600182018355919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015550565b60008061134583610cbb565b905080600160a060020a031684600160a060020a03161480611380575083600160a060020a0316611375846107b2565b600160a060020a0316145b8061139057506113908185611281565b949350505050565b81600160a060020a03166113ab82610cbb565b600160a060020a0316146113be57600080fd5b600081815260026020526040902054600160a060020a031615610b48576000908152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff1916905550565b600080600061141685856118f6565b600084815260086020908152604080832054600160a060020a038916845260079092529091205490935061145190600163ffffffff61198c16565b600160a060020a03861660009081526007602052604090208054919350908390811061147957fe5b90600052602060002001549050806007600087600160a060020a0316600160a060020a03168152602001908152602001600020848154811015156114b957fe5b6000918252602080832090910192909255600160a060020a03871681526007909152604081208054849081106114eb57fe5b6000918252602080832090910192909255600160a060020a0387168152600790915260409020805490611522906000198301611ac1565b50600093845260086020526040808520859055908452909220555050565b600061154c838361199e565b50600160a060020a039091166000908152600760209081526040808320805460018101825590845282842081018590559383526008909152902055565b60008061159e85600160a060020a0316611a2e565b15156115ad57600191506116ed565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081523360048201818152600160a060020a03898116602485015260448401889052608060648501908152875160848601528751918a169463150b7a0294938c938b938b93909160a490910190602085019080838360005b83811015611640578181015183820152602001611628565b50505050905090810190601f16801561166d5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050506040513d60208110156116b957600080fd5b5051600160e060020a031981167f150b7a020000000000000000000000000000000000000000000000000000000014925090505b50949350505050565b6060600080828185151561173f5760408051808201909152600181527f300000000000000000000000000000000000000000000000000000000000000060208201529450611814565b8593505b831561175a57600190920191600a84049350611743565b826040519080825280601f01601f191660200182016040528015611788578160200160208202803883390190505b5091505060001982015b85156118105781516000198201917f01000000000000000000000000000000000000000000000000000000000000006030600a8a0601029184919081106117d557fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a86049550611792565b8194505b50505050919050565b600160a060020a038116151561183257600080fd5b600c54604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600c805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03821615156118b057600080fd5b6118ba8282611540565b6040518190600160a060020a038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b81600160a060020a031661190982610cbb565b600160a060020a03161461191c57600080fd5b600160a060020a03821660009081526003602052604090205461194690600163ffffffff61198c16565b600160a060020a03909216600090815260036020908152604080832094909455918152600190915220805473ffffffffffffffffffffffffffffffffffffffff19169055565b60008282111561199857fe5b50900390565b600081815260016020526040902054600160a060020a0316156119c057600080fd5b6000818152600160208181526040808420805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0388169081179091558452600390915290912054611a0e91611a36565b600160a060020a0390921660009081526003602052604090209190915550565b6000903b1190565b81810182811015610cdf57fe5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611a8457805160ff1916838001178555611ab1565b82800160010185558215611ab1579182015b82811115611ab1578251825591602001919060010190611a96565b50611abd929150611aea565b5090565b815481835581811115611ae557600083815260209020611ae5918101908301611aea565b505050565b6107af91905b80821115611abd5760008155600101611af05600a165627a7a7230582010a9d69e9f5cb6d170175872cce30b3e7838049d4950116f3ebbbe5a26a1dda00029

Deployed Bytecode Sourcemap

11802:3398:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2308:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2308:128:0;-1:-1:-1;;;;;;2308:128:0;;;;;;;;;;;;;;;;;;;;;;;9565:62;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9565:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;9565:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6018:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6018:112:0;;;;;;;;;-1:-1:-1;;;;;6018:112:0;;;;;;;;;;;;;;13338:369;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13338:369:0;;;-1:-1:-1;;;;;13338:369:0;;;;;;;5738:273;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5738:273:0;-1:-1:-1;;;;;5738:273:0;;;;;;;9899:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9899:92:0;;;;;;;;;;;;;;;;;;;;2117:54;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2117:54:0;;;;;;;;-1:-1:-1;;;;;;2117:54:0;;;;;;;;;;;;;;6499:310;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6499:310:0;-1:-1:-1;;;;;6499:310:0;;;;;;;;;;;;9707:185;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9707:185:0;-1:-1:-1;;;;;9707:185:0;;;;;;;6816:155;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6816:155:0;-1:-1:-1;;;;;6816:155:0;;;;;;;;;;;;12366:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12366:98:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12366:98:0;;-1:-1:-1;12366:98:0;;-1:-1:-1;;;;;;;12366:98:0;5591:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5591:140:0;;;;;9998:148;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9998:148:0;;;;;13714:545;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13714:545:0;;;;;;;;;;;;;-1:-1:-1;;;;;13714:545:0;;;;;5421:163;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5421:163:0;;;;;5272:142;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5272:142:0;-1:-1:-1;;;;;5272:142:0;;;;;1656:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1656:111:0;;;;1332:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1332:20:0;;;;14266:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14266:98:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;14266:98:0;;;;;;;;;;;;;;;;;9634:66;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9634:66:0;;;;12472:96;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12472:96:0;;;;6137:204;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6137:204:0;-1:-1:-1;;;;;6137:204:0;;;;;;;;;14875:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14875:133:0;;;;;6978:227;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6978:227:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6978:227:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6978:227:0;;-1:-1:-1;6978:227:0;;-1:-1:-1;;;;;;;6978:227:0;12980:351;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12980:351:0;;;;;14692:175;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14692:175:0;;;;;12576:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12576:149:0;;;;;;;;;;;;-1:-1:-1;;;;;12576:149:0;-1:-1:-1;;;;;12576:149:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;12576:149:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6348:144;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6348:144:0;-1:-1:-1;;;;;6348:144:0;;;;;;;;;;1774:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1774:104:0;-1:-1:-1;;;;;1774:104:0;;;;;2308:128;-1:-1:-1;;;;;;2396:33:0;2382:4;2396:33;;;;;;;;;;;;;;2308:128::o;9565:62::-;9620:5;9613:12;;;;;;;;-1:-1:-1;;9613:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9604:6;;9613:12;;9620:5;;9613:12;;9620:5;9613:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9565:62;;:::o;6018:112::-;6078:7;6099:24;;;:14;:24;;;;;;-1:-1:-1;;;;;6099:24:0;;6018:112::o;13338:369::-;1630:5;;13425:13;;-1:-1:-1;;;;;1630:5:0;1616:10;:19;1608:28;;;;;;-1:-1:-1;13441:9:0;:16;13460:1;13441:20;13478:12;:10;:12::i;:::-;:20;;13494:4;13478:20;13470:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13556:21;13562:7;13571:5;13556;:21::i;:::-;13587:13;;;;:21;;:13;:21;:71;;13635:15;;;;:8;:15;;;;;:23;;;13653:5;13587:71;;;13611:15;;;;:8;:15;;;;;:21;;;13629:3;13587:71;-1:-1:-1;13673:27:0;;;;;;;;-1:-1:-1;;;;;13673:27:0;;;;;;;;;;;;;13338:369;;;:::o;5738:273::-;5798:13;5814:17;5822:8;5814:7;:17::i;:::-;5798:33;-1:-1:-1;;;;;;5844:12:0;;;;;;;;5836:21;;;;;;5870:10;-1:-1:-1;;;;;5870:19:0;;;;:58;;;5893:35;5910:5;5917:10;5893:16;:35::i;:::-;5862:67;;;;;;;;5934:24;;;;:14;:24;;;;;;:30;;-1:-1:-1;;5934:30:0;-1:-1:-1;;;;;5934:30:0;;;;;;;;;5974;;5934:24;;5974:30;;;;;;;5738:273;;;:::o;9899:92::-;9968:9;:16;9899:92;:::o;2117:54::-;;;:::o;6499:310::-;6586:8;5085:39;5103:10;5115:8;5085:17;:39::i;:::-;5077:48;;;;;;;;-1:-1:-1;;;;;6609:19:0;;;;6601:28;;;;;;-1:-1:-1;;;;;6642:17:0;;;;6634:26;;;;;;6665:30;6679:5;6686:8;6665:13;:30::i;:::-;6700:32;6716:5;6723:8;6700:15;:32::i;:::-;6737:25;6748:3;6753:8;6737:10;:25::i;:::-;6793:8;6788:3;-1:-1:-1;;;;;6772:30:0;6781:5;-1:-1:-1;;;;;6772:30:0;;;;;;;;;;;6499:310;;;;:::o;9707:185::-;9789:7;9824:17;9834:6;9824:9;:17::i;:::-;9815:26;;9807:35;;;;;;-1:-1:-1;;;;;9858:19:0;;;;;;:11;:19;;;;;:27;;9878:6;;9858:27;;;;;;;;;;;;;;9851:34;;9707:185;;;;:::o;6816:155::-;6907:8;5085:39;5103:10;5115:8;5085:17;:39::i;:::-;5077:48;;;;;;;;6922:42;6939:5;6946:3;6951:8;6922:42;;;;;;;;;;;;;:16;:42::i;:::-;6816:155;;;;:::o;12366:98::-;1630:5;;-1:-1:-1;;;;;1630:5:0;1616:10;:19;1608:28;;;;;;12435:21;;;;:7;;:21;;;;;:::i;:::-;;12366:98;:::o;5591:140::-;5646:4;5673:20;;;:10;:20;;;;;;-1:-1:-1;;;;;5673:20:0;5705:19;;;5591:140::o;9998:148::-;10057:7;10092:13;:11;:13::i;:::-;10083:22;;10075:31;;;;;;10122:9;:17;;10132:6;;10122:17;;;;;;;;;;;;;;10115:24;;9998:148;;;:::o;13714:545::-;13812:4;13852:10;13793:16;;-1:-1:-1;;;;;13883:17:0;;;;13875:26;;;;;;13935:1;13925:11;;13920:104;13943:8;13938:2;:13;13920:104;;;13982:39;14000:10;14012:4;;14017:2;14012:8;;;;;;;;;;;;;13982:17;:39::i;:::-;13974:48;;;;;;;;13953:4;;;;;13920:104;;;-1:-1:-1;14051:1:0;14037:216;14058:8;14054:1;:12;14037:216;;;14088:29;14102:5;14109:4;;14114:1;14109:7;;;;;;;;;;;;;14088:13;:29::i;:::-;14132:31;14148:5;14155:4;;14160:1;14155:7;;;;;;;;;;;;;14132:15;:31::i;:::-;14178:24;14189:3;14194:4;;14199:1;14194:7;;;;;;;;;;;;;14178:10;:24::i;:::-;14243:4;;14248:1;14243:7;;;;;;;;;;;;;14238:3;-1:-1:-1;;;;;14222:29:0;14231:5;-1:-1:-1;;;;;14222:29:0;;;;;;;;;;;14068:3;;14037:216;;;13714:545;;;;;;;:::o;5421:163::-;5477:7;5507:20;;;:10;:20;;;;;;-1:-1:-1;;;;;5507:20:0;5540:19;;;5532:28;;;;;;5572:5;5421:163;-1:-1:-1;;5421:163:0:o;5272:142::-;5328:7;-1:-1:-1;;;;;5350:20:0;;;;5342:29;;;;;;-1:-1:-1;;;;;;5383:24:0;;;;;:16;:24;;;;;;;5272:142::o;1656:111::-;1630:5;;-1:-1:-1;;;;;1630:5:0;1616:10;:19;1608:28;;;;;;1731:5;;1712:25;;-1:-1:-1;;;;;1731:5:0;;;;1712:25;;1731:5;;1712:25;1742:5;:18;;-1:-1:-1;;1742:18:0;;;1656:111::o;1332:20::-;;;-1:-1:-1;;;;;1332:20:0;;:::o;14266:98::-;14346:10;14334:23;;;;:11;:23;;;;;;;;;14327:30;;;;;;;;;;;;;;;;;14309:9;;14327:30;;;14334:23;14327:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14266:98;:::o;9634:66::-;9691:7;9684:14;;;;;;;;-1:-1:-1;;9684:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9675:6;;9684:14;;9691:7;;9684:14;;9691:7;9684:14;;;;;;;;;;;;;;;;;;;;;;;;12472:96;12553:7;12542:18;;;;;;;;-1:-1:-1;;12542:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12516:15;;12542:18;;12553:7;;12542:18;;12553:7;12542:18;;;;;;;;;;;;;;;;;;;;;;;;6137:204;-1:-1:-1;;;;;6213:17:0;;6220:10;6213:17;;6205:26;;;;;;6254:10;6236:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;6236:34:0;;;;;;;;;;;;:46;;-1:-1:-1;;6236:46:0;;;;;;;;;;6292:42;;;;;;;6236:34;;6254:10;6292:42;;;;;;;;;;;6137:204;;:::o;14875:133::-;14927:11;14957;14964:3;14957:6;:11::i;:::-;14949:20;;;;;;;;-1:-1:-1;14987:13:0;;;;:8;:13;;;;;;;14875:133::o;6978:227::-;7082:8;5085:39;5103:10;5115:8;5085:17;:39::i;:::-;5077:48;;;;;;;;7097:34;7110:5;7117:3;7122:8;7097:12;:34::i;:::-;7144:53;7169:5;7176:3;7181:8;7191:5;7144:24;:53::i;:::-;7136:62;;;;;;;;6978:227;;;;;:::o;12980:351::-;1630:5;;13041:13;;-1:-1:-1;;;;;1630:5:0;1616:10;:19;1608:28;;;;;;-1:-1:-1;13057:9:0;:16;13076:1;13057:20;13094:12;:10;:12::i;:::-;:20;;13110:4;13094:20;13086:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13173:24;13179:10;13191:5;13173;:24::i;:::-;13207:13;;;;:21;;:13;:21;:71;;13255:15;;;;:8;:15;;;;;:23;;;13273:5;13207:71;;;13231:15;;;;:8;:15;;;;;:21;;;13249:3;13207:71;-1:-1:-1;13293:30:0;;;;;;;;13305:10;;13293:30;;;;;;;;;;12980:351;;:::o;14692:175::-;14744:10;14773:11;14780:3;14773:6;:11::i;:::-;14765:20;;;;;;;;14843:13;;;;:8;:13;;;;;;14824:7;;14833:24;;:9;:24::i;:::-;14807:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14807:51:0;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14807:51:0;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;14807:51:0;;;14794:65;;14692:175;;;:::o;12576:149::-;12672:10;12662:20;;;;;;;;;;;;;-1:-1:-1;;12662:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;12617:14;;-1:-1:-1;;12662:20:0;;12672:10;;12662:20;;12672:10;12662:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12704:13:0;;12662:20;;-1:-1:-1;;;;;12704:13:0;;;;-1:-1:-1;12576:149:0;;-1:-1:-1;;;;12576:149:0:o;6348:144::-;-1:-1:-1;;;;;6448:25:0;;;6430:4;6448:25;;;:17;:25;;;;;;;;:36;;;;;;;;;;;;;;;6348:144::o;1774:104::-;1630:5;;-1:-1:-1;;;;;1630:5:0;1616:10;:19;1608:28;;;;;;1842:29;1861:9;1842:18;:29::i;:::-;1774:104;:::o;12799:174::-;12915:10;;12892:9;:16;12875:4;;12892:20;;;:33;12888:56;;;-1:-1:-1;12937:5:0;12799:174;:::o;11080:182::-;11144:26;11156:3;11161:8;11144:11;:26::i;:::-;11206:9;:16;;11179:24;;;;:14;:24;;;;;:43;;;39:1:-1;23:18;;45:23;;11231:24:0;;;;;;;-1:-1:-1;11080:182:0:o;7212:262::-;7298:4;7309:13;7325:17;7333:8;7325:7;:17::i;:::-;7309:33;;7373:5;-1:-1:-1;;;;;7361:17:0;:8;-1:-1:-1;;;;;7361:17:0;;:59;;;;7412:8;-1:-1:-1;;;;;7387:33:0;:21;7399:8;7387:11;:21::i;:::-;-1:-1:-1;;;;;7387:33:0;;7361:59;:101;;;;7429:33;7446:5;7453:8;7429:16;:33::i;:::-;7347:120;7212:262;-1:-1:-1;;;;7212:262:0:o;7850:212::-;7950:6;-1:-1:-1;;;;;7929:27:0;:17;7937:8;7929:7;:17::i;:::-;-1:-1:-1;;;;;7929:27:0;;7921:36;;;;;;8002:1;7966:24;;;:14;:24;;;;;;-1:-1:-1;;;;;7966:24:0;:38;7962:94;;8048:1;8013:24;;;:14;:24;;;;;:37;;-1:-1:-1;;8013:37:0;;;-1:-1:-1;7850:212:0:o;10545:528::-;10668:18;10724:22;10790:17;10621:38;10643:5;10650:8;10621:21;:38::i;:::-;10689:26;;;;:16;:26;;;;;;;;;-1:-1:-1;;;;;10749:18:0;;;;:11;:18;;;;;;:25;10689:26;;-1:-1:-1;10749:32:0;;10779:1;10749:32;:29;:32;:::i;:::-;-1:-1:-1;;;;;10810:18:0;;;;;;:11;:18;;;;;:34;;10724:57;;-1:-1:-1;10810:18:0;10724:57;;10810:34;;;;;;;;;;;;;;10790:54;;10886:9;10853:11;:18;10865:5;-1:-1:-1;;;;;10853:18:0;-1:-1:-1;;;;;10853:18:0;;;;;;;;;;;;10872:10;10853:30;;;;;;;;;;;;;;;;;;;;;:42;;;;-1:-1:-1;;;;;10904:18:0;;;;:11;:18;;;;;;:34;;10923:14;;10904:34;;;;;;;;;;;;;;;;;:38;;;;-1:-1:-1;;;;;10951:18:0;;;;:11;:18;;;;;;:27;;;;;-1:-1:-1;;10951:27:0;;;:::i;:::-;-1:-1:-1;11016:1:0;10987:26;;;:16;:26;;;;;;:30;;;11026:27;;;;;;:40;-1:-1:-1;;10545:528:0:o;10298:240::-;10407:14;10367:31;10384:3;10389:8;10367:16;:31::i;:::-;-1:-1:-1;;;;;;10424:16:0;;;;;;;:11;:16;;;;;;;;:23;;39:1:-1;23:18;;45:23;;10456:31:0;;;;;;;;;;;10496:26;;;:16;:26;;;;;:35;10298:240::o;8499:309::-;8610:4;8670:13;8626:16;:3;-1:-1:-1;;;;;8626:14:0;;:16::i;:::-;8625:17;8621:43;;;8652:4;8645:11;;;;8621:43;8686:76;;;;;8727:10;8686:76;;;;;;-1:-1:-1;;;;;8686:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:36;;;;;;8727:10;8739:5;;8746:8;;8756:5;;8686:76;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8686:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8686:76:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8686:76:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8686:76:0;-1:-1:-1;;;;;;8775:25:0;;8785:15;8775:25;;-1:-1:-1;8686:76:0;-1:-1:-1;8499:309:0;;;;;;;;:::o;14372:312::-;14422:6;14462;;14422;14462;14442;;14438:22;;;14450:10;;;;;;;;;;;;;;;;;;-1:-1:-1;14450:10:0;;14438:22;14471:1;14462:10;;14494:33;14501:6;;14494:33;;14509:8;;;;;14523:2;14518:7;;;;14494:33;;;14558:6;14548:17;;;;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;136:17;;-1:-1;14548:17:0;-1:-1:-1;14528:37:0;-1:-1:-1;;;;14576:10:0;;14595:54;14602:6;;14595:54;;14610:9;;-1:-1:-1;;14615:3:0;;;14622:17;14627:2;14636;14632:6;;14627:11;14622:17;;14610:4;;14615:3;14610:9;;;;;;;;;;:29;;;;;;;;;;-1:-1:-1;14645:2:0;14640:7;;;;14595:54;;;14671:4;14657:19;;14372:312;;;;;;;;:::o;1885:170::-;-1:-1:-1;;;;;1954:23:0;;;;1946:32;;;;;;2009:5;;1988:38;;-1:-1:-1;;;;;1988:38:0;;;;2009:5;;1988:38;;2009:5;;1988:38;2031:5;:17;;-1:-1:-1;;2031:17:0;-1:-1:-1;;;;;2031:17:0;;;;;;;;;;1885:170::o;7481:168::-;-1:-1:-1;;;;;7549:17:0;;;;7541:26;;;;;;7572:25;7583:3;7588:8;7572:10;:25::i;:::-;7607:35;;7633:8;;-1:-1:-1;;;;;7607:35:0;;;7624:1;;7607:35;;7624:1;;7607:35;7481:168;;:::o;8279:213::-;8380:5;-1:-1:-1;;;;;8359:26:0;:17;8367:8;8359:7;:17::i;:::-;-1:-1:-1;;;;;8359:26:0;;8351:35;;;;;;-1:-1:-1;;;;;8417:23:0;;;;;;:16;:23;;;;;;:30;;8445:1;8417:30;:27;:30;:::i;:::-;-1:-1:-1;;;;;8391:23:0;;;;;;;:16;:23;;;;;;;;:56;;;;8452:20;;;:10;:20;;;;:33;;-1:-1:-1;;8452:33:0;;;8279:213::o;324:110::-;382:7;403:6;;;;396:14;;;;-1:-1:-1;422:5:0;;;324:110::o;8069:203::-;8174:1;8142:20;;;:10;:20;;;;;;-1:-1:-1;;;;;8142:20:0;:34;8134:43;;;;;;8182:20;;;;:10;:20;;;;;;;;:26;;-1:-1:-1;;8182:26:0;-1:-1:-1;;;;;8182:26:0;;;;;;;;8237:21;;:16;:21;;;;;;;:28;;:25;:28::i;:::-;-1:-1:-1;;;;;8213:21:0;;;;;;;:16;:21;;;;;:52;;;;-1:-1:-1;8069:203:0:o;1151:149::-;1208:4;1255:17;;1285:8;;1151:149::o;441:122::-;519:5;;;536:6;;;;529:14;;;11802:3398;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11802:3398:0;;;-1:-1:-1;11802:3398:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;

Swarm Source

bzzr://10a9d69e9f5cb6d170175872cce30b3e7838049d4950116f3ebbbe5a26a1dda0

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

1000s of unique Mutant Monsters. Build a team and see them multiplying secretly by cloning themselves.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.