interface IERC721ListingTransferFrom { // interface for erc721 token listing and `transferFrom()`
    function ownerOf(uint256 tokenId) external view returns (address);
    function tokenByIndex(uint256 index) external view returns (uint256);
    function totalSupply() external view returns (uint256);
    function transferFrom(address from, address to, uint256 tokenId) external;
}
function ownerOf(uint256 tokenId) external view returns (address);

// interface for erc721 token listing and `transferFrom()`