Find the number, modulo 998244353, of sequences of length N consisting of 0, 1 and 2 such that none of their contiguous subsequences totals to X.

Constraints

* 1 \leq N \leq 3000
* 1 \leq X \leq 2N
* N and X are integers.

Input

Input is given from Standard Input in the following format:


N X


Output

Print the number, modulo 998244353, of sequences that satisfy the condition.

Examples

Input

3 3


Output

14


Input

8 6


Output

1179


Input

10 1


Output

1024


Input

9 13


Output

18402


Input

314 159


Output

459765451
#include "bits/stdc++.h"

using namespace std;

int N,M,K,L,R,H,W;

//const long long int MOD=1000000007;
const long long int MOD=998244353;

long long int power(long long int x, long long int n, long long int M) {
	long long int ret = 1;
	long long int by = x;
	while (n) {
		if (n & 1) {
			ret *= by;
			ret %= M;
		}
		by *= by;
		by %= M;
		n >>= 1;
	}
	return ret;
}

int main(){
	
	cin>>N>>M;
	vector<vector<long long int>>dp(N+1,vector<long long int>(2*N+1));
	dp[0][0]=1;
	for(int i=0;i<N;i++){
		for(int j=i;j<=i*2;j++){
			dp[i+1][j+1]+=dp[i][j];
			dp[i+1][j+1]%=MOD;
			dp[i+1][j+2]+=dp[i][j];
			dp[i+1][j+2]%=MOD;
		}
	}
	vector<long long int>num(N+1);
	for(int i=0;i<=N;i++){
		for(int j=0;j<M;j++){
			num[i]+=dp[i][j];
			num[i]%=MOD;
		}
	}
	if(M&1){
		for(int i=M+1;i<=2*N;i+=2){
			num[i/2]++;
		}
	}
	//cout<<"hoge"<<endl;
	vector<long long int>by(N+1,1);
	vector<long long int>rev(N+1,1);
	for(int i=2;i<=N;i++){
		by[i]=by[i-1]*i;
		by[i]%=MOD;
		rev[i]=power(by[i],MOD-2,MOD);
	}
	for(int i=0;i<=N;i++){
	//	cout<<i<<" "<<num[i]<<endl;
	}
	for(int i=2;i<M-1;i+=2){
		if(M-1-i<0)break;
		for(int j=1;j<=N;j++){
			if(j+i>N)break;
			//cout<<i<<" "<<j<<" "<<M-1-i<<endl;
			if(j*2==M-1-i)continue;
			num[j+i]+=dp[j][M-1-i];
			num[j+i]%=MOD;
		}
	}
	long long int ans=0;
	for(int i=0;i<=N;i++){
	//	cout<<i<<" "<<num[i]<<endl;
		long long int add=by[N];
		add*=rev[i];
		add%=MOD;
		add*=rev[N-i];
		add%=MOD;
		add*=num[i];
		add%=MOD;
		ans+=add;
		ans%=MOD;
	}
	cout<<ans<<endl;
	return 0;
}