graph api draft
grapth depth-first search