#include long long int itiok=100000000; int main(void){ long long int i=1,N,ans=1,gen=0,ok=0; scanf("%lld",&N); if(N<10*itiok+7){ if(N>itiok){ i+=itiok; ans=927880474; } if(N>2*itiok){ i+=itiok; ans=933245637; } if(N>3*itiok){ i+=itiok; ans=668123525; } if(N>4*itiok){ i+=itiok; ans=429277690; } if(N>5*itiok){ i+=itiok; ans=733333339; } if(N>6*itiok){ i+=itiok; ans=724464507; } if(N>7*itiok){ i+=itiok; ans=957939114; } if(N>8*itiok){ i+=itiok; ans=203191898; } if(N>9*itiok){ i+=itiok; ans=586445753; } for(;i<=N;i++){ ans*=i; ans%=1000000007; } printf("%lld\n",ans); } else{ printf("0\n"); } return 0; }