moved from clause projection into Fetch
this allows projection to work differently
without affecting that code path