List<PathType> types = Arrays.asList(PathType.values());
Collections.shuffle(types, MathUtil.RANDOM);
Iterator<PathType> typeIter = types.iterator();
do {
SameTypeTileMixer mixer = new SameTypeTileMixer(typeIter.next(), path);
addAllPermutedPaths(mixer.findPermutedPaths(), permutedPaths);
} while (typeIter.hasNext());
}
// as a last resort use this without checking for it in the cache.
if (permutedPaths.isEmpty()) {