add more explicit return type. s/private[scalaz] trait/private trait/