data A = Aconstructor Intdata B = Bconstructor Intdata AorB = A | Bf :: Int -> AorBf x| even x = Aconstructor x| otherwise = Bconstructor x
Couldn't match expected type `AorB' against inferred type `A'
data AorB = Aconstructor Int | Bconstructor Int