# 解説を見た。 # 一瞬、不可能では? と思ったけど、ちゃんと考えて解ける問題だった。 # k>=3のi**(1/k)で区切ろうというのは思いつく。 # 式変形が大変。 # ただ、k*2<=i<=(k+1)*(k+1)のときint(i**0.5)がkになるということに気付けば、 # 式変形が可能そうだとは思うことは可能そう。 import sys input = sys.stdin.readline mod=998244353 N=int(input()) X=[] def f(n): m=int(n**(1/2))+1 while nc: x-=1 #print(x,c,j) k=k*x%mod if x==1: break if c2>N: ANS+=(f(N+1)-f(c))*k break else: ANS+=(f(c2)-f(c))*k #print(c,c2,ANS) ANS%=mod print(ANS%mod)