#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
#define ll long long
#define mod 998244353

int n;
int s;
int a[4000];
int knap[3001][3001]={};

int compare_int(const void *a, const void *b){
    return *(int*)a - *(int*)b;
}

int main(){
  scanf("%d%d",&n,&s);
  for(int i=0;i<n;i++){
    scanf("%d",&a[i]);}

  for(int j=0;j<=n;j++){
    knap[0][j]=0;}
  knap[0][0] = 1;

  for(int i=1;i<=n;i++){ //A_i made
    for(int j=0;j<=s;j++){ //S=j
      knap[i][j] = knap[i-1][j]*2%mod;
      if(j-a[i-1]>=0){
	knap[i][j] += knap[i-1][j-a[i-1]] %= mod;}
      //printf("%d\n",knap[i][j]);
    }}

  ll ans =0;
  printf("%d\n",knap[n][s]);
  
  return 0;
}
