AT_exawizards2019_d Modulo Operations

Description

[problemUrl]: https://atcoder.jp/contests/exawizards2019/tasks/exawizards2019_d すぬけ君は黒板と $ N $ 個の整数からなる集合 $ S $ を持っています。 $ S $ の $ i $ 番目の要素は $ S_i $ です。 すぬけ君は黒板に整数 $ X $ を書いたのち、以下の操作を $ N $ 回行います。 - $ S $ から要素を $ 1 $ つ選んで取り除く。 - その後、現在黒板に書かれた数を $ x $、$ S $ から取り除かれた整数を $ y $ として、黒板に書かれた数を $ x\ \bmod\ {y} $ に書き換える。 $ S $ から要素を取り除く順序は $ N! $ 通りありえます。 それぞれの場合について、$ N $ 回の操作後に黒板に書かれている数を求め、その総和を $ 10^{9}+7 $ で割ったあまりを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ X $ $ S_1 $ $ S_2 $ $ \ldots $ $ S_{N} $

Output Format

答えを出力せよ。

Explanation/Hint

### 制約 - 入力は全て整数である。 - $ 1\ \leq\ N\ \leq\ 200 $ - $ 1\ \leq\ S_i,\ X\ \leq\ 10^{5} $ - $ S_i $ たちは相異なる。 ### Sample Explanation 1 \- $ S $ から数を取り除く順序は $ 2 $ 通りあります。 - $ 3,7 $ の順で取り除いたとき、黒板に書かれた数は $ 19\ \rightarrow\ 1\ \rightarrow\ 1 $ と変化します。 - $ 7,3 $ の順で取り除いたとき、黒板に書かれた数は $ 19\ \rightarrow\ 5\ \rightarrow\ 2 $ と変化します。 - これらの総和である $ 3 $ を出力してください。 ### Sample Explanation 3 \- 総和を $ 10^{9}+7 $ で割ったあまりを求めるのを忘れずに。