I guess the question is how do you intend these to be used? Right now it looks as if the idea is that each prop emits a bunch of different ones, but I don't think anyone really uses them like that? Maybe you could start with an empty list and then collect the ones that are out there?