Merge branch 'master' into minor_cleanups
diff --git a/javaparser-core/src/main/java/com/github/javaparser/PositionUtils.java b/javaparser-core/src/main/java/com/github/javaparser/PositionUtils.java
index 1fbb10b..dd1cf1f 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/PositionUtils.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/PositionUtils.java
@@ -132,8 +132,8 @@
             if (bl>contained.getBeginLine()) return false;
             if (bl==contained.getBeginLine() && bc>contained.getBeginColumn()) return false;
             if (container.getEndLine()<contained.getEndLine()) return false;
-            if (container.getEndLine()==contained.getEndLine() && container.getEndColumn()<contained.getEndColumn()) return false;
-            return true;
+            // TODO < or <= ?
+            return !(container.getEndLine() == contained.getEndLine() && container.getEndColumn() < contained.getEndColumn());
         }
         return true;
     }
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/AccessSpecifier.java b/javaparser-core/src/main/java/com/github/javaparser/ast/AccessSpecifier.java
index 5eafdac..121b8bf 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/AccessSpecifier.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/AccessSpecifier.java
@@ -37,7 +37,7 @@
 
     private String codeRepresenation;
 
-    private AccessSpecifier(String codeRepresentation) {
+    AccessSpecifier(String codeRepresentation) {
         this.codeRepresenation = codeRepresentation;
     }
 
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java b/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java
index c25646a..ca86f90 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/Node.java
@@ -21,7 +21,6 @@
 
 package com.github.javaparser.ast;
 
-import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -266,8 +265,7 @@
         if (getBeginLine() > other.getBeginLine()) return false;
         if (getBeginLine() == other.getBeginLine() && getBeginColumn() > other.getBeginColumn()) return false;
         if (getEndLine() < other.getEndLine()) return false;
-        if (getEndLine() == other.getEndLine() && getEndColumn() < other.getEndColumn()) return false;
-        return true;
+        return !(getEndLine() == other.getEndLine() && getEndColumn() < other.getEndColumn());
     }
 
     public void addOrphanComment(Comment comment) {
@@ -330,9 +328,7 @@
 
     protected void setAsParentNodeOf(List<? extends Node> childNodes) {
         if (childNodes != null) {
-            Iterator<? extends Node> it = childNodes.iterator();
-            while (it.hasNext()) {
-                Node current = it.next();
+            for (Node current : childNodes) {
                 current.setParentNode(this);
             }
         }
@@ -369,8 +365,7 @@
         }
     }
 
-    public boolean hasComment()
-    {
+    public boolean hasComment() {
         return comment != null;
     }
 }
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java
index 7ddbe2f..ba41306 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/PackageDeclaration.java
@@ -27,8 +27,6 @@
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
-import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 
 /**
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/TypeArguments.java b/javaparser-core/src/main/java/com/github/javaparser/ast/TypeArguments.java
index 80980b0..ed819e8 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/TypeArguments.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/TypeArguments.java
@@ -26,7 +26,6 @@
 import java.util.List;
 
 import static com.github.javaparser.ast.internal.Utils.ensureNotNull;
-import static java.util.Collections.unmodifiableList;
 
 public class TypeArguments {
     public static final TypeArguments EMPTY = withArguments(Collections.<Type>emptyList());
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotableNode.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotableNode.java
index 47c8c4f..d416f6a 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotableNode.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/AnnotableNode.java
@@ -32,5 +32,5 @@
  * @since July 2014
  */
 public interface AnnotableNode {
-    public List<AnnotationExpr> getAnnotations();
+    List<AnnotationExpr> getAnnotations();
 }
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EmptyTypeDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EmptyTypeDeclaration.java
index 70a6269..1e6c5e2 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/EmptyTypeDeclaration.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/EmptyTypeDeclaration.java
@@ -21,7 +21,6 @@
  
 package com.github.javaparser.ast.body;
 
-import com.github.javaparser.ast.comments.JavadocComment;
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/MultiTypeParameter.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/MultiTypeParameter.java
index 2e0c97d..67ef1d8 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/MultiTypeParameter.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/MultiTypeParameter.java
@@ -22,15 +22,12 @@
 package com.github.javaparser.ast.body;
 
 import com.github.javaparser.ast.expr.AnnotationExpr;
-import com.github.javaparser.ast.type.Type;
 import com.github.javaparser.ast.type.UnionType;
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
 import java.util.List;
 
-import static com.github.javaparser.ast.internal.Utils.ensureNotNull;
-
 public class MultiTypeParameter extends BaseParameter {
     private UnionType type;
 	
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java b/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java
index 9517910..9c35461 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/body/TypeDeclaration.java
@@ -28,7 +28,6 @@
 import com.github.javaparser.ast.expr.AnnotationExpr;
 import com.github.javaparser.ast.expr.NameExpr;
 
-import java.util.Collections;
 import java.util.List;
 
 import static com.github.javaparser.ast.internal.Utils.*;
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java
index 135972b..3173c9f 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/comments/Comment.java
@@ -72,10 +72,8 @@
         return false;
     }
 
-    public LineComment asLineComment()
-    {
-        if (isLineComment())
-        {
+    public LineComment asLineComment() {
+        if (isLineComment()) {
             return (LineComment) this;
         } else {
             throw new UnsupportedOperationException("Not a line comment");
@@ -89,17 +87,14 @@
 
     public void setCommentedNode(Node commentedNode)
     {
-        if (commentedNode==null)
-        {
-            this.commentedNode = commentedNode;
+        if (commentedNode==null) {
+            this.commentedNode = null;
             return;
         }
-        if (commentedNode==this)
-        {
+        if (commentedNode==this) {
             throw new IllegalArgumentException();
         }
-        if (commentedNode instanceof Comment)
-        {
+        if (commentedNode instanceof Comment) {
             throw new IllegalArgumentException();
         }
         this.commentedNode = commentedNode;
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java
index d633619..5b2605a 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/VariableDeclarationExpr.java
@@ -29,7 +29,6 @@
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
-import java.util.Collections;
 import java.util.List;
 
 import static com.github.javaparser.ast.internal.Utils.*;
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java
index 209de18..49a137c 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/stmt/CatchClause.java
@@ -22,12 +22,10 @@
 package com.github.javaparser.ast.stmt;
 
 import com.github.javaparser.ast.Node;
-import com.github.javaparser.ast.body.MultiTypeParameter;
 import com.github.javaparser.ast.body.Parameter;
 import com.github.javaparser.ast.body.VariableDeclaratorId;
 import com.github.javaparser.ast.expr.AnnotationExpr;
 import com.github.javaparser.ast.type.Type;
-import com.github.javaparser.ast.type.UnionType;
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java
index 0cd6fde..5784b59 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/IntersectionType.java
@@ -1,6 +1,5 @@
 package com.github.javaparser.ast.type;
 
-import com.github.javaparser.ast.expr.AnnotationExpr;
 import com.github.javaparser.ast.visitor.GenericVisitor;
 import com.github.javaparser.ast.visitor.VoidVisitor;
 
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java
index 561a896..7533c3c 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/type/PrimitiveType.java
@@ -47,7 +47,7 @@
 			return new ClassOrInterfaceType(nameOfBoxedType);
 		}
 
-		private Primitive(String nameOfBoxedType) {
+		Primitive(String nameOfBoxedType) {
 			this.nameOfBoxedType = nameOfBoxedType;
 		}
 	}
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/CloneVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/CloneVisitor.java
index 1e46d0d..7700840 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/CloneVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/CloneVisitor.java
@@ -1181,11 +1181,9 @@
 
 		Statement body = cloneNodes(_n.getBody(), _arg);
 
-		LambdaExpr r = new LambdaExpr(_n.getBeginLine(), _n.getBeginColumn(),
+		return new LambdaExpr(_n.getBeginLine(), _n.getBeginColumn(),
 				_n.getEndLine(), _n.getEndColumn(), lambdaParameters, body,
 				_n.isParametersEnclosed());
-
-		return r;
 	}
 
 	@Override
@@ -1194,10 +1192,9 @@
 		List<TypeParameter> typeParams = visit(_n.getTypeParameters(), arg);
 		Expression scope = cloneNodes(_n.getScope(), arg);
 
-		MethodReferenceExpr r = new MethodReferenceExpr(_n.getBeginLine(),
+		return new MethodReferenceExpr(_n.getBeginLine(),
 				_n.getBeginColumn(), _n.getEndLine(), _n.getEndColumn(), scope,
 				typeParams, _n.getIdentifier());
-		return r;
 	}
 
 	@Override
@@ -1205,10 +1202,8 @@
 
 		Type t = cloneNodes(n.getType(), arg);
 
-		TypeExpr r = new TypeExpr(n.getBeginLine(), n.getBeginColumn(),
+		return new TypeExpr(n.getBeginLine(), n.getBeginColumn(),
 				n.getEndLine(), n.getEndColumn(), t);
-
-		return r;
 	}
 
     public <T extends Node> List<T> visit(List<T> _nodes, Object _arg) {
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/DumpVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/DumpVisitor.java
index f33000e..cfd8edf 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/DumpVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/DumpVisitor.java
@@ -1586,9 +1586,8 @@
 	public void visit(LambdaExpr n, Object arg) {
         printJavaComment(n.getComment(), arg);
 
-        List<Parameter> parameters = n.getParameters();
-		boolean printPar = false;
-		printPar = n.isParametersEnclosed();
+		final List<Parameter> parameters = n.getParameters();
+		final boolean printPar = n.isParametersEnclosed();
 
 		if (printPar) {
 			printer.print("(");
@@ -1607,7 +1606,7 @@
 		}
 
 		printer.print(" -> ");
-		Statement body = n.getBody();
+		final Statement body = n.getBody();
 		if (body instanceof ExpressionStmt) {
 			// Print the expression directly
 			((ExpressionStmt) body).getExpression().accept(this, arg);
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/EqualsVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/EqualsVisitor.java
index 4966568..b35b3f5 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/EqualsVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/EqualsVisitor.java
@@ -69,7 +69,6 @@
 import com.github.javaparser.ast.stmt.WhileStmt;
 import com.github.javaparser.ast.type.*;
 
-import java.util.Iterator;
 import java.util.List;
 
 /**
@@ -95,18 +94,12 @@
         if (!nodeEquals(n1.getComment(), n2.getComment())) {
             return false;
         }
-        if (!nodesEquals(n1.getOrphanComments(), n2.getOrphanComments())){
-            return false;
-        }
-        return true;
-    }
+		return nodesEquals(n1.getOrphanComments(), n2.getOrphanComments());
+	}
 
 	private <T extends Node> boolean nodesEquals(final List<T> nodes1, final List<T> nodes2) {
 		if (nodes1 == null) {
-			if (nodes2 == null) {
-				return true;
-			}
-			return false;
+			return nodes2 == null;
 		} else if (nodes2 == null) {
 			return false;
 		}
@@ -125,12 +118,7 @@
 		if (n1 == n2) {
 			return true;
 		}
-		if (n1 == null) {
-			if (n2 == null) {
-				return true;
-			}
-			return false;
-		} else if (n2 == null) {
+		if (n1 == null || n2 == null) {
 			return false;
 		}
 		if (n1.getClass() != n2.getClass()) {
@@ -139,19 +127,14 @@
         if (!commonNodeEquality(n1, n2)){
             return false;
         }
-		return n1.accept(this, n2).booleanValue();
+		return n1.accept(this, n2);
 	}
 
 	private boolean objEquals(final Object n1, final Object n2) {
 		if (n1 == n2) {
 			return true;
 		}
-		if (n1 == null) {
-			if (n2 == null) {
-				return true;
-			}
-			return false;
-		} else if (n2 == null) {
+		if (n1 == null || n2 == null) {
 			return false;
 		}
 		return n1.equals(n2);
@@ -161,90 +144,90 @@
 		final CompilationUnit n2 = (CompilationUnit) arg;
 
 		if (!nodeEquals(n1.getPackage(), n2.getPackage())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getImports(), n2.getImports())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypes(), n2.getTypes())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getComments(), n2.getComments())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final PackageDeclaration n1, final Node arg) {
 		final PackageDeclaration n2 = (PackageDeclaration) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ImportDeclaration n1, final Node arg) {
 		final ImportDeclaration n2 = (ImportDeclaration) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final TypeParameter n1, final Node arg) {
 		final TypeParameter n2 = (TypeParameter) arg;
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeBound(), n2.getTypeBound())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final LineComment n1, final Node arg) {
 		final LineComment n2 = (LineComment) arg;
 
 		if (!objEquals(n1.getContent(), n2.getContent())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
         if (!objEquals(n1.getBeginLine(), n2.getBeginLine())) {
-      		return Boolean.FALSE;
+      		return false;
       	}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final BlockComment n1, final Node arg) {
 		final BlockComment n2 = (BlockComment) arg;
 
 		if (!objEquals(n1.getContent(), n2.getContent())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
         if (!objEquals(n1.getBeginLine(), n2.getBeginLine())) {
-      			return Boolean.FALSE;
+      			return false;
       	}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ClassOrInterfaceDeclaration n1, final Node arg) {
@@ -253,38 +236,38 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (n1.isInterface() != n2.isInterface()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeParameters(), n2.getTypeParameters())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getExtends(), n2.getExtends())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getImplements(), n2.getImplements())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getMembers(), n2.getMembers())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final EnumDeclaration n1, final Node arg) {
@@ -293,34 +276,34 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getImplements(), n2.getImplements())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getEntries(), n2.getEntries())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getMembers(), n2.getMembers())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final EmptyTypeDeclaration n1, final Node arg) {
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final EnumConstantDeclaration n1, final Node arg) {
@@ -329,22 +312,22 @@
 		// javadoc are checked at CompilationUnit
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getArgs(), n2.getArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getClassBody(), n2.getClassBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final AnnotationDeclaration n1, final Node arg) {
@@ -353,22 +336,22 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getMembers(), n2.getMembers())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final AnnotationMemberDeclaration n1, final Node arg) {
@@ -377,26 +360,26 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getDefaultValue(), n2.getDefaultValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final FieldDeclaration n1, final Node arg) {
@@ -405,50 +388,50 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getVariables(), n2.getVariables())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final VariableDeclarator n1, final Node arg) {
 		final VariableDeclarator n2 = (VariableDeclarator) arg;
 
 		if (!nodeEquals(n1.getId(), n2.getId())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getInit(), n2.getInit())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final VariableDeclaratorId n1, final Node arg) {
 		final VariableDeclaratorId n2 = (VariableDeclaratorId) arg;
 
 		if (n1.getArrayCount() != n2.getArrayCount()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ConstructorDeclaration n1, final Node arg) {
@@ -457,34 +440,34 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBlock(), n2.getBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getParameters(), n2.getParameters())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getThrows(), n2.getThrows())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeParameters(), n2.getTypeParameters())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final MethodDeclaration n1, final Node arg) {
@@ -493,50 +476,50 @@
 		// javadoc are checked at CompilationUnit
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (n1.getArrayCount() != n2.getArrayCount()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBody(), n2.getBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getParameters(), n2.getParameters())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getThrows(), n2.getThrows())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeParameters(), n2.getTypeParameters())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if(n1.isDefault() != n2.isDefault()){
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 	
 	@Override public Boolean visit(final Parameter n1, final Node arg) {
 		final Parameter n2 = (Parameter) arg;
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		return visit((BaseParameter) n1, arg);
 	}
@@ -544,7 +527,7 @@
 	@Override public Boolean visit(MultiTypeParameter n1, Node arg) {
 		MultiTypeParameter n2 = (MultiTypeParameter) arg;
         if (!nodeEquals(n1.getType(), n2.getType())) {
-            return Boolean.FALSE;
+            return false;
         }
 		return visit((BaseParameter) n1, arg);
 	}
@@ -553,113 +536,113 @@
 		final BaseParameter n2 = (BaseParameter) arg;
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getId(), n2.getId())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 	
 	@Override public Boolean visit(final EmptyMemberDeclaration n1, final Node arg) {
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final InitializerDeclaration n1, final Node arg) {
 		final InitializerDeclaration n2 = (InitializerDeclaration) arg;
 
 		if (!nodeEquals(n1.getBlock(), n2.getBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final JavadocComment n1, final Node arg) {
 		final JavadocComment n2 = (JavadocComment) arg;
 
 		if (!objEquals(n1.getContent(), n2.getContent())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ClassOrInterfaceType n1, final Node arg) {
 		final ClassOrInterfaceType n2 = (ClassOrInterfaceType) arg;
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getScope(), n2.getScope())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeArgs(), n2.getTypeArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final PrimitiveType n1, final Node arg) {
 		final PrimitiveType n2 = (PrimitiveType) arg;
 
 		if (n1.getType() != n2.getType()) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ReferenceType n1, final Node arg) {
 		final ReferenceType n2 = (ReferenceType) arg;
 
 		if (n1.getArrayCount() != n2.getArrayCount()) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		List<List<AnnotationExpr>> n1a = n1.getArraysAnnotations();
 		List<List<AnnotationExpr>> n2a = n2.getArraysAnnotations();
 
 		if (n1a !=null && n2a!= null) {
 			if(n1a.size() != n2a.size()){
-				return Boolean.FALSE;
+				return false;
 			}
 			else{
 				int i = 0;
 				for(List<AnnotationExpr> aux: n1a){
 					if(!nodesEquals(aux, n2a.get(i))){
-						return Boolean.FALSE;
+						return false;
 					}
 					i++;
 				}
 			}
 		}
 		else if (n1a != n2a){
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
     @Override public Boolean visit(final IntersectionType n1, final Node arg) {
@@ -670,21 +653,21 @@
 
         if (n1Elements !=null && n2Elements != null) {
             if(n1Elements.size() != n2Elements.size()){
-                return Boolean.FALSE;
+                return false;
             }
             else{
                 int i = 0;
                 for(ReferenceType aux: n1Elements){
                     if(aux.accept(this, n2Elements.get(i))) {
-                        return Boolean.FALSE;
+                        return false;
                     }
                     i++;
                 }
             }
         }  else if (n1Elements != n2Elements){
-            return Boolean.FALSE;
+            return false;
         }
-        return Boolean.TRUE;
+        return true;
     }
 
     @Override public Boolean visit(final UnionType n1, final Node arg) {
@@ -695,818 +678,818 @@
 
         if (n1Elements !=null && n2Elements != null) {
             if(n1Elements.size() != n2Elements.size()){
-                return Boolean.FALSE;
+                return false;
             }
             else{
                 int i = 0;
                 for(ReferenceType aux: n1Elements){
                     if(aux.accept(this, n2Elements.get(i))) {
-                        return Boolean.FALSE;
+                        return false;
                     }
                     i++;
                 }
             }
         }  else if (n1Elements != n2Elements){
-            return Boolean.FALSE;
+            return false;
         }
-        return Boolean.TRUE;
+        return true;
     }
 
 	@Override
 	public Boolean visit(VoidType n1, Node arg) {
 		VoidType n2 = (VoidType) arg;
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final WildcardType n1, final Node arg) {
 		final WildcardType n2 = (WildcardType) arg;
 
 		if (!nodeEquals(n1.getExtends(), n2.getExtends())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getSuper(), n2.getSuper())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final UnknownType n1, final Node arg) {
 		final UnknownType n2 = (UnknownType) arg;
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ArrayAccessExpr n1, final Node arg) {
 		final ArrayAccessExpr n2 = (ArrayAccessExpr) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getIndex(), n2.getIndex())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ArrayCreationExpr n1, final Node arg) {
 		final ArrayCreationExpr n2 = (ArrayCreationExpr) arg;
 
 		if (n1.getArrayCount() != n2.getArrayCount()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getInitializer(), n2.getInitializer())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getDimensions(), n2.getDimensions())) {
-			return Boolean.FALSE;
+			return false;
 		}
 		List<List<AnnotationExpr>> n1a = n1.getArraysAnnotations();
 		List<List<AnnotationExpr>> n2a = n2.getArraysAnnotations();
 
 		if (n1a !=null && n2a!= null) {
 			if(n1a.size() != n2a.size()){
-				return Boolean.FALSE;
+				return false;
 			}
 			else{
 				int i = 0;
 				for(List<AnnotationExpr> aux: n1a){
 					if(!nodesEquals(aux, n2a.get(i))){
-						return Boolean.FALSE;
+						return false;
 					}
 					i++;
 				}
 			}
 		}
 		else if (n1a != n2a){
-			return Boolean.FALSE;
+			return false;
 		}
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ArrayInitializerExpr n1, final Node arg) {
 		final ArrayInitializerExpr n2 = (ArrayInitializerExpr) arg;
 
 		if (!nodesEquals(n1.getValues(), n2.getValues())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final AssignExpr n1, final Node arg) {
 		final AssignExpr n2 = (AssignExpr) arg;
 
 		if (n1.getOperator() != n2.getOperator()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getTarget(), n2.getTarget())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final BinaryExpr n1, final Node arg) {
 		final BinaryExpr n2 = (BinaryExpr) arg;
 
 		if (n1.getOperator() != n2.getOperator()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getLeft(), n2.getLeft())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getRight(), n2.getRight())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final CastExpr n1, final Node arg) {
 		final CastExpr n2 = (CastExpr) arg;
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ClassExpr n1, final Node arg) {
 		final ClassExpr n2 = (ClassExpr) arg;
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ConditionalExpr n1, final Node arg) {
 		final ConditionalExpr n2 = (ConditionalExpr) arg;
 
 		if (!nodeEquals(n1.getCondition(), n2.getCondition())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getThenExpr(), n2.getThenExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getElseExpr(), n2.getElseExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final EnclosedExpr n1, final Node arg) {
 		final EnclosedExpr n2 = (EnclosedExpr) arg;
 
 		if (!nodeEquals(n1.getInner(), n2.getInner())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final FieldAccessExpr n1, final Node arg) {
 		final FieldAccessExpr n2 = (FieldAccessExpr) arg;
 
 		if (!nodeEquals(n1.getScope(), n2.getScope())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getField(), n2.getField())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeArgs(), n2.getTypeArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final InstanceOfExpr n1, final Node arg) {
 		final InstanceOfExpr n2 = (InstanceOfExpr) arg;
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final StringLiteralExpr n1, final Node arg) {
 		final StringLiteralExpr n2 = (StringLiteralExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final IntegerLiteralExpr n1, final Node arg) {
 		final IntegerLiteralExpr n2 = (IntegerLiteralExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final LongLiteralExpr n1, final Node arg) {
 		final LongLiteralExpr n2 = (LongLiteralExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final IntegerLiteralMinValueExpr n1, final Node arg) {
 		final IntegerLiteralMinValueExpr n2 = (IntegerLiteralMinValueExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final LongLiteralMinValueExpr n1, final Node arg) {
 		final LongLiteralMinValueExpr n2 = (LongLiteralMinValueExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final CharLiteralExpr n1, final Node arg) {
 		final CharLiteralExpr n2 = (CharLiteralExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final DoubleLiteralExpr n1, final Node arg) {
 		final DoubleLiteralExpr n2 = (DoubleLiteralExpr) arg;
 
 		if (!objEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final BooleanLiteralExpr n1, final Node arg) {
 		final BooleanLiteralExpr n2 = (BooleanLiteralExpr) arg;
 
 		if (n1.getValue() != n2.getValue()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final NullLiteralExpr n1, final Node arg) {
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final MethodCallExpr n1, final Node arg) {
 		final MethodCallExpr n2 = (MethodCallExpr) arg;
 
 		if (!nodeEquals(n1.getScope(), n2.getScope())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getArgs(), n2.getArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeArgs(), n2.getTypeArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final NameExpr n1, final Node arg) {
 		final NameExpr n2 = (NameExpr) arg;
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ObjectCreationExpr n1, final Node arg) {
 		final ObjectCreationExpr n2 = (ObjectCreationExpr) arg;
 
 		if (!nodeEquals(n1.getScope(), n2.getScope())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnonymousClassBody(), n2.getAnonymousClassBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getArgs(), n2.getArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeArgs(), n2.getTypeArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final QualifiedNameExpr n1, final Node arg) {
 		final QualifiedNameExpr n2 = (QualifiedNameExpr) arg;
 
 		if (!nodeEquals(n1.getQualifier(), n2.getQualifier())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ThisExpr n1, final Node arg) {
 		final ThisExpr n2 = (ThisExpr) arg;
 
 		if (!nodeEquals(n1.getClassExpr(), n2.getClassExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final SuperExpr n1, final Node arg) {
 		final SuperExpr n2 = (SuperExpr) arg;
 
 		if (!nodeEquals(n1.getClassExpr(), n2.getClassExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final UnaryExpr n1, final Node arg) {
 		final UnaryExpr n2 = (UnaryExpr) arg;
 
 		if (n1.getOperator() != n2.getOperator()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final VariableDeclarationExpr n1, final Node arg) {
 		final VariableDeclarationExpr n2 = (VariableDeclarationExpr) arg;
 
 		if (n1.getModifiers() != n2.getModifiers()) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getType(), n2.getType())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getVars(), n2.getVars())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final MarkerAnnotationExpr n1, final Node arg) {
 		final MarkerAnnotationExpr n2 = (MarkerAnnotationExpr) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final SingleMemberAnnotationExpr n1, final Node arg) {
 		final SingleMemberAnnotationExpr n2 = (SingleMemberAnnotationExpr) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getMemberValue(), n2.getMemberValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final NormalAnnotationExpr n1, final Node arg) {
 		final NormalAnnotationExpr n2 = (NormalAnnotationExpr) arg;
 
 		if (!nodeEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getPairs(), n2.getPairs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final MemberValuePair n1, final Node arg) {
 		final MemberValuePair n2 = (MemberValuePair) arg;
 
 		if (!objEquals(n1.getName(), n2.getName())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getValue(), n2.getValue())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ExplicitConstructorInvocationStmt n1, final Node arg) {
 		final ExplicitConstructorInvocationStmt n2 = (ExplicitConstructorInvocationStmt) arg;
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getArgs(), n2.getArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getTypeArgs(), n2.getTypeArgs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final TypeDeclarationStmt n1, final Node arg) {
 		final TypeDeclarationStmt n2 = (TypeDeclarationStmt) arg;
 
 		if (!nodeEquals(n1.getTypeDeclaration(), n2.getTypeDeclaration())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final AssertStmt n1, final Node arg) {
 		final AssertStmt n2 = (AssertStmt) arg;
 
 		if (!nodeEquals(n1.getCheck(), n2.getCheck())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getMessage(), n2.getMessage())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final BlockStmt n1, final Node arg) {
 		final BlockStmt n2 = (BlockStmt) arg;
 
 		if (!nodesEquals(n1.getStmts(), n2.getStmts())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final LabeledStmt n1, final Node arg) {
 		final LabeledStmt n2 = (LabeledStmt) arg;
 
 		if (!nodeEquals(n1.getStmt(), n2.getStmt())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final EmptyStmt n1, final Node arg) {
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ExpressionStmt n1, final Node arg) {
 		final ExpressionStmt n2 = (ExpressionStmt) arg;
 
 		if (!nodeEquals(n1.getExpression(), n2.getExpression())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final SwitchStmt n1, final Node arg) {
 		final SwitchStmt n2 = (SwitchStmt) arg;
 
 		if (!nodeEquals(n1.getSelector(), n2.getSelector())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getEntries(), n2.getEntries())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final SwitchEntryStmt n1, final Node arg) {
 		final SwitchEntryStmt n2 = (SwitchEntryStmt) arg;
 
 		if (!nodeEquals(n1.getLabel(), n2.getLabel())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getStmts(), n2.getStmts())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final BreakStmt n1, final Node arg) {
 		final BreakStmt n2 = (BreakStmt) arg;
 
 		if (!objEquals(n1.getId(), n2.getId())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ReturnStmt n1, final Node arg) {
 		final ReturnStmt n2 = (ReturnStmt) arg;
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final IfStmt n1, final Node arg) {
 		final IfStmt n2 = (IfStmt) arg;
 
 		if (!nodeEquals(n1.getCondition(), n2.getCondition())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getThenStmt(), n2.getThenStmt())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getElseStmt(), n2.getElseStmt())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final WhileStmt n1, final Node arg) {
 		final WhileStmt n2 = (WhileStmt) arg;
 
 		if (!nodeEquals(n1.getCondition(), n2.getCondition())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBody(), n2.getBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ContinueStmt n1, final Node arg) {
 		final ContinueStmt n2 = (ContinueStmt) arg;
 
 		if (!objEquals(n1.getId(), n2.getId())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final DoStmt n1, final Node arg) {
 		final DoStmt n2 = (DoStmt) arg;
 
 		if (!nodeEquals(n1.getBody(), n2.getBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getCondition(), n2.getCondition())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ForeachStmt n1, final Node arg) {
 		final ForeachStmt n2 = (ForeachStmt) arg;
 
 		if (!nodeEquals(n1.getVariable(), n2.getVariable())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getIterable(), n2.getIterable())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBody(), n2.getBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ForStmt n1, final Node arg) {
 		final ForStmt n2 = (ForStmt) arg;
 
 		if (!nodesEquals(n1.getInit(), n2.getInit())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getCompare(), n2.getCompare())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getUpdate(), n2.getUpdate())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBody(), n2.getBody())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final ThrowStmt n1, final Node arg) {
 		final ThrowStmt n2 = (ThrowStmt) arg;
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final SynchronizedStmt n1, final Node arg) {
 		final SynchronizedStmt n2 = (SynchronizedStmt) arg;
 
 		if (!nodeEquals(n1.getExpr(), n2.getExpr())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getBlock(), n2.getBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final TryStmt n1, final Node arg) {
 		final TryStmt n2 = (TryStmt) arg;
 
 		if (!nodeEquals(n1.getTryBlock(), n2.getTryBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodesEquals(n1.getCatchs(), n2.getCatchs())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getFinallyBlock(), n2.getFinallyBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
 	@Override public Boolean visit(final CatchClause n1, final Node arg) {
 		final CatchClause n2 = (CatchClause) arg;
 
 		if (!nodeEquals(n1.getParam(), n2.getParam())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
 		if (!nodeEquals(n1.getCatchBlock(), n2.getCatchBlock())) {
-			return Boolean.FALSE;
+			return false;
 		}
 
-		return Boolean.TRUE;
+		return true;
 	}
 
     @Override
     public Boolean visit(LambdaExpr n1, Node arg) {
         LambdaExpr n2 = (LambdaExpr) arg;
         if (!nodesEquals(n1.getParameters(), n2.getParameters())) {
-            return Boolean.FALSE;
+            return false;
         }
         if(n1.isParametersEnclosed() != n2.isParametersEnclosed()){
-            return Boolean.FALSE;
+            return false;
         }
         if (!nodeEquals(n1.getBody(), n2.getBody())) {
-            return Boolean.FALSE;
+            return false;
         }
-        return Boolean.TRUE;
+        return true;
     }
 
     @Override
     public Boolean visit(MethodReferenceExpr n1, Node arg) {
         MethodReferenceExpr n2 = (MethodReferenceExpr) arg;
         if (!nodeEquals(n1.getScope(), n2.getScope())) {
-            return Boolean.FALSE;
+            return false;
         }
         if (!nodesEquals(n1.getTypeParameters(), n2.getTypeParameters())) {
-            return Boolean.FALSE;
+            return false;
         }
         if (!objEquals(n1.getIdentifier(), n2.getIdentifier())) {
-            return Boolean.FALSE;
+            return false;
         }
-        return Boolean.TRUE;
+        return true;
     }
 
     @Override
     public Boolean visit(TypeExpr n, Node arg) {
         TypeExpr n2 = (TypeExpr) arg;
         if (!nodeEquals(n.getType(), n2.getType())) {
-            return Boolean.FALSE;
+            return false;
         }
-        return Boolean.TRUE;
+        return true;
     }
 }
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitor.java b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitor.java
index 2527e2a..e8c036d 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitor.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/visitor/GenericVisitor.java
@@ -76,183 +76,183 @@
 
 	//- Compilation Unit ----------------------------------
 
-	public R visit(CompilationUnit n, A arg);
+	R visit(CompilationUnit n, A arg);
 
-	public R visit(PackageDeclaration n, A arg);
+	R visit(PackageDeclaration n, A arg);
 
-	public R visit(ImportDeclaration n, A arg);
+	R visit(ImportDeclaration n, A arg);
 
-	public R visit(TypeParameter n, A arg);
+	R visit(TypeParameter n, A arg);
 
-	public R visit(LineComment n, A arg);
+	R visit(LineComment n, A arg);
 
-	public R visit(BlockComment n, A arg);
+	R visit(BlockComment n, A arg);
 
 	//- Body ----------------------------------------------
 
-	public R visit(ClassOrInterfaceDeclaration n, A arg);
+	R visit(ClassOrInterfaceDeclaration n, A arg);
 
-	public R visit(EnumDeclaration n, A arg);
+	R visit(EnumDeclaration n, A arg);
 
-	public R visit(EmptyTypeDeclaration n, A arg);
+	R visit(EmptyTypeDeclaration n, A arg);
 
-	public R visit(EnumConstantDeclaration n, A arg);
+	R visit(EnumConstantDeclaration n, A arg);
 
-	public R visit(AnnotationDeclaration n, A arg);
+	R visit(AnnotationDeclaration n, A arg);
 
-	public R visit(AnnotationMemberDeclaration n, A arg);
+	R visit(AnnotationMemberDeclaration n, A arg);
 
-	public R visit(FieldDeclaration n, A arg);
+	R visit(FieldDeclaration n, A arg);
 
-	public R visit(VariableDeclarator n, A arg);
+	R visit(VariableDeclarator n, A arg);
 
-	public R visit(VariableDeclaratorId n, A arg);
+	R visit(VariableDeclaratorId n, A arg);
 
-	public R visit(ConstructorDeclaration n, A arg);
+	R visit(ConstructorDeclaration n, A arg);
 
-	public R visit(MethodDeclaration n, A arg);
+	R visit(MethodDeclaration n, A arg);
 
-	public R visit(Parameter n, A arg);
+	R visit(Parameter n, A arg);
 	
-	public R visit(MultiTypeParameter n, A arg);
+	R visit(MultiTypeParameter n, A arg);
 
-	public R visit(EmptyMemberDeclaration n, A arg);
+	R visit(EmptyMemberDeclaration n, A arg);
 
-	public R visit(InitializerDeclaration n, A arg);
+	R visit(InitializerDeclaration n, A arg);
 
-	public R visit(JavadocComment n, A arg);
+	R visit(JavadocComment n, A arg);
 
 	//- Type ----------------------------------------------
 
-	public R visit(ClassOrInterfaceType n, A arg);
+	R visit(ClassOrInterfaceType n, A arg);
 
-	public R visit(PrimitiveType n, A arg);
+	R visit(PrimitiveType n, A arg);
 
-	public R visit(ReferenceType n, A arg);
+	R visit(ReferenceType n, A arg);
 
-    public R visit(IntersectionType n, A arg);
+    R visit(IntersectionType n, A arg);
 
-    public R visit(UnionType n, A arg);
+    R visit(UnionType n, A arg);
 
-	public R visit(VoidType n, A arg);
+	R visit(VoidType n, A arg);
 
-	public R visit(WildcardType n, A arg);
+	R visit(WildcardType n, A arg);
 
-	public R visit(UnknownType n, A arg);
+	R visit(UnknownType n, A arg);
 
 	//- Expression ----------------------------------------
 
-	public R visit(ArrayAccessExpr n, A arg);
+	R visit(ArrayAccessExpr n, A arg);
 
-	public R visit(ArrayCreationExpr n, A arg);
+	R visit(ArrayCreationExpr n, A arg);
 
-	public R visit(ArrayInitializerExpr n, A arg);
+	R visit(ArrayInitializerExpr n, A arg);
 
-	public R visit(AssignExpr n, A arg);
+	R visit(AssignExpr n, A arg);
 
-	public R visit(BinaryExpr n, A arg);
+	R visit(BinaryExpr n, A arg);
 
-	public R visit(CastExpr n, A arg);
+	R visit(CastExpr n, A arg);
 
-	public R visit(ClassExpr n, A arg);
+	R visit(ClassExpr n, A arg);
 
-	public R visit(ConditionalExpr n, A arg);
+	R visit(ConditionalExpr n, A arg);
 
-	public R visit(EnclosedExpr n, A arg);
+	R visit(EnclosedExpr n, A arg);
 
-	public R visit(FieldAccessExpr n, A arg);
+	R visit(FieldAccessExpr n, A arg);
 
-	public R visit(InstanceOfExpr n, A arg);
+	R visit(InstanceOfExpr n, A arg);
 
-	public R visit(StringLiteralExpr n, A arg);
+	R visit(StringLiteralExpr n, A arg);
 
-	public R visit(IntegerLiteralExpr n, A arg);
+	R visit(IntegerLiteralExpr n, A arg);
 
-	public R visit(LongLiteralExpr n, A arg);
+	R visit(LongLiteralExpr n, A arg);
 
-	public R visit(IntegerLiteralMinValueExpr n, A arg);
+	R visit(IntegerLiteralMinValueExpr n, A arg);
 
-	public R visit(LongLiteralMinValueExpr n, A arg);
+	R visit(LongLiteralMinValueExpr n, A arg);
 
-	public R visit(CharLiteralExpr n, A arg);
+	R visit(CharLiteralExpr n, A arg);
 
-	public R visit(DoubleLiteralExpr n, A arg);
+	R visit(DoubleLiteralExpr n, A arg);
 
-	public R visit(BooleanLiteralExpr n, A arg);
+	R visit(BooleanLiteralExpr n, A arg);
 
-	public R visit(NullLiteralExpr n, A arg);
+	R visit(NullLiteralExpr n, A arg);
 
-	public R visit(MethodCallExpr n, A arg);
+	R visit(MethodCallExpr n, A arg);
 
-	public R visit(NameExpr n, A arg);
+	R visit(NameExpr n, A arg);
 
-	public R visit(ObjectCreationExpr n, A arg);
+	R visit(ObjectCreationExpr n, A arg);
 
-	public R visit(QualifiedNameExpr n, A arg);
+	R visit(QualifiedNameExpr n, A arg);
 
-	public R visit(ThisExpr n, A arg);
+	R visit(ThisExpr n, A arg);
 
-	public R visit(SuperExpr n, A arg);
+	R visit(SuperExpr n, A arg);
 
-	public R visit(UnaryExpr n, A arg);
+	R visit(UnaryExpr n, A arg);
 
-	public R visit(VariableDeclarationExpr n, A arg);
+	R visit(VariableDeclarationExpr n, A arg);
 
-	public R visit(MarkerAnnotationExpr n, A arg);
+	R visit(MarkerAnnotationExpr n, A arg);
 
-	public R visit(SingleMemberAnnotationExpr n, A arg);
+	R visit(SingleMemberAnnotationExpr n, A arg);
 
-	public R visit(NormalAnnotationExpr n, A arg);
+	R visit(NormalAnnotationExpr n, A arg);
 
-	public R visit(MemberValuePair n, A arg);
+	R visit(MemberValuePair n, A arg);
 
 	//- Statements ----------------------------------------
 
-	public R visit(ExplicitConstructorInvocationStmt n, A arg);
+	R visit(ExplicitConstructorInvocationStmt n, A arg);
 
-	public R visit(TypeDeclarationStmt n, A arg);
+	R visit(TypeDeclarationStmt n, A arg);
 
-	public R visit(AssertStmt n, A arg);
+	R visit(AssertStmt n, A arg);
 
-	public R visit(BlockStmt n, A arg);
+	R visit(BlockStmt n, A arg);
 
-	public R visit(LabeledStmt n, A arg);
+	R visit(LabeledStmt n, A arg);
 
-	public R visit(EmptyStmt n, A arg);
+	R visit(EmptyStmt n, A arg);
 
-	public R visit(ExpressionStmt n, A arg);
+	R visit(ExpressionStmt n, A arg);
 
-	public R visit(SwitchStmt n, A arg);
+	R visit(SwitchStmt n, A arg);
 
-	public R visit(SwitchEntryStmt n, A arg);
+	R visit(SwitchEntryStmt n, A arg);
 
-	public R visit(BreakStmt n, A arg);
+	R visit(BreakStmt n, A arg);
 
-	public R visit(ReturnStmt n, A arg);
+	R visit(ReturnStmt n, A arg);
 
-	public R visit(IfStmt n, A arg);
+	R visit(IfStmt n, A arg);
 
-	public R visit(WhileStmt n, A arg);
+	R visit(WhileStmt n, A arg);
 
-	public R visit(ContinueStmt n, A arg);
+	R visit(ContinueStmt n, A arg);
 
-	public R visit(DoStmt n, A arg);
+	R visit(DoStmt n, A arg);
 
-	public R visit(ForeachStmt n, A arg);
+	R visit(ForeachStmt n, A arg);
 
-	public R visit(ForStmt n, A arg);
+	R visit(ForStmt n, A arg);
 
-	public R visit(ThrowStmt n, A arg);
+	R visit(ThrowStmt n, A arg);
 
-	public R visit(SynchronizedStmt n, A arg);
+	R visit(SynchronizedStmt n, A arg);
 
-	public R visit(TryStmt n, A arg);
+	R visit(TryStmt n, A arg);
 
-	public R visit(CatchClause n, A arg);
+	R visit(CatchClause n, A arg);
 
-    public R visit(LambdaExpr n, A arg);
+    R visit(LambdaExpr n, A arg);
 
-    public R visit(MethodReferenceExpr n, A arg);
+    R visit(MethodReferenceExpr n, A arg);
 
-    public R visit(TypeExpr n, A arg);
+    R visit(TypeExpr n, A arg);
 }
diff --git a/javaparser-core/src/main/javacc/java_1_8.jj b/javaparser-core/src/main/javacc/java_1_8.jj
index c364e6a..6d5a574 100644
--- a/javaparser-core/src/main/javacc/java_1_8.jj
+++ b/javaparser-core/src/main/javacc/java_1_8.jj
@@ -2707,9 +2707,9 @@
   (ann = Annotation()   { annotations = add(annotations, ann);  })*
   (
 	  LOOKAHEAD(2)
-	  ( LOOKAHEAD(2) "[" expr = Expression() { accum = add(accum, annotations); annotations=null; inits = add(inits, expr); } "]" )+ ( LOOKAHEAD(2) (ann = Annotation()   { annotations = add(annotations, ann);  })* "[" "]" { i++; } )* {  accum = add(accum, annotations); annotations=null; ret[0] = inits; ret[1] = new Integer(i); }
+	  ( LOOKAHEAD(2) "[" expr = Expression() { accum = add(accum, annotations); annotations=null; inits = add(inits, expr); } "]" )+ ( LOOKAHEAD(2) (ann = Annotation()   { annotations = add(annotations, ann);  })* "[" "]" { i++; } )* {  accum = add(accum, annotations); annotations=null; ret[0] = inits; ret[1] = Integer.valueOf(i); }
 	|
-	  ( "[" "]" { i++; } )+ expr = ArrayInitializer() { accum = add(accum, annotations);annotations=null;  ret[0] = new Integer(i); ret[1] = expr; }
+	  ( "[" "]" { i++; } )+ expr = ArrayInitializer() { accum = add(accum, annotations);annotations=null;  ret[0] = Integer.valueOf(i); ret[1] = expr; }
   )
   { ret[2]=accum; return ret; }
 }
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/BasicJBehaveTest.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/BasicJBehaveTest.java
index 739ff20..ec231ab 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/BasicJBehaveTest.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/BasicJBehaveTest.java
@@ -22,7 +22,6 @@
 package com.github.javaparser.bdd;
 
 
-import com.github.javaparser.bdd.steps.CommentParsingSteps;
 import de.codecentric.jbehave.junit.monitoring.JUnitReportingRunner;
 import org.jbehave.core.configuration.Configuration;
 import org.jbehave.core.configuration.MostUsefulConfiguration;
@@ -32,8 +31,6 @@
 import org.jbehave.core.junit.JUnitStories;
 import org.jbehave.core.reporters.Format;
 import org.jbehave.core.reporters.StoryReporterBuilder;
-import org.jbehave.core.steps.InjectableStepsFactory;
-import org.jbehave.core.steps.InstanceStepsFactory;
 
 import java.util.List;
 
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/ComparingTest.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/ComparingTest.java
index 2a5d169..b26741e 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/ComparingTest.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/ComparingTest.java
@@ -40,7 +40,7 @@
 
         return new InstanceStepsFactory(configuration(),
                 new SharedSteps(state),
-                new ComparingSteps(state));
+                new ComparingSteps());
     }
 
     public ComparingTest() {
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/CommentParsingSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/CommentParsingSteps.java
index 10d63ea..208cd8e 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/CommentParsingSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/CommentParsingSteps.java
@@ -38,15 +38,14 @@
 import org.jbehave.core.model.ExamplesTable;
 import org.jbehave.core.steps.Parameters;
 
-import java.io.ByteArrayInputStream;
 import java.io.IOException;
+import java.io.StringReader;
 
 import static com.github.javaparser.bdd.steps.SharedSteps.getMemberByTypeAndPosition;
 import static org.hamcrest.CoreMatchers.instanceOf;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.nullValue;
 import static org.hamcrest.text.IsEqualIgnoringWhiteSpace.equalToIgnoringWhiteSpace;
-import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.fail;
 
@@ -79,13 +78,13 @@
 
     @When("the class is parsed by the Java parser")
     public void whenTheClassIsParsedByTheJavaParser() throws ParseException {
-        compilationUnit = JavaParser.parse(new ByteArrayInputStream(sourceUnderTest.getBytes()));
+        compilationUnit = JavaParser.parse(new StringReader(sourceUnderTest), true);
     }
 
     @Then("the Java parser cannot parse it because of lexical errors")
     public void javaParserCannotParseBecauseOfLexicalErrors() throws ParseException {
         try {
-            compilationUnit = JavaParser.parse(new ByteArrayInputStream(sourceUnderTest.getBytes()));
+            compilationUnit = JavaParser.parse(new StringReader(sourceUnderTest), true);
             fail("Lexical error expected");
         } catch (TokenMgrException e) {
             // ok
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ComparingSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ComparingSteps.java
index efc8178..ab2cf2c 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ComparingSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ComparingSteps.java
@@ -29,20 +29,14 @@
 import org.jbehave.core.annotations.Then;
 
 import java.io.StringReader;
-import java.util.Map;
 
 import static org.junit.Assert.*;
 
 public class ComparingSteps {
 
-    private Map<String, Object> state;
     private CompilationUnit first;
     private CompilationUnit second;
 
-    public ComparingSteps(Map<String, Object> state){
-        this.state = state;
-    }
-
     /*
      * Given steps
      */
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/DumpingSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/DumpingSteps.java
index 730a22f..eebe50d 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/DumpingSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/DumpingSteps.java
@@ -24,14 +24,13 @@
 import com.github.javaparser.JavaParser;
 import com.github.javaparser.ParseException;
 import com.github.javaparser.ast.CompilationUnit;
-import com.github.javaparser.ast.comments.*;
 import com.github.javaparser.ast.visitor.DumpVisitor;
 
 import org.jbehave.core.annotations.Given;
 import org.jbehave.core.annotations.Then;
 import org.jbehave.core.annotations.When;
 
-import java.io.ByteArrayInputStream;
+import java.io.StringReader;
 
 import static org.hamcrest.CoreMatchers.*;
 import static org.junit.Assert.assertThat;
@@ -39,7 +38,6 @@
 public class DumpingSteps {
 
     private CompilationUnit compilationUnit;
-    private CommentsCollection commentsCollection;
     private String sourceUnderTest;
 
     @Given("the class:$classSrc")
@@ -54,7 +52,7 @@
 
     @When("the class is parsed by the Java parser")
     public void whenTheClassIsParsedByTheJavaParser() throws ParseException {
-        compilationUnit = JavaParser.parse(new ByteArrayInputStream(sourceUnderTest.getBytes()));
+        compilationUnit = JavaParser.parse(new StringReader(sourceUnderTest), true);
     }
 
     @Then("it is dumped to:$dumpSrc")
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ManipulationSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ManipulationSteps.java
index 70c474b..a7fbe6c 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ManipulationSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ManipulationSteps.java
@@ -33,7 +33,6 @@
 import com.github.javaparser.ast.stmt.BlockStmt;
 import com.github.javaparser.ast.stmt.Statement;
 import com.github.javaparser.ast.stmt.TryStmt;
-import com.github.javaparser.ast.type.PrimitiveType;
 import com.github.javaparser.ast.type.VoidType;
 import com.github.javaparser.ast.visitor.VoidVisitorAdapter;
 import org.jbehave.core.annotations.Alias;
@@ -263,7 +262,7 @@
         CompilationUnit compilationUnit = (CompilationUnit) state.get("cu1");
         MethodDeclaration method = getMethodByPositionAndClassPosition(compilationUnit, methodPosition, classPosition);
         Parameter parameter = method.getParameters().get(parameterPosition -1);
-        assertThat((PrimitiveType)parameter.getType(), is(ASTHelper.INT_TYPE));
+        assertThat(parameter.getType(), is(ASTHelper.INT_TYPE));
         assertThat(parameter.getId().getName(), is(expectedName));
     }
 
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ParsingSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ParsingSteps.java
index 6af90a9..2700be6 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ParsingSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/ParsingSteps.java
@@ -44,7 +44,7 @@
 import org.jbehave.core.annotations.Then;
 import org.jbehave.core.annotations.When;
 
-import java.io.ByteArrayInputStream;
+import java.io.StringReader;
 import java.util.List;
 import java.util.Map;
 
@@ -324,7 +324,7 @@
     @Then("the Java parser cannot parse it because of lexical errors")
     public void javaParserCannotParseBecauseOfLexicalErrors() throws ParseException {
         try {
-            JavaParser.parse(new ByteArrayInputStream(sourceUnderTest.getBytes()));
+            JavaParser.parse(new StringReader(sourceUnderTest), true);
             fail("Lexical error expected");
         } catch (TokenMgrException e) {
             // ok
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/SharedSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/SharedSteps.java
index 9c1094a..d8a0739 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/SharedSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/SharedSteps.java
@@ -32,9 +32,9 @@
 import org.jbehave.core.annotations.Then;
 import org.jbehave.core.annotations.When;
 
-import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.IOException;
+import java.io.StringReader;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.util.Map;
@@ -74,17 +74,17 @@
 
     @When("the following source is parsed:$classSrc")
     public void whenTheFollowingSourceIsParsed(String classSrc) throws ParseException {
-        state.put("cu1", JavaParser.parse(new ByteArrayInputStream(classSrc.getBytes())));
+        state.put("cu1", JavaParser.parse(new StringReader(classSrc.trim()), true));
     }
 
     @When("the following source is parsed (trimming space):$classSrc")
     public void whenTheFollowingSourceIsParsedTrimmingSpace(String classSrc) throws ParseException {
-        state.put("cu1", JavaParser.parse(new ByteArrayInputStream(classSrc.trim().getBytes())));
+        state.put("cu1", JavaParser.parse(new StringReader(classSrc.trim()), true));
     }
 
     @When("the following sources is parsed by the second CompilationUnit:$classSrc")
     public void whenTheFollowingSourcesIsParsedBytTheSecondCompilationUnit(String classSrc) throws ParseException {
-        state.put("cu2", JavaParser.parse(new ByteArrayInputStream(classSrc.getBytes())));
+        state.put("cu2", JavaParser.parse(new StringReader(classSrc.trim()), true));
     }
 
     @When("the \"$fileName\" is parsed")
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/VisitorSteps.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/VisitorSteps.java
index 473bef6..ba38044 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/VisitorSteps.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/steps/VisitorSteps.java
@@ -35,7 +35,6 @@
 import java.util.concurrent.atomic.AtomicReference;
 
 import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.nullValue;
 import static org.hamcrest.MatcherAssert.assertThat;
 
 public class VisitorSteps {
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/bdd/visitors/PositionTestVisitor.java b/javaparser-testing/src/test/java/com/github/javaparser/bdd/visitors/PositionTestVisitor.java
index a99e682..f84e691 100644
--- a/javaparser-testing/src/test/java/com/github/javaparser/bdd/visitors/PositionTestVisitor.java
+++ b/javaparser-testing/src/test/java/com/github/javaparser/bdd/visitors/PositionTestVisitor.java
@@ -446,8 +446,6 @@
     }
 
     void doTest(final Node node) {
-        final String parsed = node.toString();
-
         assertThat(node.getBeginLine(), is(greaterThanOrEqualTo(0)));
         assertThat(node.getBeginColumn(), is(greaterThanOrEqualTo(0)));
         assertThat(node.getEndLine(), is(greaterThanOrEqualTo(0)));