public class com.sun.source.util.TreeScanner<R, P> implements com.sun.source.tree.TreeVisitor<R, P>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.source.util.TreeScanner
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.source.util.TreeScanner this
         0: .line 77
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;

  public R scan(com.sun.source.tree.Tree, );
    descriptor: (Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.Tree tree
        start local 2 // java.lang.Object p
         0: .line 86
            aload 1 /* tree */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* tree */
            aload 0 /* this */
            aload 2 /* p */
            invokeinterface com.sun.source.tree.Tree.accept:(Lcom/sun/source/tree/TreeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         2: areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.Tree tree
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  tree  Lcom/sun/source/tree/Tree;
            0    3     2     p  TP;
    Signature: (Lcom/sun/source/tree/Tree;TP;)TR;
    MethodParameters:
      Name  Flags
      tree  
      p     

  private R scanAndReduce(com.sun.source.tree.Tree, P, );
    descriptor: (Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.Tree node
        start local 2 // java.lang.Object p
        start local 3 // java.lang.Object r
         0: .line 90
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* node */
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.reduce:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.Tree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/Tree;
            0    1     2     p  TP;
            0    1     3     r  TR;
    Signature: (Lcom/sun/source/tree/Tree;TP;TR;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     
      r     

  public R scan(java.lang.Iterable<? extends com.sun.source.tree.Tree>, );
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // java.lang.Iterable nodes
        start local 2 // java.lang.Object p
         0: .line 101
            aconst_null
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 102
            aload 1 /* nodes */
            ifnull 10
         2: .line 103
            iconst_1
            istore 4 /* first */
        start local 4 // boolean first
         3: .line 104
            aload 1 /* nodes */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 9
      StackMap locals: com.sun.source.util.TreeScanner java.lang.Iterable java.lang.Object java.lang.Object int top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.source.tree.Tree
            astore 5 /* node */
        start local 5 // com.sun.source.tree.Tree node
         5: .line 105
            iload 4 /* first */
            ifeq 6
            aload 0 /* this */
            aload 5 /* node */
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            goto 7
      StackMap locals: com.sun.source.util.TreeScanner java.lang.Iterable java.lang.Object java.lang.Object int com.sun.source.tree.Tree java.util.Iterator
      StackMap stack:
         6: aload 0 /* this */
            aload 5 /* node */
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         7: astore 3 /* r */
         8: .line 106
            iconst_0
            istore 4 /* first */
        end local 5 // com.sun.source.tree.Tree node
         9: .line 104
      StackMap locals: com.sun.source.util.TreeScanner java.lang.Iterable java.lang.Object java.lang.Object int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 4 // boolean first
        10: .line 109
      StackMap locals: com.sun.source.util.TreeScanner java.lang.Iterable java.lang.Object java.lang.Object
      StackMap stack:
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // java.lang.Iterable nodes
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0   11     1  nodes  Ljava/lang/Iterable<+Lcom/sun/source/tree/Tree;>;
            0   11     2      p  TP;
            1   11     3      r  TR;
            3   10     4  first  Z
            5    9     5   node  Lcom/sun/source/tree/Tree;
    Signature: (Ljava/lang/Iterable<+Lcom/sun/source/tree/Tree;>;TP;)TR;
    MethodParameters:
       Name  Flags
      nodes  
      p      

  private R scanAndReduce(java.lang.Iterable<? extends com.sun.source.tree.Tree>, P, );
    descriptor: (Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // java.lang.Iterable nodes
        start local 2 // java.lang.Object p
        start local 3 // java.lang.Object r
         0: .line 113
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* nodes */
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.reduce:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // java.lang.Iterable nodes
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  nodes  Ljava/lang/Iterable<+Lcom/sun/source/tree/Tree;>;
            0    1     2      p  TP;
            0    1     3      r  TR;
    Signature: (Ljava/lang/Iterable<+Lcom/sun/source/tree/Tree;>;TP;TR;)TR;
    MethodParameters:
       Name  Flags
      nodes  
      p      
      r      

  public R reduce(R, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // java.lang.Object r1
        start local 2 // java.lang.Object r2
         0: .line 125
            aload 1 /* r1 */
            areturn
        end local 2 // java.lang.Object r2
        end local 1 // java.lang.Object r1
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1    r1  TR;
            0    1     2    r2  TR;
    Signature: (TR;TR;)TR;
    MethodParameters:
      Name  Flags
      r1    
      r2    

  public R visitCompilationUnit(com.sun.source.tree.CompilationUnitTree, );
    descriptor: (Lcom/sun/source/tree/CompilationUnitTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.CompilationUnitTree node
        start local 2 // java.lang.Object p
         0: .line 142
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CompilationUnitTree.getPackage:()Lcom/sun/source/tree/PackageTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 143
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CompilationUnitTree.getImports:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 144
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CompilationUnitTree.getTypeDecls:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 145
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.CompilationUnitTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/CompilationUnitTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/CompilationUnitTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitPackage(com.sun.source.tree.PackageTree, );
    descriptor: (Lcom/sun/source/tree/PackageTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.PackageTree node
        start local 2 // java.lang.Object p
         0: .line 157
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.PackageTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 158
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.PackageTree.getPackageName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 159
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.PackageTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/PackageTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/PackageTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitImport(com.sun.source.tree.ImportTree, );
    descriptor: (Lcom/sun/source/tree/ImportTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ImportTree node
        start local 2 // java.lang.Object p
         0: .line 171
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ImportTree.getQualifiedIdentifier:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ImportTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ImportTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ImportTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitClass(com.sun.source.tree.ClassTree, );
    descriptor: (Lcom/sun/source/tree/ClassTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ClassTree node
        start local 2 // java.lang.Object p
         0: .line 183
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ClassTree.getModifiers:()Lcom/sun/source/tree/ModifiersTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 184
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ClassTree.getTypeParameters:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 185
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ClassTree.getExtendsClause:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 186
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ClassTree.getImplementsClause:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 187
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ClassTree.getMembers:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         5: .line 188
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ClassTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    6     1  node  Lcom/sun/source/tree/ClassTree;
            0    6     2     p  TP;
            1    6     3     r  TR;
    Signature: (Lcom/sun/source/tree/ClassTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitMethod(com.sun.source.tree.MethodTree, );
    descriptor: (Lcom/sun/source/tree/MethodTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.MethodTree node
        start local 2 // java.lang.Object p
         0: .line 200
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getModifiers:()Lcom/sun/source/tree/ModifiersTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 201
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getReturnType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 202
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getTypeParameters:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 203
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getParameters:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 204
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getReceiverParameter:()Lcom/sun/source/tree/VariableTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         5: .line 205
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getThrows:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         6: .line 206
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getBody:()Lcom/sun/source/tree/BlockTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         7: .line 207
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodTree.getDefaultValue:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         8: .line 208
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.MethodTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    9     1  node  Lcom/sun/source/tree/MethodTree;
            0    9     2     p  TP;
            1    9     3     r  TR;
    Signature: (Lcom/sun/source/tree/MethodTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitVariable(com.sun.source.tree.VariableTree, );
    descriptor: (Lcom/sun/source/tree/VariableTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.VariableTree node
        start local 2 // java.lang.Object p
         0: .line 220
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.VariableTree.getModifiers:()Lcom/sun/source/tree/ModifiersTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 221
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.VariableTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 222
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.VariableTree.getNameExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 223
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.VariableTree.getInitializer:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 224
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.VariableTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    5     1  node  Lcom/sun/source/tree/VariableTree;
            0    5     2     p  TP;
            1    5     3     r  TR;
    Signature: (Lcom/sun/source/tree/VariableTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitEmptyStatement(com.sun.source.tree.EmptyStatementTree, );
    descriptor: (Lcom/sun/source/tree/EmptyStatementTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.EmptyStatementTree node
        start local 2 // java.lang.Object p
         0: .line 236
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.EmptyStatementTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/EmptyStatementTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/EmptyStatementTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitBlock(com.sun.source.tree.BlockTree, );
    descriptor: (Lcom/sun/source/tree/BlockTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.BlockTree node
        start local 2 // java.lang.Object p
         0: .line 248
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.BlockTree.getStatements:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.BlockTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/BlockTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/BlockTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitDoWhileLoop(com.sun.source.tree.DoWhileLoopTree, );
    descriptor: (Lcom/sun/source/tree/DoWhileLoopTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.DoWhileLoopTree node
        start local 2 // java.lang.Object p
         0: .line 260
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.DoWhileLoopTree.getStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 261
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.DoWhileLoopTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 262
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.DoWhileLoopTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/DoWhileLoopTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/DoWhileLoopTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitWhileLoop(com.sun.source.tree.WhileLoopTree, );
    descriptor: (Lcom/sun/source/tree/WhileLoopTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.WhileLoopTree node
        start local 2 // java.lang.Object p
         0: .line 274
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.WhileLoopTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 275
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.WhileLoopTree.getStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 276
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.WhileLoopTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/WhileLoopTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/WhileLoopTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitForLoop(com.sun.source.tree.ForLoopTree, );
    descriptor: (Lcom/sun/source/tree/ForLoopTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ForLoopTree node
        start local 2 // java.lang.Object p
         0: .line 288
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ForLoopTree.getInitializer:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 289
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ForLoopTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 290
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ForLoopTree.getUpdate:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 291
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ForLoopTree.getStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 292
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ForLoopTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    5     1  node  Lcom/sun/source/tree/ForLoopTree;
            0    5     2     p  TP;
            1    5     3     r  TR;
    Signature: (Lcom/sun/source/tree/ForLoopTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitEnhancedForLoop(com.sun.source.tree.EnhancedForLoopTree, );
    descriptor: (Lcom/sun/source/tree/EnhancedForLoopTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.EnhancedForLoopTree node
        start local 2 // java.lang.Object p
         0: .line 304
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.EnhancedForLoopTree.getVariable:()Lcom/sun/source/tree/VariableTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 305
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.EnhancedForLoopTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 306
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.EnhancedForLoopTree.getStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 307
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.EnhancedForLoopTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/EnhancedForLoopTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/EnhancedForLoopTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitLabeledStatement(com.sun.source.tree.LabeledStatementTree, );
    descriptor: (Lcom/sun/source/tree/LabeledStatementTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.LabeledStatementTree node
        start local 2 // java.lang.Object p
         0: .line 319
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.LabeledStatementTree.getStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.LabeledStatementTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/LabeledStatementTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/LabeledStatementTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitSwitch(com.sun.source.tree.SwitchTree, );
    descriptor: (Lcom/sun/source/tree/SwitchTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.SwitchTree node
        start local 2 // java.lang.Object p
         0: .line 331
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.SwitchTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 332
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.SwitchTree.getCases:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 333
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.SwitchTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/SwitchTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/SwitchTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitCase(com.sun.source.tree.CaseTree, );
    descriptor: (Lcom/sun/source/tree/CaseTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.CaseTree node
        start local 2 // java.lang.Object p
         0: .line 345
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CaseTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 346
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CaseTree.getStatements:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 347
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.CaseTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/CaseTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/CaseTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitSynchronized(com.sun.source.tree.SynchronizedTree, );
    descriptor: (Lcom/sun/source/tree/SynchronizedTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.SynchronizedTree node
        start local 2 // java.lang.Object p
         0: .line 359
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.SynchronizedTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 360
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.SynchronizedTree.getBlock:()Lcom/sun/source/tree/BlockTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 361
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.SynchronizedTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/SynchronizedTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/SynchronizedTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitTry(com.sun.source.tree.TryTree, );
    descriptor: (Lcom/sun/source/tree/TryTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.TryTree node
        start local 2 // java.lang.Object p
         0: .line 373
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TryTree.getResources:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 374
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TryTree.getBlock:()Lcom/sun/source/tree/BlockTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 375
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TryTree.getCatches:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 376
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TryTree.getFinallyBlock:()Lcom/sun/source/tree/BlockTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 377
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.TryTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    5     1  node  Lcom/sun/source/tree/TryTree;
            0    5     2     p  TP;
            1    5     3     r  TR;
    Signature: (Lcom/sun/source/tree/TryTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitCatch(com.sun.source.tree.CatchTree, );
    descriptor: (Lcom/sun/source/tree/CatchTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.CatchTree node
        start local 2 // java.lang.Object p
         0: .line 389
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CatchTree.getParameter:()Lcom/sun/source/tree/VariableTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 390
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CatchTree.getBlock:()Lcom/sun/source/tree/BlockTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 391
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.CatchTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/CatchTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/CatchTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitConditionalExpression(com.sun.source.tree.ConditionalExpressionTree, );
    descriptor: (Lcom/sun/source/tree/ConditionalExpressionTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ConditionalExpressionTree node
        start local 2 // java.lang.Object p
         0: .line 403
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ConditionalExpressionTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 404
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ConditionalExpressionTree.getTrueExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 405
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ConditionalExpressionTree.getFalseExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 406
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ConditionalExpressionTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/ConditionalExpressionTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/ConditionalExpressionTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitIf(com.sun.source.tree.IfTree, );
    descriptor: (Lcom/sun/source/tree/IfTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.IfTree node
        start local 2 // java.lang.Object p
         0: .line 418
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.IfTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 419
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.IfTree.getThenStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 420
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.IfTree.getElseStatement:()Lcom/sun/source/tree/StatementTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 421
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.IfTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/IfTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/IfTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitExpressionStatement(com.sun.source.tree.ExpressionStatementTree, );
    descriptor: (Lcom/sun/source/tree/ExpressionStatementTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ExpressionStatementTree node
        start local 2 // java.lang.Object p
         0: .line 433
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ExpressionStatementTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ExpressionStatementTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ExpressionStatementTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ExpressionStatementTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitBreak(com.sun.source.tree.BreakTree, );
    descriptor: (Lcom/sun/source/tree/BreakTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.BreakTree node
        start local 2 // java.lang.Object p
         0: .line 445
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.BreakTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/BreakTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/BreakTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitContinue(com.sun.source.tree.ContinueTree, );
    descriptor: (Lcom/sun/source/tree/ContinueTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ContinueTree node
        start local 2 // java.lang.Object p
         0: .line 457
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ContinueTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ContinueTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ContinueTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitReturn(com.sun.source.tree.ReturnTree, );
    descriptor: (Lcom/sun/source/tree/ReturnTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ReturnTree node
        start local 2 // java.lang.Object p
         0: .line 469
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ReturnTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ReturnTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ReturnTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ReturnTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitThrow(com.sun.source.tree.ThrowTree, );
    descriptor: (Lcom/sun/source/tree/ThrowTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ThrowTree node
        start local 2 // java.lang.Object p
         0: .line 481
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ThrowTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ThrowTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ThrowTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ThrowTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitAssert(com.sun.source.tree.AssertTree, );
    descriptor: (Lcom/sun/source/tree/AssertTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.AssertTree node
        start local 2 // java.lang.Object p
         0: .line 493
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AssertTree.getCondition:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 494
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AssertTree.getDetail:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 495
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.AssertTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/AssertTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/AssertTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitMethodInvocation(com.sun.source.tree.MethodInvocationTree, );
    descriptor: (Lcom/sun/source/tree/MethodInvocationTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.MethodInvocationTree node
        start local 2 // java.lang.Object p
         0: .line 507
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodInvocationTree.getTypeArguments:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 508
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodInvocationTree.getMethodSelect:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 509
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MethodInvocationTree.getArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 510
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.MethodInvocationTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/MethodInvocationTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/MethodInvocationTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitNewClass(com.sun.source.tree.NewClassTree, );
    descriptor: (Lcom/sun/source/tree/NewClassTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.NewClassTree node
        start local 2 // java.lang.Object p
         0: .line 522
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewClassTree.getEnclosingExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 523
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewClassTree.getIdentifier:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 524
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewClassTree.getTypeArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 525
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewClassTree.getArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 526
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewClassTree.getClassBody:()Lcom/sun/source/tree/ClassTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         5: .line 527
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.NewClassTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    6     1  node  Lcom/sun/source/tree/NewClassTree;
            0    6     2     p  TP;
            1    6     3     r  TR;
    Signature: (Lcom/sun/source/tree/NewClassTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitNewArray(com.sun.source.tree.NewArrayTree, );
    descriptor: (Lcom/sun/source/tree/NewArrayTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.NewArrayTree node
        start local 2 // java.lang.Object p
         0: .line 539
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewArrayTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 540
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewArrayTree.getDimensions:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 541
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewArrayTree.getInitializers:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 542
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewArrayTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         4: .line 543
            aload 1 /* node */
            invokeinterface com.sun.source.tree.NewArrayTree.getDimAnnotations:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: com.sun.source.util.TreeScanner com.sun.source.tree.NewArrayTree java.lang.Object java.lang.Object top java.util.Iterator
      StackMap stack:
         5: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Iterable
            astore 4 /* dimAnno */
        start local 4 // java.lang.Iterable dimAnno
         6: .line 544
            aload 0 /* this */
            aload 4 /* dimAnno */
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        end local 4 // java.lang.Iterable dimAnno
         7: .line 543
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 546
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.NewArrayTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    9     1     node  Lcom/sun/source/tree/NewArrayTree;
            0    9     2        p  TP;
            1    9     3        r  TR;
            6    7     4  dimAnno  Ljava/lang/Iterable<+Lcom/sun/source/tree/Tree;>;
    Signature: (Lcom/sun/source/tree/NewArrayTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitLambdaExpression(com.sun.source.tree.LambdaExpressionTree, );
    descriptor: (Lcom/sun/source/tree/LambdaExpressionTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.LambdaExpressionTree node
        start local 2 // java.lang.Object p
         0: .line 558
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.LambdaExpressionTree.getParameters:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 559
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.LambdaExpressionTree.getBody:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 560
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.LambdaExpressionTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/LambdaExpressionTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/LambdaExpressionTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitParenthesized(com.sun.source.tree.ParenthesizedTree, );
    descriptor: (Lcom/sun/source/tree/ParenthesizedTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ParenthesizedTree node
        start local 2 // java.lang.Object p
         0: .line 572
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ParenthesizedTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ParenthesizedTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ParenthesizedTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ParenthesizedTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitAssignment(com.sun.source.tree.AssignmentTree, );
    descriptor: (Lcom/sun/source/tree/AssignmentTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.AssignmentTree node
        start local 2 // java.lang.Object p
         0: .line 584
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AssignmentTree.getVariable:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 585
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AssignmentTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 586
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.AssignmentTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/AssignmentTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/AssignmentTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitCompoundAssignment(com.sun.source.tree.CompoundAssignmentTree, );
    descriptor: (Lcom/sun/source/tree/CompoundAssignmentTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.CompoundAssignmentTree node
        start local 2 // java.lang.Object p
         0: .line 598
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CompoundAssignmentTree.getVariable:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 599
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.CompoundAssignmentTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 600
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.CompoundAssignmentTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/CompoundAssignmentTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/CompoundAssignmentTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitUnary(com.sun.source.tree.UnaryTree, );
    descriptor: (Lcom/sun/source/tree/UnaryTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.UnaryTree node
        start local 2 // java.lang.Object p
         0: .line 612
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.UnaryTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.UnaryTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/UnaryTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/UnaryTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitBinary(com.sun.source.tree.BinaryTree, );
    descriptor: (Lcom/sun/source/tree/BinaryTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.BinaryTree node
        start local 2 // java.lang.Object p
         0: .line 624
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.BinaryTree.getLeftOperand:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 625
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.BinaryTree.getRightOperand:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 626
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.BinaryTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/BinaryTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/BinaryTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitTypeCast(com.sun.source.tree.TypeCastTree, );
    descriptor: (Lcom/sun/source/tree/TypeCastTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.TypeCastTree node
        start local 2 // java.lang.Object p
         0: .line 638
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TypeCastTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 639
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TypeCastTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 640
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.TypeCastTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/TypeCastTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/TypeCastTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitInstanceOf(com.sun.source.tree.InstanceOfTree, );
    descriptor: (Lcom/sun/source/tree/InstanceOfTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.InstanceOfTree node
        start local 2 // java.lang.Object p
         0: .line 652
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.InstanceOfTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 653
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.InstanceOfTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 654
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.InstanceOfTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/InstanceOfTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/InstanceOfTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitArrayAccess(com.sun.source.tree.ArrayAccessTree, );
    descriptor: (Lcom/sun/source/tree/ArrayAccessTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ArrayAccessTree node
        start local 2 // java.lang.Object p
         0: .line 666
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ArrayAccessTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 667
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ArrayAccessTree.getIndex:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 668
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ArrayAccessTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/ArrayAccessTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/ArrayAccessTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitMemberSelect(com.sun.source.tree.MemberSelectTree, );
    descriptor: (Lcom/sun/source/tree/MemberSelectTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.MemberSelectTree node
        start local 2 // java.lang.Object p
         0: .line 680
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MemberSelectTree.getExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.MemberSelectTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/MemberSelectTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/MemberSelectTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitMemberReference(com.sun.source.tree.MemberReferenceTree, );
    descriptor: (Lcom/sun/source/tree/MemberReferenceTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.MemberReferenceTree node
        start local 2 // java.lang.Object p
         0: .line 692
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MemberReferenceTree.getQualifierExpression:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 693
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.MemberReferenceTree.getTypeArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 694
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.MemberReferenceTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/MemberReferenceTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/MemberReferenceTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitIdentifier(com.sun.source.tree.IdentifierTree, );
    descriptor: (Lcom/sun/source/tree/IdentifierTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.IdentifierTree node
        start local 2 // java.lang.Object p
         0: .line 706
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.IdentifierTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/IdentifierTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/IdentifierTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitLiteral(com.sun.source.tree.LiteralTree, );
    descriptor: (Lcom/sun/source/tree/LiteralTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.LiteralTree node
        start local 2 // java.lang.Object p
         0: .line 718
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.LiteralTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/LiteralTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/LiteralTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitPrimitiveType(com.sun.source.tree.PrimitiveTypeTree, );
    descriptor: (Lcom/sun/source/tree/PrimitiveTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.PrimitiveTypeTree node
        start local 2 // java.lang.Object p
         0: .line 730
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.PrimitiveTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/PrimitiveTypeTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/PrimitiveTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitArrayType(com.sun.source.tree.ArrayTypeTree, );
    descriptor: (Lcom/sun/source/tree/ArrayTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ArrayTypeTree node
        start local 2 // java.lang.Object p
         0: .line 742
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ArrayTypeTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ArrayTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ArrayTypeTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ArrayTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitParameterizedType(com.sun.source.tree.ParameterizedTypeTree, );
    descriptor: (Lcom/sun/source/tree/ParameterizedTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ParameterizedTypeTree node
        start local 2 // java.lang.Object p
         0: .line 754
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ParameterizedTypeTree.getType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 755
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ParameterizedTypeTree.getTypeArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 756
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ParameterizedTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/ParameterizedTypeTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/ParameterizedTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitUnionType(com.sun.source.tree.UnionTypeTree, );
    descriptor: (Lcom/sun/source/tree/UnionTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.UnionTypeTree node
        start local 2 // java.lang.Object p
         0: .line 768
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.UnionTypeTree.getTypeAlternatives:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.UnionTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/UnionTypeTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/UnionTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitIntersectionType(com.sun.source.tree.IntersectionTypeTree, );
    descriptor: (Lcom/sun/source/tree/IntersectionTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.IntersectionTypeTree node
        start local 2 // java.lang.Object p
         0: .line 780
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.IntersectionTypeTree.getBounds:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.IntersectionTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/IntersectionTypeTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/IntersectionTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitTypeParameter(com.sun.source.tree.TypeParameterTree, );
    descriptor: (Lcom/sun/source/tree/TypeParameterTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.TypeParameterTree node
        start local 2 // java.lang.Object p
         0: .line 792
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TypeParameterTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 793
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.TypeParameterTree.getBounds:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 794
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.TypeParameterTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/TypeParameterTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/TypeParameterTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitWildcard(com.sun.source.tree.WildcardTree, );
    descriptor: (Lcom/sun/source/tree/WildcardTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.WildcardTree node
        start local 2 // java.lang.Object p
         0: .line 806
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.WildcardTree.getBound:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.WildcardTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/WildcardTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/WildcardTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitModifiers(com.sun.source.tree.ModifiersTree, );
    descriptor: (Lcom/sun/source/tree/ModifiersTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ModifiersTree node
        start local 2 // java.lang.Object p
         0: .line 818
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ModifiersTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ModifiersTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ModifiersTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ModifiersTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitAnnotation(com.sun.source.tree.AnnotationTree, );
    descriptor: (Lcom/sun/source/tree/AnnotationTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.AnnotationTree node
        start local 2 // java.lang.Object p
         0: .line 830
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AnnotationTree.getAnnotationType:()Lcom/sun/source/tree/Tree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 831
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AnnotationTree.getArguments:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 832
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.AnnotationTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/AnnotationTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/AnnotationTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitAnnotatedType(com.sun.source.tree.AnnotatedTypeTree, );
    descriptor: (Lcom/sun/source/tree/AnnotatedTypeTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.AnnotatedTypeTree node
        start local 2 // java.lang.Object p
         0: .line 844
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AnnotatedTypeTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 845
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.AnnotatedTypeTree.getUnderlyingType:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 846
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.AnnotatedTypeTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/AnnotatedTypeTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/AnnotatedTypeTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitModule(com.sun.source.tree.ModuleTree, );
    descriptor: (Lcom/sun/source/tree/ModuleTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ModuleTree node
        start local 2 // java.lang.Object p
         0: .line 851
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ModuleTree.getAnnotations:()Ljava/util/List;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 852
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ModuleTree.getName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 853
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ModuleTree.getDirectives:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         3: .line 854
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ModuleTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    4     1  node  Lcom/sun/source/tree/ModuleTree;
            0    4     2     p  TP;
            1    4     3     r  TR;
    Signature: (Lcom/sun/source/tree/ModuleTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitExports(com.sun.source.tree.ExportsTree, );
    descriptor: (Lcom/sun/source/tree/ExportsTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ExportsTree node
        start local 2 // java.lang.Object p
         0: .line 859
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ExportsTree.getPackageName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 860
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ExportsTree.getModuleNames:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 861
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ExportsTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/ExportsTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/ExportsTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitOpens(com.sun.source.tree.OpensTree, );
    descriptor: (Lcom/sun/source/tree/OpensTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.OpensTree node
        start local 2 // java.lang.Object p
         0: .line 866
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.OpensTree.getPackageName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 867
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.OpensTree.getModuleNames:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 868
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.OpensTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/OpensTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/OpensTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitProvides(com.sun.source.tree.ProvidesTree, );
    descriptor: (Lcom/sun/source/tree/ProvidesTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ProvidesTree node
        start local 2 // java.lang.Object p
         0: .line 873
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ProvidesTree.getServiceName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
        start local 3 // java.lang.Object r
         1: .line 874
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.ProvidesTree.getImplementationNames:()Ljava/util/List;
            aload 2 /* p */
            aload 3 /* r */
            invokevirtual com.sun.source.util.TreeScanner.scanAndReduce:(Ljava/lang/Iterable;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* r */
         2: .line 875
            aload 3 /* r */
            areturn
        end local 3 // java.lang.Object r
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ProvidesTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    3     1  node  Lcom/sun/source/tree/ProvidesTree;
            0    3     2     p  TP;
            1    3     3     r  TR;
    Signature: (Lcom/sun/source/tree/ProvidesTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitRequires(com.sun.source.tree.RequiresTree, );
    descriptor: (Lcom/sun/source/tree/RequiresTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.RequiresTree node
        start local 2 // java.lang.Object p
         0: .line 880
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.RequiresTree.getModuleName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.RequiresTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/RequiresTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/RequiresTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitUses(com.sun.source.tree.UsesTree, );
    descriptor: (Lcom/sun/source/tree/UsesTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.UsesTree node
        start local 2 // java.lang.Object p
         0: .line 885
            aload 0 /* this */
            aload 1 /* node */
            invokeinterface com.sun.source.tree.UsesTree.getServiceName:()Lcom/sun/source/tree/ExpressionTree;
            aload 2 /* p */
            invokevirtual com.sun.source.util.TreeScanner.scan:(Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.UsesTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/UsesTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/UsesTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitOther(com.sun.source.tree.Tree, );
    descriptor: (Lcom/sun/source/tree/Tree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.Tree node
        start local 2 // java.lang.Object p
         0: .line 897
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.Tree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/Tree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/Tree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     

  public R visitErroneous(com.sun.source.tree.ErroneousTree, );
    descriptor: (Lcom/sun/source/tree/ErroneousTree;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.source.util.TreeScanner this
        start local 1 // com.sun.source.tree.ErroneousTree node
        start local 2 // java.lang.Object p
         0: .line 909
            aconst_null
            areturn
        end local 2 // java.lang.Object p
        end local 1 // com.sun.source.tree.ErroneousTree node
        end local 0 // com.sun.source.util.TreeScanner this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/source/util/TreeScanner<TR;TP;>;
            0    1     1  node  Lcom/sun/source/tree/ErroneousTree;
            0    1     2     p  TP;
    Signature: (Lcom/sun/source/tree/ErroneousTree;TP;)TR;
    MethodParameters:
      Name  Flags
      node  
      p     
}
Signature: <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljava/lang/Object;Lcom/sun/source/tree/TreeVisitor<TR;TP;>;
SourceFile: "TreeScanner.java"