-- Try yukicoder -- author: Leonardone @ NEETSDKASU main = putStrLn . solve . read =<< getLine solve x | x > 49 = zeros -- 因数に2と5が両方12個以上あると下12桁はずっと0 | x < 15 = answer | otherwise = reverse . take 12 . reverse $ zeros ++ answer -- 上を0埋め where zeros = replicate 12 '0' answer = show $ kaijo 1 x kaijo a 0 = a kaijo a k = kaijo (a * k `mod` 10 ^ 12) (k - 1)