Iterator<String> (String n) { final Collection<String> siblings = new LinkedHashSet<>(); for (PropertiesOrder order : propertiesOrders) { for (String nextKey : order.getNext(n)) { if (isAlphaSorted[0] && String.CASE_INSENSITIVE_ORDER.compare(n, nextKey) > 0) { isAlphaSorted[0] = false; } siblings.add(nextKey); } } return siblings.iterator(); }