adding mapEither