ith_interval[1])  # maximum ending
                    processed[i] = True
                    break  # break the loop, so that now we start processing the i+1 th interval NOTICE
                    # Notice : That we are updating the interval which is next to us
                    #  and not the one from which we start, we mark that just processed

        # only taking the intervals who are not marked processed
        result = [
            interval for idx, interval in enumerate(intervals)
            if not processed[idx]
        ]
        return result


if __name__ == "__main__":
    interval_matrix = input_matrix("")
    print(Solution().merge(interval_matrix))
"""
[[1,3],[2,6],[8,10],[15,18]]

4
1 3
2 6
8 10
15 18
"""
"""
[[3,5],[0,0],[4,4],[0,2],[5,6],[4,5],[3,5],[1,3],[4,6],[4,6],[3,4]]       GOOD TEST CASE       Brute Force Fails here
11
3 5
0 0
Beispiel #2
0
                zero_value_rows.add(i)
                zero_value_columns.add(j)

    # print(zero_value_rows, zero_value_columns)

    # going through all the matrix element, and where the i or j belongs to our set, we make that matrix element 0
    for i in range(n):
        for j in range(m):
            if i in zero_value_rows or j in zero_value_columns:
                matrix[i][j] = 0

    print()


if __name__ == "__main__":
    array_2d = input_matrix()
    print_matrix(array_2d)
    set_matrix_zero(array_2d)
    print_matrix(array_2d)
"""
3
1 1 1
1 0 1
1 1 1
"""
"""
3
0 1 2 0
3 4 5 2
1 3 1 5
"""
    )  # considering column size would be fixed, Ie No Jagged Array
    rolling_buildings = [0] * columns  # Notice : this is a rolling array

    max_area = float("-inf")
    for buildings in matrix:
        create_building_for_this_level(rolling_buildings,
                                       buildings)  # updating rolling_buildings
        max_area_for_these_building = mah(
            rolling_buildings)  # Notice : using maximum_area_histogram
        max_area = max(max_area_for_these_building, max_area)

    return max_area


if __name__ == "__main__":
    arr2D = input_matrix()
    max_area = find_max_area_rectangle_in_binary_matrix(arr2D)
    print(max_area)
"""
row : 4
col : 4
0 1 1 0
1 1 1 1
1 1 1 1
1 1 0 0


row : 3
col : 3
0 1 1
1 1 1