if (node.incoming[i] == null) continue;
    public void visitNode(FlatNode node)     {	if (node.contents instanceof SIRFilter) {	    SIRFilter filter = (SIRFilter)node.contents;	    Utils.assert(buf!=null);	    buf.append(node.contents.getName() + "[ label = \"" +		       node.contents.getName() + 		       " peek: " + filter.getPeekInt() + 		       " pop: " + filter.getPopInt() + 		       " push: " + filter.getPushInt() +		       "\"];");	}		if (node.contents instanceof SIRJoiner) {	    for (int i = 0; i < node.inputs; i++) {		buf.append(node.incoming[i].contents.getName() + " -> " 			   + node.contents.getName());		buf.append("[label=\"" + node.incomingWeights[i] + "\"];\n");	    }      	}	for (int i = 0; i < node.ways; i++) {	    if (node.edges[i].contents instanceof SIRJoiner)		continue;	    buf.append(node.contents.getName() + " -> " 		+ node.edges[i].contents.getName());	    buf.append("[label=\"" + node.weights[i] + "\"];\n");	}    }