#include <iostream>
using namespace std;
int main() {
long long n,x;
cin>>n>>x;
long long a[n];
for(long long i=0;i<n;i++)
{
cin>>a[i];
}
long long dp[x+1]={0};
dp[0]=1;
int mod = 1e9+7;
for(long long i=1;i<=n;i++)
{
for(long long j=0;j<=x;j++)
{
if(j-a[i-1] >= 0)
{
dp[j] =(dp[j] + dp[j-a[i-1]])%mod;
}
}
}
cout<<dp[x]%mod<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgkKCWxvbmcgbG9uZyBuLHg7CgljaW4+Pm4+Png7CgkKCWxvbmcgbG9uZyBhW25dOwoJZm9yKGxvbmcgbG9uZyBpPTA7aTxuO2krKykKCXsKCQljaW4+PmFbaV07Cgl9CgkKCWxvbmcgbG9uZyBkcFt4KzFdPXswfTsKCWRwWzBdPTE7CglpbnQgbW9kID0gMWU5Kzc7Cglmb3IobG9uZyBsb25nIGk9MTtpPD1uO2krKykKCXsKCQlmb3IobG9uZyBsb25nIGo9MDtqPD14O2orKykKCQl7CgkJCWlmKGotYVtpLTFdID49IDApCgkJCXsKCQkJCWRwW2pdID0oZHBbal0gKyBkcFtqLWFbaS0xXV0pJW1vZDsKCQkJfQoJCX0KCX0KCgljb3V0PDxkcFt4XSVtb2Q8PGVuZGw7CgkKCXJldHVybiAwOwp9