#include <bits/stdc++.h>
using namespace std;
const int mod1 = 998244353;
long long n, k, a[505][505] = {0}, ans = 0, m, b[250005], d, sum;
int main() {
  std::ios_base::sync_with_stdio(false);
  cin.tie(0);
  cin >> n >> k;
  a[1][1] = 1;
  for (int i = 2; i <= n; i++) {
    a[i][1] = 1;
    for (int j = 2; j < i; j++) {
      for (int t = 1; t < j; t++) {
        a[i][j] = a[i][j] + a[i - j][t];
        a[i][j] = a[i][j] % mod1;
      }
      for (int t = i - j; t <= i - 1; t++) {
        a[i][j] = a[i][j] + a[t][j];
        a[i][j] = a[i][j] % mod1;
      }
    }
    a[i][i] = 1;
  }
  if (n == 1 && k == 1) {
    cout << 0;
    return 0;
  }
  for (int i = 1; i <= n; i++) {
    sum = 0;
    d = (k - 1) / i + 1;
    if (d == 1) {
      b[n] = 0;
    } else {
      b[1] = 2;
      for (int j = 2; j < d; j++) {
        b[j] = b[j - 1] * 2;
        b[j] = b[j] % mod1;
      }
      b[d] = b[d - 1] * 2 - 2;
      for (int j = 2; j < d; j++) {
        sum = sum + b[j];
        sum = sum % mod1;
      }
      for (int j = d + 1; j <= n; j++) {
        b[j] = 2 * sum;
        b[j] = b[j] + b[j - d];
        b[j] = b[j] % mod1;
        sum = sum - b[j - d + 1] + b[j - 1];
        sum = sum % mod1;
      }
    }
    if (i == 1) {
      ans = ans + b[n];
      ans = ans % mod1;
    } else {
      ans = ans + a[n][i] * b[n];
      ans = ans % mod1;
    }
  }
  cout << ans;
}
