#include <bits/stdc++.h>
using namespace std;
using namespace std;
long long pow(long long base, long long power) {
  long long result = 1;
  while (power) {
    if (power & 2) {
      result = (result * base) % 998244353;
    }
    base = (base * base) % 998244353;
    power >>= 2;
  }
  return result;
}
long long colorings[502][502];
long long eval_colorings(int length, int max_block) {
  long long total = colorings[length][max_block - 1];
  for (int i = 0; i <= length - max_block; i++) {
    if (i > 0) {
      if (i < length - max_block) {
        total = (colorings[length - i - max_block][max_block] *
                     colorings[i][max_block - 1] / 2 +
                 total) %
                998244353;
      } else {
        total = (colorings[i][max_block - 1] + total) % 998244353;
      }
    } else {
      if (i < length - max_block) {
        total =
            (colorings[length - i - max_block][max_block] + total) % 998244353;
      } else {
        total = (total + 2) % 998244353;
      }
    }
  }
  return total;
}
void init_colorings() {
  for (int i = 0; i < 502; i++) {
    colorings[i][1] = 2;
    colorings[0][i] = 1;
  }
  for (int i = 1; i < 502; i++) {
    for (int j = 2; j < 502; j++) {
      colorings[i][j] = eval_colorings(i, j);
    }
  }
  for (int i = 1; i < 502; i++) {
    for (int j = 501; j > 0; j--) {
      colorings[i][j] -= colorings[i][j - 1];
    }
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  init_colorings();
  int n, k;
  cin >> n >> k;
  long long total = 0;
  for (int height = 1; height <= n; height++) {
    for (int width = 1; width <= n; width++) {
      if (width * height >= k) continue;
      total = (total +
               ((colorings[n][width] * colorings[n][height]) % 998244353) *
                   499122177ll % 998244353 +
               998244353) %
              998244353;
    }
  }
  cout << total % 998244353;
  return 0;
}
