#include <bits/stdc++.h>
using namespace std;
long n, k;
void read() { cin >> n >> k; }
long string_calc(long j) {
  deque<long> young(j, 0);
  deque<long> old(j, 0);
  long sum_young = 0;
  long sum_old = 0;
  young[0] = 1;
  if (j > 1) sum_young = 1;
  for (long i = 2; i <= n; ++i) {
    long tmp1, tmp2;
    tmp1 = young.back();
    young.pop_back();
    young.push_front(sum_young);
    sum_young = (2 * sum_young - young.back()) % 998244353;
    tmp2 = old.back();
    old.pop_back();
    old.push_front(sum_old + tmp1);
    sum_old = (2 * sum_old + tmp1 - tmp2) % 998244353;
  }
  return (sum_old + young.back()) % 998244353;
}
long comb_calc() {
  long total = 0;
  for (long j = 1; j < k && j <= n; ++j) {
    long partial = 0;
    for (long h = 1; h <= (k - 1) / j && h <= n; ++h) {
      partial = (partial + string_calc(h)) % 998244353;
    }
    total = (total + 2 * string_calc(j) * partial) % 998244353;
  }
  return total % 998244353;
}
int main() {
  read();
  cout << comb_calc() << endl;
  return 0;
}
