def parse_SOFT_line(l):
    """
    Parse SOFT formatted line, returning a dictionary with the key-value pair.

    :param str l: A SOFT-formatted line to parse ( !key = value )
    :return dict[str, str]: A python Dict object representing the key-value.
    :raise InvalidSoftLineException: if given line can't be parsed as SOFT line
    """
    elems = l[1:].split('=')
    return {elems[0].rstrip(): elems[1].lstrip()}
