ScopedTypeVariables, TemplateHaskell, TypeOperators,
FlexibleInstances, TypeFamilies, UndecidableInstances,
DeriveDataTypeable, RankNTypes
ScopedTypeVariables, TemplateHaskell, TypeOperators,
FlexibleInstances, TypeFamilies, UndecidableInstances,
DeriveDataTypeable, RankNTypes