def flood_fill(grid, x, y, new_color, original_color):
if x < 0 or x >= len(grid) or y < 0 or y >= len(grid[0]):
return
if grid[x][y] != original_color:
return
grid[x][y] = new_color
flood_fill(grid, x+1, y, new_color, original_color)
flood_fill(grid, x-1, y, new_color, original_color)
flood_fill(grid, x, y+1, new_color, original_color)
flood_fill(grid, x, y-1, new_color, original_color)