Contract 0xfcad2859f3e602d4cfb9aca35465a618f9009f7b

 

TxHash Block Age From To Value [TxFee]
0x3962e2c40450ab94beedf61e526471037ebfce7c9c2da1c865ab265121d74bd372363333 days 4 hrs ago0x8d55e7de182dcc7a6627fd424cc0a3a00e049465 IN  Dragonereum_Egg0 Ether0.00152511
0xdebd5b96e5defd5d15ef87a4e218cc3de71c4f1abcea2598b55c05bc5e6cf6f6719496312 days 20 hrs ago0x5d990e827e75a80d5d4e1d444144206a1019dde4 IN  Dragonereum_Egg0 Ether0.000513963114
0x592893fa8f38c21e19da8d02f84420af41c6897143dbd3389c979b1ca2ccbf08718123315 days 15 hrs ago0x9e315e9701908501f6dc68a2af6e28a20c75d970 IN  Dragonereum_Egg0 Ether0.00229835
0x6e599afeb704f9148823940e853ed636da8769d32d795752e45d903d50ae32ef717889816 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.000358298
0x414ae4209e6ba38411958ab3daaf9457008b69069299335d5e4e81d9b3a03caf717887516 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.000358298
0xfa8e78cc517ef3050cf62794134ce0686b51f22f1d811433d333878f08d64a56717887116 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.000358298
0x33c1a2068884ded1a2f891dbedd08afae3feeadd3930a4d88b074a93d13cffb2717886716 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.000358298
0xd3aa5bbee9350e2675ae0a776ac19fa54f1c776e68a6bb4fd4c61125deb83c17717886116 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.000346548
0x0e1a2c5168cc101ea107234ef25e43a1a5622217510bf5aa79cca8b25c323b6e717884716 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.00046232
0x2f0ce4f5c5b5d163076d8cdb4d7619026df6f91345f1f74245e553a8b4291b69717884016 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.00046232
0xc80fd8a110e1235ae89851a10e75979800d46cd09fed98ffb33390068d6ef251717883616 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.00046232
0xaddcfaee8d6c2fb69d74a575b79e0e80bf74ecb501b32cef2d6c39af8a4c43ee717882916 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.00034674
0x430d68a6f1a74c439be8a197a6f8fdf1668ab602e56fe0851406202a30f81052717882216 days 3 hrs ago0x47067061cc6092454fdc3a43b44f653dcb662de2 IN  Dragonereum_Egg0 Ether0.00034674
0xd36fe96ceadb4dc762724457d3a4cf23077bc17317b2d680504e617f4257160b711730828 days 13 hrs ago0x32a88f097056c773569abb6a3cf8d88228466e00 IN  Dragonereum_Egg0 Ether0.000367736
0x6ff57ff01f6048db0e9e9e2468ffaff7e21b66cd2877c7cf94f6e931251b602d710510330 days 23 hrs ago0x87d1173ab53a4e6ea0f1e26ee4f1efb7a19c8d3f IN  Dragonereum_Egg0 Ether0.000229835
0x02fea7393ef7011f666a7cdb11e13ff32b6181577b0829fc1c1e1ff85982de15708258035 days 1 hr ago0xfadae26458902e6eaf1415ec02151470a68f8137 IN  Dragonereum_Egg0 Ether0.0002344317
0x276981595523482c2d3c68b99807f35f0199620d5953e3c4e5b4803c8d75bbc9707570336 days 7 hrs ago0xe11bce467f2ffda6d0b67c4070f4710712d1ef60 IN  Dragonereum_Egg0 Ether0.000275802
0x8b7f93c5ea6c5339789bd761cdbfe24a02f02ecac052fe515af20dd8ffd44e20705200840 days 12 hrs ago0xc3c519cdf6a7c0b2f5733c460e1a28208976d83d IN  Dragonereum_Egg0 Ether0.00045903
0xac738b831720a890378adb82d2cc9174998e05c0c2f3479765d5ea6739b4b63e704959440 days 23 hrs ago0xf51626ba84fcf5b174fc22fefc647c137e86c63c IN  Dragonereum_Egg0 Ether0.0002383628
0x42f7df8c774898e697d8f5d00ddc42aca693c0fb916ba70b5f88e0c1c0c95869704467241 days 20 hrs ago0x51bd4c735927f958a90db80398826ff47a9832f1 IN  Dragonereum_Egg0 Ether0.000275802
0x61dab9d4ce01e7da7995f3f1c8d290fff47060e17b3b2f76c217175b0a4e8ee6704354342 days 1 hr ago0xdf763a7f5aede8e40b4dee6cfd2ecf8196dc47e8 IN  Dragonereum_Egg0 Ether0.00017116
0x25ea7f16a9066cb6728f4d8f99e67b2679dcb4e9dcbdc986de99eb89dff0a033702880344 days 16 hrs ago0x219d56f04eb1d15422d0ef307946b90cb479faee IN  Dragonereum_Egg0 Ether0.000275802
0x243ad352fa308acb1e1312c836e4d6ac439897795d44320f78585b4805322c66702845144 days 18 hrs ago0xe60cfc8f07336351a6e42e3bac7bc545913be6b6 IN  Dragonereum_Egg0 Ether0.000362088
0x56e7170fda48656a5a7c841cad61590401dcff73b735ba01ea8f82ab8646364e701475247 days 4 hrs ago0xa53fe221bd861f75907d8fd496db1c70779721aa IN  Dragonereum_Egg0 Ether0.000462064
0x8140169b247c9cf9e878b20e95401b1c1a0473579af30f9ae858db0c7f3a0caa701474747 days 4 hrs ago0xa53fe221bd861f75907d8fd496db1c70779721aa IN  Dragonereum_Egg0 Ether0.00046232
[ Download CSV Export 

Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
Contract Source Code Verified (Exact Match)
Contract Name: EggStorage
Compiler Version: v0.4.25+commit.59dbf8f1
Optimization Enabled: No
Runs (Optimizer):  200


Contract Source Code
pragma solidity 0.4.25;

library SafeMath256 {

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

    function pow(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) return 0;
        if (b == 0) return 1;

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

contract Ownable {
    address public owner;

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

    function _validateAddress(address _addr) internal pure {
        require(_addr != address(0), "invalid address");
    }

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

    modifier onlyOwner() {
        require(msg.sender == owner, "not a contract owner");
        _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        _validateAddress(newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }

}

contract Controllable is Ownable {
    mapping(address => bool) controllers;

    modifier onlyController {
        require(_isController(msg.sender), "no controller rights");
        _;
    }

    function _isController(address _controller) internal view returns (bool) {
        return controllers[_controller];
    }

    function _setControllers(address[] _controllers) internal {
        for (uint256 i = 0; i < _controllers.length; i++) {
            _validateAddress(_controllers[i]);
            controllers[_controllers[i]] = true;
        }
    }
}

contract Upgradable is Controllable {
    address[] internalDependencies;
    address[] externalDependencies;

    function getInternalDependencies() public view returns(address[]) {
        return internalDependencies;
    }

    function getExternalDependencies() public view returns(address[]) {
        return externalDependencies;
    }

    function setInternalDependencies(address[] _newDependencies) public onlyOwner {
        for (uint256 i = 0; i < _newDependencies.length; i++) {
            _validateAddress(_newDependencies[i]);
        }
        internalDependencies = _newDependencies;
    }

    function setExternalDependencies(address[] _newDependencies) public onlyOwner {
        externalDependencies = _newDependencies;
        _setControllers(_newDependencies);
    }
}

contract ERC721Basic {
    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;

    function supportsInterface(bytes4 _interfaceID) external pure returns (bool);
}

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() public view returns (string _name);
    function symbol() public view returns (string _symbol);
    function tokenURI(uint256 _tokenId) public view returns (string);
}


contract ERC721 is ERC721Basic, ERC721Enumerable, ERC721Metadata {}

contract ERC721Receiver {
    function onERC721Received(
        address _operator,
        address _from,
        uint256 _tokenId,
        bytes _data
    )
        public
        returns(bytes4);
}

contract ERC721BasicToken is ERC721Basic, Upgradable {

    using SafeMath256 for uint256;

    // Equals to `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))`
    // which can be also obtained as `IERC721Receiver(0).onERC721Received.selector`
    bytes4 private constant _ERC721_RECEIVED = 0x150b7a02;

    // Mapping from token ID to owner
    mapping (uint256 => address) internal tokenOwner;

    // Mapping from token ID to approved address
    mapping (uint256 => address) internal tokenApprovals;

    // Mapping from owner to number of owned token
    mapping (address => uint256) internal ownedTokensCount;

    // Mapping from owner to operator approvals
    mapping (address => mapping (address => bool)) internal operatorApprovals;

    function _checkRights(bool _has) internal pure {
        require(_has, "no rights to manage");
    }

    function _validateAddress(address _addr) internal pure {
        require(_addr != address(0), "invalid address");
    }

    function _checkOwner(uint256 _tokenId, address _owner) internal view {
        require(ownerOf(_tokenId) == _owner, "not an owner");
    }

    function _checkThatUserHasTokens(bool _has) internal pure {
        require(_has, "user has no tokens");
    }

    function balanceOf(address _owner) public view returns (uint256) {
        _validateAddress(_owner);
        return ownedTokensCount[_owner];
    }

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

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

    function _approve(address _from, address _to, uint256 _tokenId) internal {
        address owner = ownerOf(_tokenId);
        require(_to != owner, "can't be approved to owner");
        _checkRights(_from == owner || isApprovedForAll(owner, _from));

        if (getApproved(_tokenId) != address(0) || _to != address(0)) {
            tokenApprovals[_tokenId] = _to;
            emit Approval(owner, _to, _tokenId);
        }
    }

    function approve(address _to, uint256 _tokenId) public {
        _approve(msg.sender, _to, _tokenId);
    }

    function remoteApprove(address _to, uint256 _tokenId) external onlyController {
        _approve(tx.origin, _to, _tokenId);
    }

    function getApproved(uint256 _tokenId) public view returns (address) {
        require(exists(_tokenId), "token doesn't exist");
        return tokenApprovals[_tokenId];
    }

    function setApprovalForAll(address _to, bool _approved) public {
        require(_to != msg.sender, "wrong 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 {
        _checkRights(isApprovedOrOwner(msg.sender, _tokenId));
        _validateAddress(_from);
        _validateAddress(_to);

        clearApproval(_from, _tokenId);
        removeTokenFrom(_from, _tokenId);
        addTokenTo(_to, _tokenId);

        emit Transfer(_from, _to, _tokenId);
    }

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

    function safeTransferFrom(
        address _from,
        address _to,
        uint256 _tokenId,
        bytes _data
    ) public {
        transferFrom(_from, _to, _tokenId);
        require(checkAndCallSafeTransfer(_from, _to, _tokenId, _data), "can't make safe transfer");
    }

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

    function _mint(address _to, uint256 _tokenId) internal {
        _validateAddress(_to);
        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 {
        _checkOwner(_tokenId, _owner);
        if (tokenApprovals[_tokenId] != address(0)) {
            tokenApprovals[_tokenId] = address(0);
            emit Approval(_owner, address(0), _tokenId);
        }
    }

    function addTokenTo(address _to, uint256 _tokenId) internal {
        require(tokenOwner[_tokenId] == address(0), "token already has an owner");
        tokenOwner[_tokenId] = _to;
        ownedTokensCount[_to] = ownedTokensCount[_to].add(1);
    }

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

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

    function checkAndCallSafeTransfer(
        address _from,
        address _to,
        uint256 _tokenId,
        bytes _data
    ) internal returns (bool) {
        if (!_isContract(_to)) {
            return true;
        }
        bytes4 retval = ERC721Receiver(_to).onERC721Received(msg.sender, _from, _tokenId, _data);
        return (retval == _ERC721_RECEIVED);
    }
}

contract ERC721Token is ERC721, ERC721BasicToken {

    bytes4 internal constant INTERFACE_SIGNATURE_ERC165 = 0x01ffc9a7;
    bytes4 internal constant INTERFACE_SIGNATURE_ERC721 = 0x80ac58cd;
    bytes4 internal constant INTERFACE_SIGNATURE_ERC721TokenReceiver = 0xf0b9e5ba;
    bytes4 internal constant INTERFACE_SIGNATURE_ERC721Metadata = 0x5b5e139f;
    bytes4 internal constant INTERFACE_SIGNATURE_ERC721Enumerable = 0x780e9d63;

    string internal name_;
    string internal symbol_;

    // Mapping from owner to list of owned token IDs
    mapping (address => uint256[]) internal ownedTokens;

    // Mapping from token ID to index of the owner tokens list
    mapping(uint256 => uint256) internal ownedTokensIndex;

    // Array with all token ids, used for enumeration
    uint256[] internal allTokens;

    // Mapping from token id to position in the allTokens array
    mapping(uint256 => uint256) internal allTokensIndex;

    // Optional mapping for token URIs
    mapping(uint256 => string) internal tokenURIs;

    // The contract owner can change the base URL, in case it becomes necessary. It is needed for Metadata.
    string public url;


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

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

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

    function _validateIndex(bool _isValid) internal pure {
        require(_isValid, "wrong index");
    }

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

    function tokensOfOwner(address _owner) external view returns (uint256[]) {
        return ownedTokens[_owner];
    }

    function getAllTokens() external view returns (uint256[]) {
        return allTokens;
    }

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

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

    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 {
        _checkThatUserHasTokens(ownedTokens[_from].length > 0);

        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 {
        require(allTokens.length > 0, "no tokens");

        super._burn(_owner, _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;
    }

    function supportsInterface(bytes4 _interfaceID) external pure returns (bool) {
        return (
            _interfaceID == INTERFACE_SIGNATURE_ERC165 ||
            _interfaceID == INTERFACE_SIGNATURE_ERC721 ||
            _interfaceID == INTERFACE_SIGNATURE_ERC721TokenReceiver ||
            _interfaceID == INTERFACE_SIGNATURE_ERC721Metadata ||
            _interfaceID == INTERFACE_SIGNATURE_ERC721Enumerable
        );
    }

    function tokenURI(uint256 _tokenId) public view returns (string) {
        require(exists(_tokenId), "token doesn't exist");
        return string(abi.encodePacked(url, _uint2str(_tokenId)));
    }

    function setUrl(string _url) external onlyOwner {
        url = _url;
    }

    function _uint2str(uint _i) internal pure returns (string){
        if (i == 0) return "0";
        uint i = _i;
        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);
    }
}


contract EggStorage is ERC721Token {
    struct Egg {
        uint256[2] parents;
        uint8 dragonType; // used for genesis only
    }

    Egg[] eggs;

    constructor(string _name, string _symbol) public ERC721Token(_name, _symbol) {
        eggs.length = 1; // to avoid some issues with 0
    }

    function push(address _sender, uint256[2] _parents, uint8 _dragonType) public onlyController returns (uint256 id) {
        Egg memory _egg = Egg(_parents, _dragonType);
        id = eggs.push(_egg).sub(1);
        _mint(_sender, id);
    }

    function get(uint256 _id) external view returns (uint256[2], uint8) {
        return (eggs[_id].parents, eggs[_id].dragonType);
    }

    function remove(address _owner, uint256 _id) external onlyController {
        delete eggs[_id];
        _burn(_owner, _id);
    }
}

Contract ABI
[{"constant":true,"inputs":[{"name":"_interfaceID","type":"bytes4"}],"name":"supportsInterface","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","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":"_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":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":"_url","type":"string"}],"name":"setUrl","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getAllTokens","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","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":true,"inputs":[{"name":"_spender","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"isApprovedOrOwner","outputs":[{"name":"","type":"bool"}],"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":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"url","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newDependencies","type":"address[]"}],"name":"setExternalDependencies","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newDependencies","type":"address[]"}],"name":"setInternalDependencies","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"tokensOfOwner","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sender","type":"address"},{"name":"_parents","type":"uint256[2]"},{"name":"_dragonType","type":"uint8"}],"name":"push","outputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_id","type":"uint256"}],"name":"get","outputs":[{"name":"","type":"uint256[2]"},{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"remoteApprove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_id","type":"uint256"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getInternalDependencies","outputs":[{"name":"","type":"address[]"}],"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":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getExternalDependencies","outputs":[{"name":"","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":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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"}]

Contract Creation Code
60806040523480156200001157600080fd5b5060405162003cc438038062003cc483398101806040528101908080518201929190602001805182019291905050508181336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600890805190602001906200009a929190620000d0565b508060099080519060200190620000b3929190620000d0565b5050506001601081620000c7919062000157565b5050506200020a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200011357805160ff191683800117855562000144565b8280016001018555821562000144579182015b828111156200014357825182559160200191906001019062000126565b5b5090506200015391906200018c565b5090565b8154818355818111156200018757600302816003028360005260206000209182019101620001869190620001b4565b5b505050565b620001b191905b80821115620001ad57600081600090555060010162000193565b5090565b90565b620001f991905b80821115620001f55760008082016000620001d79190620001fc565b6002820160006101000a81549060ff021916905550600301620001bb565b5090565b90565b506000815560010160009055565b613aaa806200021a6000396000f300608060405260043610610196576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301ffc9a71461019b57806306fdde03146101ff578063081812fc1461028f578063095ea7b3146102fc57806318160ddd1461034957806323b872dd14610374578063252498a2146103e15780632a5c792a1461041c5780632f745c591461048857806342842e0e146104e9578063430c2081146105565780634f558e79146105bb5780634f6ccce7146106005780635600f04f146106415780636352211e146106d157806365fc12531461073e57806369c0ad93146107a457806370a082311461080a5780638462151c146108615780638da5cb5b146108f95780639016dd4b146109505780639507d39a146109e357806395d89b4114610a59578063988b1d8614610ae9578063a22cb46514610b36578063abe7f1ab14610b85578063b75c4f8014610bd2578063b88d4fde14610c3e578063c87b56dd14610cf1578063e6458f6e14610d97578063e985e9c514610e03578063f2fde38b14610e7e575b600080fd5b3480156101a757600080fd5b506101e560048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610ec1565b604051808215151515815260200191505060405180910390f35b34801561020b57600080fd5b506102146110da565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610254578082015181840152602081019050610239565b50505050905090810190601f1680156102815780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029b57600080fd5b506102ba6004803603810190808035906020019092919050505061117c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561030857600080fd5b50610347600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611236565b005b34801561035557600080fd5b5061035e611245565b6040518082815260200191505060405180910390f35b34801561038057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611252565b005b3480156103ed57600080fd5b5061041a6004803603810190808035906020019082018035906020019190919293919293905050506112f4565b005b34801561042857600080fd5b506104316113ce565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610474578082015181840152602081019050610459565b505050509050019250505060405180910390f35b34801561049457600080fd5b506104d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611426565b6040518082815260200191505060405180910390f35b3480156104f557600080fd5b50610554600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061149a565b005b34801561056257600080fd5b506105a1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114bb565b604051808215151515815260200191505060405180910390f35b3480156105c757600080fd5b506105e660048036038101908080359060200190929190505050611550565b604051808215151515815260200191505060405180910390f35b34801561060c57600080fd5b5061062b600480360381019080803590602001909291905050506115c2565b6040518082815260200191505060405180910390f35b34801561064d57600080fd5b506106566115f7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561069657808201518184015260208101905061067b565b50505050905090810190601f1680156106c35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156106dd57600080fd5b506106fc60048036038101908080359060200190929190505050611695565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561074a57600080fd5b506107a2600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506116e0565b005b3480156107b057600080fd5b50610808600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506117c7565b005b34801561081657600080fd5b5061084b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118e3565b6040518082815260200191505060405180910390f35b34801561086d57600080fd5b506108a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611935565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156108e55780820151818401526020810190506108ca565b505050509050019250505060405180910390f35b34801561090557600080fd5b5061090e6119cc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561095c57600080fd5b506109cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908060400190600280602002604051908101604052809291908260026020028082843782019150505050509192919290803560ff1690602001909291905050506119f1565b6040518082815260200191505060405180910390f35b3480156109ef57600080fd5b50610a0e60048036038101908080359060200190929190505050611b22565b6040518083600260200280838360005b83811015610a39578082015181840152602081019050610a1e565b505050509050018260ff1660ff1681526020019250505060405180910390f35b348015610a6557600080fd5b50610a6e611bc2565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610aae578082015181840152602081019050610a93565b50505050905090810190601f168015610adb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610af557600080fd5b50610b34600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c64565b005b348015610b4257600080fd5b50610b83600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611cf0565b005b348015610b9157600080fd5b50610bd0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e95565b005b348015610bde57600080fd5b50610be7611f64565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610c2a578082015181840152602081019050610c0f565b505050509050019250505060405180910390f35b348015610c4a57600080fd5b50610cef600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ff2565b005b348015610cfd57600080fd5b50610d1c60048036038101908080359060200190929190505050612083565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d5c578082015181840152602081019050610d41565b50505050905090810190601f168015610d895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610da357600080fd5b50610dac6121da565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610def578082015181840152602081019050610dd4565b505050509050019250505060405180910390f35b348015610e0f57600080fd5b50610e64600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612268565b604051808215151515815260200191505060405180910390f35b348015610e8a57600080fd5b50610ebf600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122fc565b005b60006301ffc9a77c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610f9257506380ac58cd7c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610ffd575063f0b9e5ba7c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806110685750635b5e139f7c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806110d3575063780e9d637c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b606060088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111725780601f1061114757610100808354040283529160200191611172565b820191906000526020600020905b81548152906001019060200180831161115557829003601f168201915b5050505050905090565b600061118782611550565b15156111fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f746f6b656e20646f65736e27742065786973740000000000000000000000000081525060200191505060405180910390fd5b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b611241338383612487565b5050565b6000600c80549050905090565b61126461125f33836114bb565b6126aa565b61126d83612722565b61127682612722565b61128083826127ca565b61128a83826128f1565b6112948282612b57565b808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f74206120636f6e7472616374206f776e657200000000000000000000000081525060200191505060405180910390fd5b8181600f91906113c992919061382a565b505050565b6060600c80548060200260200160405190810160405280929190818152602001828054801561141c57602002820191906000526020600020905b815481526020019060010190808311611408575b5050505050905090565b600061143b611434846118e3565b8310612c2e565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110151561148757fe5b9060005260206000200154905092915050565b6114b68383836020604051908101604052806000815250611ff2565b505050565b6000806114c783611695565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061153657508373ffffffffffffffffffffffffffffffffffffffff1661151e8461117c565b73ffffffffffffffffffffffffffffffffffffffff16145b8061154757506115468185612268565b5b91505092915050565b6000806004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415915050919050565b60006115d66115cf611245565b8310612c2e565b600c828154811015156115e557fe5b90600052602060002001549050919050565b600f8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561168d5780601f106116625761010080835404028352916020019161168d565b820191906000526020600020905b81548152906001019060200180831161167057829003601f168201915b505050505081565b6000806004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506116d781612722565b80915050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117a4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f74206120636f6e7472616374206f776e657200000000000000000000000081525060200191505060405180910390fd5b80600390805190602001906117ba9291906138aa565b506117c481612ca6565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f74206120636f6e7472616374206f776e657200000000000000000000000081525060200191505060405180910390fd5b600090505b81518110156118c8576118bb82828151811015156118ac57fe5b90602001906020020151612722565b8080600101915050611892565b81600290805190602001906118de9291906138aa565b505050565b60006118ee82612722565b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156119c057602002820191906000526020600020905b8154815260200190600101908083116119ac575b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006119fb613934565b611a0433612d54565b1515611a78576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f20636f6e74726f6c6c65722072696768747300000000000000000000000081525060200191505060405180910390fd5b60408051908101604052808581526020018460ff168152509050611b0e600160108390806001815401808255809150509060018203906000526020600020906003020160009091929091909150600082015181600001906002611adc929190613958565b5060208201518160020160006101000a81548160ff021916908360ff1602179055505050612daa90919063ffffffff16565b9150611b1a8583612dc3565b509392505050565b611b2a613998565b6000601083815481101515611b3b57fe5b9060005260206000209060030201600001601084815481101515611b5b57fe5b906000526020600020906003020160020160009054906101000a900460ff1681600280602002604051908101604052809291908260028015611bb2576020028201915b815481526020019060010190808311611b9e575b5050505050915091509150915091565b606060098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611c5a5780601f10611c2f57610100808354040283529160200191611c5a565b820191906000526020600020905b815481529060010190602001808311611c3d57829003601f168201915b5050505050905090565b611c6d33612d54565b1515611ce1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f20636f6e74726f6c6c65722072696768747300000000000000000000000081525060200191505060405180910390fd5b611cec328383612487565b5050565b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611d94576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f77726f6e672073656e646572000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051808215151515815260200191505060405180910390a35050565b611e9e33612d54565b1515611f12576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f20636f6e74726f6c6c65722072696768747300000000000000000000000081525060200191505060405180910390fd5b601081815481101515611f2157fe5b906000526020600020906003020160008082016000611f4091906139ba565b6002820160006101000a81549060ff02191690555050611f608282612e1a565b5050565b60606002805480602002602001604051908101604052809291908181526020018280548015611fe857602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611f9e575b5050505050905090565b611ffd848484611252565b61200984848484612f7d565b151561207d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f63616e2774206d616b652073616665207472616e73666572000000000000000081525060200191505060405180910390fd5b50505050565b606061208e82611550565b1515612102576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f746f6b656e20646f65736e27742065786973740000000000000000000000000081525060200191505060405180910390fd5b600f61210d83613189565b604051602001808380546001816001161561010002031660029004801561216b5780601f1061214957610100808354040283529182019161216b565b820191906000526020600020905b815481529060010190602001808311612157575b505082805190602001908083835b60208310151561219e5780518252602082019150602081019050602083039250612179565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040529050919050565b6060600380548060200260200160405190810160405280929190818152602001828054801561225e57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612214575b5050505050905090565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156123c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6e6f74206120636f6e7472616374206f776e657200000000000000000000000081525060200191505060405180910390fd5b6123c981612722565b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600061249282611695565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f63616e277420626520617070726f76656420746f206f776e657200000000000081525060200191505060405180910390fd5b6125808173ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148061257b575061257a8286612268565b5b6126aa565b600073ffffffffffffffffffffffffffffffffffffffff166125a18361117c565b73ffffffffffffffffffffffffffffffffffffffff161415806125f15750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156126a457826005600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b50505050565b80151561271f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f6e6f2072696768747320746f206d616e6167650000000000000000000000000081525060200191505060405180910390fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156127c7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b50565b6127d481836132e6565b600073ffffffffffffffffffffffffffffffffffffffff166005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156128ed5760006005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b5050565b60008060006129446000600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905011613395565b61294e858561340d565b600b60008581526020019081526020016000205492506129ba6001600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050612daa90919063ffffffff16565b9150600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515612a0857fe5b9060005260206000200154905080600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002084815481101515612a6257fe5b90600052602060002001819055506000600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083815481101515612abe57fe5b9060005260206000200181905550600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480919060019003612b1e91906139c8565b506000600b60008681526020019081526020016000208190555082600b6000838152602001908152602001600020819055505050505050565b6000612b63838361354f565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082908060018154018082558091505090600182039060005260206000200160009091929091909150555080600b600084815260200190815260200160002081905550505050565b801515612ca3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f77726f6e6720696e64657800000000000000000000000000000000000000000081525060200191505060405180910390fd5b50565b60008090505b8151811015612d5057612cd58282815181101515612cc657fe5b90602001906020020151612722565b60018060008484815181101515612ce857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050612cac565b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000828211151515612db857fe5b818303905092915050565b612dcd8282613712565b600c80549050600d600083815260200190815260200160002081905550600c8190806001815401808255809150509060018203906000526020600020016000909192909190915055505050565b600080600080600c80549050111515612e9b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f6e6f20746f6b656e73000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b612ea58585613785565b600d6000858152602001908152602001600020549250612ed46001600c80549050612daa90919063ffffffff16565b9150600c82815481101515612ee557fe5b9060005260206000200154905080600c84815481101515612f0257fe5b90600052602060002001819055506000600c83815481101515612f2157fe5b9060005260206000200181905550600c805480919060019003612f4491906139c8565b506000600d60008681526020019081526020016000208190555082600d6000838152602001908152602001600020819055505050505050565b600080612f89856137f9565b1515612f985760019150613180565b8473ffffffffffffffffffffffffffffffffffffffff1663150b7a02338887876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561308d578082015181840152602081019050613072565b50505050905090810190601f1680156130ba5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1580156130dc57600080fd5b505af11580156130f0573d6000803e3d6000fd5b505050506040513d602081101561310657600080fd5b8101908080519060200190929190505050905063150b7a027c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505b50949350505050565b6060600080600060606000808514156131d9576040805190810160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525095506132dc565b8694508693505b600084141515613206578280600101935050600a848115156131fe57fe5b0493506131e0565b826040519080825280601f01601f1916602001820160405280156132395781602001602082028038833980820191505090505b5091506001830390505b6000851415156132d857600a8581151561325957fe5b066030017f01000000000000000000000000000000000000000000000000000000000000000282828060019003935081518110151561329457fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a858115156132d057fe5b049450613243565b8195505b5050505050919050565b8073ffffffffffffffffffffffffffffffffffffffff1661330683611695565b73ffffffffffffffffffffffffffffffffffffffff16141515613391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6e6f7420616e206f776e6572000000000000000000000000000000000000000081525060200191505060405180910390fd5b5050565b80151561340a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f7573657220686173206e6f20746f6b656e73000000000000000000000000000081525060200191505060405180910390fd5b50565b61341781836132e6565b6134626000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411613395565b6134b56001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612daa90919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600073ffffffffffffffffffffffffffffffffffffffff166004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515613626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f746f6b656e20616c72656164792068617320616e206f776e657200000000000081525060200191505060405180910390fd5b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506136cb6001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461380c90919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b61371b82612722565b6137258282612b57565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b61378f82826127ca565b61379982826128f1565b80600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600080823b905060008111915050919050565b600080828401905083811015151561382057fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061386b57803560ff1916838001178555613899565b82800160010185558215613899579182015b8281111561389857823582559160200191906001019061387d565b5b5090506138a691906139f4565b5090565b828054828255906000526020600020908101928215613923579160200282015b828111156139225782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550916020019190600101906138ca565b5b5090506139309190613a19565b5090565b606060405190810160405280613948613a5c565b8152602001600060ff1681525090565b8260028101928215613987579160200282015b8281111561398657825182559160200191906001019061396b565b5b50905061399491906139f4565b5090565b6040805190810160405280600290602082028038833980820191505090505090565b506000815560010160009055565b8154818355818111156139ef578183600052602060002091820191016139ee91906139f4565b5b505050565b613a1691905b80821115613a125760008160009055506001016139fa565b5090565b90565b613a5991905b80821115613a5557600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101613a1f565b5090565b90565b60408051908101604052806002906020820280388339808201915050905050905600a165627a7a72305820dce1a3e9506dff495db30d49398daa6b0619df832fa635d0b0beff4b4cc628c2002900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000f447261676f6e657265756d20456767000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034547470000000000000000000000000000000000000000000000000000000000


    Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000f447261676f6e657265756d20456767000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034547470000000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 000000000000000000000000000000000000000000000000000000000000000f
Arg [3] : 447261676f6e657265756d204567670000000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 4547470000000000000000000000000000000000000000000000000000000000


   Swarm Source:
bzzr://dce1a3e9506dff495db30d49398daa6b0619df832fa635d0b0beff4b4cc628c2
Block Age transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.