don't separately malloc each child, since the list of children never grows