{-# htermination product :: [Int] -> Int #-}