why ```parent(s)```? this can be arbitrary data