revised dijkstra