小 Semyon 在玩一个棋盘。最初,他有一个 $n$ 行 $m$ 列的大棋盘,其中一些格子被涂成了黑色。然后,他开始根据以下规则将其他格子涂成黑色:如果某个矩形的三个角已经是黑色,他也可以将剩下的那个角涂成黑色。然而,并非每个初始棋盘都满足 Semyon 的要求:他希望能够将整个棋盘涂成黑色,且初始棋盘包含的黑色格子数量必须尽可能少。你的任务是求出给定尺寸下,满足 Semyon 要求的初始棋盘的数量。
输入格式
输入只有一行,包含两个整数 $n$ 和 $m$ ($1 \le n, m \le 10^9$),分别表示行数和列数。
输出格式
输出满足 Semyon 要求的棋盘数量。由于该数字可能非常大,请输出其对质数 $998\,244\,353$ 取模的结果。
样例
输入格式 1
1 1
输出格式 1
1
输入格式 2
2 2
输出格式 2
4
说明
在第二个样例中,满足要求的棋盘恰好是那些包含 3 个黑色格子的棋盘。