implemented shared filtering