#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
const int mod=1e9+7;
int a[110];
long long dp[110][N];
int main(){
    int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;i++)
        cin>>a[i];
    dp[0][0]=1;
    for(int i=1;i<=n;i++)
        for(int j=0;j<=k;j++){
            dp[i][j] = dp[i - 1][j];
            if(j && j<=a[i])
                dp[i][j] += dp[i][j - 1];
            else if (j)
                dp[i][j] += mod+dp[i][j-1] - dp[i-1][j-a[i]-1];
            dp[i][j]%=mod;
        }

    cout<<dp[n][k];

    return 0;
}