if (expression.resolveTypeBinding().getName().equals("boolean")) {
if (expression.resolveTypeBinding() == ast.resolveWellKnownType("boolean")) {
	private static Expression getInversedBooleanExpression(AST ast, ASTRewrite rewrite, Expression expression) {		if (expression instanceof InfixExpression) {			InfixExpression infixExpression = (InfixExpression) expression;			InfixExpression.Operator operator = infixExpression.getOperator();			if (operator == InfixExpression.Operator.LESS) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression,						InfixExpression.Operator.GREATER_EQUALS);			}			if (operator == InfixExpression.Operator.GREATER) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression,						InfixExpression.Operator.LESS_EQUALS);			}			if (operator == InfixExpression.Operator.LESS_EQUALS) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression,						InfixExpression.Operator.GREATER);			}			if (operator == InfixExpression.Operator.GREATER_EQUALS) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression, InfixExpression.Operator.LESS);			}			if (operator == InfixExpression.Operator.EQUALS) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression,						InfixExpression.Operator.NOT_EQUALS);			}			if (operator == InfixExpression.Operator.NOT_EQUALS) {				return getInversedInfixBooleanExpression(ast, rewrite, infixExpression, InfixExpression.Operator.EQUALS);			}			if (operator == InfixExpression.Operator.CONDITIONAL_AND) {				Operator newOperator = InfixExpression.Operator.CONDITIONAL_OR;				return getInversedAndOrExpression(ast, rewrite, infixExpression, newOperator);			}			if (operator == InfixExpression.Operator.CONDITIONAL_OR) {				Operator newOperator = InfixExpression.Operator.CONDITIONAL_AND;				return getInversedAndOrExpression(ast, rewrite, infixExpression, newOperator);			}		}		if (expression instanceof PrefixExpression) {			PrefixExpression prefixExpression = (PrefixExpression) expression;			if (prefixExpression.getOperator() == PrefixExpression.Operator.NOT) {				return (Expression) rewrite.createCopyTarget(prefixExpression.getOperand());			}		}		if (expression instanceof InstanceofExpression) {			PrefixExpression prefixExpression = ast.newPrefixExpression();			prefixExpression.setOperator(PrefixExpression.Operator.NOT);			ParenthesizedExpression parenthesizedExpression = ast.newParenthesizedExpression();			parenthesizedExpression.setExpression((Expression) rewrite.createCopyTarget(expression));			prefixExpression.setOperand(parenthesizedExpression);			return prefixExpression;		}		if (expression instanceof ParenthesizedExpression) {			ParenthesizedExpression parenthesizedExpression = (ParenthesizedExpression) expression;			Expression innerExpression = parenthesizedExpression.getExpression();			while (innerExpression instanceof ParenthesizedExpression) {				innerExpression = ((ParenthesizedExpression) innerExpression).getExpression();			}			if (innerExpression instanceof InstanceofExpression) {				return getInversedBooleanExpression(ast, rewrite, innerExpression);			}			parenthesizedExpression = ast.newParenthesizedExpression();			parenthesizedExpression.setExpression(getInversedBooleanExpression(ast, rewrite, innerExpression));			return parenthesizedExpression;		}		if (expression.resolveTypeBinding().getName().equals("boolean")) { //$NON-NLS-1$			PrefixExpression prefixExpression = ast.newPrefixExpression();			prefixExpression.setOperator(PrefixExpression.Operator.NOT);			prefixExpression.setOperand((Expression) rewrite.createMoveTarget(expression));			return prefixExpression;		}		return (Expression) rewrite.createCopyTarget(expression);	}