@SuppressWarnings("unchecked")
	public void makeAllCollectionsUnmodifiable() {
		if (emptySet instanceof ExtendedSet)
			for (Entry<K, C> e : entrySet()) 
				e.setValue((C) ((ExtendedSet) e.getValue()).unmodifiable());
		else if (emptySet instanceof List)
			for (Entry<K, C> e : entrySet()) 
				e.setValue((C) (Collections.unmodifiableList((List<I>) e.getValue())));
		else if (emptySet instanceof Set)
			for (Entry<K, C> e : entrySet()) 
				e.setValue((C) (Collections.unmodifiableSet((Set<I>) e.getValue())));
		else if (emptySet instanceof SortedSet)
			for (Entry<K, C> e : entrySet()) 
				e.setValue((C) (Collections.unmodifiableSortedSet((SortedSet<I>) e.getValue())));
		else
			for (Entry<K, C> e : entrySet()) 
				e.setValue((C) (Collections.unmodifiableCollection(e.getValue())));
			
	}