def split_quoted_line(line):
    """
    splits a line into words some of which might be quoted

    TESTS::

        FlyScan 0   0   0   blank
        FlyScan 5   2   0   "empty container"
        FlyScan 5   12   0   "even longer name"
        SAXS 0 0 0 blank
        SAXS 0 0 0 "blank"

    RESULTS::

        ['FlyScan', '0', '0', '0', 'blank']
        ['FlyScan', '5', '2', '0', 'empty container']
        ['FlyScan', '5', '12', '0', 'even longer name']
        ['SAXS', '0', '0', '0', 'blank']
        ['SAXS', '0', '0', '0', 'blank']

    """
    parts = []
    quoted = False
    multi = None
    for p in line.split():
        if not quoted and p.startswith('"'):
            quoted = True
            multi = ''
        if quoted:
            if len(multi) > 0:
                multi += ' '
            multi += p
            if p.endswith('"'):
                quoted = False
        if not quoted:
            if multi is not None:
                parts.append(multi[1:-1])
                multi = None
            else:
                parts.append(p)
    return parts
