#include using namespace std; using LL=long long; using ULL=unsigned long long; #define rep(i,n) for(int i=0; i<(n); i++) const ULL M=998244353; int N; vector F; int main(){ scanf("%d",&N); F.resize(N+1); F[0]=1; rep(i,N) F[i+1]=F[i]*(i+1)%M; ULL ans=(1+(N+1)*(M/3+1)%M)*F[N]%M*(N-1)%M*(M/2+1)%M; printf("%llu\n",ans); return 0; }