问题陈述
我们有一个由H行从上到下和W列从左到右组成的网格。最初,位于从上到下的第i行和从左到右的第j列的方块上有一个小写英文字母Ai,j。
让我们在这个网格上执行Q次操作。在第i次操作中,给定整数ai和bi,使得1≤ai≤H−1且1≤bi≤W−1,然后执行以下操作。
- 让R1、R2、R3和R4是网格内的矩形区域,定义如下:
- R1是前ai行和最左侧的bi列的交集;
- R2是前ai行和最右侧的W−bi列的交集;
- R3是后H−ai行和最左侧的bi列的交集;
- R4是后H−ai行和最右侧的W−bi列的交集。
- 将R1、R2、R3和R4中的每个矩形区域旋转180度。
这里,网格中矩形区域R的180度旋转将位于R中从上到下的第i列和从左到右的第j列的字符移动到R中从下到上的第i列和从右到左的第j列上。参见示例的图形。
输出在所有Q次操作之后的网格。
约束条件
- 2≤H,W,且HW≤5×105。
- Ai,j是一个小写英文字母。
- 1≤Q≤2×105
- 1≤ai≤H−1
- 1≤bi≤W−1
输入
输入以以下格式从标准输入给出:
H W
A1,1⋯A1,W
⋮
AH,1⋯AH,W
Q
a1 b1
⋮
aQ bQ
输出
以以下格式打印经过操作后的网格,其中Bi,j是最终网格上方格(i,j)上的字符。
B1,1⋯B1,W
⋮
BH,1⋯BH,W
示例输入 1
4 5
abcde
fghij
klmno
pqrst
1
3 3
示例输出 1
mlkon
hgfji
cbaed
rqpts
网格的变化如下。

示例输入 2
3 7
atcoder
regular
contest
2
1 1
2 5
示例输出 2
testcon
oderatc
ularreg
网格的变化如下。

示例输入 3
2 2
ac
wa
3
1 1
1 1
1 1
示例输出 3
ac
wa
网格的变化如下。
