#include using namespace std; typedef long long lint; #define rep(i,n)for(int i=0;i<(int)(n);++i) const int N=1e6+10; bool pr[N],pp[N]; int fac[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]=i; pp[i]=1; for(lint j=lint(i)*i;j>n; pr_init(); lint p=0; rep(i,n+1)if(pr[i])p=i; lint ans=1; for(lint i=1;i<=n;i++){ if(i!=p&&pp[i])ans=ans*fac[i]%998244353; } cout<