With changes from David Nolen.