#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("O3")
const long long md = 998244353;
const long long base = 3;
const long long arr = 2e5 + 100;
long long dp[2][510][510];
long long cnt[510];
signed main() {
  long long n, k;
  cin >> n >> k;
  dp[1][1][1] = 1;
  for (long long i = 1; i < n; i++) {
    for (long long mx = 1; mx < n; mx++)
      for (long long last = 1; last < n; last++) {
        dp[(i + 1) % 2][max(mx, last + 1)][last + 1] += dp[i % 2][mx][last];
        if (dp[(i + 1) % 2][max(mx, last + 1)][last + 1] > md)
          dp[(i + 1) % 2][max(mx, last + 1)][last + 1] -= md;
        dp[(i + 1) % 2][1][1] += dp[i % 2][mx][last];
        if (dp[(i + 1) % 2][1][1] > md) dp[(i + 1) % 2][1][1] -= md;
      }
    for (long long mx = 1; mx < n; mx++)
      for (long long last = 1; last < n; last++) dp[i % 2][mx][last] = 0;
  }
  for (long long i = 1; i <= n; i++)
    for (long long last = 1; last <= n; last++) {
      cnt[i] += dp[n % 2][i][last];
      cnt[i] %= md;
    }
  long long ans = 0;
  for (long long i = 1; i <= n; i++)
    for (long long j = 1; j <= n; j++)
      if (i * j < k) {
        ans += cnt[i] * cnt[j] % md;
        ans %= md;
      }
  cout << ans * 2 % md;
}
