#include #include #include using namespace std; #define int long long const int MOD = 998244353; signed main() { int N; long long K; // K is long long cin >> K >> N; vector> D(N + 1); for (int d = 1; d <= N; ++d) { for (int n = 2 * d; n <= N; n += d) { D[n].push_back(d); } } long long pow2=2; vector dp(N + 1, 0); for (int n = 1; n <= N; ++n) { dp[n] = pow2 % MOD; pow2*=2; pow2%=MOD; if (K > 1) { dp[n] += 1; } for (int d : D[n]) { dp[n] = (dp[n] - dp[d] + MOD) % MOD; } } int ans = dp[N]; cout << ans << endl; return 0; }