slightly more refined following pointer