Implemented preferred_child to workaround soas6 incompleteness