for (Iterator required = nodes[i].getRequiring().iterator(); required.hasNext();)
for (Iterator required = nodes[i].getRequired().iterator(); required.hasNext();)
	public Object[][] getCycles() {		// find cycles		ElementSet[] nodes = (ElementSet[]) elementSets.values().toArray(new ElementSet[elementSets.size()]);		ArrayList dependencies = new ArrayList();		for (int i = 0; i < nodes.length; i++)			for (Iterator required = nodes[i].getRequiring().iterator(); required.hasNext();)				dependencies.add(new Object[] {nodes[i], required.next()});		return ComputeNodeOrder.computeNodeOrder(nodes, (Object[][]) dependencies.toArray(new Object[dependencies.size()][]));	}