诈骗题

题目背景

这是一道诈骗题。

题目描述

定义 $f(n,m)$ 为下列问题的答案。 > 考虑一个 $n\times m$ 黑白网格图,初始全是白色的。每次操作如下: > - 选择一个白格子 $(x,y)$,将其所在行全染黑,这个操作叫 $(x,y,\text{R})$。 > - 选择一个白格子 $(x,y)$,将其所在列全染黑,这个操作叫 $(x,y,\text{C})$。 > > 假设最多能操作 $k$ 次。问: > > - 对于所有操作 $k$ 次的方案,有多少种本质不同的 **操作集合** 。操作集合是一个大小为 $k$ 的集合,代表操作过的 $k$ 种操作。(注意,顺序不同但操作集合相同的 $2$ 种方案只会被计算 $1$ 次) 称两个操作集合 $A, B$ 本质不同,当且仅当存在某种操作 $opt$,满足 $[opt \in A] + [opt \in B] = 1$。 现在给定 $n,m$,请你对于所有 $1\le i\le n,\ 1\le j\le m$ 求出 $f(i,j)$ 的取值。 由于答案可能有点大,因此你只需要输出其取模 $998244353$ 的结果。

输入输出格式

输入格式


输入一行两个正整数 $n,m$。

输出格式


输出一个 $n$ 行 $m$ 列的矩阵,第 $i$ 行第 $j$ 个数表示 $f(i,j)\bmod 998244353$。

输入输出样例

输入样例 #1

2 2

输出样例 #1

2 3
3 16

说明

### 样例解释 对于 $f(1, 2)$,此时 $k = 2$,一共有以下 $3$ 个可能的操作集合: - $\{(1, 1, \text R), (1, 2, \text C)\}$ - $\{(1, 1, \text C), (1, 2, \text R)\}$ - $\{(1, 1, \text C), (1, 2, \text C)\}$ 注意到对于最后一个集合,有不止一种操作顺序,但是由于它们对应的操作集合相同,因此只被记入答案一次。 ### 数据范围 **洛谷代码长度限制为 $\textbf{50\ KB}$。** | 测试点编号 | $n=$ | $m=$ | | :----------: | :----------: | :----------: | | $1$ | $2$ | $2$ | | $2$ | $3$ | $3$ | | $3$ | $5$ | $5$ | | $4$ | $10$ | $10$ | | $5$ | $20$ | $20$ | | $6$ | $50$ | $50$ | | $7$ | $100$ | $100$ | | $8$ | $1$ | $200$ | | $9$ | $2$ | $200$ | | $10$ | $300$ | $300$ | 对于所有数据,保证 $1\le n,m\le 300$。