              queries = [
                  models.Q(**{orm_lookup: search_term})
                  for orm_lookup in orm_lookups
              ]
              queryset = queryset.filter(reduce(operator.or_, queries))
  
          if self.must_call_distinct(queryset, search_fields):
              # Filtering against a many-to-many field requires us to
              # call queryset.distinct() in order to avoid duplicate items
              # in the resulting queryset.
 
</s>
            conditions.append(reduce(operator.or_, queries))
        queryset = queryset.filter(reduce(operator.and_, conditions))
              queries = [
                  models.Q(**{orm_lookup: search_term})
                  for orm_lookup in orm_lookups
              ]
            conditions.append(reduce(operator.or_, queries))
        queryset = queryset.filter(reduce(operator.and_, conditions))
  
          if self.must_call_distinct(queryset, search_fields):
              # Filtering against a many-to-many field requires us to
              # call queryset.distinct() in order to avoid duplicate items
              # in the resulting queryset.
keep keep keep keep replace keep keep keep keep keep
 Fix SearchFilter to-many behavior by ANDing cond's
rest_framework/filters.py