MOD = 998244353 N = int(input()) def inverse(n, d): return n * pow(d, -1, MOD) % MOD def geometric_progression(a, r, n): # a = 初項 r = 公比 n = 項数 if r == 1: return a*n%MOD return a*((pow(r, n, MOD)-1)%MOD)%MOD*inverse(1, r-1)%MOD ans = 0 l = 1 while l <= N: n = N//l r = N//n ans += geometric_progression(pow(n, l, MOD), n, r-l+1) ans %= MOD l = r+1 print(ans)