#abc236h. [abc236_h]Distinct Multiples

[abc236_h]Distinct Multiples

Problem Statement

Given are positive integers NN, MM, and a sequence of positive integers D=(D1,dots,DN)D = (D_1, \\dots, D_N).

Find the number of sequences of positive integers A=(A1,dots,AN)A = (A_1, \\dots, A_N) that satisfy the following conditions, modulo 998244353998244353.

  • 1leqAileqM,(1leqileqN)1 \\leq A_i \\leq M \\, (1 \\leq i \\leq N)
  • AineqAj,(1leqiltjleqN)A_i \\neq A_j \\, (1 \\leq i \\lt j \\leq N)
  • For each i,(1leqileqN)i \\, (1 \\leq i \\leq N), AiA_i is a multiple of DiD_i.

Constraints

  • 2leqNleq162 \\leq N \\leq 16
  • 1leqMleq10181 \\leq M \\leq 10^{18}
  • 1leqDileqM,(1leqileqN)1 \\leq D_i \\leq M \\, (1 \\leq i \\leq N)
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN MM D1D_1 ldots\\ldots DND_N

Output

Print the answer.


Sample Input 1

3 7
2 3 4

Sample Output 1

3

The three sequences AA that satisfy the conditions are (2,3,4),(2,6,4),(6,3,4)(2, 3, 4), (2, 6, 4), (6, 3, 4).


Sample Input 2

3 3
1 2 2

Sample Output 2

0

No sequence AA satisfies the conditions.


Sample Input 3

6 1000000000000000000
380214083 420492929 929717250 666796775 209977152 770361643

Sample Output 3

325683519

Be sure to find the count modulo 998244353998244353.