I see... You are saying if I created a custom F with `funkyfilter` and I pass `('baz__funkyfilter', 'bat')` it won't work. Is there a good reason this needs to accept pairs or can you eliminate that? Otherwise, the only other way would be to take an optional F subclass. Or just leave it as is now.