#include <bits/stdc++.h>
using namespace std;
int f(vector<int> A, int S) {
  vector<vector<int>> dp;
  dp.resize(A.size() + 1);
  for (int i = 0; i < A.size() + 1; i++) dp[i].resize(S + 1);
  dp[0][0] = 1;
  for (int i = 0; i < A.size(); i++) {
    for (int j = 0; j < S + 1; j++) {
      if (j >= A[i]) {
        dp[i + 1][j] = dp[i][j - A[i]] + dp[i][j];
      } else {
        dp[i + 1][j] = dp[i][j];
      }
    }
  }
  return dp[A.size()][S];
}
int main() {
  int S, N;
  cin >> N >> S;
  vector<int> A(N);
  for (int i = 0; i < A.size(); i++) cin >> A[i];
  int sum = 0;
  for (int i = 0; i < N; i++) {
    for (int j = i; j < N; j++) {
      vector<int> a(j - i + 1);
      for (int k = 0; k < a.size(); k++) a[k] = A[k + i];
      int val = f(a, S);
      sum += val;
    }
  }
  cout << sum % 998244353 << endl;
  return 0;
}
