make the capture generic so as to capture at 4 points: before @before, after @before, before @after, and after @after
Merge