#D3220. Sum of Fibonacci Sequence

    ID: 2676 Type: Default 2000ms 268MiB

Sum of Fibonacci Sequence

Sum of Fibonacci Sequence

E869120 defined a sequence aa like this:

  • a1=a2=1a_1=a_2=1, ak+2=ak+1+ak (k1)a_{k+2}=a_{k+1}+a_k \ (k \ge 1)

He also defined sequences d1,d2,d3,,dnd_1, d_2, d_3, \dots , d_n, as the following recurrence relation :

  • d1,j=ajd_{1, j} = a_j
  • di,j=k=1jdi1,k (i2)d_{i, j} = \sum_{k = 1}^j d_{i - 1, k} \ (i \ge 2)

You are given integers nn and mm. Please calculate the value of dn,md_{n, m}. Since the answer can be large number, print the answer modulo 998,244,353998,244,353. Can you solve this problem???

Input

The input is given from standard input in the following format.

nmn \quad m

Output

  • Print dn,md_{n, m} modulo 998,244,353998,244,353.

Constraints

  • 1n200,0001 \le n \le 200,000
  • 1m10181 \le m \le 10^{18}

Subtasks

Subtask 1 [ 100100 points ]

  • The testcase in this subtask satisfies 1n,m3,0001 \le n, m \le 3,000.

Subtask 2 [ 170170 points ]

  • The testcase in this subtask satisfies 1m200,0001 \le m \le 200,000.

Subtask 3 [ 230230 points ]

  • The testcase in this subtask satisfies 1n31 \le n \le 3.

Subtask 4 [ 420420 points ]

  • The testcase in this subtask satisfies 1n10001 \le n \le 1000.

Subtask 5 [ 480480 points ]

  • There are no additional constraints.

Output

  • Print dn,md_{n, m} modulo 998,244,353998,244,353.

Constraints

  • 1n200,0001 \le n \le 200,000
  • 1m10181 \le m \le 10^{18}

Subtasks

Subtask 1 [ 100100 points ]

  • The testcase in this subtask satisfies 1n,m3,0001 \le n, m \le 3,000.

Subtask 2 [ 170170 points ]

  • The testcase in this subtask satisfies 1m200,0001 \le m \le 200,000.

Subtask 3 [ 230230 points ]

  • The testcase in this subtask satisfies 1n31 \le n \le 3.

Subtask 4 [ 420420 points ]

  • The testcase in this subtask satisfies 1n10001 \le n \le 1000.

Subtask 5 [ 480480 points ]

  • There are no additional constraints.

Input

The input is given from standard input in the following format.

nmn \quad m

Examples

Input

4 7

Output

176

Input

12 20

Output

174174144

Input

16 30

Output

102292850

inputFormat

Input

The input is given from standard input in the following format.

nmn \quad m

outputFormat

Output

  • Print dn,md_{n, m} modulo 998,244,353998,244,353.

Constraints

  • 1n200,0001 \le n \le 200,000
  • 1m10181 \le m \le 10^{18}

Subtasks

Subtask 1 [ 100100 points ]

  • The testcase in this subtask satisfies 1n,m3,0001 \le n, m \le 3,000.

Subtask 2 [ 170170 points ]

  • The testcase in this subtask satisfies 1m200,0001 \le m \le 200,000.

Subtask 3 [ 230230 points ]

  • The testcase in this subtask satisfies 1n31 \le n \le 3.

Subtask 4 [ 420420 points ]

  • The testcase in this subtask satisfies 1n10001 \le n \le 1000.

Subtask 5 [ 480480 points ]

  • There are no additional constraints.

Output

  • Print dn,md_{n, m} modulo 998,244,353998,244,353.

Constraints

  • 1n200,0001 \le n \le 200,000
  • 1m10181 \le m \le 10^{18}

Subtasks

Subtask 1 [ 100100 points ]

  • The testcase in this subtask satisfies 1n,m3,0001 \le n, m \le 3,000.

Subtask 2 [ 170170 points ]

  • The testcase in this subtask satisfies 1m200,0001 \le m \le 200,000.

Subtask 3 [ 230230 points ]

  • The testcase in this subtask satisfies 1n31 \le n \le 3.

Subtask 4 [ 420420 points ]

  • The testcase in this subtask satisfies 1n10001 \le n \le 1000.

Subtask 5 [ 480480 points ]

  • There are no additional constraints.

Input

The input is given from standard input in the following format.

nmn \quad m

Examples

Input

4 7

Output

176

Input

12 20

Output

174174144

Input

16 30

Output

102292850

样例

4 7
176