more sensible monad notation for display