#include <bits/stdc++.h>
using namespace std;
const long long int mod = 1e9 + 7;
int main() {
  ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  int n, k;
  cin >> n >> k;
  int a[n + 1];
  int sum = 0;
  for (int i = 1; i < n + 1; i++) cin >> a[i];
  int d[n + 1][k + 1];
  memset(d, 0, sizeof(d));
  for (int i = 1; i < n + 1; i++) {
    sum = 0;
    for (int j = 1; j < k + 1; j++) {
      sum = (sum + d[i - 1][j]) % mod;
      d[i][j] = (d[i][j] + sum) % mod;
      if (j >= a[i]) {
        sum -= d[i - 1][j - a[i]];
      }
    }
  }
  cout << d[n][k];
  return 0;
}
