『MdOI R2』Quo Vadis

题目背景

「终于……终于要到离别的时候了呢。」 『好吧。这一次过去之后,我们可能就再也不能相会了呢……』 「无论如何,还是要离别的……」 『我理解你。感谢你这些天陪伴在我身旁。』 「我也一样。如果可以的话,我真希望能继续陪伴在你身边。」 『分别之后,我也不是现在的我了……』 『至少不像现在这样。』 「离开你之后,我也不会像现在这样了……」 『君往何处?君欲往何处?君莫走,君莫走!若要走,请带上我!』 …… 「所以……所以现在我们该怎么办?」 『就让我们纵然歌舞于其中吧!』 耳畔响起了小提琴和手风琴的声音,它是那么熟悉,而又那么陌生……

题目描述

在小 M 离别之前,他给小 K 留了一张纸条—— 如果你能完成他的话,我将有可能会再次与你相遇。 给定一个**无限大**的矩阵 $A$,其中 $A_{i,j}=ij\gcd(i,j)$。 接下来有 $m$ 个操作,每行 $1$ 至 $3$ 个整数,意义如下: $1$:对矩阵 $A$ 进行高斯消元,使之成为一个上三角矩阵。 **注意**:这里,高斯消元中只允许将一行的某一个倍数加到另一行上,不允许交换任意两行,不允许将某行乘上一个倍数,保证这样之后仍然可以得到上三角矩阵,并且保证消元之后的矩阵的每个元素均为非负整数。 $2\ x\ y$:求出当前矩阵的 $A_{x,y}$。 $3\ x$:求出 $\sum\limits_{i=1}^{x}\sum\limits_{j=1}^{x}A_{i,j}$。 $4\ x$:设 $B$ 是一个 $x$ 阶矩阵,其中 $B_{i,j}=A_{i,j}$,你需要求出 $\det B$。 **上述所有答案对 $998244353$ 取模**。 如果你不知道什么是行列式,请点[这里](https://oi-wiki.org/math/gauss/#_12),其中 $\text{det}$ 表示求矩阵的行列式。 ~~在你完成了小 M 给小 K 的任务之后,你可以来看小提琴和手风琴的谱子。~~

输入输出格式

输入格式


第一行一个整数 $m$。 接下来 $m$ 行,每行 $1\sim 3$ 个整数,表示操作。

输出格式


若干行,表示你的答案对 $998244353$ 取模后的值。

输入输出样例

输入样例 #1

6
4 4
2 4 4
3 4
1
2 4 4
3 4

输出样例 #1

2304
64
186
32
72

说明

【帮助与提示】 为方便选手测试代码,本题额外提供两组附加样例供选手使用。 [样例输入1](https://www.luogu.com.cn/paste/p2w7kxik) [样例输出1](https://www.luogu.com.cn/paste/2tqpm5zj) [样例输入2](https://www.luogu.com.cn/paste/u20duxjv) [样例输出2](https://www.luogu.com.cn/paste/jcn7ohaw) ----- 【样例解释】 注意到询问的 $x$ 和 $y$ 范围都不大于 $4$,所以我们考虑使用 $A$ 左上角的 $4\times 4$ 子矩阵进行解释,容易证明这不会造成任何影响。 在高斯消元之前,矩阵为 $\begin{pmatrix}1&2&3&4\\2&8&6&16\\3&6&27&12\\4&16&12&64\end{pmatrix}$,高斯消元后则为 $\begin{pmatrix}1&2&3&4\\0&4&0&8\\0&0&18&0\\0&0&0&32\end{pmatrix}$。 ---- 【数据范围】 | 子任务编号 | $1$ 操作是否存在 | $1$ 操作前 $2$ 操作中 $x,y \leq$ | $1$ 操作后 $2$ 操作中 $x,y \leq$ | $1$ 操作前 $3$ 操作中 $x \leq$ | $1$ 操作后 $3$ 操作中 $x \leq$ | $4$ 操作中 $x \leq$ | 分值 | | :--------: | :--------------: | :------------------------------: | :------------------------------: | :------------------------------: | :----------------------------: | :-------------------: | :----: | | Subtask 1 | 否 | $5000$ | 不存在 | $500$ | 不存在 | 不存在 | $4$ | | Subtask 2 | 否 | $10^{18}$ | 不存在 | $500$ | 不存在 | 不存在 | $13$ | | Subtask 3 | 否 | $10^{18}$ | 不存在 | $5 \times 10^6$ | 不存在 | $50$ | $15$ | | Subtask 4 | 否 | $10^{18}$ | 不存在 | $10^8$ | 不存在 | $100$ | $16$ | | Subtask 5 | 是 | $10^{18}$ | $100$ | $5 \times 10^6$ | $100$ | 不存在 | $17$ | | Subtask 6 | 是 | $10^{18}$ | $5\times 10^5$ | $10^8$ | $10^3$ | $100$ | $17$ | | Subtask 7 | 是 | $10^{18}$ | $5 \times 10^6$ | $10^8$ | $5\times 10^6$ | $5\times 10^6$ | $18$ | 对于 $100\%$ 的数据,$1 \leq m\leq 10^5$,$1$ 操作前的所有 $3$ 操作中 $\sum x$ 不大于每一个测试点 $x$ 范围的 $10$ 倍。 保证 $1$ 操作出现不超过 $1$ 次。