moved filtering to TextFilter