I don't like that this code doesn't know what the type of the children field is. Why aren't they always `UsageKeys`?