return withImportAndPackageDeclarations((IType)element);
return getChildren((IType)element);
	public Object[] getChildren(Object element) {		if (!exists(element))			return NO_CHILDREN;					try {			if (element instanceof Collection) {				Collection elements= (Collection)element;				if (elements.isEmpty())					return NO_CHILDREN;				Object[] result= new Object[0];				Iterator iter= ((Collection)element).iterator();				while (iter.hasNext()) {					Object[] children= getChildren(iter.next());					if (children != NO_CHILDREN)						result= concatenate(result, children);				}				return result;			}			if (element instanceof IPackageFragment) 				return getPackageContents((IPackageFragment)element);			if (fProvideMembers && element instanceof IType)				return withImportAndPackageDeclarations((IType)element);			if (fProvideMembers && element instanceof ISourceReference && element instanceof IParent)				return removeImportAndPackageDeclarations(super.getChildren(element));			if (element instanceof IJavaProject) 				return getPackageFragmentRoots((IJavaProject)element);			return super.getChildren(element);		} catch (JavaModelException e) {			return NO_CHILDREN;		}			}