Dijkstra

rough version