#include<bits/stdc++.h>
using namespace std;
#define ll long long
int n,k;
int dp[110][100009];
int s[110][100009];
const int mod=1e9+7;
int main()
{
    scanf("%d%d",&n,&k);
    dp[0][k]=s[0][k]=1;
    for(int i=1;i<=n;i++)
    {
        int x;scanf("%d",&x);
        for(int j=1;j<=k;j++)
            dp[i][j]=(s[i-1][min(k,j+x)]-s[i-1][j-1]+mod)%mod;
        s[i][0]=dp[i][0]=s[i-1][x];
        for(int j=1;j<=k;j++)
            s[i][j]=(s[i][j-1]+dp[i][j])%mod;
    }
    cout<<dp[n][0]<<endl;
    return 0;
}