#D9186. GP 2

    ID: 7635 Type: Default 2000ms 1073MiB

GP 2

GP 2

We have a sequence of N integers: x=(x_0,x_1,\cdots,x_{N-1}). Initially, x_i=0 for each i (0 \leq i \leq N-1).

Snuke will perform the following operation exactly M times:

  • Choose two distinct indices i, j (0 \leq i,j \leq N-1,\ i \neq j). Then, replace x_i with x_i+2 and x_j with x_j+1.

Find the number of different sequences that can result after M operations. Since it can be enormous, compute the count modulo 998244353.

Constraints

  • 2 \leq N \leq 10^6
  • 1 \leq M \leq 5 \times 10^5
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

N M

Output

Print the number of different sequences that can result after M operations, modulo 998244353.

Examples

Input

2 2

Output

3

Input

3 2

Output

19

Input

10 10

Output

211428932

Input

100000 50000

Output

3463133

inputFormat

input are integers.

Input

Input is given from Standard Input in the following format:

N M

outputFormat

Output

Print the number of different sequences that can result after M operations, modulo 998244353.

Examples

Input

2 2

Output

3

Input

3 2

Output

19

Input

10 10

Output

211428932

Input

100000 50000

Output

3463133

样例

3 2
19