#include <bits/stdc++.h>
using namespace std;
long long d[2][(500 + 1)][(500 + 1)];
long long sum[(500 + 1)];
int n, k;
int main() {
  cin >> n >> k;
  int ip = 0, in;
  d[0][0][0] = 1;
  for (int i = 1; i <= n; i++) {
    in = 1 - ip;
    memset(d[in], 0, sizeof(d[in]));
    for (int j = 1; j <= i; j++) {
      sum[0] = d[ip][j][0];
      for (int k = 1; k <= j; k++)
        sum[k] = (sum[k - 1] + d[ip][j][k]) % 998244353;
      for (int k = 0; k <= j && j + k <= i; k++) {
        if (k == 0) {
          d[in][j][0] = d[ip][j - 1][0];
          if (j - 1 + j - 1 <= i) {
            d[in][j][0] += d[ip][j - 1][j - 1];
            d[in][j][0] %= 998244353;
          }
        }
        if (k == 1) d[in][j][1] = sum[min(j, i - 1 - j)];
        if (k >= 2 && k <= j) d[in][j][k] = d[ip][j][k - 1];
      }
    }
    ip = in;
  }
  memset(sum, 0, sizeof(sum));
  for (int j = 1; j <= n; j++)
    for (int k = 0; k <= j; k++) {
      sum[j] += d[ip][j][k];
      sum[j] %= 998244353;
    }
  long long ans = 0;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j++) {
      if (i * j >= k) break;
      ans += 1LL * sum[i] * sum[j];
      ans %= 998244353;
    }
  ans = ans * (998244353 + 1) / 2 % 998244353;
  cout << ans << endl;
  return 0;
}
