forgot the topo sort