added recursion into child nodes