Data.Type.Disjunction

data f :+: g

(>+<)

data f :|: g

(>|<)