public static final boolean delClass(final CMObjectType type, final CMObject O)
	{
		if(O==null) return false;
		if(classes.containsKey(O.getClass().getName()))
			classes.remove(O.getClass().getName());
		final Object set=getClassSet(type);
		if(set==null) return false;
		CMClass.lastUpdateTime=System.currentTimeMillis();
		if(set instanceof List)
		{
			((List)set).remove(O);
			if(set instanceof XVector)
				((XVector)set).sort();
		}
		else
		if(set instanceof Hashtable)
			((Hashtable)set).remove(O.ID().trim());
		else
		if(set instanceof HashSet)
			((HashSet)set).remove(O);
		else
			return false;
		if(set==c().commands)
			reloadCommandWords();
		//if(set==libraries) CMLib.registerLibraries(libraries.elements());
		return true;
	}