> ..., so we have to filter the appropriate types inside each on() method?

I think, we don't have to. It should be `*` for now.