basic graph implement go a step further.