private static HashMap<Integer, Integer> mapEdges(char[] state) {
		HashMap<Integer, Integer> result = new HashMap<Integer, Integer>();
		for (int i = 0; i < Cube.EDGES.length; i++) {
			char[] needle = new char[Cube.EDGES[i].length];
			for (int j = 0; j < Cube.EDGES[i].length; j++) {
				needle[j] = state[Cube.EDGES[i][j]];
			}
			Arrays.sort(needle);
			result.put(Cube.GOALEDGES.get(new String(needle)), i);
		}
		return result;
	}