ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 1, image);
ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 2, image);
	public static void addVoidMethodReturnsProposals(ProblemPosition problemPos, ArrayList proposals) throws CoreException {		ICompilationUnit cu= problemPos.getCompilationUnit();				CompilationUnit astRoot= AST.parseCompilationUnit(cu, true);		ASTNode selectedNode= ASTResolving.findSelectedNode(astRoot, problemPos.getOffset(), problemPos.getLength());		if (selectedNode == null) {			return;		}					BodyDeclaration decl= ASTResolving.findParentBodyDeclaration(selectedNode);		if (decl instanceof MethodDeclaration && selectedNode.getParent().getNodeType() == ASTNode.RETURN_STATEMENT) {			ReturnStatement returnStatement= (ReturnStatement) selectedNode.getParent();			Expression expr= returnStatement.getExpression();			if (expr != null) {				ITypeBinding binding= ASTResolving.normalizeTypeBinding(expr.resolveTypeBinding());				if (binding == null) {					binding= selectedNode.getAST().resolveWellKnownType("java.lang.Object"); //$NON-NLS-1$				}				ASTRewrite rewrite= new ASTRewrite(astRoot);				ASTNode oldReturnType= ((MethodDeclaration) decl).getReturnType();				ASTNode newReturnType= ASTResolving.getTypeFromTypeBinding(astRoot.getAST(), binding);				rewrite.markAsReplaced(oldReturnType, newReturnType);									String label= CorrectionMessages.getFormattedString("ReturnTypeSubProcessor.voidmethodreturns.description", binding.getName()); //$NON-NLS-1$					Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);				ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 1, image);				proposal.addImport(binding);					proposals.add(proposal);			}		}	}