atcoder#ABC212H. [ABC212H] Nim Counting

[ABC212H] Nim Counting

Score : 600600 points

Problem Statement

Given are positive integers NN, KK, and a sequence of KK integers (A1,A2,,AK)(A_1, A_2, \ldots, A_K).

Takahashi and Aoki will play a game with stones. Initially, there are some heaps of stones, each of which contains one or more stones. The players take turns doing the following operation, with Takahashi going first.

  • Choose a heap with one or more stones remaining. Remove any number of stones between 11 and XX (inclusive) from that heap, where XX is the number of stones remaining.

The player who first gets unable to do the operation loses.

Now, consider the initial arrangements of stones satisfying the following.

  • 1MN1\leq M\leq N holds, where MM is the number of heaps of stones.
  • The number of stones in each heap is one of the following: A1,A2,,AKA_1, A_2, \ldots, A_K.

Assuming that the heaps are ordered, there are K+K2++KNK+K^2+\cdots +K^N such initial arrangements of stones. Among them, find the number, modulo 998244353998244353, of arrangements that lead to Takahashi's win, assuming that both players play optimally.

Constraints

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 1K<2161 \leq K < 2^{16}
  • 1Ai<2161 \leq A_i < 2^{16}
  • All AiA_i are distinct.
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN KK

A1A_1 A2A_2 \ldots AKA_K

Output

Print the answer.

2 2
1 2
4

There are six possible initial arrangements of stones: (1)(1), (2)(2), (1,1)(1,1), (1,2)(1,2), (2,1)(2,1), and (2,2)(2,2). Takahashi has a winning strategy for four of them: (1)(1), (2)(2), (1,2)(1,2), and (2,1)(2,1), and Aoki has a winning strategy for the other two. Thus, we should print 44.

100 3
3 5 7
112184936

Be sure to find the count modulo 998244353998244353.