}  if (isDeletedFromEditor((ISourceReference)elem))
}  if (elem instanceof IMember){  IMember member= (IMember)elem; if (! member.isBinary() && SourceReferenceUtil.getCompilationUnit(member) == null) return false; }  if (isDeletedFromEditor((ISourceReference)elem))
	protected boolean canWorkOn(Object elem) throws JavaModelException{		if (elem == null)			return false;					if (! (elem instanceof ISourceReference)) 			return false;					if (! (elem instanceof IJavaElement)) 			return false;										if (elem instanceof IClassFile) 			return false;		if (elem instanceof ICompilationUnit)			return false;		if (elem instanceof IMember){ 			IMember member= (IMember)elem;			if (member.isBinary() && (member.getSourceRange() == null || fgUnknownRange.equals(member.getSourceRange())))				return false;		}						if (isDeletedFromEditor((ISourceReference)elem))				return false;								if (elem instanceof IMember) //binary excluded before			return true;		if (elem instanceof IImportContainer)			return true;		if (elem instanceof IImportDeclaration)			return true;		if (elem instanceof IPackageDeclaration)			return true;							//we never get here normally		return false;		}