if (curr instanceof IType) {
if (curr instanceof IType && !TypeFilter.isFiltered((IType) curr)) {
	public static void getAmbiguosTypeReferenceProposals(IInvocationContext context, IProblemLocation problem, Collection proposals) throws CoreException {		final ICompilationUnit cu= context.getCompilationUnit();		int offset= problem.getOffset();		int len= problem.getLength();				IJavaElement[] elements= cu.codeSelect(offset, len);		for (int i= 0; i < elements.length; i++) {			IJavaElement curr= elements[i];			if (curr instanceof IType) {				String qualifiedTypeName= JavaModelUtil.getFullyQualifiedName((IType) curr);				String label= CorrectionMessages.getFormattedString("UnresolvedElementsSubProcessor.importexplicit.description", qualifiedTypeName); //$NON-NLS-1$				Image image= JavaPluginImages.get(JavaPluginImages.IMG_OBJS_IMPDECL);				CUCorrectionProposal proposal= new CUCorrectionProposal(label, cu, 5, image);				TextBuffer buffer= null;				try {					buffer= TextBuffer.acquire((IFile)WorkingCopyUtil.getOriginal(cu).getResource());					ImportRewrite importRewrite= new ImportRewrite(cu, JavaPreferencesSettings.getCodeGenerationSettings());					importRewrite.addImport(qualifiedTypeName);					importRewrite.setFindAmbiguosImports(true);					proposal.getRootTextEdit().addChild(importRewrite.createEdit(buffer));					proposals.add(proposal);				} finally {					if (buffer != null)						TextBuffer.release(buffer);				}						}		}	}	