contract ERC721Basic {
    event Transfer(address indexed _from, address indexed _to, uint256 _tokenId);
    //event Approval(address indexed _owner, address indexed _approved, uint256 _tokenId);

    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 transferFrom(address _from, address _to, uint256 _tokenId) public;
}
/**
 * @title ERC721 Non-Fungible Token Standard basic interface
 * @dev see https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md
 */
function balanceOf(address _owner) public view returns (uint256 _balance);

//event Approval(address indexed _owner, address indexed _approved, uint256 _tokenId);