interface IArtblocksRoyaltyOverride is IERC165 {
    /**
     * @notice Gets royalites of token ID `_tokenId` on token contract
     * `_tokenAddress`.
     * @param tokenAddress Token contract to be queried.
     * @param tokenId Token ID to be queried.
     * @return recipients_ array of royalty recipients
     * @return bps array of basis points for each recipient, aligned by index
     * @dev Interface ID:
     *
     * bytes4(keccak256('getRoyalties(address,uint256)')) == 0x9ca7dc7a
     *
     * => 0x9ca7dc7a = 0x9ca7dc7a
     */
    function getRoyalties(address tokenAddress, uint256 tokenId)
        external
        view
        returns (address payable[] memory recipients_, uint256[] memory bps);
}
/**
 * @notice Interface for Art Blocks Royalty override.
 * Supported by the Royalty Registry v1 Engine.
 * @dev  ref: https://royaltyregistry.xyz / engine-v1.royaltyregistry.eth
 */
function getRoyalties(address tokenAddress, uint256 tokenId)
    external
    view
    returns (address payable[] memory recipients_, uint256[] memory bps);

/**
 * @notice Gets royalites of token ID `_tokenId` on token contract
 * `_tokenAddress`.
 * @param tokenAddress Token contract to be queried.
 * @param tokenId Token ID to be queried.
 * @return recipients_ array of royalty recipients
 * @return bps array of basis points for each recipient, aligned by index
 * @dev Interface ID:
 *
 * bytes4(keccak256('getRoyalties(address,uint256)')) == 0x9ca7dc7a
 *
 * => 0x9ca7dc7a = 0x9ca7dc7a
 */