#include <bits/stdc++.h>
using namespace std;
const int maxn = 1010;
const int T = 998244353;
long long f[maxn], g[maxn], h[maxn];
void cal(int n, int k) {
  memset(f, 0, sizeof(f));
  f[0] = 1;
  long long tmp = 1;
  for (int i = 1; i <= k + 1; i++) {
    f[i] = tmp;
    tmp += f[i];
    if (tmp >= T) tmp -= T;
  }
  for (int i = k + 2; i <= n; i++) {
    tmp -= f[i - k - 2];
    if (tmp < 0) tmp += T;
    f[i] = tmp;
    tmp += f[i];
    if (tmp >= T) tmp -= T;
  }
  long long& s = g[k + 1];
  for (int i = n; i >= n - k; i--) {
    s += f[i];
    if (s >= T) s -= T;
  }
}
int main() {
  int n, k;
  cin >> n >> k;
  for (int i = 0; i < n; i++) cal(n - 1, i);
  g[0] = 0;
  for (int i = n; i; i--) {
    h[i] = g[i];
    g[i] -= g[i - 1];
    if (g[i] < 0) g[i] += T;
  }
  long long ans = 0;
  h[0] = 0;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j++)
      if (i * j < k) {
        ans += g[i] * g[j] % T;
        if (ans >= T) ans -= T;
      }
  ans *= 2;
  ans %= T;
  if (ans < 0) ans += T;
  if (ans >= T) ans -= T;
  cout << ans << endl;
  return 0;
}
