#include <bits/stdc++.h>
using namespace std;
const int MAX = 3000;
const long long int mod = 998244353;
int main() {
  long long int N;
  long long int S;
  cin >> N >> S;
  long long int A[N];
  long long int Su[N][N];
  long long int F[N][N];
  long long int count = 0;
  int i, j;
  for (i = 0; i < N; i++) cin >> A[i];
  for (i = 0; i < N; i++)
    for (j = 0; j < N; j++) {
      Su[i][j] = 0;
      F[i][j] = 0;
    }
  for (i = 0; i < N; i++) {
    for (j = i; j < N; j++) {
      if (i == j)
        Su[i][j] = A[i];
      else {
        Su[i][j] = A[j] + Su[i][j - 1];
      }
      if (Su[i][j] == S) F[i][j]++;
    }
  }
  for (i = 1; i < N; i++) {
    for (j = 0; j < N - i; j++) {
      F[j][i + j] += F[j][i + j - 1] + F[j + 1][i + j] - F[j + 1][i + j - 1];
      F[j][i + j] %= mod;
    }
  }
  for (i = 0; i < N; i++)
    for (j = i; j < N; j++) {
      count += F[j][i + j];
      count %= mod;
    }
  cout << count % mod << endl;
}
