outer method in monad transformers in order to achieve automatic lifting