no, I was wrong. you would need: `pipe.map { t => (fn(t), t) }.group.head`