#include using namespace std; typedef long long ll; typedef long double ld; #define rep(i,a,b) for(int i=a;i=b;i--) templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b0;k>>=1){ if(k&1){ res=(res*n)%m; } n=(n*n)%m; } return res; } int main(){ cin.tie(0); ios::sync_with_stdio(false); ll n;cin >> n; ll ans=0; COMinit(); rep(i,0,n+1){ ans+=com(n,i)*pow_mod(n-i,i,mod)%mod; ans%=mod; } cout << ans << endl; }