code: func isRedundantEdge(e *Edge) bool {
  	src, n := e.Src, e.Dest
  	seen := map[*Node]bool{n: true}
  	queue := Nodes{n}
  	for len(queue) > 0 {
  		n := queue[0]
  		queue = queue[1:]
  		for _, ie := range n.In {
  			if e == ie || seen[ie.Src] {
  				continue
  			}
  			if ie.Src == src {
  				return true
  			}
  			seen[ie.Src] = true
  			queue = append(queue, ie.Src)
  		}
  	}
  	return false
  }
docs: // isRedundantEdge determines if there is a path that allows e.Src
  // to reach e.Dest after removing e.