  Line 49) v.visit(this, arg) ==> com.github.javaparser.ast.visitor.GenericVisitor.visit(com.github.javaparser.ast.expr.IntegerLiteralExpr, A)
  Line 53) v.visit(this, arg) ==> com.github.javaparser.ast.visitor.VoidVisitor.visit(com.github.javaparser.ast.expr.IntegerLiteralExpr, A)
  Line 58) value.length() ==> java.lang.String.length()
  Line 59) value.equals(UNSIGNED_MIN_VALUE) ==> java.lang.String.equals(java.lang.Object)
