B. 机械姬哥

传统 1000 ms 256 MiB
标准 IO
文本比较

题目描述

这一天,姬哥强大的念力被外星人vvvb所发现,vvvb基于姬哥为原型开发出了机械姬哥,他发誓机械姬哥将会超越真·姬哥!

机械姬哥可以用念力操纵物体。现在有一个物体,含有n(1n106)n(1\leq n\leq 10^6)个顶点,第ii个顶点坐标记为(xi,yi,zi)(1xi,yi,zi105)(x_i,y_i,z_i)(1\leq x_i,y_i,z_i\leq 10^5)。现在机械姬哥将会使用q(1q105)q(1\leq q\leq 10^5)次念力,每次念力可以描述为如下格式:

  1. move α d(105d105)move\ \alpha\ d(-10^5\leq d\leq 10^5): 表示将物体沿α\alpha方向移动dd
  2. rotate α a(α{x,y,z})rotate\ \alpha\ a(\alpha\in\{x,y,z\}): 表示将物体绕α\alpha轴旋转aa^{\circ},其中正角度代表逆时针,负角度代表顺时针,旋转的方向在右手坐标系中使用右手螺旋的方式确定;
  3. query i(1in)query\ i(1\leq i\leq n): 询问第ii个点当前的坐标值;

由于vvvb技术尚不纯属,机械姬哥存在一定的缺陷,在第二种念力中旋转角度只能为9090^{\circ}的倍数。现在姬哥想要证明自己是无法被机械姬哥超越的。请你帮助他对于机械姬哥的每次询问念力(第三种念力)做出快速回答。(本题输入数据保证在int范围内)

输入格式

第一行包含两个数n,qn,q,表示物体顶点个数以及姬哥使用念力次数。

接下来nn行每行三个数xi,yi,zix_i,y_i,z_i,表示第ii个点的坐标。

接下来qq行每行一条念力描述,格式见题目。

输出格式

对于每次姬哥使用第三种念力,输出一行三个数xi,yi,zix_i,y_i,z_i,表示被询问的顶点当前的坐标。请注意不要有末尾多余空格

样例

输入样例

3 5
1 1 1
0 1 0
1 0 1
rotate x 90
move z 2
query 2
rotate z -90
query 1

输出样例

0 0 3
-1 -1 3