AT_arc199_d [ARC199D] Limestone

Description

正整数 $ H,W $ が与えられます. $ H $ 行 $ W $ 列の行列 $ A=(A_{i,j})\ (1\leq i\leq H,1\leq j\leq W) $ があり,はじめ全ての要素は $ 0 $ です. この行列に対して,以下の $ 2 $ 種類の操作を好きな順番で何度でも行うことができます. - 整数 $ r,c\ (1\leq r\leq H,1\leq c\leq W) $ を選ぶ. $ A_{r,1},A_{r,2},\ldots,A_{r,c} $ を全て $ 1 $ にする. - 整数 $ r,c\ (1\leq r\leq H,1\leq c\leq W) $ を選ぶ. $ A_{1,c},A_{2,c},\ldots,A_{r,c} $ を全て $ 1 $ にする. 上記の操作を繰り返して得られる行列全てに対する $ \displaystyle \sum_{i=1}^H\sum_{j=1}^W A_{i,j} $ の総和を $ 998244353 $ で割った余りを求めてください.

Input Format

入力は以下の形式で標準入力から与えられる. > $ H $ $ W $

Output Format

操作を繰り返して得られる行列全てに対する $ \displaystyle \sum_{i=1}^H\sum_{j=1}^W A_{i,j} $ の総和を $ 998244353 $ で割った余りを出力せよ.

Explanation/Hint

### Sample Explanation 1 操作を繰り返して得られる行列は以下の $ 14 $ 通りあります. $ \begin{pmatrix}0&0 \\ 0&0\end{pmatrix} \begin{pmatrix}1&0 \\ 0&0\end{pmatrix} \begin{pmatrix}0&1 \\ 0&0\end{pmatrix} \begin{pmatrix}1&1 \\ 0&0\end{pmatrix} \begin{pmatrix}0&0 \\ 1&0\end{pmatrix} \begin{pmatrix}1&0 \\ 1&0\end{pmatrix} \begin{pmatrix}0&1 \\ 1&0\end{pmatrix} \begin{pmatrix}1&1 \\ 1&0\end{pmatrix} \begin{pmatrix}0&1 \\ 0&1\end{pmatrix} \begin{pmatrix}1&1 \\ 0&1\end{pmatrix} \begin{pmatrix}0&0 \\ 1&1\end{pmatrix} \begin{pmatrix}1&0 \\ 1&1\end{pmatrix} \begin{pmatrix}0&1 \\ 1&1\end{pmatrix} \begin{pmatrix}1&1 \\ 1&1\end{pmatrix} $ 答えは $ 0+1+1+2+1+2+2+3+2+3+2+3+3+4=29 $ です. $ \begin{pmatrix}0&0 \\ 0&1\end{pmatrix} $ や $ \begin{pmatrix}1&0 \\ 0&1\end{pmatrix} $ はどのように操作しても得ることができません. ### Constraints - $ 1\leq H,W $ - $ HW\leq 2\times 10^5 $ - 入力は全て整数