def METHOD_NAME(self, queryset=None, serializer_class=None):
    if queryset is None:
        queryset = self.queryset
    exclude_ids = self.request.query_params.get("exclude")
    if exclude_ids:
        queryset = queryset.filter(~Q(id__in=exclude_ids.split(',')))
    if not serializer_class:
        try:
            serializer_class = self.get_serializer_class('list')
        finally:
            if not serializer_class:
                raise NotImplementedError(
                    "Developer Action - Make sure you set `serializer_classes` values.")
    queryset = serializer_class.prefetch_queryset(queryset)
    if self.NESTED_ROUTER_PKS:
        for item in self.NESTED_ROUTER_PKS:
            if self.kwargs.get(item['pk']):
                if '.' in item['model_field'] or \
                        isinstance(getattr(queryset.model, item['model_field']), ManyToManyDescriptor):
                    queryset = queryset.filter(Q(**{"{}".format(item['model_field'].replace('.', '__')):
                                                    self.kwargs[item['pk']]}))
                else:
                    try:
                        queryset = queryset.filter(
                            Q(**{"{}_id".format(item['model_field']): self.kwargs[item['pk']]}))
                    except FieldError:
                        # Occurs on One to One relationship.  Can ignore for now - todo later
                        pass
        return queryset
    return queryset.distinct()