#include <bits/stdc++.h>
using namespace std;
const long long mod=1e9+7;
long long arr[1050],dp[10500],n,m;
int main() {
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>arr[i];
}
dp[0]=1;
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
if(i<arr[j]){
continue;
}
dp[i]=(dp[i-arr[j]]+dp[i])%mod;
}
}
cout<<dp[m];
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGxvbmcgbG9uZyBtb2Q9MWU5Kzc7CmxvbmcgbG9uZyBhcnJbMTA1MF0sZHBbMTA1MDBdLG4sbTsKaW50IG1haW4oKSB7Cglpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CgljaW4udGllKDApLGNvdXQudGllKDApOwoJY2luPj5uPj5tOwoJZm9yKGludCBpPTE7aTw9bjtpKyspewoJCWNpbj4+YXJyW2ldOwoJfQoJZHBbMF09MTsKCWZvcihpbnQgaT0xO2k8PW07aSsrKXsKCQlmb3IoaW50IGo9MTtqPD1uO2orKyl7CgkJCWlmKGk8YXJyW2pdKXsKCQkJCWNvbnRpbnVlOwoJCQl9CgkJCWRwW2ldPShkcFtpLWFycltqXV0rZHBbaV0pJW1vZDsKCQl9Cgl9Cgljb3V0PDxkcFttXTsKCXJldHVybiAwOwp9