# 実は K は関係ない?(実験) # https://oeis.org/A027375 K, N = map(int, input().split()) lpf = [-1] * (N + 1) mobius = [1] * (N + 1) isp = [True] * (N + 1) isp[1] = False for i in range(2, N + 1): if lpf[i] != -1: continue lpf[i] = i mobius[i] = -1 for q in range(i * 2, N + 1, i): isp[q] = False if lpf[q] == -1: lpf[q] = i if (q // i) % i == 0: mobius[q] = 0 else: mobius[q] *= -1 mod = 998244353 ans = 0 for i in range(1, N + 1): if N % i == 0: ans += mobius[i] * pow(2, N // i, mod) ans %= mod if N == 1: ans += 1 ans %= mod print(ans)