<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def table_cells_2_spans(table, spans):
 """ Converts the table to a list of spans, for consistency. This method combines the table data with the span data into a single, more consistent type. Any normal cell will become a span of just 1 column and 1 row. Parameters table : list of lists of str spans : list of lists of int Returns ------- table : list of lists of lists of int As you can imagine, this is pretty confusing for a human which is why data2rst accepts table data and span data separately. """

    new_spans = []
    for row in range(len(table)):
        for column in range(len(table[row])):
            span = get_span(spans, row, column)

            if not span:
                new_spans.append([[row, column]])

    new_spans.extend(spans)
    new_spans = list(sorted(new_spans))

    return new_spans