interface ICoinvestingDeFiFactory {
    //Events
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint
    );

    //External functions
    function createPair(
        address tokenA,
        address tokenB
    )
    external
    returns (address pair);

    function setFeeTo(address) external;
    function setFeeToSetter(address) external;

    // External functions that are view
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
    function getPair(
        address tokenA,
        address tokenB
    )
    external
    view
    returns (address pair);
}
function allPairs(uint) external view returns (address pair);

// External functions that are view