use generic typed children in trees