#include #include #include using namespace std; typedef long long lint; typedef vectorvi; #define rep(i,n)for(int i=0;i<(int)(n);++i) const lint mod=998244353; #define N 1000001 vi fac[N]; bool pr[N]; void pr_init(void){ rep(i,N)if(i>=2)pr[i]=1; rep(i,N){ if(i<=1)continue; if(!pr[i])continue; fac[i].push_back(i); for(lint j=lint(i)*2;j=mod)a-=mod; } lint dp[N]; int main(){ pr_init(); int n;cin>>n; for(int i=2;i>a; if(a==1){ add(ans,1); continue; } int b=fac[a].size(); lint val=0; rep(c,1<