DRY up reply transformation.
Refactor `_scan` so that it doesn't need to check for its caller.