updat level explor tree given tree path param path path node children updat illeg argument except node child descend mutabl tree node updat children tree path path explor tree node node explor tree node path path compon object model element node user object avoid do earli initi process rule avoid recurs updat child updat children contain node updat children add node list children reorder children node list children arrai list set dep hash set collect children model element children dep node set modifi set dep merg children node children children updat children remov node 