added filter projection implementation