data AB = A | AB | ABCD | ABC {-! derive : Haskell2Xml !-}