interface IERC721{
   
    function ownerOf(uint256 _tokenId) external view returns (address _owner); // from ERC721
    function setUpdateOperator(uint256 assetId,address operator) external;
    function exists(uint256 assetId) external view returns (bool);
    function isAuthorized(address operator, uint256 assetId) external view returns (bool);
    function updateOperator(uint256 assetId) external view returns (bool);
    function balanceOf(address _owner) external view returns (uint256 _balance);
    function tokenOfOwnerByIndex(address,uint256) external view returns (uint256 _etateTokenId);
    function isApprovedForAll(address, address) external view returns (bool auth);
}
function setUpdateOperator(uint256 assetId,address operator) external;

// from ERC721