<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def read_separated_lines_with_first_key(path: str, separator: str = ' ', max_columns: int = -1, keep_empty: bool = False):
 """ Reads the separated lines of a file and return a dictionary with the first column as keys, value is a list with the rest of the columns. Parameters: path (str):
 Path to the file to read. separator (str):
 Separator that is used to split the columns. max_columns (str):
 Number of max columns (if the separator occurs within the last column). keep_empty (bool):
 If True empty columns are returned as well. Returns: dict: Dictionary with list of column values and first column value as key. """

    gen = read_separated_lines_generator(path, separator, max_columns, keep_empty=keep_empty)

    dic = {}

    for record in gen:
        if len(record) > 0:
            dic[record[0]] = record[1:len(record)]

    return dic