extract nodes
follow deep.nodes refactoring