data STM a { } #
instance Functor STM { }
instance Applicative STM { }
instance Monad STM { }