Control.Monad.Trans.Either
type EitherT
newEitherT
runEitherT
eitherT
left
right
mapEitherT
hoistEither
bimapEitherT
firstEitherT
secondEitherT
hoistMaybe
hoistEitherT