return new HashSet(l);
return new HashSet<IObject>(l);
    public Set loadContainerHierarchy(Class rootNodeType,             @Validate(Long.class) Set rootNodeIds, Map options) {                PojoOptions po = new PojoOptions(options);                if (null==rootNodeIds && !po.isExperimenter())         	throw new IllegalArgumentException(        			"Set of ids for loadContainerHierarchy() may not be null " +                    "if experimenter and group options are null.");        if (! Project.class.equals(rootNodeType)                 && ! Dataset.class.equals(rootNodeType)                 && ! CategoryGroup.class.equals(rootNodeType)                 && ! Category.class.equals(rootNodeType))            throw new IllegalArgumentException(                "Class parameter for loadContainerIHierarchy() must be in " +                "{Project,Dataset,Category,CategoryGroup}, not "                        + rootNodeType);        Query q = queryFactory.lookup(                PojosLoadHierarchyQueryDefinition.class.getName(),                new Parameters()                    .addClass(rootNodeType)                    .addIds(rootNodeIds)                    .addOptions(po.map())); //TODO no more "options" just QPs.        List l = (List) iQuery.execute(q);        collectCounts(l, po);    	        return new HashSet(l);        	}