#include <bits/stdc++.h>
using namespace std;
const int MOD = 998244353;
int n, m;
int dp[2][505][505], cnt[505], ps[505], ans;
int main() {
  scanf("%d%d", &n, &m);
  dp[0][1][1] = 2;
  for (int i = 1; i < n; i++) {
    for (int j = 0; j < n; j++)
      for (int k = 0; k < n; k++) dp[i & 1][j][k] = 0;
    for (int j = 0; j <= n; j++)
      for (int k = 0; k <= n; k++) {
        dp[i & 1][j + 1][max(k, j + 1)] += dp[1 - i & 1][j][k];
        if (dp[i & 1][j + 1][max(k, j + 1)] >= MOD)
          dp[i & 1][j + 1][max(k, j + 1)] -= MOD;
        dp[i & 1][1][k] += dp[1 - i & 1][j][k];
        if (dp[i & 1][1][k] >= MOD) dp[i & 1][1][k] %= MOD;
      }
  }
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= i; j++) {
      cnt[i] += dp[1 - n & 1][j][i];
      if (cnt[i] >= MOD) cnt[i] -= MOD;
    }
  for (int i = 1; i <= n; i++) ps[i] = (ps[i - 1] + cnt[i]) % MOD;
  for (int i = 1; i <= n; i++) {
    printf("cnt[%d] * ps[%d] = %d * %d\n", i, min(n, (m - 1) / i), cnt[i],
           ps[min(n, (m - 1) / i)]);
    ans += (long long)cnt[i] * ps[min(n, (m - 1) / i)] % MOD;
    if (ans >= MOD) ans -= MOD;
  }
  printf("%lld\n", 499122177LL * ans % MOD);
  return 0;
}
