if (tile != getTile(src) && tile != getTile(dst))
if (tile != srcTile && tile != dstTile) {
    private double getDynamicCost(StaticStreamGraph ssg, HashSet usedTiles)     {	double cost = 0.0;    	 //check if the dynamic communication is legal	for (int j = 0; j < ssg.getOutputs().length; j++) {	    FlatNode src = ssg.getOutputs()[j];	    FlatNode dst = ssg.getNext(src);	    	    Iterator route = XYRouter.getRoute(ssg, getTile(src), getTile(dst)).iterator();	    //System.out.print("Dynamic Route: ");	    //********* TURNS IN DYNAMIC NETWORK COST IN TERMS OF LATENCY ****//	    //*** ADD THIS COMPONENT ***//	    //** Don't share links, could lead to starvation?? ***///	    // ** but below is too restrictive so relax it **//	    while (route.hasNext()) {		ComputeNode tile = (ComputeNode)route.next();		assert tile != null;		//System.out.print(tile);		//add to cost only if these an no endpoints of the route		if (tile != getTile(src) && tile != getTile(dst))		    cost += 1.0;		if (usedTiles.contains(tile)) {		    System.out.println("tile uesd twice for dynamic route: " + tile);		    return -1.0;		}				usedTiles.add(tile);	    }	    //System.out.println();	}	return cost;    }