from math import gcd MOD = 10 ** 9 + 7 n, K = map(int, input().split()) if K == 1: print(pow(2, n, MOD) - 1) exit() A = list(map(int, input().split())) dp = {1:1} for a in A: dp2 = {} for k, v in dp.items(): dp2[k] = dp2.get(k, 0) + v dp2[k] %= MOD g = gcd(k * a, K) dp2[g] = dp2.get(g, 0) + v dp2[g] %= MOD dp = dp2 print(dp.get(K, 0))