def recommend_kernel_params(binsize):
    """
    Recommned kernel parameters for the
    standard convolution kernels, 'donut', etc
    same as in Rao et al 2014

    Parameters
    ----------
    binsize : integer
        binsize of the provided cooler

    Returns
    -------
    (w,p) : (integer, integer)
        tuple of the outer and inner kernel sizes
    """
    if binsize > 28000:
        raise ValueError(
            'Provided cooler has resolution {} bases, which is too coarse for analysis.'
            .format(binsize))
    elif binsize >= 18000:
        w, p = 3, 1
    elif binsize >= 8000:
        w, p = 5, 2
    elif binsize >= 4000:
        w, p = 7, 4
    else:
        raise ValueError(
            'Provided cooler has resolution {} bases, which is too fine for analysis.'
            .format(binsize))
    return w, p
