<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def parse_table(table_string, header, remove_rows=1):
    '''parse a table to json from a string, where a header is expected by default.
       Return a jsonified table.

       Parameters
       ==========
       table_string: the string table, ideally with a header
       header: header of expected table, must match dimension (number columns)
       remove_rows: an integer to indicate a number of rows to remove from top
                    the default is 1 assuming we don't want the header
    '''
    rows = [x for x in table_string.split('\n') if x]
    rows = rows[0+remove_rows:]

    # Parse into json dictionary
    parsed = []

    for row in rows:
        item = {}
        # This assumes no white spaces in each entry, which should be the case
        row = [x for x in row.split(' ') if x]
        for e in range(len(row)):
            item[header[e]] = row[e]
        parsed.append(item)
    return parsed