codeforces#P1051D. Bicolorings

Bicolorings

Description

You are given a grid, consisting of $2$ rows and $n$ columns. Each cell of this grid should be colored either black or white.

Two cells are considered neighbours if they have a common border and share the same color. Two cells $A$ and $B$ belong to the same component if they are neighbours, or if there is a neighbour of $A$ that belongs to the same component with $B$.

Let's call some bicoloring beautiful if it has exactly $k$ components.

Count the number of beautiful bicolorings. The number can be big enough, so print the answer modulo $998244353$.

The only line contains two integers $n$ and $k$ ($1 \le n \le 1000$, $1 \le k \le 2n$) — the number of columns in a grid and the number of components required.

Print a single integer — the number of beautiful bicolorings modulo $998244353$.

Input

The only line contains two integers $n$ and $k$ ($1 \le n \le 1000$, $1 \le k \le 2n$) — the number of columns in a grid and the number of components required.

Output

Print a single integer — the number of beautiful bicolorings modulo $998244353$.

Samples

3 4

12

4 1

2

1 2

2

Note

One of possible bicolorings in sample $1$: