ASTNode selectedNode= problem.getCoveringNode(context);
ASTNode selectedNode= problem.getCoveringNode(context.getASTRoot());
	public static void addUnreachableCatchProposals(IAssistContext context, IProblemLocation problem, Collection proposals) throws CoreException {		ICompilationUnit cu= context.getCompilationUnit();		ASTNode selectedNode= problem.getCoveringNode(context);		if (selectedNode == null) {			return;		}				if (selectedNode.getNodeType() == ASTNode.BLOCK && selectedNode.getParent().getNodeType() == ASTNode.CATCH_CLAUSE ) {			CatchClause clause= (CatchClause) selectedNode.getParent();			TryStatement tryStatement= (TryStatement) clause.getParent();			ASTRewrite rewrite= new ASTRewrite(tryStatement.getParent());						if (tryStatement.catchClauses().size() > 1 || tryStatement.getFinally() != null) {				rewrite.markAsRemoved(clause);			} else {				List statements= tryStatement.getBody().statements();				if (statements.size() > 0) {					ASTNode placeholder= rewrite.collapseNodes(statements, 0, statements.size());					rewrite.markAsReplaced(tryStatement, rewrite.createCopy(placeholder));				} else {					rewrite.markAsRemoved(tryStatement);				}			}			String label= CorrectionMessages.getString("LocalCorrectionsSubProcessor.removecatchclause.description"); //$NON-NLS-1$			Image image= JavaPluginImages.get(JavaPluginImages.IMG_OBJS_EXCEPTION);			ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 6, image);			proposal.ensureNoModifications();			proposals.add(proposal);		}	}	