import sys from collections import deque def main(): input = sys.stdin.read().split() idx = 0 H = int(input[idx]); idx += 1 W = int(input[idx]); idx += 1 grid = [] for _ in range(H): row = list(map(int, input[idx:idx + W])) idx += W grid.append(row) Q = int(input[idx]); idx += 1 queries = [] for _ in range(Q): R = int(input[idx]) - 1; idx += 1 C = int(input[idx]) - 1; idx += 1 X = int(input[idx]); idx += 1 queries.append((R, C, X)) for R, C, X in queries: if R < 0 or R >= H or C < 0 or C >= W: continue # invalid query, but problem statement says queries are valid current_color = grid[R][C] if current_color == X: continue queue = deque() queue.append((R, C)) grid[R][C] = X while queue: r, c = queue.popleft() for dr, dc in [(-1, 0), (1, 0), (0, -1), (0, 1)]: nr = r + dr nc = c + dc if 0 <= nr < H and 0 <= nc < W: if grid[nr][nc] == current_color: grid[nr][nc] = X queue.append((nr, nc)) for row in grid: print(' '.join(map(str, row))) if __name__ == '__main__': main()