N,K=map(int,input().split()) A=list(map(int,input().split())) DP=[[0]*(N*100+1) for i in range(N+1)] DP[0][0]=1 mod=10**9+7 for i in range(N): for j in range((N-1)*100+1): DP[i+1][j+K]=(DP[i+1][j+K]+DP[i][j])%mod DP[i+1][j+A[i]]=(DP[i+1][j+A[i]]+DP[i][j])%mod print((sum(DP[N][K*N:])-1)%mod)