#include using namespace std; #define FOR(i,l,r) for(int i = (int) (l);i < (int) (r);i++) #define ALL(x) x.begin(),x.end() template bool chmax(T& a,const T& b){ return a < b ? (a = b,true) : false; } template bool chmin(T& a,const T& b){ return b < a ? (a = b,true) : false; } typedef long long ll; ll N; const ll MOD = 1e12; int main() { scanf("%lld",&N); ll ans = 1; bool flag = false; for(int i = 1;i <= min(N,50ll);i++){ ans *= i; if(ans >= MOD) flag = true; ans %= MOD; } if(flag){ printf("%012lld\n",ans); } else{ printf("%lld\n",ans); } return 0; }