haskell prime-factors