def fill_zero(x: np.array, rect: Rectangle):
    assert isinstance(rect, (Shape, list, tuple, set))
    if isinstance(rect, Shape):
        upper, lower, left, right = rect.get_upper(), rect.get_lower(
        ), rect.get_left(), rect.get_right()
        if len(x.shape) == 3:
            x[upper:lower, left:right, :] = 0
        else:
            x[upper:lower, left:right] = 0
    else:
        for r in rect:
            fill_zero(x, r)