#include<stdio.h>
int main()
{
	int n, s;
	scanf("%d %d", &n, &s);
	int i, j;
	int a[3003];
	for (i = 0; i < n; i++)
		scanf("%d", &a[i]);
	long long int dp[3003];
	long long int p = 998244353;
	for (i = 0; i <= s; i++)
		dp[i] = 0;
	dp[0] = 1;
	for (i = 0; i < n; i++)
	{
		for (j = s - a[i]; j >= 0; j--)
			dp[j + a[i]] = (2 * dp[j + a[i]] + dp[j]) % p;
		for (j = a[i] - 1; j >= 0; j--)
			dp[j] = dp[j] * 2 % p;
	}
	printf("%lld\n", dp[s]);
	return 0;
}