added circular edge check in Tracer::processEdges