def explode_line(raw: str) -> typing.List[str]:
    """

    :param raw:
    :return:
    """

    raw = re.sub(r'\s+', ' ', raw.strip())
    out = ['']
    breaker = ' '

    for index in range(len(raw)):
        c = raw[index]
        out[-1] += c

        if c == breaker:
            out[-1] = out[-1].strip()
            out.append('')
            breaker = ' '
        elif c == '"' and breaker == ' ':
            breaker = '"'
            continue

    return [x for x in out if len(x) > 0]
def explode_line ( raw : str ) -> typing . List [ str ] : raw = re . sub ( r'\s+' , ' ' , raw . strip ( ) ) out = [ '' ] breaker = ' ' for index in range ( len ( raw ) ) : c = raw [ index ] out [ - 1 ] += c if c == breaker : out [ - 1 ] = out [ - 1 ] . strip ( ) out . append ( '' ) breaker = ' ' elif c == '"' and breaker == ' ' : breaker = '"' continue return [ x for x in out if len ( x ) > 0 ]
:param raw:
    :return: