def filter(self, *filters, **kwargs):
f = list(filters)<EOL>if kwargs:<EOL><INDENT>f += [Filter(**kwargs)]<EOL><DEDENT>return self._clone(filters=f)<EOL>
Returns this Query instance with the query args combined with
existing set with AND.

kwargs are simply passed to a new Filter object and combined to any
other filters with AND.

By default, everything is combined using AND. If you provide
multiple filters in a single filter call, those are ANDed
together. If you provide multiple filters in multiple filter
calls, those are ANDed together.

If you want something different, use the F class which supports
``&`` (and), ``|`` (or) and ``~`` (not) operators. Then call
filter once with the resulting Filter instance.