소들이 이번 달에도 우유 생산 기록을 새로 세워, 각자 특별한 간식을 받을 자격을 얻었습니다. 소들은 $W \times H$ 크기의 직사각형 대형($1 \le W \le 25$, $1 \le H \le 25$)을 빈틈없이 채운 채 간식을 기다리고 있습니다.
각 소는 전체 우유 생산 성과를 나타내는 서로 다른 능력치 $F_{rc}$($1 \le F_{rc} \le 1{,}000{,}000$)를 가지고 있습니다. 농부 존은 생산량이 높은 소부터 간식을 주려고 합니다. 그는 한 줄씩 간식을 나눠 주는데, 1행의 첫 번째 열부터 마지막 열까지 차례로 준 뒤 2행으로 넘어가는 식으로 진행합니다. 따라서 간식을 주는 순서는 다음과 같습니다.
1 2 3 ... W
W+1 W+2 W+3 ... 2W
...
농부 존은 생산량이 좋은 소일수록 먼저 간식을 받도록 소들에게 자리를 다시 배치하라고 부탁합니다. 하지만 소들은 자유롭게 정렬하지 못하고, 대형에서 두 행 전체를 맞바꾸거나 두 열 전체를 맞바꾸는 것만 할 수 있습니다. 이 두 가지 이동만으로 소들은 최선을 다해, 능력치가 가장 높은 소를 왼쪽 위 모서리(1행 1열)에 두고 그다음으로 높은 소를 가능한 한 앞 순서에 두는 식으로 다음 그리디 규칙을 따릅니다.
어떤 소는 현재 자신의 행과 열이 모두 아직 고정되지 않았을 때에만 옮길 수 있습니다. 행만 고정된 경우에는 그 행에 머문 채 열만 바꿀 수 있고, 열만 고정된 경우에는 행만 바꿀 수 있으며, 둘 다 고정된 경우에는 전혀 움직일 수 없습니다.
예시 (3행 4열):
5 7 4 1
9 99 2 6
8 3 10 11
능력치 99인 소가 가장 뛰어나므로 왼쪽 위 모서리에 와야 합니다. 1행과 2행을 맞바꾼 뒤 1열과 2열을 맞바꾸면 다음과 같습니다.
99 9 2 6
7 5 4 1
3 8 10 11
능력치 11인 소는 99 바로 다음으로 간식을 받아야 합니다. 이 소는 가장 마지막 순서인 (3, 4) 자리에 있어서 이미 1행이나 1열에 도달하기에는 늦었고, 갈 수 있는 가장 앞 자리는 (2, 2)입니다. 2열과 4열을 맞바꾼 뒤 2행과 3행을 맞바꾸면 다음과 같습니다.
2열과 4열 교환 2행과 3행 교환
99 6 2 9 99 6 2 9
7 1 4 5 -> 3 11 10 8
3 11 10 8 7 1 4 5
능력치 10인 소는 11 바로 다음 순서인 자기 자리에 그대로 고정됩니다. 9는 이미 간식을 받았습니다. 8은 10 바로 다음, 7은 8 바로 다음입니다. 6은 이미 받았습니다. 능력치 5인 소는 3행 2열로 가고 싶지만 1행과 2행, 그리고 모든 열이 이미 고정되어 있어 1, 4와 마찬가지로 움직일 수 없습니다. 따라서 위 대형이 소들이 만들 수 있는 최선의 배치입니다.
처음 대형이 주어지면, 이 그리디 절차로 소들이 도달하는 최종 대형을 출력하세요.