Let's maybe call it `preCollect`? (symetric with `postCollect`)