#include <bits/stdc++.h>
using namespace std;
const int mod = 998244353;
const int N = 502;
int n, a[N], k, memo[N][N], maxx;
int pr(int pos, int cnt) {
  if (pos == n) return 1;
  int &ret = memo[pos][cnt];
  if (ret != -1) return ret;
  ret = 0;
  if ((cnt + 1) * maxx < k) ret = (ret + pr(pos + 1, cnt + 1)) % mod;
  ret = (ret + pr(pos + 1, 1)) % mod;
  return ret;
}
int dp(int pos, int cnt) {
  if (pos == n) return a[cnt];
  int &ret = memo[pos][cnt];
  if (ret != -1) return ret;
  ret = 0;
  for (int i = pos; i < n; i++) {
    ret = (ret + dp(i + 1, max(cnt, i - pos + 1))) % mod;
  }
  return ret;
}
int main() {
  cin >> n >> k;
  if (k == 1) {
    cout << 0;
    return 0;
  }
  for (int i = 1; i <= min(k - 1, n); i++) {
    memset(memo, -1, sizeof memo);
    maxx = i;
    a[i] = pr(1, 1);
  }
  memset(memo, -1, sizeof memo);
  cout << (dp(0, 1) * 2) % mod;
  return 0;
}
