class Enum a where
  toEnum :: Int -> a
  fromEnum :: a -> Int

Bounded