#include<bits/stdc++.h>
using namespace std;
#define maxk 100005 
#define maxn 105
#define mod 1000000007
int main()
{
	int n,k;
	int a[maxn];
	int dp[2][maxk];
	scanf("%d%d",&n,&k);
	for(int i=1; i<=n; i++)
		scanf("%d",&a[i]);
	dp[0][k] = 1;
	for(int i=1; i<=n; i++)
	{
		int sum = 0;
		for(int j=k; j>=0; j--)
		{
			sum = (sum + dp[(i+1)&1][j]) % mod;
			if(j+a[i]+1<=k)
				sum = (sum + mod - dp[(i+1)&1][j+a[i]+1]) % mod;
			dp[i&1][j] = sum;
		}
	}
	printf("%d\n",dp[n&1][0]);
	return 0;	
}