Use EitherT instead of Errort