def clever_split(line: str) -> list:
    """Get separated (tabs or whitespaces) elements from line.

    Parameters
    ----------
    line : str

    Returns
    -------
    elems : list of str
        Separated elements.
    """
    # split elements by tabs
    cols = line.split('\t')

    # if no tabs, split by whitespace
    if len(cols) <= 1:
        cols = line.split(' ')

    # strip elements of trailing whitespaces
    elems = [c.strip() for c in cols if len(c.strip()) > 0]

    return elems