#abc179d. [abc179_d]Leaping Tak

[abc179_d]Leaping Tak

問題文

一列に並んだ NN マスから成るマス目があり、マスには左から順番に1,2,ldots,N1, 2, \\ldots, N の番号がついています。

このマス目で暮らしている高橋君は、現在マス 11 にいて、後述の方法で移動を繰り返してマス NN へ行こうとしています。

1010 以下の整数 KK と、共通部分を持たない KK 個の区間 \[L_1, R_1\], \[L_2, R_2\], \\ldots, \[L_K, R_K\] が与えられ、これらの区間の和集合を SS とします。ただし、区間 \[l, r\]ll 以上 rr 以下の整数の集合を表します。

  • マス ii にいるとき、SS から整数を 11 つ選んで (dd とする)、マス i+di + d に移動する。ただし、マス目の外に出るような移動を行ってはならない。

高橋君のために、マス NN に行く方法の個数を 998244353998244353 で割った余りを求めてください。

制約

  • 2leqNleq2times1052 \\leq N \\leq 2 \\times 10^5
  • 1 leqKleqmin(N,10)1 \\leq K \\leq \\min(N, 10)
  • 1leqLileqRileqN1 \\leq L_i \\leq R_i \\leq N
  • \[L_i, R_i\]\[L_j, R_j\] は共通部分を持たない (ineqji \\neq j)
  • 入力はすべて整数である

入力

入力は以下の形式で標準入力から与えられる。

NN KK L1L_1 R1R_1 L2L_2 R2R_2 :: LKL_K RKR_K

出力

高橋くんがマス 11 からマス NN に行く方法の個数を 998244353998244353 で割った余りを出力せよ。


入力例 1

5 2
1 1
3 4

出力例 1

4

集合 SS は 区間 \[1, 1\] と区間 \[3, 4\] の和集合であり、S=1,3,4S = \\{ 1, 3, 4 \\} です。

マス 55 へ移動する方法は次の 44 通りが考えられます。

  • マス 1,2,3,4,51, 2, 3, 4, 5 の順に移動する。
  • マス 1,2,51, 2, 5 の順に移動する。
  • マス 1,4,51, 4, 5 の順に移動する。
  • マス 1,51, 5 の順に移動する。

入力例 2

5 2
3 3
5 5

出力例 2

0

S=3,5S = \\{ 3, 5 \\} であり、そもそもマス 55 にたどり着けないので 00 を出力してください。


入力例 3

5 1
1 2

出力例 3

5

入力例 4

60 3
5 8
1 3
10 15

出力例 4

221823067

998244353998244353 で割った余りを出力することに注意してください。