def _fill_mi_header(row, control_row):
last = row[<NUM_LIT:0>]<EOL>for i in range(<NUM_LIT:1>, len(row)):<EOL><INDENT>if not control_row[i]:<EOL><INDENT>last = row[i]<EOL><DEDENT>if row[i] == '<STR_LIT>' or row[i] is None:<EOL><INDENT>row[i] = last<EOL><DEDENT>else:<EOL><INDENT>control_row[i] = False<EOL>last = row[i]<EOL><DEDENT><DEDENT>return row, control_row<EOL>
Forward fill blank entries in row but only inside the same parent index.

    Used for creating headers in Multiindex.
    Parameters
    ----------
    row : list
        List of items in a single row.
    control_row : list of bool
        Helps to determine if particular column is in same parent index as the
        previous value. Used to stop propagation of empty cells between
        different indexes.

    Returns
    ----------
    Returns changed row and control_row