N,K=map(int,input().split()) mod=998244353 u=[1]*(2*N+1) u2=[1]*(2*N+1) for i in range(1,2*N+1): u[i]=u[i-1]*i u[i]%=mod u2[i]=pow(u[i],-1,mod) def ncm(x,y): if y<0 or y>x: return 0 ans=u[x]*u2[y] ans%=mod ans*=u2[x-y] ans%=mod return ans result=0 for x in range(2*N+1): z=2*N-x pos=(x-z)%(2*K+4) if pos==2*K+2: result-=ncm(2*N,x) if pos==0: result+=ncm(2*N,x) result2=0 for x in range(2*N+1): z=2*N-x pos=(x-z)%(2*K+2) if pos==2*K: result2-=ncm(2*N,x) if pos==0: result2+=ncm(2*N,x) result-=result2 result%=mod print(result)