const INF=(0).MAX; fcn dijkstra(graph,start,dst){ Q :=graph.copy(); prev:=graph.keys.pump(Dictionary().add.fp1(Void)); dist:=graph.keys.pump(Dictionary().add.fp1(INF)); dist[start]=0; while(Q){ Q.reduce('wrap(min,[(v,_)],ru){ if((d:=dist[v])