revamped the filtering pipeline and used ContentFile