문제
철기는 최신 색칠 프로그램을 막 설치했다. 이 프로그램은 K가지의 색을 지원하며, 색은 1부터 K의 정수로 표현한다. 색은 NxN 크기의 판에 칠해진다. 처음에 모든 칸은 1번 색이다. 맨 왼쪽 위의 칸의 좌표는 (0,0)이고, 첫 번째 값은 x값으로 열을 나타내고, 두 번째 값은 y값으로 행을 나타낸다.
철기의 취미는 직사각형 모양의 체크무늬 색칠이고, 이 명령은 'PAINT c x1 y1 x2 y2'로 행한다. c는 칠할 색깔을 의미하며, (x1,y1)과 (x2,y2)는 각각 체크무늬 보드의 왼쪽, 위 좌표와 오른쪽, 아래 좌표를 나타낸다.
직사각형의 가장 왼쪽 위의 칸은 색칠되고, 그에 인접하는 칸은 색칠되지 않는 형식으로 나머지 칸들도 체크무늬에 따라 결정된다. 색칠 되지 않는 칸들은 원래 색으로 남는다. 예를 들면, 모두 하얀색으로 칠해져 있던 판을 빨강색 체크무늬 보드로 칠하게 되면 다음과 같아진다.
![546f90d5f61401554ea4ef3b013c39b8_1466560412_8688.gif](https://u.jungol.co.kr/problem/2432/ec36bdb5-cf08-4acc-a2e8-0ba7b285fb0a.gif)
철기는 최근 두 개의 추가 명령을 발견했다. 그는 'SAVE'를 통해 현재 상황을 저장 할 수 있고, 'LOAD x'를 통해 x 번째에 저장한 상황을 불러 올 수 있게 되었다.
불행하게도, 프로그램이 망가져 철기의 작품이 날아갔다. 하지만 다행인 것은 했던 명령들은 남아있다. 당신은 철기를 도와 그의 작품을 다시 완성시켜야 한다.
입력
입력의 첫 번째 줄에는 N(1≤N≤1000), K(2≤K≤100,000), M(1≤M≤100,000, M은 명령의 수)이 입력된다.
다음 줄부터 M줄에 걸쳐 명령이 입력된다. 잘못된 명령은 입력되지 않는다.
출력
NxN 크기의 화판의 각 칸의 색깔을 출력한다.
예제1
입력
43 2
PAINT 2 0 0 3 3
PAINT 3 0 3 3 3
출력
21 2 3
1 2 1 2
2 1 2 3
1 2 1 2
예제2
입력
33 4
PAINT 3 0 0 1 1
SAVE
PAINT 2 1 1 2 2
LOAD 1
출력
31 1
1 3 1
1 1 1
예제3
입력
34 7
PAINT 2 0 0 1 1
SAVE
PAINT 3 1 1 2 2
SAVE
PAINT 4 0 2 0 2
LOAD 2
PAINT 4 2 0 2 0
출력
21 1
1 3 1
4 1 3
출처
COCI 2010/2011 contest5 6