class FiguraGeometrica a where 
  area :: a -> Int

data Circulo = Circulo { raio :: Int }
data Quadrado = Quadrado { lado :: Int }

instance FiguraGeometrica Circlo a where a
  area = 3.14 * (a raio) ** 2

instance FiguraGeometrica Quadrado a where a
  area = (a lado) ** 2