Description

定義 $a_{n, m}$ 為將 $n$ 顆相同的石頭分成至多 $m$ 堆的方法數;$b_{n, m}$ 為將 $n$ 顆石頭分成至多 $m$ 堆的方法且每堆石頭的數量都是奇數。兩種分法不同若堆的數量不同或是存在一個正整數 $x$ 使得兩種方法中,恰有 $x$ 個石頭的堆數量不同。例如:將 $5$ 顆石頭分成 $1,2,2$ 和 $2,2,1$ 算是同一種的分法。

給定 $n,m$,請求出兩個數 $A,B$,其中:
$$A=\oplus_{i=1}^ n\left(a_{i, m}\bmod{998244353}\right)$$ $$B=\oplus_{i=1}^ n \left(b_{i, m}\bmod{998244353}\right)$$

注意,兩者都是先對每個 $a_{i,m}$ 和 $b_{i,m}$ 取除以 $998244353$ 的餘數後再將它們 XOR 起來。

Input Format

輸入只有一行,此行有兩個整數 $n, m$。

  • $1\leq n\times m \leq 10^ 6$
  • $m\leq n$

Output Format

輸出共兩行,其中第一行輸出 $A$,第二行則輸出 $B$。

如果你每筆測試資料都恰好輸出兩個數字,且 $A$ 都是正確的,那你可以拿到 $50\%$ 的分數。

Sample Input 1

9 4

Sample Output 1

28 2

Hints

$a_{1,4},a_{2,4},\ldots,a_{9,4}$ 依序是 $1,2,3,5,6,9,11,15,18$。

$b_{1,4},b_{2,4},\ldots,b_{9,4}$ 依序是 $1,1,2,2,2,3,3,4,4$。

Problem Source

Subtasks

No. Testdata Range Constraints Score
1 0 範例測資 0
2 0~8 $1 \leq n, m \leq 20$ 20
3 0~32 無額外限制 80

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 262144 65536 1 2 3
1 1000 262144 65536 2 3
2 1000 262144 65536 2 3
3 1000 262144 65536 2 3
4 1000 262144 65536 2 3
5 1000 262144 65536 2 3
6 1000 262144 65536 2 3
7 1000 262144 65536 2 3
8 1000 262144 65536 2 3
9 1000 262144 65536 3
10 1000 262144 65536 3
11 1000 262144 65536 3
12 1000 262144 65536 3
13 1000 262144 65536 3
14 1000 262144 65536 3
15 1000 262144 65536 3
16 1000 262144 65536 3
17 1000 262144 65536 3
18 1000 262144 65536 3
19 1000 262144 65536 3
20 1000 262144 65536 3
21 1000 262144 65536 3
22 1000 262144 65536 3
23 1000 262144 65536 3
24 1000 262144 65536 3
25 1000 262144 65536 3
26 1000 262144 65536 3
27 1000 262144 65536 3
28 1000 262144 65536 3
29 1000 262144 65536 3
30 1000 262144 65536 3
31 1000 262144 65536 3
32 1000 262144 65536 3