code review: DRY filter_steps