#include <bits/stdc++.h>
using namespace std;
const int MOD = 998244353;
int main() {
  int n, k;
  cin >> n >> k;
  vector<vector<vector<int> > > dp(n + 1);
  for (int i = 1; i <= n; i++) {
    dp[i].resize(i + 1);
    for (auto &j : dp[i]) j.resize(i + 1);
  }
  dp[1][1][1] = 2;
  for (int i = 2; i <= n; i++) {
    for (int mlen = 1; mlen <= i - 1; mlen++) {
      for (int len = 1; len <= mlen; len++) {
        dp[i][mlen][1] = (1LL * dp[i][mlen][1] + dp[i - 1][mlen][len]) % MOD;
        if (len + 1 <= n)
          dp[i][max(mlen, len + 1)][len + 1] =
              (1LL * dp[i][max(mlen, len + 1)][len + 1] +
               dp[i - 1][mlen][len]) %
              MOD;
      }
    }
  }
  vector<int> for_len(n + 1);
  for (int i = 1; i <= n; i++) {
    for (auto &j : dp[n][i]) for_len[i] = (1LL * for_len[i] + j) % MOD;
  }
  long long ans = 0;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j++)
      if (i * j < k) ans = (ans + 1LL * for_len[i] * for_len[j]) % MOD;
  cout << ans * ((MOD + 1) / 2) % MOD;
  return 0;
}
