assign(coordinates[row][RawBackend.rawColumns],
assign(layout.coordinates[row][RawBackend.rawColumns],
    private static void randomPlacement()     {	//assign the fileReaders/writers to the last row	if (FileVisitor.foundReader || FileVisitor.foundWriter) {	    Iterator frs = FileVisitor.fileReaders.iterator();	    Iterator fws = FileVisitor.fileWriters.iterator();	    int row = 0;	    //check to see if there are less then	    //file readers/writers the number of columns	    if (FileVisitor.fileReaders.size() + 		FileVisitor.fileWriters.size() > RawBackend.rawRows)		Utils.fail("Too many file readers/writers (must be less than rows).");	    //assign the file streams to the added column starting at the top	    //row	    while (frs.hasNext()) {		assign(coordinates[row][RawBackend.rawColumns],  		       (FlatNode)frs.next());		row++;	    }	    while (fws.hasNext()) {		assign(coordinates[row][RawBackend.rawColumns],		       (FlatNode)fws.next());		row++;	    }	}	//Iterator nodes = assigned.iterator();	ListIterator dfTraversal = DFTraversal.getDFTraversal(toplevel).listIterator(0);	int row = 0;	int column = 0;	for (row = 0; row < RawBackend.rawRows; row ++) {	    if (row % 2 == 0) {		for (column = 0; column < RawBackend.rawColumns;) {		    if (!dfTraversal.hasNext())			break;		    FlatNode node = (FlatNode)dfTraversal.next();		    if (!assigned.contains(node))			continue;		    assign(getTile(row, column), node);		    column++;		}	    }	    else {		for (column = RawBackend.rawColumns -1; column >= 0;) {		    if (!dfTraversal.hasNext())			break; 		    FlatNode node = (FlatNode)dfTraversal.next();		    if (!assigned.contains(node))			continue;		    assign(getTile(row, column), node); 		    column--;		}	    }	    if (!dfTraversal.hasNext())		break;	}	dumpLayout("initial-layout.dot");    }