import Data.List (find) import Data.Maybe (fromJust) main :: IO () main = do m <- readLn let n = find ((==0). (m `mod`)) [2..floor (sqrt (fromIntegral m))] n' = if n == Nothing then 1 else fromJust n putStrLn $ show n' ++ " " ++ show (m`div`n')