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>
#define MOD 998244353LL
using namespace std;
typedef long long ll;
typedef pair<int,int> P;

int n,x;
ll comb[3005][3005];


int main(void){
    comb[0][0]=1;
    for(int i=1;i<=3000;i++){
        for(int j=1;j<i;j++){
            comb[i][j]=(comb[i-1][j-1]+comb[i-1][j])%MOD;
        }
        comb[i][0]=1;
        comb[i][i]=1;
    }

    scanf("%d%d",&n,&x);
    ll ans=0;
    // 1 no kosuu
    for(int i=0;i<=n;i++){
        for(int j=0;(j+i)<=n;j++){
            //printf("%d %d %lld\n",i,j,ans);
            if(i+j*2<x){
                ll val=comb[i+j][i];
                val=comb[n][i+j]*val%MOD;
                ans+=val;
                ans%=MOD;
            }else{
                int diff=i+j*2-x;
                if(diff%2==0LL)continue;
                int u2=(i+j*2-(x-1))/2;
                if(u2*2>j && i!=0)continue;
                ll val;
                if(i==0){
                    val=1;
                }else{
                    val=comb[i+j-u2*2][i];
                }
                val=comb[n][i+j]*val%MOD;
                ans+=val;
                ans%=MOD;
            }
        }
    }
    printf("%lld\n",ans);
    return 0;
}
