#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 2210, S = 5610, MOD = 998244353;
int memo[N][S];
int a[N];

int f(int n, int s) {
	if (n == 0) return 1;
	if (s == 0) return 1;
	if (s < 0) return 0;
	if (memo[n][s] != -1) return memo[n][s];
	int c1 = f(n - 1, s);
	int c2 = f(n - 1, s - a[n]);
	return (c1 + c2) % MOD;
}

signed main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int n, s;
	cin >> n >> s;
	for (int i = 1; i <= n; ++i) cin >> a[i];
	memset(memo, -1, sizeof(memo));
	cout << ((f(n, s) - 1) % MOD + MOD) % MOD;
	return 0;
}