#include int main() { long long int n, k; scanf("%lld %lld", &n, &k); long long int i, j; long long int a[102]; for (i = 0; i < n; i++) scanf("%lld", &a[i]); for (i = 0; i < n; i++) a[i] -= k; long long int p = 1000000007; long long int dp[20008], m = 10004; for (i = 0; i < 20008; i++) dp[i] = 0; dp[m] = 1; long long int ans = 0; for (i = 0; i < n; i++) { if (a[i] < 0) { for (j = -a[i]; j < 20008; j++) { if (j + a[i] >= m) ans = (ans + dp[j]) % p; dp[j + a[i]] = (dp[j + a[i]] + dp[j]) % p; } } else { for (j = 20007 - a[i]; j >= 0; j--) { if (j + a[i] >= m) ans = (ans + dp[j]) % p; dp[j + a[i]] = (dp[j + a[i]] + dp[j]) % p; } } } printf("%lld\n", ans); return 0; }