```\nFile: BondBaseCallback.sol\n    /* ========== WHITELISTING ========== */\n\n    /// @inheritdoc IBondCallback\n    function whitelist(address teller_, uint256 id_) external override onlyOwner {\n        // Check that the market id is a valid, live market on the aggregator\n        try _aggregator.isLive(id_) returns (bool live) {\n            if (!live) revert Callback_MarketNotSupported(id_);\n        } catch {\n            revert Callback_MarketNotSupported(id_);\n        }\n\n        // Check that the provided teller is the teller for the market ID on the stored aggregator\n        // We could pull the teller from the aggregator, but requiring the teller to be passed in\n        // is more explicit about which contract is being whitelisted\n        if (teller_ != address(_aggregator.getTeller(id_))) revert Callback_TellerMismatch();\n\n        approvedMarkets[teller_][id_] = true;\n    }\n```\n