#include <bits/stdc++.h>
using namespace std;
using V = vector<int>;
using VV = vector<V>;
const int MOD = 998244353;
int main() {
  int N, S;
  cin >> N >> S;
  V a(N);
  for (int i = int(0); i < int(N); i++) cin >> a[i];
  VV dp(N + 1, V(S + 1));
  for (int r = int(0); r < int(N + 1); r++) dp[r][0] = r;
  for (int r = int(0); r < int(N); r++)
    for (int s = int(1); s < int(S + 1); s++) {
      dp[r + 1][s] = dp[r][s];
      dp[r + 1][s] += (s >= a[r]) ? dp[r][s - a[r]] : 0;
      dp[r + 1][s] += (s == a[r]) ? 1 : 0;
    }
  int ans = 0;
  for (int r = int(0); r < int(N); r++) (ans += dp[r + 1][S]) %= MOD;
  cout << ans << endl;
  return 0;
}
