public int revealAllProductions() {
		Set remaining = new HashSet(objectToProduction.keySet());
		remaining.removeAll(alreadyDone);
		int number = remaining.size();
		Iterator it = remaining.iterator();
		Collection ps = new ArrayList();
		while (it.hasNext()) {
			Production[] p = (Production[]) objectToProduction.get(it.next());
			ps.addAll(Arrays.asList(p));
		}
		addProductions(ps);
		alreadyDone.addAll(remaining);
		return number;
	}