concrete functor and monad transformers