#P1627. 魔方

魔方

Description

Orange有一个 n×mn \times m 的数字魔方。他要执行如下几种操作共 qq 次:

  • 操作1:输入一个整数 xx,把第 xx向右循环移动一位,最右边的字符移动到最左边。
  • 操作2:输入一个整数 xx,把第 xx向下循环移动一位,最下方的字符移动到最上面。
  • 操作3:输入2个整数 x,yx,y,表示询问 (x,y)(x,y) 位置的数字是多少。

请你回答他所有操作3的询问。

Format

Input

输入第一行包含3个整数 n,m,qn,m,q,表示数字魔方大小和操作次数。

接下来输入一个 n×mn\times m 的数字魔方(二维矩阵)。

接下来 qq 行,每行一个操作,格式为:op Param1 {Param2}

数据范围

1n,m5001 \le n,m \le 500 1q10001 \le q \le 1000

保证每次操作给出的参数均合法,即不可能询问和修改超过魔方范围的位置。

Output

对于每个询问,输出答案。

Samples

3 3 3
1 2 3
4 5 6
7 8 9
1 1
2 2
3 2 2
1

Note

第一次操作后,魔方变成:

3 1 2
4 5 6
7 8 9

第二次操作后,魔方变成:

3 8 2
4 1 6
7 5 9

第三次操作为询问,(2,2)(2,2) 位置为 1