import Data.List import Data.Maybe import Euler isAbundant :: Int -> Bool isAbundant n = sum (properDivisors n) > n abundant :: [Int] abundant = filter isAbundant [1..] abundantPair :: Int -> Maybe (Int, Int) abundantPair n = listToMaybe [ (p,q) | p <- takeWhile (