Termination projectionTermination = proj.getTermination();
boolean projectionTerminationWrapped = projectionTermination instanceof TerminationWrapper;
if(projectionTerminationWrapped)
projectionTermination = ((TerminationWrapper) projectionTermination).getBaseTermination();
Node terminationNode = projectionTermination.getNode();
Origin projectionOrigin = proj.getOrigin();
boolean projectionOriginWrapped = projectionOrigin instanceof OriginWrapper;
if(projectionOriginWrapped)
projectionOrigin = ((OriginWrapper) projectionOrigin).getWrappedOrigin();
Node originNode = projectionOrigin.getNode();
//Don't add self loops, since they are irrelevant to the min-cut computation
//(and it allows us to use a SimpleWeightedGraph object).
if(originNode != terminationNode){
NodeVertex terminationVertex = nodeToVertex.get(terminationNode);