#include <bits/stdc++.h>
using namespace std;
int dp[2][501][501];
int last[2][501][501];
int curr[501];
int cumi[501];
int cnt[501];
void add(int &a, int b) {
  a = (a + b);
  if (a >= (998244353)) {
    a -= (998244353);
  }
}
int main() {
  int n, k;
  scanf("%d %d", &n, &k);
  dp[0][0][0] = 1;
  for (int i = 0; i < n; i++) {
    int cr = i & 1;
    int nr = cr ^ 1;
    memset(dp[nr], 0, sizeof dp[nr]);
    for (int j = 0; j <= n; j++) {
      for (int k = 0; k <= n; k++) {
        add(dp[nr][j + 1][max(j + 1, k)], dp[cr][j][k]);
        add(dp[nr][1][max((int)(1), k)], dp[cr][j][k]);
      }
    }
  }
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= n; j++) {
      add(cnt[i], dp[n & 1][j][i]);
    }
  }
  for (int i = 1; i <= n; i++) {
    cumi[i] = cumi[i - 1];
    add(cumi[i], cnt[i]);
  }
  int ans = 0;
  for (int i = 1; i <= n; i++) {
    add(ans, (long long)((long long)(cnt[i]) *
                         (long long)(cumi[min(n, ((k - 1) / i))])) %
                 (998244353));
  }
  ans = (ans * (long long)(((998244353) + 1) / 2)) % (998244353);
  printf("%d\n", ans);
}
