#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e4 + 20;
const int INF = INT_MAX / 2;
const int MOD = 998244353;
inline int add(int a, int b) { return a + b < MOD ? a + b : a + b - MOD; }
inline int mul(int a, int b) { return 1ll * a * b % MOD; }
int n, k;
int dp1[502][502], dp2[502][502];
int g(int len, int p) {
  if (p == n) return 1;
  int &r = dp1[len][p];
  if (r == -1) {
    r = 0;
    for (int i = p; i < n; i++) {
      if ((i - p + 1) * len >= k) break;
      r = add(r, g(len, i + 1));
    }
  }
  return r;
}
int f(int p, int maxlen) {
  if (p == n) return g(maxlen, 0);
  int &r = dp2[p][maxlen];
  if (r == -1) {
    r = 0;
    for (int i = p; i < n; i++) r = add(r, f(i + 1, max(maxlen, i - p + 1)));
  }
  return r;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  while (cin >> n >> k) {
    memset(dp1, -1, sizeof dp1);
    memset(dp2, -1, sizeof dp2);
    cout << mul(2, f(0, 0)) << '\n';
  }
  return 0;
}
