Use withResult more consistently