magic-haskell