AT_arc202_b [ARC202B] Japanese "Knight's Tour"

Description

There is a shogi (Japanese chess) board with $ H $ rows and $ W $ columns, and one knight piece. The square at the $ i $ -th row from the top and $ j $ -th column from the left of the board is represented as $ (i-1, j-1) $ . (Note that the values are shifted by $ 1 $ .) This board is a torus, meaning the top and bottom are connected, and the left and right are connected. A knight at $ (i, j) $ can move to $ ((i-2) \bmod H, (j-1) \bmod W) $ or $ ((i-2) \bmod H, (j+1) \bmod W) $ . (Note that this is different from the knight in Standard chess.) Moving the knight on the board to satisfy the following condition is called a **tour**. - Initially, place the knight at $ (0, 0) $ . Then, move the knight $ H \times W $ times so that the knight visits every square exactly once. Finally, the knight returns to $ (0, 0) $ . Find the number of tours modulo $ 998244353 $ . Two tours are considered different if and only if there exists an integer $ i $ $ (1 \leq i \leq H\times W) $ such that the destination of the $ i $ -th move is different.

Input Format

The input is given from Standard Input in the following format: > $ H $ $ W $

Output Format

Output the number of tours modulo $ 998244353 $ .

Explanation/Hint

### Sample Explanation 1 For example, the movement $ (0,0) \to (1,1) \to (2,2) \to (0,1) \to (1,2) \to (2,0) \to (0,2) \to (1,0) \to (2,1) \to (0,0) $ satisfies the conditions as a tour. There are six tours in total. ### Constraints - $ 3 \leq H \leq 2 \times 10^5 $ - $ 3 \leq W \leq 2 \times 10^5 $ - All input values are integers.