refactor projections
refactor projection filter and sort