data Either a b = Left a | Right b {-! derive: Haskell2Xml !-}