public final class org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core
  super_class: java.lang.Object
{
  public static org.eclipse.jdt.core.dom.MethodDeclaration createConstructorStub(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.IMethodBinding, java.lang.String, int, boolean, boolean, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/lang/String;IZZLorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;Ljava/util/Map;)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=20, args_size=11
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 5 // java.lang.String type
        start local 6 // int modifiers
        start local 7 // boolean omitSuperForDefConst
        start local 8 // boolean todo
        start local 9 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        start local 10 // java.util.Map formatSettings
         0: .line 96
            aload 1 /* rewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getAST:()Lorg/eclipse/jdt/core/dom/AST;
            astore 11 /* ast */
        start local 11 // org.eclipse.jdt.core.dom.AST ast
         1: .line 97
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMethodDeclaration:()Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            astore 12 /* decl */
        start local 12 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         2: .line 98
            aload 12 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            aload 11 /* ast */
            iload 6 /* modifiers */
            sipush -1025
            iand
            sipush -257
            iand
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newModifiers:(Lorg/eclipse/jdt/core/dom/AST;I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 99
            aload 12 /* decl */
            aload 11 /* ast */
            aload 5 /* type */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
         4: .line 100
            aload 12 /* decl */
            iconst_1
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setConstructor:(Z)V
         5: .line 102
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            aload 4 /* binding */
            aload 12 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createTypeParameters:(Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)V
         6: .line 104
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            aload 4 /* binding */
            aconst_null
            aload 12 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createParameters:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
            astore 13 /* parameters */
        start local 13 // java.util.List parameters
         7: .line 106
            aload 12 /* decl */
            aload 4 /* binding */
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createThrownExceptions:(Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;)V
         8: .line 108
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newBlock:()Lorg/eclipse/jdt/core/dom/Block;
            astore 14 /* body */
        start local 14 // org.eclipse.jdt.core.dom.Block body
         9: .line 109
            aload 12 /* decl */
            aload 14 /* body */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setBody:(Lorg/eclipse/jdt/core/dom/Block;)V
        10: .line 111
            aload 0 /* unit */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getLineDelimiterUsed:(Lorg/eclipse/jdt/core/IJavaElement;)Ljava/lang/String;
            astore 15 /* delimiter */
        start local 15 // java.lang.String delimiter
        11: .line 112
            ldc ""
            astore 16 /* bodyStatement */
        start local 16 // java.lang.String bodyStatement
        12: .line 113
            iload 7 /* omitSuperForDefConst */
            ifeq 13
            aload 13 /* parameters */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 23
        13: .line 114
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String int int int org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings java.util.Map org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String java.lang.String
      StackMap stack:
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSuperConstructorInvocation:()Lorg/eclipse/jdt/core/dom/SuperConstructorInvocation;
            astore 17 /* invocation */
        start local 17 // org.eclipse.jdt.core.dom.SuperConstructorInvocation invocation
        14: .line 115
            aconst_null
            astore 18 /* varDecl */
        start local 18 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        15: .line 116
            aload 13 /* parameters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 19 /* iterator */
        start local 19 // java.util.Iterator iterator
        16: goto 19
        17: .line 117
      StackMap locals: org.eclipse.jdt.core.dom.SuperConstructorInvocation org.eclipse.jdt.core.dom.SingleVariableDeclaration java.util.Iterator
      StackMap stack:
            aload 19 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.SingleVariableDeclaration
            astore 18 /* varDecl */
        18: .line 118
            aload 17 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.SuperConstructorInvocation.arguments:()Ljava/util/List;
            aload 11 /* ast */
            aload 18 /* varDecl */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.getName:()Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SimpleName.getIdentifier:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 116
      StackMap locals:
      StackMap stack:
            aload 19 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        end local 19 // java.util.Iterator iterator
        20: .line 120
            aload 17 /* invocation */
            iconst_0
            aload 15 /* delimiter */
            aload 10 /* formatSettings */
            ifnonnull 21
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOptions:(Z)Ljava/util/Map;
            goto 22
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String int int int org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings java.util.Map org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String java.lang.String org.eclipse.jdt.core.dom.SuperConstructorInvocation org.eclipse.jdt.core.dom.SingleVariableDeclaration
      StackMap stack: org.eclipse.jdt.core.dom.SuperConstructorInvocation int java.lang.String
        21: aload 10 /* formatSettings */
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String int int int org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings java.util.Map org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String java.lang.String org.eclipse.jdt.core.dom.SuperConstructorInvocation org.eclipse.jdt.core.dom.SingleVariableDeclaration
      StackMap stack: org.eclipse.jdt.core.dom.SuperConstructorInvocation int java.lang.String java.util.Map
        22: invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodes.asFormattedString:(Lorg/eclipse/jdt/core/dom/ASTNode;ILjava/lang/String;Ljava/util/Map;)Ljava/lang/String;
            astore 16 /* bodyStatement */
        end local 18 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        end local 17 // org.eclipse.jdt.core.dom.SuperConstructorInvocation invocation
        23: .line 123
      StackMap locals:
      StackMap stack:
            iload 8 /* todo */
            ifeq 29
        24: .line 124
            aload 0 /* unit */
            aload 5 /* type */
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            iconst_1
            aload 16 /* bodyStatement */
            aload 15 /* delimiter */
            invokestatic org.eclipse.jdt.core.manipulation.CodeGeneration.getMethodBodyContent:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 17 /* placeHolder */
        start local 17 // java.lang.String placeHolder
        25: .line 125
            aload 17 /* placeHolder */
            ifnull 31
        26: .line 126
            aload 1 /* rewrite */
            aload 17 /* placeHolder */
            bipush 41
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.ReturnStatement
            astore 18 /* todoNode */
        start local 18 // org.eclipse.jdt.core.dom.ReturnStatement todoNode
        27: .line 127
            aload 14 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 18 /* todoNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 18 // org.eclipse.jdt.core.dom.ReturnStatement todoNode
        end local 17 // java.lang.String placeHolder
        28: .line 129
            goto 31
        29: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* rewrite */
            aload 16 /* bodyStatement */
            bipush 41
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.ReturnStatement
            astore 17 /* statementNode */
        start local 17 // org.eclipse.jdt.core.dom.ReturnStatement statementNode
        30: .line 131
            aload 14 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 17 /* statementNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // org.eclipse.jdt.core.dom.ReturnStatement statementNode
        31: .line 134
      StackMap locals:
      StackMap stack:
            aload 9 /* settings */
            ifnull 36
            aload 9 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.createComments:Z
            ifeq 36
        32: .line 135
            aload 0 /* unit */
            aload 5 /* type */
            aload 12 /* decl */
            aload 4 /* binding */
            aload 15 /* delimiter */
            invokestatic org.eclipse.jdt.core.manipulation.CodeGeneration.getMethodComment:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/lang/String;)Ljava/lang/String;
            astore 17 /* string */
        start local 17 // java.lang.String string
        33: .line 136
            aload 17 /* string */
            ifnull 36
        34: .line 137
            aload 1 /* rewrite */
            aload 17 /* string */
            bipush 29
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.Javadoc
            astore 18 /* javadoc */
        start local 18 // org.eclipse.jdt.core.dom.Javadoc javadoc
        35: .line 138
            aload 12 /* decl */
            aload 18 /* javadoc */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setJavadoc:(Lorg/eclipse/jdt/core/dom/Javadoc;)V
        end local 18 // org.eclipse.jdt.core.dom.Javadoc javadoc
        end local 17 // java.lang.String string
        36: .line 141
      StackMap locals:
      StackMap stack:
            aload 12 /* decl */
            areturn
        end local 16 // java.lang.String bodyStatement
        end local 15 // java.lang.String delimiter
        end local 14 // org.eclipse.jdt.core.dom.Block body
        end local 13 // java.util.List parameters
        end local 12 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 11 // org.eclipse.jdt.core.dom.AST ast
        end local 10 // java.util.Map formatSettings
        end local 9 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        end local 8 // boolean todo
        end local 7 // boolean omitSuperForDefConst
        end local 6 // int modifiers
        end local 5 // java.lang.String type
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   37     0                  unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0   37     1               rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   37     2               imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   37     3               context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   37     4               binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   37     5                  type  Ljava/lang/String;
            0   37     6             modifiers  I
            0   37     7  omitSuperForDefConst  Z
            0   37     8                  todo  Z
            0   37     9              settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            0   37    10        formatSettings  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1   37    11                   ast  Lorg/eclipse/jdt/core/dom/AST;
            2   37    12                  decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            7   37    13            parameters  Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
            9   37    14                  body  Lorg/eclipse/jdt/core/dom/Block;
           11   37    15             delimiter  Ljava/lang/String;
           12   37    16         bodyStatement  Ljava/lang/String;
           14   23    17            invocation  Lorg/eclipse/jdt/core/dom/SuperConstructorInvocation;
           15   23    18               varDecl  Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
           16   20    19              iterator  Ljava/util/Iterator<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           25   28    17           placeHolder  Ljava/lang/String;
           27   28    18              todoNode  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           30   31    17         statementNode  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           33   36    17                string  Ljava/lang/String;
           35   36    18               javadoc  Lorg/eclipse/jdt/core/dom/Javadoc;
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    Signature: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/lang/String;IZZLorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    MethodParameters:
                      Name  Flags
      unit                  
      rewrite               
      imports               
      context               
      binding               
      type                  
      modifiers             
      omitSuperForDefConst  
      todo                  
      settings              
      formatSettings        

  public static org.eclipse.jdt.core.dom.MethodDeclaration createConstructorStub(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.core.dom.IMethodBinding, org.eclipse.jdt.core.dom.IVariableBinding[], int, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Lorg/eclipse/jdt/core/dom/IVariableBinding;ILorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=23, args_size=9
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        start local 5 // org.eclipse.jdt.core.dom.IMethodBinding superConstructor
        start local 6 // org.eclipse.jdt.core.dom.IVariableBinding[] variableBindings
        start local 7 // int modifiers
        start local 8 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
         0: .line 145
            aload 1 /* rewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getAST:()Lorg/eclipse/jdt/core/dom/AST;
            astore 9 /* ast */
        start local 9 // org.eclipse.jdt.core.dom.AST ast
         1: .line 147
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMethodDeclaration:()Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            astore 10 /* decl */
        start local 10 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         2: .line 148
            aload 10 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            aload 9 /* ast */
            iload 7 /* modifiers */
            sipush -1025
            iand
            sipush -257
            iand
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newModifiers:(Lorg/eclipse/jdt/core/dom/AST;I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 149
            aload 10 /* decl */
            aload 9 /* ast */
            aload 4 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
         4: .line 150
            aload 10 /* decl */
            iconst_1
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setConstructor:(Z)V
         5: .line 152
            aload 10 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.parameters:()Ljava/util/List;
            astore 11 /* parameters */
        start local 11 // java.util.List parameters
         6: .line 153
            aload 5 /* superConstructor */
            ifnull 10
         7: .line 154
            aload 2 /* imports */
            aload 3 /* context */
            aload 9 /* ast */
            aload 5 /* superConstructor */
            aload 10 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createTypeParameters:(Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)V
         8: .line 156
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            aload 2 /* imports */
            aload 3 /* context */
            aload 9 /* ast */
            aload 5 /* superConstructor */
            aconst_null
            aload 10 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createParameters:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
            pop
         9: .line 158
            aload 10 /* decl */
            aload 5 /* superConstructor */
            aload 2 /* imports */
            aload 3 /* context */
            aload 9 /* ast */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createThrownExceptions:(Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;)V
        10: .line 161
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List
      StackMap stack:
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newBlock:()Lorg/eclipse/jdt/core/dom/Block;
            astore 12 /* body */
        start local 12 // org.eclipse.jdt.core.dom.Block body
        11: .line 162
            aload 10 /* decl */
            aload 12 /* body */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setBody:(Lorg/eclipse/jdt/core/dom/Block;)V
        12: .line 164
            aload 0 /* unit */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getLineDelimiterUsed:(Lorg/eclipse/jdt/core/IJavaElement;)Ljava/lang/String;
            astore 13 /* delimiter */
        start local 13 // java.lang.String delimiter
        13: .line 166
            aload 5 /* superConstructor */
            ifnull 22
        14: .line 167
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSuperConstructorInvocation:()Lorg/eclipse/jdt/core/dom/SuperConstructorInvocation;
            astore 14 /* invocation */
        start local 14 // org.eclipse.jdt.core.dom.SuperConstructorInvocation invocation
        15: .line 168
            aconst_null
            astore 15 /* varDecl */
        start local 15 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        16: .line 169
            aload 11 /* parameters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 16 /* iterator */
        start local 16 // java.util.Iterator iterator
        17: goto 20
        18: .line 170
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.IMethodBinding org.eclipse.jdt.core.dom.IVariableBinding[] int org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String org.eclipse.jdt.core.dom.SuperConstructorInvocation org.eclipse.jdt.core.dom.SingleVariableDeclaration java.util.Iterator
      StackMap stack:
            aload 16 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.SingleVariableDeclaration
            astore 15 /* varDecl */
        19: .line 171
            aload 14 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.SuperConstructorInvocation.arguments:()Ljava/util/List;
            aload 9 /* ast */
            aload 15 /* varDecl */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.getName:()Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SimpleName.getIdentifier:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 169
      StackMap locals:
      StackMap stack:
            aload 16 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        end local 16 // java.util.Iterator iterator
        21: .line 173
            aload 12 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 14 /* invocation */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 15 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        end local 14 // org.eclipse.jdt.core.dom.SuperConstructorInvocation invocation
        22: .line 176
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 14 /* prohibited */
        start local 14 // java.util.List prohibited
        23: .line 177
            aload 11 /* parameters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 15 /* iterator */
        start local 15 // java.util.Iterator iterator
        24: goto 26
        25: .line 178
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 14 /* prohibited */
            aload 15 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.SingleVariableDeclaration
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.getName:()Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SimpleName.getIdentifier:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        26: .line 177
      StackMap locals:
      StackMap stack:
            aload 15 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 25
        end local 15 // java.util.Iterator iterator
        27: .line 179
            aconst_null
            astore 15 /* param */
        start local 15 // java.lang.String param
        28: .line 180
            new java.util.ArrayList
            dup
            aload 14 /* prohibited */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 16 /* list */
        start local 16 // java.util.List list
        29: .line 181
            aconst_null
            astore 17 /* excluded */
        start local 17 // java.lang.String[] excluded
        30: .line 182
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        31: goto 41
        32: .line 183
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.IMethodBinding org.eclipse.jdt.core.dom.IVariableBinding[] int org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String java.util.List java.lang.String java.util.List java.lang.String[] int
      StackMap stack:
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSingleVariableDeclaration:()Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
            astore 19 /* var */
        start local 19 // org.eclipse.jdt.core.dom.SingleVariableDeclaration var
        33: .line 184
            aload 19 /* var */
            aload 2 /* imports */
            aload 6 /* variableBindings */
            iload 18 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 9 /* ast */
            aload 3 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.PARAMETER:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setType:(Lorg/eclipse/jdt/core/dom/Type;)V
        34: .line 185
            aload 16 /* list */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            astore 17 /* excluded */
        35: .line 186
            aload 16 /* list */
            aload 17 /* excluded */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        36: .line 187
            aload 0 /* unit */
            aload 6 /* variableBindings */
            iload 18 /* i */
            aaload
            aload 17 /* excluded */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.suggestParameterName:(Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/IVariableBinding;[Ljava/lang/String;)Ljava/lang/String;
            astore 15 /* param */
        37: .line 188
            aload 16 /* list */
            aload 15 /* param */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        38: .line 189
            aload 19 /* var */
            aload 9 /* ast */
            aload 15 /* param */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        39: .line 190
            aload 11 /* parameters */
            aload 19 /* var */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 19 // org.eclipse.jdt.core.dom.SingleVariableDeclaration var
        40: .line 182
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 18 /* i */
            aload 6 /* variableBindings */
            arraylength
            if_icmplt 32
        end local 18 // int i
        42: .line 193
            new java.util.ArrayList
            dup
            aload 14 /* prohibited */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 16 /* list */
        43: .line 194
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        44: goto 64
        45: .line 195
      StackMap locals:
      StackMap stack:
            aload 16 /* list */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            astore 17 /* excluded */
        46: .line 196
            aload 16 /* list */
            aload 17 /* excluded */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        47: .line 197
            aload 0 /* unit */
            aload 6 /* variableBindings */
            iload 18 /* i */
            aaload
            aload 17 /* excluded */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.suggestParameterName:(Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/IVariableBinding;[Ljava/lang/String;)Ljava/lang/String;
            astore 19 /* paramName */
        start local 19 // java.lang.String paramName
        48: .line 198
            aload 16 /* list */
            aload 19 /* paramName */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        49: .line 199
            aload 6 /* variableBindings */
            iload 18 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getName:()Ljava/lang/String;
            astore 20 /* fieldName */
        start local 20 // java.lang.String fieldName
        50: .line 200
            aconst_null
            astore 21 /* expression */
        start local 21 // org.eclipse.jdt.core.dom.Expression expression
        51: .line 201
            aload 19 /* paramName */
            aload 20 /* fieldName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 52
            aload 8 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.useKeywordThis:Z
            ifeq 57
        52: .line 202
      StackMap locals: java.lang.String java.lang.String org.eclipse.jdt.core.dom.Expression
      StackMap stack:
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newFieldAccess:()Lorg/eclipse/jdt/core/dom/FieldAccess;
            astore 22 /* access */
        start local 22 // org.eclipse.jdt.core.dom.FieldAccess access
        53: .line 203
            aload 22 /* access */
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newThisExpression:()Lorg/eclipse/jdt/core/dom/ThisExpression;
            invokevirtual org.eclipse.jdt.core.dom.FieldAccess.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        54: .line 204
            aload 22 /* access */
            aload 9 /* ast */
            aload 20 /* fieldName */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.FieldAccess.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        55: .line 205
            aload 22 /* access */
            astore 21 /* expression */
        end local 22 // org.eclipse.jdt.core.dom.FieldAccess access
        56: .line 206
            goto 58
        57: .line 207
      StackMap locals:
      StackMap stack:
            aload 9 /* ast */
            aload 20 /* fieldName */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            astore 21 /* expression */
        58: .line 208
      StackMap locals:
      StackMap stack:
            aload 9 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newAssignment:()Lorg/eclipse/jdt/core/dom/Assignment;
            astore 22 /* assignment */
        start local 22 // org.eclipse.jdt.core.dom.Assignment assignment
        59: .line 209
            aload 22 /* assignment */
            aload 21 /* expression */
            invokevirtual org.eclipse.jdt.core.dom.Assignment.setLeftHandSide:(Lorg/eclipse/jdt/core/dom/Expression;)V
        60: .line 210
            aload 22 /* assignment */
            aload 9 /* ast */
            aload 19 /* paramName */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.Assignment.setRightHandSide:(Lorg/eclipse/jdt/core/dom/Expression;)V
        61: .line 211
            aload 22 /* assignment */
            getstatic org.eclipse.jdt.core.dom.Assignment$Operator.ASSIGN:Lorg/eclipse/jdt/core/dom/Assignment$Operator;
            invokevirtual org.eclipse.jdt.core.dom.Assignment.setOperator:(Lorg/eclipse/jdt/core/dom/Assignment$Operator;)V
        62: .line 212
            aload 12 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 9 /* ast */
            aload 22 /* assignment */
            invokevirtual org.eclipse.jdt.core.dom.AST.newExpressionStatement:(Lorg/eclipse/jdt/core/dom/Expression;)Lorg/eclipse/jdt/core/dom/ExpressionStatement;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 22 // org.eclipse.jdt.core.dom.Assignment assignment
        end local 21 // org.eclipse.jdt.core.dom.Expression expression
        end local 20 // java.lang.String fieldName
        end local 19 // java.lang.String paramName
        63: .line 194
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        64: iload 18 /* i */
            aload 6 /* variableBindings */
            arraylength
            if_icmplt 45
        end local 18 // int i
        65: .line 215
            aload 8 /* settings */
            ifnull 70
            aload 8 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.createComments:Z
            ifeq 70
        66: .line 216
            aload 0 /* unit */
            aload 4 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getName:()Ljava/lang/String;
            aload 10 /* decl */
            aload 5 /* superConstructor */
            aload 13 /* delimiter */
            invokestatic org.eclipse.jdt.core.manipulation.CodeGeneration.getMethodComment:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/lang/String;)Ljava/lang/String;
            astore 18 /* string */
        start local 18 // java.lang.String string
        67: .line 217
            aload 18 /* string */
            ifnull 70
        68: .line 218
            aload 1 /* rewrite */
            aload 18 /* string */
            bipush 29
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.Javadoc
            astore 19 /* javadoc */
        start local 19 // org.eclipse.jdt.core.dom.Javadoc javadoc
        69: .line 219
            aload 10 /* decl */
            aload 19 /* javadoc */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setJavadoc:(Lorg/eclipse/jdt/core/dom/Javadoc;)V
        end local 19 // org.eclipse.jdt.core.dom.Javadoc javadoc
        end local 18 // java.lang.String string
        70: .line 222
      StackMap locals:
      StackMap stack:
            aload 10 /* decl */
            areturn
        end local 17 // java.lang.String[] excluded
        end local 16 // java.util.List list
        end local 15 // java.lang.String param
        end local 14 // java.util.List prohibited
        end local 13 // java.lang.String delimiter
        end local 12 // org.eclipse.jdt.core.dom.Block body
        end local 11 // java.util.List parameters
        end local 10 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 9 // org.eclipse.jdt.core.dom.AST ast
        end local 8 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        end local 7 // int modifiers
        end local 6 // org.eclipse.jdt.core.dom.IVariableBinding[] variableBindings
        end local 5 // org.eclipse.jdt.core.dom.IMethodBinding superConstructor
        end local 4 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   71     0              unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0   71     1           rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   71     2           imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   71     3           context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   71     4       typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   71     5  superConstructor  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   71     6  variableBindings  [Lorg/eclipse/jdt/core/dom/IVariableBinding;
            0   71     7         modifiers  I
            0   71     8          settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            1   71     9               ast  Lorg/eclipse/jdt/core/dom/AST;
            2   71    10              decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            6   71    11        parameters  Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           11   71    12              body  Lorg/eclipse/jdt/core/dom/Block;
           13   71    13         delimiter  Ljava/lang/String;
           15   22    14        invocation  Lorg/eclipse/jdt/core/dom/SuperConstructorInvocation;
           16   22    15           varDecl  Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
           17   21    16          iterator  Ljava/util/Iterator<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           23   71    14        prohibited  Ljava/util/List<Ljava/lang/String;>;
           24   27    15          iterator  Ljava/util/Iterator<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           28   71    15             param  Ljava/lang/String;
           29   71    16              list  Ljava/util/List<Ljava/lang/String;>;
           30   71    17          excluded  [Ljava/lang/String;
           31   42    18                 i  I
           33   40    19               var  Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
           44   65    18                 i  I
           48   63    19         paramName  Ljava/lang/String;
           50   63    20         fieldName  Ljava/lang/String;
           51   63    21        expression  Lorg/eclipse/jdt/core/dom/Expression;
           53   56    22            access  Lorg/eclipse/jdt/core/dom/FieldAccess;
           59   63    22        assignment  Lorg/eclipse/jdt/core/dom/Assignment;
           67   70    18            string  Ljava/lang/String;
           69   70    19           javadoc  Lorg/eclipse/jdt/core/dom/Javadoc;
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
                  Name  Flags
      unit              
      rewrite           
      imports           
      context           
      typeBinding       
      superConstructor  
      variableBindings  
      modifiers         
      settings          

  public static org.eclipse.jdt.core.dom.MethodDeclaration createDelegationStub(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.IMethodBinding, org.eclipse.jdt.core.dom.IVariableBinding, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=23, args_size=7
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding delegate
        start local 5 // org.eclipse.jdt.core.dom.IVariableBinding delegatingField
        start local 6 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
         0: .line 226
            aload 4 /* delegate */
            invokestatic org.eclipse.core.runtime.Assert.isNotNull:(Ljava/lang/Object;)V
         1: .line 227
            aload 5 /* delegatingField */
            invokestatic org.eclipse.core.runtime.Assert.isNotNull:(Ljava/lang/Object;)V
         2: .line 228
            aload 6 /* settings */
            invokestatic org.eclipse.core.runtime.Assert.isNotNull:(Ljava/lang/Object;)V
         3: .line 230
            aload 1 /* rewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getAST:()Lorg/eclipse/jdt/core/dom/AST;
            astore 7 /* ast */
        start local 7 // org.eclipse.jdt.core.dom.AST ast
         4: .line 232
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMethodDeclaration:()Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            astore 8 /* decl */
        start local 8 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         5: .line 233
            aload 8 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            aload 7 /* ast */
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            ldc -65537
            iand
            bipush -33
            iand
            sipush -1025
            iand
            sipush -257
            iand
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newModifiers:(Lorg/eclipse/jdt/core/dom/AST;I)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         6: .line 235
            aload 8 /* decl */
            aload 7 /* ast */
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
         7: .line 236
            aload 8 /* decl */
            iconst_0
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setConstructor:(Z)V
         8: .line 238
            aload 2 /* imports */
            aload 3 /* context */
            aload 7 /* ast */
            aload 4 /* delegate */
            aload 8 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createTypeParameters:(Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)V
         9: .line 240
            aload 8 /* decl */
            aload 2 /* imports */
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 7 /* ast */
            aload 3 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.RETURN_TYPE:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setReturnType2:(Lorg/eclipse/jdt/core/dom/Type;)V
        10: .line 242
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            aload 2 /* imports */
            aload 3 /* context */
            aload 7 /* ast */
            aload 4 /* delegate */
            aconst_null
            aload 8 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createParameters:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
            astore 9 /* params */
        start local 9 // java.util.List params
        11: .line 244
            aload 8 /* decl */
            aload 4 /* delegate */
            aload 2 /* imports */
            aload 3 /* context */
            aload 7 /* ast */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createThrownExceptions:(Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;)V
        12: .line 246
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newBlock:()Lorg/eclipse/jdt/core/dom/Block;
            astore 10 /* body */
        start local 10 // org.eclipse.jdt.core.dom.Block body
        13: .line 247
            aload 8 /* decl */
            aload 10 /* body */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setBody:(Lorg/eclipse/jdt/core/dom/Block;)V
        14: .line 249
            aload 0 /* unit */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getLineDelimiterUsed:(Lorg/eclipse/jdt/core/IJavaElement;)Ljava/lang/String;
            astore 11 /* delimiter */
        start local 11 // java.lang.String delimiter
        15: .line 251
            aconst_null
            astore 12 /* statement */
        start local 12 // org.eclipse.jdt.core.dom.Statement statement
        16: .line 252
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMethodInvocation:()Lorg/eclipse/jdt/core/dom/MethodInvocation;
            astore 13 /* invocation */
        start local 13 // org.eclipse.jdt.core.dom.MethodInvocation invocation
        17: .line 253
            aload 13 /* invocation */
            aload 7 /* ast */
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodInvocation.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        18: .line 254
            aload 13 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.MethodInvocation.arguments:()Ljava/util/List;
            astore 14 /* arguments */
        start local 14 // java.util.List arguments
        19: .line 255
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        20: goto 23
        21: .line 256
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding org.eclipse.jdt.core.dom.IVariableBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.MethodDeclaration java.util.List org.eclipse.jdt.core.dom.Block java.lang.String org.eclipse.jdt.core.dom.Statement org.eclipse.jdt.core.dom.MethodInvocation java.util.List int
      StackMap stack:
            aload 14 /* arguments */
            aload 7 /* ast */
            aload 9 /* params */
            iload 15 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.SingleVariableDeclaration
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.getName:()Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SimpleName.getIdentifier:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 255
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 15 /* i */
            aload 9 /* params */
            invokeinterface java.util.List.size:()I
            if_icmplt 21
        end local 15 // int i
        24: .line 257
            aload 6 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.useKeywordThis:Z
            ifeq 30
        25: .line 258
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newFieldAccess:()Lorg/eclipse/jdt/core/dom/FieldAccess;
            astore 15 /* access */
        start local 15 // org.eclipse.jdt.core.dom.FieldAccess access
        26: .line 259
            aload 15 /* access */
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newThisExpression:()Lorg/eclipse/jdt/core/dom/ThisExpression;
            invokevirtual org.eclipse.jdt.core.dom.FieldAccess.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        27: .line 260
            aload 15 /* access */
            aload 7 /* ast */
            aload 5 /* delegatingField */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.FieldAccess.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        28: .line 261
            aload 13 /* invocation */
            aload 15 /* access */
            invokevirtual org.eclipse.jdt.core.dom.MethodInvocation.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        end local 15 // org.eclipse.jdt.core.dom.FieldAccess access
        29: .line 262
            goto 31
        30: .line 263
      StackMap locals:
      StackMap stack:
            aload 13 /* invocation */
            aload 7 /* ast */
            aload 5 /* delegatingField */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodInvocation.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        31: .line 264
      StackMap locals:
      StackMap stack:
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isPrimitive:()Z
            ifeq 34
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getName:()Ljava/lang/String;
            ldc "void"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 34
        32: .line 265
            aload 7 /* ast */
            aload 13 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.AST.newExpressionStatement:(Lorg/eclipse/jdt/core/dom/Expression;)Lorg/eclipse/jdt/core/dom/ExpressionStatement;
            astore 12 /* statement */
        33: .line 266
            goto 37
        34: .line 267
      StackMap locals:
      StackMap stack:
            aload 7 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newReturnStatement:()Lorg/eclipse/jdt/core/dom/ReturnStatement;
            astore 15 /* returnStatement */
        start local 15 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        35: .line 268
            aload 15 /* returnStatement */
            aload 13 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.ReturnStatement.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        36: .line 269
            aload 15 /* returnStatement */
            astore 12 /* statement */
        end local 15 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        37: .line 271
      StackMap locals:
      StackMap stack:
            aload 10 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 12 /* statement */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        38: .line 273
            aload 5 /* delegatingField */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 15 /* declaringType */
        start local 15 // org.eclipse.jdt.core.dom.ITypeBinding declaringType
        39: .line 274
            aload 15 /* declaringType */
            ifnonnull 41
        40: .line 275
            aload 8 /* decl */
            areturn
        41: .line 278
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 15 /* declaringType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            astore 16 /* qualifiedName */
        start local 16 // java.lang.String qualifiedName
        42: .line 279
            aload 15 /* declaringType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getPackage:()Lorg/eclipse/jdt/core/dom/IPackageBinding;
            astore 17 /* packageBinding */
        start local 17 // org.eclipse.jdt.core.dom.IPackageBinding packageBinding
        43: .line 280
            aload 17 /* packageBinding */
            ifnull 46
        44: .line 281
            aload 17 /* packageBinding */
            invokeinterface org.eclipse.jdt.core.dom.IPackageBinding.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 46
            aload 16 /* qualifiedName */
            aload 17 /* packageBinding */
            invokeinterface org.eclipse.jdt.core.dom.IPackageBinding.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 46
        45: .line 282
            aload 16 /* qualifiedName */
            aload 17 /* packageBinding */
            invokeinterface org.eclipse.jdt.core.dom.IPackageBinding.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 16 /* qualifiedName */
        46: .line 285
      StackMap locals: java.lang.String org.eclipse.jdt.core.dom.IPackageBinding
      StackMap stack:
            aload 6 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.createComments:Z
            ifeq 55
        47: .line 291
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getMethodDeclaration:()Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 4 /* delegate */
        48: .line 292
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            astore 18 /* declaringClassQualifiedName */
        start local 18 // java.lang.String declaringClassQualifiedName
        49: .line 293
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            astore 19 /* linkToMethodName */
        start local 19 // java.lang.String linkToMethodName
        50: .line 294
            aload 4 /* delegate */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getParameterTypeNamesForSeeTag:(Lorg/eclipse/jdt/core/dom/IMethodBinding;)[Ljava/lang/String;
            astore 20 /* parameterTypesQualifiedNames */
        start local 20 // java.lang.String[] parameterTypesQualifiedNames
        51: .line 295
            aload 0 /* unit */
            aload 16 /* qualifiedName */
            aload 8 /* decl */
            aload 4 /* delegate */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isDeprecated:()Z
            aload 19 /* linkToMethodName */
            aload 18 /* declaringClassQualifiedName */
            aload 20 /* parameterTypesQualifiedNames */
            iconst_1
            aload 11 /* delimiter */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getMethodComment:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;ZLjava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZLjava/lang/String;)Ljava/lang/String;
            astore 21 /* string */
        start local 21 // java.lang.String string
        52: .line 296
            aload 21 /* string */
            ifnull 55
        53: .line 297
            aload 1 /* rewrite */
            aload 21 /* string */
            bipush 29
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.Javadoc
            astore 22 /* javadoc */
        start local 22 // org.eclipse.jdt.core.dom.Javadoc javadoc
        54: .line 298
            aload 8 /* decl */
            aload 22 /* javadoc */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setJavadoc:(Lorg/eclipse/jdt/core/dom/Javadoc;)V
        end local 22 // org.eclipse.jdt.core.dom.Javadoc javadoc
        end local 21 // java.lang.String string
        end local 20 // java.lang.String[] parameterTypesQualifiedNames
        end local 19 // java.lang.String linkToMethodName
        end local 18 // java.lang.String declaringClassQualifiedName
        55: .line 301
      StackMap locals:
      StackMap stack:
            aload 8 /* decl */
            areturn
        end local 17 // org.eclipse.jdt.core.dom.IPackageBinding packageBinding
        end local 16 // java.lang.String qualifiedName
        end local 15 // org.eclipse.jdt.core.dom.ITypeBinding declaringType
        end local 14 // java.util.List arguments
        end local 13 // org.eclipse.jdt.core.dom.MethodInvocation invocation
        end local 12 // org.eclipse.jdt.core.dom.Statement statement
        end local 11 // java.lang.String delimiter
        end local 10 // org.eclipse.jdt.core.dom.Block body
        end local 9 // java.util.List params
        end local 8 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 7 // org.eclipse.jdt.core.dom.AST ast
        end local 6 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        end local 5 // org.eclipse.jdt.core.dom.IVariableBinding delegatingField
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding delegate
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   56     0                          unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0   56     1                       rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   56     2                       imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   56     3                       context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   56     4                      delegate  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   56     5               delegatingField  Lorg/eclipse/jdt/core/dom/IVariableBinding;
            0   56     6                      settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            4   56     7                           ast  Lorg/eclipse/jdt/core/dom/AST;
            5   56     8                          decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
           11   56     9                        params  Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           13   56    10                          body  Lorg/eclipse/jdt/core/dom/Block;
           15   56    11                     delimiter  Ljava/lang/String;
           16   56    12                     statement  Lorg/eclipse/jdt/core/dom/Statement;
           17   56    13                    invocation  Lorg/eclipse/jdt/core/dom/MethodInvocation;
           19   56    14                     arguments  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Expression;>;
           20   24    15                             i  I
           26   29    15                        access  Lorg/eclipse/jdt/core/dom/FieldAccess;
           35   37    15               returnStatement  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           39   56    15                 declaringType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           42   56    16                 qualifiedName  Ljava/lang/String;
           43   56    17                packageBinding  Lorg/eclipse/jdt/core/dom/IPackageBinding;
           49   55    18   declaringClassQualifiedName  Ljava/lang/String;
           50   55    19              linkToMethodName  Ljava/lang/String;
           51   55    20  parameterTypesQualifiedNames  [Ljava/lang/String;
           52   55    21                        string  Ljava/lang/String;
           54   55    22                       javadoc  Lorg/eclipse/jdt/core/dom/Javadoc;
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
                 Name  Flags
      unit             
      rewrite          
      imports          
      context          
      delegate         
      delegatingField  
      settings         

  public static org.eclipse.jdt.core.dom.MethodDeclaration createImplementationStubCore(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.IMethodBinding, org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings, boolean, org.eclipse.jdt.core.dom.ASTNode, boolean);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;ZLorg/eclipse/jdt/core/dom/ASTNode;Z)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=10, args_size=10
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding targetType
        start local 6 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        start local 7 // boolean inInterface
        start local 8 // org.eclipse.jdt.core.dom.ASTNode astNode
        start local 9 // boolean snippetStringSupport
         0: .line 307
            aload 0 /* unit */
            aload 1 /* rewrite */
            aload 2 /* imports */
            aload 3 /* context */
            aload 4 /* binding */
            aconst_null
            aload 5 /* targetType */
            aload 6 /* settings */
         1: .line 308
            iload 7 /* inInterface */
            aload 8 /* astNode */
            iload 9 /* snippetStringSupport */
         2: .line 307
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createImplementationStubCore:(Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;ZLorg/eclipse/jdt/core/dom/ASTNode;Z)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            areturn
        end local 9 // boolean snippetStringSupport
        end local 8 // org.eclipse.jdt.core.dom.ASTNode astNode
        end local 7 // boolean inInterface
        end local 6 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding targetType
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    3     0                  unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0    3     1               rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0    3     2               imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0    3     3               context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0    3     4               binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0    3     5            targetType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0    3     6              settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            0    3     7           inInterface  Z
            0    3     8               astNode  Lorg/eclipse/jdt/core/dom/ASTNode;
            0    3     9  snippetStringSupport  Z
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
                      Name  Flags
      unit                  
      rewrite               
      imports               
      context               
      binding               
      targetType            
      settings              
      inInterface           
      astNode               
      snippetStringSupport  

  public static org.eclipse.jdt.core.dom.MethodDeclaration createImplementationStubCore(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.IMethodBinding, java.lang.String[], org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings, boolean, org.eclipse.jdt.core.dom.ASTNode, boolean);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;ZLorg/eclipse/jdt/core/dom/ASTNode;Z)Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=29, args_size=11
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 5 // java.lang.String[] parameterNames
        start local 6 // org.eclipse.jdt.core.dom.ITypeBinding targetType
        start local 7 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        start local 8 // boolean inInterface
        start local 9 // org.eclipse.jdt.core.dom.ASTNode astNode
        start local 10 // boolean snippetStringSupport
         0: .line 313
            aload 2 /* imports */
            invokestatic org.eclipse.core.runtime.Assert.isNotNull:(Ljava/lang/Object;)V
         1: .line 314
            aload 1 /* rewrite */
            invokestatic org.eclipse.core.runtime.Assert.isNotNull:(Ljava/lang/Object;)V
         2: .line 316
            aload 1 /* rewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getAST:()Lorg/eclipse/jdt/core/dom/AST;
            astore 11 /* ast */
        start local 11 // org.eclipse.jdt.core.dom.AST ast
         3: .line 317
            aload 6 /* targetType */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.getTypeQualifiedName:(Lorg/eclipse/jdt/core/dom/ITypeBinding;)Ljava/lang/String;
            astore 12 /* type */
        start local 12 // java.lang.String type
         4: .line 319
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            astore 13 /* javaProject */
        start local 13 // org.eclipse.jdt.core.IJavaProject javaProject
         5: .line 320
            aconst_null
            astore 14 /* nullnessDefault */
        start local 14 // java.util.EnumSet nullnessDefault
         6: .line 321
            aload 9 /* astNode */
            ifnull 8
            ldc "enabled"
            aload 13 /* javaProject */
            ldc "org.eclipse.jdt.core.compiler.annotation.nullanalysis"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 322
            aload 9 /* astNode */
            aload 13 /* javaProject */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.RedundantNullnessTypeAnnotationsFilter.determineNonNullByDefaultNames:(Lorg/eclipse/jdt/core/IJavaProject;)Ljava/util/Set;
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.RedundantNullnessTypeAnnotationsFilter.determineNonNullByDefaultLocations:(Lorg/eclipse/jdt/core/dom/ASTNode;Ljava/util/Set;)Ljava/util/EnumSet;
            astore 14 /* nullnessDefault */
         8: .line 325
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings int org.eclipse.jdt.core.dom.ASTNode int org.eclipse.jdt.core.dom.AST java.lang.String org.eclipse.jdt.core.IJavaProject java.util.EnumSet
      StackMap stack:
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMethodDeclaration:()Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            astore 15 /* decl */
        start local 15 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         9: .line 326
            aload 15 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            aload 11 /* ast */
            aload 4 /* binding */
            iload 8 /* inInterface */
            aload 2 /* imports */
            aload 3 /* context */
            aload 14 /* nullnessDefault */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getImplementationModifiers:(Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;ZLorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Ljava/util/EnumSet;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        10: .line 328
            aload 15 /* decl */
            aload 11 /* ast */
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        11: .line 329
            aload 15 /* decl */
            iconst_0
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setConstructor:(Z)V
        12: .line 331
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 16 /* bindingReturnType */
        start local 16 // org.eclipse.jdt.core.dom.ITypeBinding bindingReturnType
        13: .line 332
            aload 16 /* bindingReturnType */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.replaceWildcardsAndCaptures:(Lorg/eclipse/jdt/core/dom/ITypeBinding;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 16 /* bindingReturnType */
        14: .line 334
            aload 13 /* javaProject */
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.is50OrHigher:(Lorg/eclipse/jdt/core/IJavaProject;)Z
            ifeq 17
        15: .line 335
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            aload 4 /* binding */
            aload 15 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createTypeParameters:(Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)V
        16: .line 337
            goto 18
        17: .line 338
      StackMap locals: org.eclipse.jdt.core.dom.MethodDeclaration org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 16 /* bindingReturnType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getErasure:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 16 /* bindingReturnType */
        18: .line 341
      StackMap locals:
      StackMap stack:
            aload 15 /* decl */
            aload 2 /* imports */
            aload 16 /* bindingReturnType */
            aload 11 /* ast */
            aload 3 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.RETURN_TYPE:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setReturnType2:(Lorg/eclipse/jdt/core/dom/Type;)V
        19: .line 343
            aload 13 /* javaProject */
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            aload 4 /* binding */
            aload 5 /* parameterNames */
            aload 15 /* decl */
            aload 14 /* nullnessDefault */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createParameters:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Ljava/util/EnumSet;)Ljava/util/List;
            astore 17 /* parameters */
        start local 17 // java.util.List parameters
        20: .line 345
            aload 15 /* decl */
            aload 4 /* binding */
            aload 2 /* imports */
            aload 3 /* context */
            aload 11 /* ast */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createThrownExceptions:(Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;)V
        21: .line 347
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.findRecommendedLineSeparator:()Ljava/lang/String;
            astore 18 /* delimiter */
        start local 18 // java.lang.String delimiter
        22: .line 348
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 19 /* modifiers */
        start local 19 // int modifiers
        23: .line 349
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 20 /* declaringType */
        start local 20 // org.eclipse.jdt.core.dom.ITypeBinding declaringType
        24: .line 350
            aload 11 /* ast */
            ldc "java.lang.Object"
            invokevirtual org.eclipse.jdt.core.dom.AST.resolveWellKnownType:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 21 /* typeObject */
        start local 21 // org.eclipse.jdt.core.dom.ITypeBinding typeObject
        25: .line 351
            iload 8 /* inInterface */
            ifeq 26
            aload 20 /* declaringType */
            aload 21 /* typeObject */
            if_acmpeq 76
            aload 13 /* javaProject */
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.is18OrHigher:(Lorg/eclipse/jdt/core/IJavaProject;)Z
            ifeq 76
        26: .line 354
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings int org.eclipse.jdt.core.dom.ASTNode int org.eclipse.jdt.core.dom.AST java.lang.String org.eclipse.jdt.core.IJavaProject java.util.EnumSet org.eclipse.jdt.core.dom.MethodDeclaration org.eclipse.jdt.core.dom.ITypeBinding java.util.List java.lang.String int org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 13 /* javaProject */
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOptions:(Z)Ljava/util/Map;
            astore 22 /* options */
        start local 22 // java.util.Map options
        27: .line 356
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newBlock:()Lorg/eclipse/jdt/core/dom/Block;
            astore 23 /* body */
        start local 23 // org.eclipse.jdt.core.dom.Block body
        28: .line 357
            aload 15 /* decl */
            aload 23 /* body */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setBody:(Lorg/eclipse/jdt/core/dom/Block;)V
        29: .line 359
            ldc ""
            astore 24 /* bodyStatement */
        start local 24 // java.lang.String bodyStatement
        30: .line 360
            iload 19 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isAbstract:(I)Z
            ifeq 37
        31: .line 361
            aload 11 /* ast */
            aload 15 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.getReturnType2:()Lorg/eclipse/jdt/core/dom/Type;
            aload 15 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.getExtraDimensions:()I
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newDefaultExpression:(Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/Type;I)Lorg/eclipse/jdt/core/dom/Expression;
            astore 25 /* expression */
        start local 25 // org.eclipse.jdt.core.dom.Expression expression
        32: .line 362
            aload 25 /* expression */
            ifnull 59
        33: .line 363
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newReturnStatement:()Lorg/eclipse/jdt/core/dom/ReturnStatement;
            astore 26 /* returnStatement */
        start local 26 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        34: .line 364
            aload 26 /* returnStatement */
            aload 25 /* expression */
            invokevirtual org.eclipse.jdt.core.dom.ReturnStatement.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        35: .line 365
            aload 26 /* returnStatement */
            iconst_0
            aload 18 /* delimiter */
            aload 22 /* options */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodes.asFormattedString:(Lorg/eclipse/jdt/core/dom/ASTNode;ILjava/lang/String;Ljava/util/Map;)Ljava/lang/String;
            astore 24 /* bodyStatement */
        end local 26 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        end local 25 // org.eclipse.jdt.core.dom.Expression expression
        36: .line 367
            goto 59
        37: .line 368
      StackMap locals: java.util.Map org.eclipse.jdt.core.dom.Block java.lang.String
      StackMap stack:
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSuperMethodInvocation:()Lorg/eclipse/jdt/core/dom/SuperMethodInvocation;
            astore 25 /* invocation */
        start local 25 // org.eclipse.jdt.core.dom.SuperMethodInvocation invocation
        38: .line 369
            aload 20 /* declaringType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            ifeq 46
        39: .line 370
            aload 6 /* targetType */
            aload 20 /* declaringType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getTypeDeclaration:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.findImmediateSuperTypeInHierarchy:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 26 /* supertype */
        start local 26 // org.eclipse.jdt.core.dom.ITypeBinding supertype
        40: .line 371
            aload 26 /* supertype */
            ifnonnull 42
        41: .line 372
            aload 20 /* declaringType */
            astore 26 /* supertype */
        42: .line 374
      StackMap locals: org.eclipse.jdt.core.dom.SuperMethodInvocation org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 26 /* supertype */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            ifeq 46
        43: .line 375
            aload 2 /* imports */
            aload 26 /* supertype */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getTypeDeclaration:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 3 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Ljava/lang/String;
            astore 27 /* qualifier */
        start local 27 // java.lang.String qualifier
        44: .line 376
            aload 11 /* ast */
            aload 27 /* qualifier */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newName:(Lorg/eclipse/jdt/core/dom/AST;Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/Name;
            astore 28 /* name */
        start local 28 // org.eclipse.jdt.core.dom.Name name
        45: .line 377
            aload 25 /* invocation */
            aload 28 /* name */
            invokevirtual org.eclipse.jdt.core.dom.SuperMethodInvocation.setQualifier:(Lorg/eclipse/jdt/core/dom/Name;)V
        end local 28 // org.eclipse.jdt.core.dom.Name name
        end local 27 // java.lang.String qualifier
        end local 26 // org.eclipse.jdt.core.dom.ITypeBinding supertype
        46: .line 380
      StackMap locals:
      StackMap stack:
            aload 25 /* invocation */
            aload 11 /* ast */
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SuperMethodInvocation.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        47: .line 382
            aload 17 /* parameters */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 27
            goto 50
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings int org.eclipse.jdt.core.dom.ASTNode int org.eclipse.jdt.core.dom.AST java.lang.String org.eclipse.jdt.core.IJavaProject java.util.EnumSet org.eclipse.jdt.core.dom.MethodDeclaration org.eclipse.jdt.core.dom.ITypeBinding java.util.List java.lang.String int org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.Map org.eclipse.jdt.core.dom.Block java.lang.String org.eclipse.jdt.core.dom.SuperMethodInvocation top java.util.Iterator
      StackMap stack:
        48: aload 27
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.SingleVariableDeclaration
            astore 26 /* varDecl */
        start local 26 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        49: .line 383
            aload 25 /* invocation */
            invokevirtual org.eclipse.jdt.core.dom.SuperMethodInvocation.arguments:()Ljava/util/List;
            aload 11 /* ast */
            aload 26 /* varDecl */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.getName:()Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SimpleName.getIdentifier:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 26 // org.eclipse.jdt.core.dom.SingleVariableDeclaration varDecl
        50: .line 382
      StackMap locals:
      StackMap stack:
            aload 27
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 48
        51: .line 385
            aload 25 /* invocation */
            astore 26 /* expression */
        start local 26 // org.eclipse.jdt.core.dom.Expression expression
        52: .line 386
            aload 15 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.getReturnType2:()Lorg/eclipse/jdt/core/dom/Type;
            astore 27 /* returnType */
        start local 27 // org.eclipse.jdt.core.dom.Type returnType
        53: .line 387
            aload 27 /* returnType */
            instanceof org.eclipse.jdt.core.dom.PrimitiveType
            ifeq 56
            aload 27 /* returnType */
            checkcast org.eclipse.jdt.core.dom.PrimitiveType
            invokevirtual org.eclipse.jdt.core.dom.PrimitiveType.getPrimitiveTypeCode:()Lorg/eclipse/jdt/core/dom/PrimitiveType$Code;
            getstatic org.eclipse.jdt.core.dom.PrimitiveType.VOID:Lorg/eclipse/jdt/core/dom/PrimitiveType$Code;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 56
        54: .line 388
            aload 11 /* ast */
            aload 26 /* expression */
            invokevirtual org.eclipse.jdt.core.dom.AST.newExpressionStatement:(Lorg/eclipse/jdt/core/dom/Expression;)Lorg/eclipse/jdt/core/dom/ExpressionStatement;
            iconst_0
            aload 18 /* delimiter */
            aload 22 /* options */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodes.asFormattedString:(Lorg/eclipse/jdt/core/dom/ASTNode;ILjava/lang/String;Ljava/util/Map;)Ljava/lang/String;
            astore 24 /* bodyStatement */
        55: .line 389
            goto 59
        56: .line 390
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings int org.eclipse.jdt.core.dom.ASTNode int org.eclipse.jdt.core.dom.AST java.lang.String org.eclipse.jdt.core.IJavaProject java.util.EnumSet org.eclipse.jdt.core.dom.MethodDeclaration org.eclipse.jdt.core.dom.ITypeBinding java.util.List java.lang.String int org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.Map org.eclipse.jdt.core.dom.Block java.lang.String org.eclipse.jdt.core.dom.SuperMethodInvocation org.eclipse.jdt.core.dom.Expression org.eclipse.jdt.core.dom.Type
      StackMap stack:
            aload 11 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newReturnStatement:()Lorg/eclipse/jdt/core/dom/ReturnStatement;
            astore 28 /* returnStatement */
        start local 28 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        57: .line 391
            aload 28 /* returnStatement */
            aload 26 /* expression */
            invokevirtual org.eclipse.jdt.core.dom.ReturnStatement.setExpression:(Lorg/eclipse/jdt/core/dom/Expression;)V
        58: .line 392
            aload 28 /* returnStatement */
            iconst_0
            aload 18 /* delimiter */
            aload 22 /* options */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodes.asFormattedString:(Lorg/eclipse/jdt/core/dom/ASTNode;ILjava/lang/String;Ljava/util/Map;)Ljava/lang/String;
            astore 24 /* bodyStatement */
        end local 28 // org.eclipse.jdt.core.dom.ReturnStatement returnStatement
        end local 27 // org.eclipse.jdt.core.dom.Type returnType
        end local 26 // org.eclipse.jdt.core.dom.Expression expression
        end local 25 // org.eclipse.jdt.core.dom.SuperMethodInvocation invocation
        59: .line 396
      StackMap locals:
      StackMap stack:
            aload 24 /* bodyStatement */
            ifnull 76
        60: .line 397
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 25 /* placeHolder */
        start local 25 // java.lang.StringBuilder placeHolder
        61: .line 398
            iload 10 /* snippetStringSupport */
            ifeq 63
        62: .line 401
            aload 24 /* bodyStatement */
            ldc "\\$"
            ldc "\\\\\\$"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 24 /* bodyStatement */
        63: .line 403
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* unit */
            aload 12 /* type */
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getName:()Ljava/lang/String;
            iconst_0
            aload 24 /* bodyStatement */
            aload 18 /* delimiter */
            invokestatic org.eclipse.jdt.core.manipulation.CodeGeneration.getMethodBodyContent:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 26 /* bodyContent */
        start local 26 // java.lang.String bodyContent
        64: .line 405
            iload 10 /* snippetStringSupport */
            ifeq 71
        65: .line 406
            aload 25 /* placeHolder */
            ldc "${0"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        66: .line 407
            aload 26 /* bodyContent */
            ifnull 69
        67: .line 408
            aload 25 /* placeHolder */
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        68: .line 409
            aload 25 /* placeHolder */
            aload 26 /* bodyContent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        69: .line 411
      StackMap locals: java.lang.String
      StackMap stack:
            aload 25 /* placeHolder */
            ldc "}"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        70: .line 412
            goto 73
        71: .line 413
      StackMap locals:
      StackMap stack:
            aload 26 /* bodyContent */
            ifnull 73
        72: .line 414
            aload 25 /* placeHolder */
            aload 26 /* bodyContent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        73: .line 418
      StackMap locals:
      StackMap stack:
            aload 26 /* bodyContent */
            ifnonnull 74
            iload 10 /* snippetStringSupport */
            ifeq 76
        74: .line 419
      StackMap locals:
      StackMap stack:
            aload 1 /* rewrite */
            aload 25 /* placeHolder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            bipush 41
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.ReturnStatement
            astore 27 /* todoNode */
        start local 27 // org.eclipse.jdt.core.dom.ReturnStatement todoNode
        75: .line 420
            aload 23 /* body */
            invokevirtual org.eclipse.jdt.core.dom.Block.statements:()Ljava/util/List;
            aload 27 /* todoNode */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 27 // org.eclipse.jdt.core.dom.ReturnStatement todoNode
        end local 26 // java.lang.String bodyContent
        end local 25 // java.lang.StringBuilder placeHolder
        end local 24 // java.lang.String bodyStatement
        end local 23 // org.eclipse.jdt.core.dom.Block body
        end local 22 // java.util.Map options
        76: .line 425
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit org.eclipse.jdt.core.dom.rewrite.ASTRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings int org.eclipse.jdt.core.dom.ASTNode int org.eclipse.jdt.core.dom.AST java.lang.String org.eclipse.jdt.core.IJavaProject java.util.EnumSet org.eclipse.jdt.core.dom.MethodDeclaration org.eclipse.jdt.core.dom.ITypeBinding java.util.List java.lang.String int org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 7 /* settings */
            ifnull 81
            aload 7 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.createComments:Z
            ifeq 81
        77: .line 426
            aload 0 /* unit */
            aload 12 /* type */
            aload 15 /* decl */
            aload 4 /* binding */
            aload 18 /* delimiter */
            invokestatic org.eclipse.jdt.core.manipulation.CodeGeneration.getMethodComment:(Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/lang/String;)Ljava/lang/String;
            astore 22 /* string */
        start local 22 // java.lang.String string
        78: .line 427
            aload 22 /* string */
            ifnull 81
        79: .line 428
            aload 1 /* rewrite */
            aload 22 /* string */
            bipush 29
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.createStringPlaceholder:(Ljava/lang/String;I)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.Javadoc
            astore 23 /* javadoc */
        start local 23 // org.eclipse.jdt.core.dom.Javadoc javadoc
        80: .line 429
            aload 15 /* decl */
            aload 23 /* javadoc */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.setJavadoc:(Lorg/eclipse/jdt/core/dom/Javadoc;)V
        end local 23 // org.eclipse.jdt.core.dom.Javadoc javadoc
        end local 22 // java.lang.String string
        81: .line 435
      StackMap locals:
      StackMap stack:
            iload 8 /* inInterface */
            ifeq 82
            aload 20 /* declaringType */
            aload 21 /* typeObject */
            if_acmpne 82
            iload 19 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPublic:(I)Z
            ifne 82
            iconst_1
            goto 83
      StackMap locals:
      StackMap stack:
        82: iconst_0
      StackMap locals:
      StackMap stack: int
        83: istore 22 /* skipOverride */
        start local 22 // boolean skipOverride
        84: .line 437
            iload 22 /* skipOverride */
            ifne 86
        85: .line 438
            aload 7 /* settings */
            aload 13 /* javaProject */
            aload 1 /* rewrite */
            aload 2 /* imports */
            aload 15 /* decl */
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            aconst_null
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.addOverrideAnnotation:(Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/MethodDeclaration;ZLorg/eclipse/text/edits/TextEditGroup;)V
        86: .line 440
      StackMap locals: int
      StackMap stack:
            aload 15 /* decl */
            areturn
        end local 22 // boolean skipOverride
        end local 21 // org.eclipse.jdt.core.dom.ITypeBinding typeObject
        end local 20 // org.eclipse.jdt.core.dom.ITypeBinding declaringType
        end local 19 // int modifiers
        end local 18 // java.lang.String delimiter
        end local 17 // java.util.List parameters
        end local 16 // org.eclipse.jdt.core.dom.ITypeBinding bindingReturnType
        end local 15 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 14 // java.util.EnumSet nullnessDefault
        end local 13 // org.eclipse.jdt.core.IJavaProject javaProject
        end local 12 // java.lang.String type
        end local 11 // org.eclipse.jdt.core.dom.AST ast
        end local 10 // boolean snippetStringSupport
        end local 9 // org.eclipse.jdt.core.dom.ASTNode astNode
        end local 8 // boolean inInterface
        end local 7 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        end local 6 // org.eclipse.jdt.core.dom.ITypeBinding targetType
        end local 5 // java.lang.String[] parameterNames
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   87     0                  unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0   87     1               rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   87     2               imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   87     3               context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   87     4               binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   87     5        parameterNames  [Ljava/lang/String;
            0   87     6            targetType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   87     7              settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            0   87     8           inInterface  Z
            0   87     9               astNode  Lorg/eclipse/jdt/core/dom/ASTNode;
            0   87    10  snippetStringSupport  Z
            3   87    11                   ast  Lorg/eclipse/jdt/core/dom/AST;
            4   87    12                  type  Ljava/lang/String;
            5   87    13           javaProject  Lorg/eclipse/jdt/core/IJavaProject;
            6   87    14       nullnessDefault  Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;
            9   87    15                  decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
           13   87    16     bindingReturnType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           20   87    17            parameters  Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
           22   87    18             delimiter  Ljava/lang/String;
           23   87    19             modifiers  I
           24   87    20         declaringType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           25   87    21            typeObject  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           27   76    22               options  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           28   76    23                  body  Lorg/eclipse/jdt/core/dom/Block;
           30   76    24         bodyStatement  Ljava/lang/String;
           32   36    25            expression  Lorg/eclipse/jdt/core/dom/Expression;
           34   36    26       returnStatement  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           38   59    25            invocation  Lorg/eclipse/jdt/core/dom/SuperMethodInvocation;
           40   46    26             supertype  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           44   46    27             qualifier  Ljava/lang/String;
           45   46    28                  name  Lorg/eclipse/jdt/core/dom/Name;
           49   50    26               varDecl  Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
           52   59    26            expression  Lorg/eclipse/jdt/core/dom/Expression;
           53   59    27            returnType  Lorg/eclipse/jdt/core/dom/Type;
           57   59    28       returnStatement  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           61   76    25           placeHolder  Ljava/lang/StringBuilder;
           64   76    26           bodyContent  Ljava/lang/String;
           75   76    27              todoNode  Lorg/eclipse/jdt/core/dom/ReturnStatement;
           78   81    22                string  Ljava/lang/String;
           80   81    23               javadoc  Lorg/eclipse/jdt/core/dom/Javadoc;
           84   87    22          skipOverride  Z
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
                      Name  Flags
      unit                  
      rewrite               
      imports               
      context               
      binding               
      parameterNames        
      targetType            
      settings              
      inInterface           
      astNode               
      snippetStringSupport  

  public static void createTypeParameters(org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.IMethodBinding, org.eclipse.jdt.core.dom.MethodDeclaration);
    descriptor: (Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=13, args_size=5
        start local 0 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 2 // org.eclipse.jdt.core.dom.AST ast
        start local 3 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 4 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         0: .line 444
            aload 3 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getTypeParameters:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* typeParams */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding[] typeParams
         1: .line 445
            aload 4 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.typeParameters:()Ljava/util/List;
            astore 6 /* typeParameters */
        start local 6 // java.util.List typeParameters
         2: .line 446
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         3: goto 17
         4: .line 447
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] java.util.List int
      StackMap stack:
            aload 5 /* typeParams */
            iload 7 /* i */
            aaload
            astore 8 /* curr */
        start local 8 // org.eclipse.jdt.core.dom.ITypeBinding curr
         5: .line 448
            aload 2 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newTypeParameter:()Lorg/eclipse/jdt/core/dom/TypeParameter;
            astore 9 /* newTypeParam */
        start local 9 // org.eclipse.jdt.core.dom.TypeParameter newTypeParam
         6: .line 449
            aload 9 /* newTypeParam */
            aload 2 /* ast */
            aload 8 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.TypeParameter.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
         7: .line 450
            aload 8 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getTypeBounds:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 10 /* typeBounds */
        start local 10 // org.eclipse.jdt.core.dom.ITypeBinding[] typeBounds
         8: .line 451
            aload 10 /* typeBounds */
            arraylength
            iconst_1
            if_icmpne 9
            ldc "java.lang.Object"
            aload 10 /* typeBounds */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
         9: .line 452
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.TypeParameter org.eclipse.jdt.core.dom.ITypeBinding[]
      StackMap stack:
            aload 9 /* newTypeParam */
            invokevirtual org.eclipse.jdt.core.dom.TypeParameter.typeBounds:()Ljava/util/List;
            astore 11 /* newTypeBounds */
        start local 11 // java.util.List newTypeBounds
        10: .line 453
            iconst_0
            istore 12 /* k */
        start local 12 // int k
        11: goto 14
        12: .line 454
      StackMap locals: java.util.List int
      StackMap stack:
            aload 11 /* newTypeBounds */
            aload 0 /* imports */
            aload 10 /* typeBounds */
            iload 12 /* k */
            aaload
            aload 2 /* ast */
            aload 1 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.TYPE_BOUND:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 453
            iinc 12 /* k */ 1
      StackMap locals:
      StackMap stack:
        14: iload 12 /* k */
            aload 10 /* typeBounds */
            arraylength
            if_icmplt 12
        end local 12 // int k
        end local 11 // java.util.List newTypeBounds
        15: .line 457
      StackMap locals:
      StackMap stack:
            aload 6 /* typeParameters */
            aload 9 /* newTypeParam */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.eclipse.jdt.core.dom.ITypeBinding[] typeBounds
        end local 9 // org.eclipse.jdt.core.dom.TypeParameter newTypeParam
        end local 8 // org.eclipse.jdt.core.dom.ITypeBinding curr
        16: .line 446
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* i */
            aload 5 /* typeParams */
            arraylength
            if_icmplt 4
        end local 7 // int i
        18: .line 459
            return
        end local 6 // java.util.List typeParameters
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding[] typeParams
        end local 4 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 3 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 2 // org.eclipse.jdt.core.dom.AST ast
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 0 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   19     0         imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   19     1         context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   19     2             ast  Lorg/eclipse/jdt/core/dom/AST;
            0   19     3         binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   19     4            decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            1   19     5      typeParams  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
            2   19     6  typeParameters  Ljava/util/List<Lorg/eclipse/jdt/core/dom/TypeParameter;>;
            3   18     7               i  I
            5   16     8            curr  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            6   16     9    newTypeParam  Lorg/eclipse/jdt/core/dom/TypeParameter;
            8   16    10      typeBounds  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           10   15    11   newTypeBounds  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Type;>;
           11   15    12               k  I
    MethodParameters:
         Name  Flags
      imports  
      context  
      ast      
      binding  
      decl     

  public static java.util.List<org.eclipse.jdt.core.dom.SingleVariableDeclaration> createParameters(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.IMethodBinding, java.lang.String[], org.eclipse.jdt.core.dom.MethodDeclaration);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.eclipse.jdt.core.IJavaProject project
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 3 // org.eclipse.jdt.core.dom.AST ast
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 5 // java.lang.String[] paramNames
        start local 6 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         0: .line 462
            aload 0 /* project */
            aload 1 /* imports */
            aload 2 /* context */
            aload 3 /* ast */
            aload 4 /* binding */
            aload 5 /* paramNames */
            aload 6 /* decl */
            aconst_null
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createParameters:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Ljava/util/EnumSet;)Ljava/util/List;
            areturn
        end local 6 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 5 // java.lang.String[] paramNames
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 3 // org.eclipse.jdt.core.dom.AST ast
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 0 // org.eclipse.jdt.core.IJavaProject project
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0     project  Lorg/eclipse/jdt/core/IJavaProject;
            0    1     1     imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0    1     2     context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0    1     3         ast  Lorg/eclipse/jdt/core/dom/AST;
            0    1     4     binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0    1     5  paramNames  [Ljava/lang/String;
            0    1     6        decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    Signature: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
    MethodParameters:
            Name  Flags
      project     
      imports     
      context     
      ast         
      binding     
      paramNames  
      decl        

  public static java.util.List<org.eclipse.jdt.core.dom.SingleVariableDeclaration> createParameters(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.IMethodBinding, java.lang.String[], org.eclipse.jdt.core.dom.MethodDeclaration, java.util.EnumSet<org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation>);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Ljava/util/EnumSet;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=21, args_size=8
        start local 0 // org.eclipse.jdt.core.IJavaProject project
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 3 // org.eclipse.jdt.core.dom.AST ast
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        start local 5 // java.lang.String[] paramNames
        start local 6 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        start local 7 // java.util.EnumSet nullnessDefault
         0: .line 466
            aload 0 /* project */
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.is50OrHigher:(Lorg/eclipse/jdt/core/IJavaProject;)Z
            istore 8 /* is50OrHigher */
        start local 8 // boolean is50OrHigher
         1: .line 467
            aload 6 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.parameters:()Ljava/util/List;
            astore 9 /* parameters */
        start local 9 // java.util.List parameters
         2: .line 468
            aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getParameterTypes:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 10 /* params */
        start local 10 // org.eclipse.jdt.core.dom.ITypeBinding[] params
         3: .line 469
            aload 5 /* paramNames */
            ifnull 4
            aload 5 /* paramNames */
            arraylength
            aload 10 /* params */
            arraylength
            if_icmpge 5
         4: .line 470
      StackMap locals: int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[]
      StackMap stack:
            aload 0 /* project */
            aload 4 /* binding */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.suggestArgumentNames:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/IMethodBinding;)[Ljava/lang/String;
            astore 5 /* paramNames */
         5: .line 472
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* i */
        start local 11 // int i
         6: goto 56
         7: .line 473
      StackMap locals: int
      StackMap stack:
            aload 3 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newSingleVariableDeclaration:()Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
            astore 12 /* var */
        start local 12 // org.eclipse.jdt.core.dom.SingleVariableDeclaration var
         8: .line 474
            aload 10 /* params */
            iload 11 /* i */
            aaload
            astore 13 /* type */
        start local 13 // org.eclipse.jdt.core.dom.ITypeBinding type
         9: .line 475
            aload 13 /* type */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.replaceWildcardsAndCaptures:(Lorg/eclipse/jdt/core/dom/ITypeBinding;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 13 /* type */
        10: .line 476
            iload 8 /* is50OrHigher */
            ifne 14
        11: .line 477
            aload 13 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getErasure:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 13 /* type */
        12: .line 478
            aload 12 /* var */
            aload 1 /* imports */
            aload 13 /* type */
            aload 3 /* ast */
            aload 2 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.PARAMETER:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setType:(Lorg/eclipse/jdt/core/dom/Type;)V
        13: .line 479
            goto 46
      StackMap locals: org.eclipse.jdt.core.dom.SingleVariableDeclaration org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
        14: aload 4 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isVarargs:()Z
            ifeq 45
            aload 13 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isArray:()Z
            ifeq 45
            iload 11 /* i */
            aload 10 /* params */
            arraylength
            iconst_1
            isub
            if_icmpne 45
        15: .line 480
            aload 12 /* var */
            iconst_1
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setVarargs:(Z)V
        16: .line 488
            aload 13 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDimensions:()I
            istore 14 /* dimensions */
        start local 14 // int dimensions
        17: .line 490
            iload 14 /* dimensions */
            anewarray java.util.List
            astore 15 /* dimensionAnnotations */
        start local 15 // java.util.List[] dimensionAnnotations
        18: .line 491
            iconst_0
            istore 16 /* dim */
        start local 16 // int dim
        19: goto 28
        20: .line 492
      StackMap locals: int java.util.List[] int
      StackMap stack:
            aload 15 /* dimensionAnnotations */
            iload 16 /* dim */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            aastore
        21: .line 493
            aload 13 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getTypeAnnotations:()[Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
            dup
            astore 20
            arraylength
            istore 19
            iconst_0
            istore 18
            goto 25
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.MethodDeclaration java.util.EnumSet int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[] int org.eclipse.jdt.core.dom.SingleVariableDeclaration org.eclipse.jdt.core.dom.ITypeBinding int java.util.List[] int top int int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
        22: aload 20
            iload 18
            aaload
            astore 17 /* annotation */
        start local 17 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        23: .line 494
            aload 15 /* dimensionAnnotations */
            iload 16 /* dim */
            aaload
            aload 1 /* imports */
            aload 17 /* annotation */
            aload 3 /* ast */
            aload 2 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addAnnotation:(Lorg/eclipse/jdt/core/dom/IAnnotationBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Lorg/eclipse/jdt/core/dom/Annotation;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        24: .line 493
            iinc 18 1
      StackMap locals:
      StackMap stack:
        25: iload 18
            iload 19
            if_icmplt 22
        26: .line 496
            aload 13 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getComponentType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 13 /* type */
        27: .line 491
            iinc 16 /* dim */ 1
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.MethodDeclaration java.util.EnumSet int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[] int org.eclipse.jdt.core.dom.SingleVariableDeclaration org.eclipse.jdt.core.dom.ITypeBinding int java.util.List[] int
      StackMap stack:
        28: iload 16 /* dim */
            iload 14 /* dimensions */
            if_icmplt 20
        end local 16 // int dim
        29: .line 499
            aload 1 /* imports */
            aload 13 /* type */
            aload 3 /* ast */
            aload 2 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Lorg/eclipse/jdt/core/dom/Type;
            astore 16 /* elementType */
        start local 16 // org.eclipse.jdt.core.dom.Type elementType
        30: .line 500
            iload 14 /* dimensions */
            iconst_1
            if_icmpne 33
        31: .line 501
            aload 12 /* var */
            aload 16 /* elementType */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setType:(Lorg/eclipse/jdt/core/dom/Type;)V
        32: .line 502
            goto 42
        33: .line 503
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.MethodDeclaration java.util.EnumSet int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[] int org.eclipse.jdt.core.dom.SingleVariableDeclaration org.eclipse.jdt.core.dom.ITypeBinding int java.util.List[] org.eclipse.jdt.core.dom.Type
      StackMap stack:
            aload 3 /* ast */
            aload 16 /* elementType */
            iload 14 /* dimensions */
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.core.dom.AST.newArrayType:(Lorg/eclipse/jdt/core/dom/Type;I)Lorg/eclipse/jdt/core/dom/ArrayType;
            astore 17 /* arrayType */
        start local 17 // org.eclipse.jdt.core.dom.ArrayType arrayType
        34: .line 504
            aload 17 /* arrayType */
            invokevirtual org.eclipse.jdt.core.dom.ArrayType.dimensions:()Ljava/util/List;
            astore 18 /* dimensionNodes */
        start local 18 // java.util.List dimensionNodes
        35: .line 505
            iconst_0
            istore 19 /* dim */
        start local 19 // int dim
        36: goto 40
        37: .line 506
      StackMap locals: org.eclipse.jdt.core.dom.ArrayType java.util.List int
      StackMap stack:
            aload 18 /* dimensionNodes */
            iload 19 /* dim */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.Dimension
            astore 20 /* dimension */
        start local 20 // org.eclipse.jdt.core.dom.Dimension dimension
        38: .line 507
            aload 20 /* dimension */
            invokevirtual org.eclipse.jdt.core.dom.Dimension.annotations:()Ljava/util/List;
            aload 15 /* dimensionAnnotations */
            iload 19 /* dim */
            aaload
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 20 // org.eclipse.jdt.core.dom.Dimension dimension
        39: .line 505
            iinc 19 /* dim */ 1
      StackMap locals:
      StackMap stack:
        40: iload 19 /* dim */
            iload 14 /* dimensions */
            iconst_1
            isub
            if_icmplt 37
        end local 19 // int dim
        41: .line 509
            aload 12 /* var */
            aload 17 /* arrayType */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setType:(Lorg/eclipse/jdt/core/dom/Type;)V
        end local 18 // java.util.List dimensionNodes
        end local 17 // org.eclipse.jdt.core.dom.ArrayType arrayType
        42: .line 511
      StackMap locals:
      StackMap stack:
            aload 15 /* dimensionAnnotations */
            iload 14 /* dimensions */
            iconst_1
            isub
            aaload
            astore 17 /* varargTypeAnnotations */
        start local 17 // java.util.List varargTypeAnnotations
        43: .line 512
            aload 12 /* var */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.varargsAnnotations:()Ljava/util/List;
            aload 17 /* varargTypeAnnotations */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 17 // java.util.List varargTypeAnnotations
        end local 16 // org.eclipse.jdt.core.dom.Type elementType
        end local 15 // java.util.List[] dimensionAnnotations
        end local 14 // int dimensions
        44: .line 513
            goto 46
        45: .line 514
      StackMap locals:
      StackMap stack:
            aload 12 /* var */
            aload 1 /* imports */
            aload 13 /* type */
            aload 3 /* ast */
            aload 2 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.PARAMETER:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setType:(Lorg/eclipse/jdt/core/dom/Type;)V
        46: .line 516
      StackMap locals:
      StackMap stack:
            aload 12 /* var */
            aload 3 /* ast */
            aload 5 /* paramNames */
            iload 11 /* i */
            aaload
            invokevirtual org.eclipse.jdt.core.dom.AST.newSimpleName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/SimpleName;
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.setName:(Lorg/eclipse/jdt/core/dom/SimpleName;)V
        47: .line 517
            aload 4 /* binding */
            iload 11 /* i */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getParameterAnnotations:(I)[Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
            astore 14 /* annotations */
        start local 14 // org.eclipse.jdt.core.dom.IAnnotationBinding[] annotations
        48: .line 518
            aload 14 /* annotations */
            dup
            astore 18
            arraylength
            istore 17
            iconst_0
            istore 16
            goto 53
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.MethodDeclaration java.util.EnumSet int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[] int org.eclipse.jdt.core.dom.SingleVariableDeclaration org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.IAnnotationBinding[] top int int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
        49: aload 18
            iload 16
            aaload
            astore 15 /* annotation */
        start local 15 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        50: .line 519
            aload 15 /* annotation */
            invokeinterface org.eclipse.jdt.core.dom.IAnnotationBinding.getAnnotationType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 0 /* project */
            aload 7 /* nullnessDefault */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.PARAMETER:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.isCopyOnInheritAnnotation:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/EnumSet;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Z
            ifeq 52
        51: .line 520
            aload 12 /* var */
            invokevirtual org.eclipse.jdt.core.dom.SingleVariableDeclaration.modifiers:()Ljava/util/List;
            aload 1 /* imports */
            aload 15 /* annotation */
            aload 3 /* ast */
            aload 2 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addAnnotation:(Lorg/eclipse/jdt/core/dom/IAnnotationBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Lorg/eclipse/jdt/core/dom/Annotation;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 15 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        52: .line 518
      StackMap locals:
      StackMap stack:
            iinc 16 1
      StackMap locals:
      StackMap stack:
        53: iload 16
            iload 17
            if_icmplt 49
        54: .line 522
            aload 9 /* parameters */
            aload 12 /* var */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 14 // org.eclipse.jdt.core.dom.IAnnotationBinding[] annotations
        end local 13 // org.eclipse.jdt.core.dom.ITypeBinding type
        end local 12 // org.eclipse.jdt.core.dom.SingleVariableDeclaration var
        55: .line 472
            iinc 11 /* i */ 1
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding java.lang.String[] org.eclipse.jdt.core.dom.MethodDeclaration java.util.EnumSet int java.util.List org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
        56: iload 11 /* i */
            aload 10 /* params */
            arraylength
            if_icmplt 7
        end local 11 // int i
        57: .line 524
            aload 9 /* parameters */
            areturn
        end local 10 // org.eclipse.jdt.core.dom.ITypeBinding[] params
        end local 9 // java.util.List parameters
        end local 8 // boolean is50OrHigher
        end local 7 // java.util.EnumSet nullnessDefault
        end local 6 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 5 // java.lang.String[] paramNames
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding binding
        end local 3 // org.eclipse.jdt.core.dom.AST ast
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 0 // org.eclipse.jdt.core.IJavaProject project
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   58     0                project  Lorg/eclipse/jdt/core/IJavaProject;
            0   58     1                imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   58     2                context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   58     3                    ast  Lorg/eclipse/jdt/core/dom/AST;
            0   58     4                binding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   58     5             paramNames  [Ljava/lang/String;
            0   58     6                   decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            0   58     7        nullnessDefault  Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;
            1   58     8           is50OrHigher  Z
            2   58     9             parameters  Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
            3   58    10                 params  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
            6   57    11                      i  I
            8   55    12                    var  Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;
            9   55    13                   type  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           17   44    14             dimensions  I
           18   44    15   dimensionAnnotations  [Ljava/util/List;
           19   29    16                    dim  I
           23   24    17             annotation  Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
           30   44    16            elementType  Lorg/eclipse/jdt/core/dom/Type;
           34   42    17              arrayType  Lorg/eclipse/jdt/core/dom/ArrayType;
           35   42    18         dimensionNodes  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Dimension;>;
           36   41    19                    dim  I
           38   39    20              dimension  Lorg/eclipse/jdt/core/dom/Dimension;
           43   44    17  varargTypeAnnotations  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Annotation;>;
           48   55    14            annotations  [Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
           50   52    15             annotation  Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
    Signature: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;[Ljava/lang/String;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;)Ljava/util/List<Lorg/eclipse/jdt/core/dom/SingleVariableDeclaration;>;
    MethodParameters:
                 Name  Flags
      project          
      imports          
      context          
      ast              
      binding          
      paramNames       
      decl             
      nullnessDefault  

  public static void createThrownExceptions(org.eclipse.jdt.core.dom.MethodDeclaration, org.eclipse.jdt.core.dom.IMethodBinding, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, org.eclipse.jdt.core.dom.AST);
    descriptor: (Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/AST;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        start local 1 // org.eclipse.jdt.core.dom.IMethodBinding method
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 4 // org.eclipse.jdt.core.dom.AST ast
         0: .line 528
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getExceptionTypes:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* excTypes */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding[] excTypes
         1: .line 529
            aload 4 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.apiLevel:()I
            bipush 8
            if_icmplt 10
         2: .line 530
            aload 0 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.thrownExceptionTypes:()Ljava/util/List;
            astore 6 /* thrownExceptions */
        start local 6 // java.util.List thrownExceptions
         3: .line 531
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         4: goto 8
         5: .line 532
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] java.util.List int
      StackMap stack:
            aload 2 /* imports */
            aload 5 /* excTypes */
            iload 7 /* i */
            aaload
            aload 4 /* ast */
            aload 3 /* context */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.EXCEPTION:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Lorg/eclipse/jdt/core/dom/Type;
            astore 8 /* excType */
        start local 8 // org.eclipse.jdt.core.dom.Type excType
         6: .line 533
            aload 6 /* thrownExceptions */
            aload 8 /* excType */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.eclipse.jdt.core.dom.Type excType
         7: .line 531
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* i */
            aload 5 /* excTypes */
            arraylength
            if_icmplt 5
        end local 7 // int i
        end local 6 // java.util.List thrownExceptions
         9: .line 535
            goto 17
        10: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* decl */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getThrownExceptions:(Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
            astore 6 /* thrownExceptions */
        start local 6 // java.util.List thrownExceptions
        11: .line 537
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        12: goto 16
        13: .line 538
      StackMap locals: java.util.List int
      StackMap stack:
            aload 2 /* imports */
            aload 5 /* excTypes */
            iload 7 /* i */
            aaload
            aload 3 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Ljava/lang/String;
            astore 8 /* excTypeName */
        start local 8 // java.lang.String excTypeName
        14: .line 539
            aload 6 /* thrownExceptions */
            aload 4 /* ast */
            aload 8 /* excTypeName */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newName:(Lorg/eclipse/jdt/core/dom/AST;Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/Name;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String excTypeName
        15: .line 537
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 7 /* i */
            aload 5 /* excTypes */
            arraylength
            if_icmplt 13
        end local 7 // int i
        end local 6 // java.util.List thrownExceptions
        17: .line 542
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding[] excTypes
        end local 4 // org.eclipse.jdt.core.dom.AST ast
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 1 // org.eclipse.jdt.core.dom.IMethodBinding method
        end local 0 // org.eclipse.jdt.core.dom.MethodDeclaration decl
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            0   18     1            method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   18     2           imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   18     3           context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   18     4               ast  Lorg/eclipse/jdt/core/dom/AST;
            1   18     5          excTypes  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
            3    9     6  thrownExceptions  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Type;>;
            4    9     7                 i  I
            6    7     8           excType  Lorg/eclipse/jdt/core/dom/Type;
           11   17     6  thrownExceptions  Ljava/util/List<Lorg/eclipse/jdt/core/dom/Name;>;
           12   17     7                 i  I
           14   15     8       excTypeName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      decl     
      method   
      imports  
      context  
      ast      

  private static java.util.List<org.eclipse.jdt.core.dom.Name> getThrownExceptions(org.eclipse.jdt.core.dom.MethodDeclaration);
    descriptor: (Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.MethodDeclaration decl
         0: .line 551
            aload 0 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.thrownExceptions:()Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.MethodDeclaration decl
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
    Signature: (Lorg/eclipse/jdt/core/dom/MethodDeclaration;)Ljava/util/List<Lorg/eclipse/jdt/core/dom/Name;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      decl  

  private static org.eclipse.jdt.core.dom.IMethodBinding findMethodBinding(org.eclipse.jdt.core.dom.IMethodBinding, java.util.List<org.eclipse.jdt.core.dom.IMethodBinding>);
    descriptor: (Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.IMethodBinding method
        start local 1 // java.util.List allMethods
         0: .line 555
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 6
         2: .line 556
      StackMap locals: int
      StackMap stack:
            aload 1 /* allMethods */
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            astore 3 /* curr */
        start local 3 // org.eclipse.jdt.core.dom.IMethodBinding curr
         3: .line 557
            aload 0 /* method */
            aload 3 /* curr */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isSubsignature:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifeq 5
         4: .line 558
            aload 3 /* curr */
            areturn
        end local 3 // org.eclipse.jdt.core.dom.IMethodBinding curr
         5: .line 555
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* allMethods */
            invokeinterface java.util.List.size:()I
            if_icmplt 2
        end local 2 // int i
         7: .line 561
            aconst_null
            areturn
        end local 1 // java.util.List allMethods
        end local 0 // org.eclipse.jdt.core.dom.IMethodBinding method
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0      method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0    8     1  allMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            1    7     2           i  I
            3    5     3        curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
    Signature: (Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
    MethodParameters:
            Name  Flags
      method      
      allMethods  

  private static org.eclipse.jdt.core.dom.IMethodBinding findOverridingMethod(org.eclipse.jdt.core.dom.IMethodBinding, java.util.List<org.eclipse.jdt.core.dom.IMethodBinding>);
    descriptor: (Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.IMethodBinding method
        start local 1 // java.util.List allMethods
         0: .line 565
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 6
         2: .line 566
      StackMap locals: int
      StackMap stack:
            aload 1 /* allMethods */
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            astore 3 /* curr */
        start local 3 // org.eclipse.jdt.core.dom.IMethodBinding curr
         3: .line 567
            aload 3 /* curr */
            aload 0 /* method */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.areOverriddenMethods:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifne 4
            aload 3 /* curr */
            aload 0 /* method */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isSubsignature:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifeq 5
         4: .line 568
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding
      StackMap stack:
            aload 3 /* curr */
            areturn
        end local 3 // org.eclipse.jdt.core.dom.IMethodBinding curr
         5: .line 565
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* allMethods */
            invokeinterface java.util.List.size:()I
            if_icmplt 2
        end local 2 // int i
         7: .line 570
            aconst_null
            areturn
        end local 1 // java.util.List allMethods
        end local 0 // org.eclipse.jdt.core.dom.IMethodBinding method
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0      method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0    8     1  allMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            1    7     2           i  I
            3    5     3        curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
    Signature: (Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
    MethodParameters:
            Name  Flags
      method      
      allMethods  

  private static void findUnimplementedInterfaceMethods(org.eclipse.jdt.core.dom.ITypeBinding, java.util.HashSet<org.eclipse.jdt.core.dom.ITypeBinding>, java.util.ArrayList<org.eclipse.jdt.core.dom.IMethodBinding>, org.eclipse.jdt.core.dom.IPackageBinding, java.util.ArrayList<org.eclipse.jdt.core.dom.IMethodBinding>);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/HashSet;Ljava/util/ArrayList;Lorg/eclipse/jdt/core/dom/IPackageBinding;Ljava/util/ArrayList;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        start local 1 // java.util.HashSet visited
        start local 2 // java.util.ArrayList allMethods
        start local 3 // org.eclipse.jdt.core.dom.IPackageBinding currPack
        start local 4 // java.util.ArrayList toImplement
         0: .line 576
            aload 1 /* visited */
            aload 0 /* typeBinding */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            ifeq 34
         1: .line 577
            aload 0 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 5 /* typeMethods */
        start local 5 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
         2: .line 579
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         3: goto 27
         4: .line 580
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 5 /* typeMethods */
            iload 6 /* i */
            aaload
            astore 7 /* curr */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
         5: .line 581
            aload 2 /* allMethods */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 8 /* allIter */
        start local 8 // java.util.Iterator allIter
         6: goto 20
         7: .line 582
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding java.util.Iterator
      StackMap stack:
            aload 8 /* allIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            astore 9 /* oneMethod */
        start local 9 // org.eclipse.jdt.core.dom.IMethodBinding oneMethod
         8: .line 583
            aload 9 /* oneMethod */
            aload 7 /* curr */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isSubsignature:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifeq 17
         9: .line 585
            aload 7 /* curr */
            aload 9 /* oneMethod */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isSubsignature:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifne 11
        10: .line 587
            goto 26
        11: .line 591
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding
      StackMap stack:
            aload 9 /* oneMethod */
            aload 3 /* currPack */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isVisibleInHierarchy:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IPackageBinding;)Z
            ifeq 14
        12: .line 592
            aload 9 /* oneMethod */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getErasure:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getReturnType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getErasure:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isSubTypeCompatible:(Lorg/eclipse/jdt/core/dom/ITypeBinding;)Z
            ifeq 14
        13: .line 594
            goto 26
        14: .line 597
      StackMap locals:
      StackMap stack:
            aload 8 /* allIter */
            invokeinterface java.util.Iterator.remove:()V
        15: .line 598
            aload 4 /* toImplement */
            aload 9 /* oneMethod */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        16: .line 599
            goto 20
      StackMap locals:
      StackMap stack:
        17: aload 7 /* curr */
            aload 9 /* oneMethod */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isSubsignature:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifeq 20
        18: .line 601
            aload 8 /* allIter */
            invokeinterface java.util.Iterator.remove:()V
        19: .line 602
            aload 4 /* toImplement */
            aload 9 /* oneMethod */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        end local 9 // org.eclipse.jdt.core.dom.IMethodBinding oneMethod
        20: .line 581
      StackMap locals:
      StackMap stack:
            aload 8 /* allIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 8 // java.util.Iterator allIter
        21: .line 605
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 8 /* modifiers */
        start local 8 // int modifiers
        22: .line 606
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 26
        23: .line 607
            aload 2 /* allMethods */
            aload 7 /* curr */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        24: .line 608
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isAbstract:(I)Z
            ifeq 26
        25: .line 609
            aload 4 /* toImplement */
            aload 7 /* curr */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // int modifiers
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
        26: .line 579
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 6 /* i */
            aload 5 /* typeMethods */
            arraylength
            if_icmplt 4
        end local 6 // int i
        28: .line 613
            aload 0 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getInterfaces:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 6 /* superInterfaces */
        start local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        29: .line 614
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        30: goto 33
        31: .line 615
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding java.util.HashSet java.util.ArrayList org.eclipse.jdt.core.dom.IPackageBinding java.util.ArrayList org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 6 /* superInterfaces */
            iload 7 /* i */
            aaload
            aload 1 /* visited */
            aload 2 /* allMethods */
            aload 3 /* currPack */
            aload 4 /* toImplement */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findUnimplementedInterfaceMethods:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/HashSet;Ljava/util/ArrayList;Lorg/eclipse/jdt/core/dom/IPackageBinding;Ljava/util/ArrayList;)V
        32: .line 614
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 7 /* i */
            aload 6 /* superInterfaces */
            arraylength
            if_icmplt 31
        end local 7 // int i
        end local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        end local 5 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
        34: .line 617
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.util.ArrayList toImplement
        end local 3 // org.eclipse.jdt.core.dom.IPackageBinding currPack
        end local 2 // java.util.ArrayList allMethods
        end local 1 // java.util.HashSet visited
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   35     0      typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   35     1          visited  Ljava/util/HashSet<Lorg/eclipse/jdt/core/dom/ITypeBinding;>;
            0   35     2       allMethods  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            0   35     3         currPack  Lorg/eclipse/jdt/core/dom/IPackageBinding;
            0   35     4      toImplement  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            2   34     5      typeMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            3   28     6                i  I
            5   26     7             curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            6   21     8          allIter  Ljava/util/Iterator<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            8   20     9        oneMethod  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           22   26     8        modifiers  I
           29   34     6  superInterfaces  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           30   34     7                i  I
    Signature: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/HashSet<Lorg/eclipse/jdt/core/dom/ITypeBinding;>;Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;Lorg/eclipse/jdt/core/dom/IPackageBinding;Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;)V
    MethodParameters:
             Name  Flags
      typeBinding  
      visited      
      allMethods   
      currPack     
      toImplement  

  public static java.util.List<org.eclipse.jdt.core.dom.IExtendedModifier> getImplementationModifiers(org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.IMethodBinding, boolean, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext, java.util.EnumSet<org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation>);
    descriptor: (Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;ZLorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Ljava/util/EnumSet;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=26, args_size=6
        start local 0 // org.eclipse.jdt.core.dom.AST ast
        start local 1 // org.eclipse.jdt.core.dom.IMethodBinding method
        start local 2 // boolean inInterface
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite importRewrite
        start local 4 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        start local 5 // java.util.EnumSet nullnessDefault
         0: .line 620
            aload 3 /* importRewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            astore 6 /* javaProject */
        start local 6 // org.eclipse.jdt.core.IJavaProject javaProject
         1: .line 621
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 7 /* modifiers */
        start local 7 // int modifiers
         2: .line 622
            iload 2 /* inInterface */
            ifeq 7
         3: .line 623
            iload 7 /* modifiers */
            bipush -5
            iand
            bipush -2
            iand
            istore 7 /* modifiers */
         4: .line 624
            iload 7 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isAbstract:(I)Z
            ifeq 8
            aload 6 /* javaProject */
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.is18OrHigher:(Lorg/eclipse/jdt/core/IJavaProject;)Z
            ifeq 8
         5: .line 625
            iload 7 /* modifiers */
            ldc 65536
            ior
            istore 7 /* modifiers */
         6: .line 627
            goto 8
         7: .line 628
      StackMap locals: org.eclipse.jdt.core.IJavaProject int
      StackMap stack:
            iload 7 /* modifiers */
            ldc -65537
            iand
            istore 7 /* modifiers */
         8: .line 630
      StackMap locals:
      StackMap stack:
            iload 7 /* modifiers */
            sipush -1025
            iand
            sipush -257
            iand
            bipush -3
            iand
            istore 7 /* modifiers */
         9: .line 631
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getAnnotations:()[Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
            astore 8 /* annotations */
        start local 8 // org.eclipse.jdt.core.dom.IAnnotationBinding[] annotations
        10: .line 633
            iload 7 /* modifiers */
            ifeq 45
            aload 8 /* annotations */
            arraylength
            ifle 45
        11: .line 635
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getJavaElement:()Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IMethod
            astore 9 /* iMethod */
        start local 9 // org.eclipse.jdt.core.IMethod iMethod
        12: .line 636
            aload 9 /* iMethod */
            ifnull 45
            aload 9 /* iMethod */
            invokestatic org.eclipse.jdt.internal.corext.refactoring.util.JavaElementUtil.isSourceAvailable:(Lorg/eclipse/jdt/core/ISourceReference;)Z
            ifeq 45
        13: .line 637
            bipush 13
            invokestatic org.eclipse.jdt.core.dom.ASTParser.newParser:(I)Lorg/eclipse/jdt/core/dom/ASTParser;
            astore 10 /* parser */
        start local 10 // org.eclipse.jdt.core.dom.ASTParser parser
        14: .line 638
            aload 10 /* parser */
            aload 9 /* iMethod */
            invokeinterface org.eclipse.jdt.core.IMethod.getTypeRoot:()Lorg/eclipse/jdt/core/ITypeRoot;
            invokevirtual org.eclipse.jdt.core.dom.ASTParser.setSource:(Lorg/eclipse/jdt/core/ITypeRoot;)V
        15: .line 639
            aload 10 /* parser */
            iconst_1
            invokevirtual org.eclipse.jdt.core.dom.ASTParser.setIgnoreMethodBodies:(Z)V
        16: .line 640
            aload 10 /* parser */
            aconst_null
            invokevirtual org.eclipse.jdt.core.dom.ASTParser.createAST:(Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/jdt/core/dom/ASTNode;
            checkcast org.eclipse.jdt.core.dom.CompilationUnit
            astore 11 /* otherCU */
        start local 11 // org.eclipse.jdt.core.dom.CompilationUnit otherCU
        17: .line 641
            aload 11 /* otherCU */
            aload 9 /* iMethod */
            invokeinterface org.eclipse.jdt.core.IMethod.getSourceRange:()Lorg/eclipse/jdt/core/ISourceRange;
            invokestatic org.eclipse.jdt.core.dom.NodeFinder.perform:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/ISourceRange;)Lorg/eclipse/jdt/core/dom/ASTNode;
            astore 12 /* otherMethod */
        start local 12 // org.eclipse.jdt.core.dom.ASTNode otherMethod
        18: .line 642
            aload 12 /* otherMethod */
            instanceof org.eclipse.jdt.core.dom.MethodDeclaration
            ifeq 45
        19: .line 643
            aload 12 /* otherMethod */
            checkcast org.eclipse.jdt.core.dom.MethodDeclaration
            astore 13 /* otherMD */
        start local 13 // org.eclipse.jdt.core.dom.MethodDeclaration otherMD
        20: .line 644
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 14 /* result */
        start local 14 // java.util.ArrayList result
        21: .line 645
            aload 13 /* otherMD */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            astore 15 /* otherModifiers */
        start local 15 // java.util.List otherModifiers
        22: .line 646
            aload 15 /* otherModifiers */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 42
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List top java.util.Iterator
      StackMap stack:
        23: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IExtendedModifier
            astore 16 /* otherModifier */
        start local 16 // org.eclipse.jdt.core.dom.IExtendedModifier otherModifier
        24: .line 647
            aload 16 /* otherModifier */
            instanceof org.eclipse.jdt.core.dom.Modifier
            ifeq 30
        25: .line 648
            aload 16 /* otherModifier */
            checkcast org.eclipse.jdt.core.dom.Modifier
            invokevirtual org.eclipse.jdt.core.dom.Modifier.getKeyword:()Lorg/eclipse/jdt/core/dom/Modifier$ModifierKeyword;
            invokevirtual org.eclipse.jdt.core.dom.Modifier$ModifierKeyword.toFlagValue:()I
            istore 18 /* otherFlag */
        start local 18 // int otherFlag
        26: .line 649
            iload 18 /* otherFlag */
            iload 7 /* modifiers */
            iand
            ifeq 42
        27: .line 650
            iload 18 /* otherFlag */
            iconst_m1
            ixor
            iload 7 /* modifiers */
            iand
            istore 7 /* modifiers */
        28: .line 651
            aload 14 /* result */
            aload 0 /* ast */
            iload 18 /* otherFlag */
            invokevirtual org.eclipse.jdt.core.dom.AST.newModifiers:(I)Ljava/util/List;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        end local 18 // int otherFlag
        29: .line 653
            goto 42
        30: .line 654
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List org.eclipse.jdt.core.dom.IExtendedModifier java.util.Iterator
      StackMap stack:
            aload 16 /* otherModifier */
            checkcast org.eclipse.jdt.core.dom.Annotation
            astore 18 /* otherAnnotation */
        start local 18 // org.eclipse.jdt.core.dom.Annotation otherAnnotation
        31: .line 655
            aload 18 /* otherAnnotation */
            invokevirtual org.eclipse.jdt.core.dom.Annotation.getTypeName:()Lorg/eclipse/jdt/core/dom/Name;
            invokevirtual org.eclipse.jdt.core.dom.Name.getFullyQualifiedName:()Ljava/lang/String;
            astore 19 /* n */
        start local 19 // java.lang.String n
        32: .line 656
            aload 8 /* annotations */
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 41
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List org.eclipse.jdt.core.dom.IExtendedModifier java.util.Iterator org.eclipse.jdt.core.dom.Annotation java.lang.String top int int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
        33: aload 23
            iload 21
            aaload
            astore 20 /* annotation */
        start local 20 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        34: .line 657
            aload 20 /* annotation */
            invokeinterface org.eclipse.jdt.core.dom.IAnnotationBinding.getAnnotationType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 24 /* otherAnnotationType */
        start local 24 // org.eclipse.jdt.core.dom.ITypeBinding otherAnnotationType
        35: .line 658
            aload 24 /* otherAnnotationType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            astore 25 /* qn */
        start local 25 // java.lang.String qn
        36: .line 659
            aload 25 /* qn */
            aload 19 /* n */
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 40
            aload 25 /* qn */
            invokevirtual java.lang.String.length:()I
            aload 19 /* n */
            invokevirtual java.lang.String.length:()I
            if_icmpeq 37
            aload 25 /* qn */
            aload 25 /* qn */
            invokevirtual java.lang.String.length:()I
            aload 19 /* n */
            invokevirtual java.lang.String.length:()I
            isub
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 40
        37: .line 660
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List org.eclipse.jdt.core.dom.IExtendedModifier java.util.Iterator org.eclipse.jdt.core.dom.Annotation java.lang.String org.eclipse.jdt.core.dom.IAnnotationBinding int int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.dom.ITypeBinding java.lang.String
      StackMap stack:
            aload 24 /* otherAnnotationType */
            aload 6 /* javaProject */
            aload 5 /* nullnessDefault */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.RETURN_TYPE:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.isCopyOnInheritAnnotation:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/EnumSet;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Z
            ifeq 42
        38: .line 661
            aload 14 /* result */
            aload 3 /* importRewrite */
            aload 20 /* annotation */
            aload 0 /* ast */
            aload 4 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addAnnotation:(Lorg/eclipse/jdt/core/dom/IAnnotationBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Lorg/eclipse/jdt/core/dom/Annotation;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        39: .line 662
            goto 42
        end local 25 // java.lang.String qn
        end local 24 // org.eclipse.jdt.core.dom.ITypeBinding otherAnnotationType
        end local 20 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        40: .line 656
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List org.eclipse.jdt.core.dom.IExtendedModifier java.util.Iterator org.eclipse.jdt.core.dom.Annotation java.lang.String top int int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
            iinc 21 1
      StackMap locals:
      StackMap stack:
        41: iload 21
            iload 22
            if_icmplt 33
        end local 19 // java.lang.String n
        end local 18 // org.eclipse.jdt.core.dom.Annotation otherAnnotation
        end local 16 // org.eclipse.jdt.core.dom.IExtendedModifier otherModifier
        42: .line 646
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] org.eclipse.jdt.core.IMethod org.eclipse.jdt.core.dom.ASTParser org.eclipse.jdt.core.dom.CompilationUnit org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.MethodDeclaration java.util.ArrayList java.util.List top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        43: .line 667
            aload 14 /* result */
            aload 0 /* ast */
            iload 7 /* modifiers */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newModifiers:(Lorg/eclipse/jdt/core/dom/AST;I)Ljava/util/List;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        44: .line 668
            aload 14 /* result */
            areturn
        end local 15 // java.util.List otherModifiers
        end local 14 // java.util.ArrayList result
        end local 13 // org.eclipse.jdt.core.dom.MethodDeclaration otherMD
        end local 12 // org.eclipse.jdt.core.dom.ASTNode otherMethod
        end local 11 // org.eclipse.jdt.core.dom.CompilationUnit otherCU
        end local 10 // org.eclipse.jdt.core.dom.ASTParser parser
        end local 9 // org.eclipse.jdt.core.IMethod iMethod
        45: .line 673
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* result */
        start local 9 // java.util.ArrayList result
        46: .line 675
            aload 8 /* annotations */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 51
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.IMethodBinding int org.eclipse.jdt.core.dom.rewrite.ImportRewrite org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext java.util.EnumSet org.eclipse.jdt.core.IJavaProject int org.eclipse.jdt.core.dom.IAnnotationBinding[] java.util.ArrayList top int int org.eclipse.jdt.core.dom.IAnnotationBinding[]
      StackMap stack:
        47: aload 13
            iload 11
            aaload
            astore 10 /* annotation */
        start local 10 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        48: .line 676
            aload 10 /* annotation */
            invokeinterface org.eclipse.jdt.core.dom.IAnnotationBinding.getAnnotationType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 6 /* javaProject */
            aload 5 /* nullnessDefault */
            getstatic org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation.RETURN_TYPE:Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.isCopyOnInheritAnnotation:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/EnumSet;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Z
            ifeq 50
        49: .line 677
            aload 9 /* result */
            aload 3 /* importRewrite */
            aload 10 /* annotation */
            aload 0 /* ast */
            aload 4 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addAnnotation:(Lorg/eclipse/jdt/core/dom/IAnnotationBinding;Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Lorg/eclipse/jdt/core/dom/Annotation;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.eclipse.jdt.core.dom.IAnnotationBinding annotation
        50: .line 675
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        51: iload 11
            iload 12
            if_icmplt 47
        52: .line 680
            aload 9 /* result */
            aload 0 /* ast */
            iload 7 /* modifiers */
            invokestatic org.eclipse.jdt.internal.corext.dom.ASTNodeFactory.newModifiers:(Lorg/eclipse/jdt/core/dom/AST;I)Ljava/util/List;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        53: .line 682
            aload 9 /* result */
            areturn
        end local 9 // java.util.ArrayList result
        end local 8 // org.eclipse.jdt.core.dom.IAnnotationBinding[] annotations
        end local 7 // int modifiers
        end local 6 // org.eclipse.jdt.core.IJavaProject javaProject
        end local 5 // java.util.EnumSet nullnessDefault
        end local 4 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite importRewrite
        end local 2 // boolean inInterface
        end local 1 // org.eclipse.jdt.core.dom.IMethodBinding method
        end local 0 // org.eclipse.jdt.core.dom.AST ast
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   54     0                  ast  Lorg/eclipse/jdt/core/dom/AST;
            0   54     1               method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            0   54     2          inInterface  Z
            0   54     3        importRewrite  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   54     4              context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            0   54     5      nullnessDefault  Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;
            1   54     6          javaProject  Lorg/eclipse/jdt/core/IJavaProject;
            2   54     7            modifiers  I
           10   54     8          annotations  [Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
           12   45     9              iMethod  Lorg/eclipse/jdt/core/IMethod;
           14   45    10               parser  Lorg/eclipse/jdt/core/dom/ASTParser;
           17   45    11              otherCU  Lorg/eclipse/jdt/core/dom/CompilationUnit;
           18   45    12          otherMethod  Lorg/eclipse/jdt/core/dom/ASTNode;
           20   45    13              otherMD  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
           21   45    14               result  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;
           22   45    15       otherModifiers  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;
           24   42    16        otherModifier  Lorg/eclipse/jdt/core/dom/IExtendedModifier;
           26   29    18            otherFlag  I
           31   42    18      otherAnnotation  Lorg/eclipse/jdt/core/dom/Annotation;
           32   42    19                    n  Ljava/lang/String;
           34   40    20           annotation  Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
           35   40    24  otherAnnotationType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           36   40    25                   qn  Ljava/lang/String;
           46   54     9               result  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;
           48   50    10           annotation  Lorg/eclipse/jdt/core/dom/IAnnotationBinding;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    Signature: (Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/IMethodBinding;ZLorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;)Ljava/util/List<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;
    MethodParameters:
                 Name  Flags
      ast              
      method           
      inInterface      
      importRewrite    
      context          
      nullnessDefault  

  public static org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry[] getDelegatableMethods(org.eclipse.jdt.core.dom.ITypeBinding);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;)[Lorg/eclipse/jdt/internal/corext/codemanipulation/AddDelegateMethodsOperation$DelegateEntry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
         0: .line 686
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* tuples */
        start local 1 // java.util.List tuples
         1: .line 687
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* declared */
        start local 2 // java.util.List declared
         2: .line 688
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 3 /* typeMethods */
        start local 3 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
         3: .line 689
            aload 2 /* declared */
            aload 3 /* typeMethods */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 690
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredFields:()[Lorg/eclipse/jdt/core/dom/IVariableBinding;
            astore 4 /* typeFields */
        start local 4 // org.eclipse.jdt.core.dom.IVariableBinding[] typeFields
         5: .line 691
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         6: goto 11
         7: .line 692
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding java.util.List java.util.List org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.IVariableBinding[] int
      StackMap stack:
            aload 4 /* typeFields */
            iload 5 /* index */
            aaload
            astore 6 /* fieldBinding */
        start local 6 // org.eclipse.jdt.core.dom.IVariableBinding fieldBinding
         8: .line 693
            aload 6 /* fieldBinding */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.isField:()Z
            ifeq 10
            aload 6 /* fieldBinding */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.isEnumConstant:()Z
            ifne 10
            aload 6 /* fieldBinding */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.isSynthetic:()Z
            ifne 10
         9: .line 694
            new java.util.ArrayList
            dup
            aload 2 /* declared */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            aload 6 /* fieldBinding */
            aload 6 /* fieldBinding */
            invokeinterface org.eclipse.jdt.core.dom.IVariableBinding.getType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 0 /* binding */
            aload 1 /* tuples */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegatableMethods:(Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        end local 6 // org.eclipse.jdt.core.dom.IVariableBinding fieldBinding
        10: .line 691
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* index */
            aload 4 /* typeFields */
            arraylength
            if_icmplt 7
        end local 5 // int index
        12: .line 697
            aload 1 /* tuples */
            aload 1 /* tuples */
            invokeinterface java.util.List.size:()I
            anewarray org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry[]
            areturn
        end local 4 // org.eclipse.jdt.core.dom.IVariableBinding[] typeFields
        end local 3 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
        end local 2 // java.util.List declared
        end local 1 // java.util.List tuples
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0       binding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            1   13     1        tuples  Ljava/util/List<Lorg/eclipse/jdt/internal/corext/codemanipulation/AddDelegateMethodsOperation$DelegateEntry;>;
            2   13     2      declared  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            3   13     3   typeMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            5   13     4    typeFields  [Lorg/eclipse/jdt/core/dom/IVariableBinding;
            6   12     5         index  I
            8   10     6  fieldBinding  Lorg/eclipse/jdt/core/dom/IVariableBinding;
    MethodParameters:
         Name  Flags
      binding  

  private static void getDelegatableMethods(java.util.List<org.eclipse.jdt.core.dom.IMethodBinding>, org.eclipse.jdt.core.dom.IVariableBinding, org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.core.dom.ITypeBinding, java.util.List<org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry>);
    descriptor: (Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // java.util.List methods
        start local 1 // org.eclipse.jdt.core.dom.IVariableBinding fieldBinding
        start local 2 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        start local 3 // org.eclipse.jdt.core.dom.ITypeBinding binding
        start local 4 // java.util.List result
         0: .line 701
            iconst_0
            istore 5 /* match */
        start local 5 // boolean match
         1: .line 702
            aload 2 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isTypeVariable:()Z
            ifeq 14
         2: .line 703
            aload 2 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getTypeBounds:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 6 /* typeBounds */
        start local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] typeBounds
         3: .line 704
            aload 6 /* typeBounds */
            arraylength
            ifle 10
         4: .line 705
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 8
         6: .line 706
      StackMap locals: int org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 0 /* methods */
            aload 1 /* fieldBinding */
            aload 6 /* typeBounds */
            iload 7 /* i */
            aaload
            aload 3 /* binding */
            aload 4 /* result */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegatableMethods:(Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
         7: .line 705
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* i */
            aload 6 /* typeBounds */
            arraylength
            if_icmplt 6
        end local 7 // int i
         9: .line 708
            goto 39
        10: .line 709
      StackMap locals:
      StackMap stack:
            aload 3 /* binding */
            ldc "java.lang.Object"
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.findTypeInHierarchy:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 7 /* objectBinding */
        start local 7 // org.eclipse.jdt.core.dom.ITypeBinding objectBinding
        11: .line 710
            aload 7 /* objectBinding */
            ifnull 39
        12: .line 711
            aload 0 /* methods */
            aload 1 /* fieldBinding */
            aload 7 /* objectBinding */
            aload 3 /* binding */
            aload 4 /* result */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegatableMethods:(Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        end local 7 // org.eclipse.jdt.core.dom.ITypeBinding objectBinding
        end local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] typeBounds
        13: .line 714
            goto 39
        14: .line 715
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            aload 3 /* binding */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegateCandidates:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 6 /* candidates */
        start local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] candidates
        15: .line 716
            iconst_0
            istore 7 /* index */
        start local 7 // int index
        16: goto 29
        17: .line 717
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            iconst_0
            istore 5 /* match */
        18: .line 718
            aload 6 /* candidates */
            iload 7 /* index */
            aaload
            astore 8 /* methodBinding */
        start local 8 // org.eclipse.jdt.core.dom.IMethodBinding methodBinding
        19: .line 719
            iconst_0
            istore 9 /* offset */
        start local 9 // int offset
        20: goto 24
        21: .line 720
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding int
      StackMap stack:
            aload 0 /* methods */
            iload 9 /* offset */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            aload 8 /* methodBinding */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.areOverriddenMethods:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifeq 23
        22: .line 721
            iconst_1
            istore 5 /* match */
        23: .line 719
      StackMap locals:
      StackMap stack:
            iinc 9 /* offset */ 1
      StackMap locals:
      StackMap stack:
        24: iload 9 /* offset */
            aload 0 /* methods */
            invokeinterface java.util.List.size:()I
            if_icmpge 25
            iload 5 /* match */
            ifeq 21
        end local 9 // int offset
        25: .line 723
      StackMap locals:
      StackMap stack:
            iload 5 /* match */
            ifne 28
        26: .line 724
            aload 4 /* result */
            new org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry
            dup
            aload 8 /* methodBinding */
            aload 1 /* fieldBinding */
            invokespecial org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry.<init>:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IVariableBinding;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        27: .line 725
            aload 0 /* methods */
            aload 8 /* methodBinding */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.eclipse.jdt.core.dom.IMethodBinding methodBinding
        28: .line 716
      StackMap locals:
      StackMap stack:
            iinc 7 /* index */ 1
      StackMap locals:
      StackMap stack:
        29: iload 7 /* index */
            aload 6 /* candidates */
            arraylength
            if_icmplt 17
        end local 7 // int index
        30: .line 728
            aload 2 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 7 /* superclass */
        start local 7 // org.eclipse.jdt.core.dom.ITypeBinding superclass
        31: .line 729
            aload 7 /* superclass */
            ifnull 33
        32: .line 730
            aload 0 /* methods */
            aload 1 /* fieldBinding */
            aload 7 /* superclass */
            aload 3 /* binding */
            aload 4 /* result */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegatableMethods:(Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        33: .line 731
      StackMap locals: java.util.List org.eclipse.jdt.core.dom.IVariableBinding org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.List int org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 2 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getInterfaces:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 8 /* superInterfaces */
        start local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        34: .line 732
            iconst_0
            istore 9 /* offset */
        start local 9 // int offset
        35: goto 38
        36: .line 733
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 0 /* methods */
            aload 1 /* fieldBinding */
            aload 8 /* superInterfaces */
            iload 9 /* offset */
            aaload
            aload 3 /* binding */
            aload 4 /* result */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getDelegatableMethods:(Ljava/util/List;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        37: .line 732
            iinc 9 /* offset */ 1
      StackMap locals:
      StackMap stack:
        38: iload 9 /* offset */
            aload 8 /* superInterfaces */
            arraylength
            if_icmplt 36
        end local 9 // int offset
        end local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        end local 7 // org.eclipse.jdt.core.dom.ITypeBinding superclass
        end local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] candidates
        39: .line 735
      StackMap locals: java.util.List org.eclipse.jdt.core.dom.IVariableBinding org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.List int
      StackMap stack:
            return
        end local 5 // boolean match
        end local 4 // java.util.List result
        end local 3 // org.eclipse.jdt.core.dom.ITypeBinding binding
        end local 2 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        end local 1 // org.eclipse.jdt.core.dom.IVariableBinding fieldBinding
        end local 0 // java.util.List methods
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   40     0          methods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            0   40     1     fieldBinding  Lorg/eclipse/jdt/core/dom/IVariableBinding;
            0   40     2      typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   40     3          binding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   40     4           result  Ljava/util/List<Lorg/eclipse/jdt/internal/corext/codemanipulation/AddDelegateMethodsOperation$DelegateEntry;>;
            1   40     5            match  Z
            3   13     6       typeBounds  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
            5    9     7                i  I
           11   13     7    objectBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           15   39     6       candidates  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
           16   30     7            index  I
           19   28     8    methodBinding  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           20   25     9           offset  I
           31   39     7       superclass  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           34   39     8  superInterfaces  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           35   39     9           offset  I
    Signature: (Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List<Lorg/eclipse/jdt/internal/corext/codemanipulation/AddDelegateMethodsOperation$DelegateEntry;>;)V
    MethodParameters:
              Name  Flags
      methods       
      fieldBinding  
      typeBinding   
      binding       
      result        

  private static org.eclipse.jdt.core.dom.IMethodBinding[] getDelegateCandidates(org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.core.dom.ITypeBinding);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/ITypeBinding;)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=11, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
        start local 1 // org.eclipse.jdt.core.dom.ITypeBinding hierarchy
         0: .line 738
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* allMethods */
        start local 2 // java.util.List allMethods
         1: .line 739
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            istore 3 /* isInterface */
        start local 3 // boolean isInterface
         2: .line 740
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 4 /* typeMethods */
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
         3: .line 741
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         4: goto 21
         5: .line 742
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.List int org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 6 /* modifiers */
        start local 6 // int modifiers
         6: .line 743
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 20
            iload 6 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 20
            iload 3 /* isInterface */
            ifne 7
            iload 6 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPublic:(I)Z
            ifeq 20
         7: .line 744
      StackMap locals: int
      StackMap stack:
            aload 1 /* hierarchy */
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 7 /* result */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding result
         8: .line 745
            aload 7 /* result */
            ifnull 10
            aload 7 /* result */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            invokestatic org.eclipse.jdt.core.Flags.isFinal:(I)Z
            ifeq 10
         9: .line 746
            goto 20
        10: .line 747
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding
      StackMap stack:
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getParameterTypes:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 8 /* parameterBindings */
        start local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] parameterBindings
        11: .line 748
            iconst_0
            istore 9 /* upper */
        start local 9 // boolean upper
        12: .line 749
            iconst_0
            istore 10 /* offset */
        start local 10 // int offset
        13: goto 17
        14: .line 750
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] int int
      StackMap stack:
            aload 8 /* parameterBindings */
            iload 10 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isWildcardType:()Z
            ifeq 16
            aload 8 /* parameterBindings */
            iload 10 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isUpperbound:()Z
            ifeq 16
        15: .line 751
            iconst_1
            istore 9 /* upper */
        16: .line 749
      StackMap locals:
      StackMap stack:
            iinc 10 /* offset */ 1
      StackMap locals:
      StackMap stack:
        17: iload 10 /* offset */
            aload 8 /* parameterBindings */
            arraylength
            if_icmplt 14
        end local 10 // int offset
        18: .line 753
            iload 9 /* upper */
            ifne 20
        19: .line 754
            aload 2 /* allMethods */
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // boolean upper
        end local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] parameterBindings
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding result
        end local 6 // int modifiers
        20: .line 741
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding org.eclipse.jdt.core.dom.ITypeBinding java.util.List int org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* index */
            aload 4 /* typeMethods */
            arraylength
            if_icmplt 5
        end local 5 // int index
        22: .line 757
            aload 2 /* allMethods */
            aload 2 /* allMethods */
            invokeinterface java.util.List.size:()I
            anewarray org.eclipse.jdt.core.dom.IMethodBinding
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding[]
            areturn
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
        end local 3 // boolean isInterface
        end local 2 // java.util.List allMethods
        end local 1 // org.eclipse.jdt.core.dom.ITypeBinding hierarchy
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0            binding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   23     1          hierarchy  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            1   23     2         allMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            2   23     3        isInterface  Z
            3   23     4        typeMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            4   22     5              index  I
            6   20     6          modifiers  I
            8   20     7             result  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           11   20     8  parameterBindings  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           12   20     9              upper  Z
           13   18    10             offset  I
    MethodParameters:
           Name  Flags
      binding    
      hierarchy  

  public static org.eclipse.jdt.core.dom.IMethodBinding[] getOverridableMethods(org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.ITypeBinding, boolean);
    descriptor: (Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Z)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // org.eclipse.jdt.core.dom.AST ast
        start local 1 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        start local 2 // boolean isSubType
         0: .line 761
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* allMethods */
        start local 3 // java.util.List allMethods
         1: .line 762
            aload 1 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 4 /* typeMethods */
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
         2: .line 763
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         3: goto 8
         4: .line 764
      StackMap locals: java.util.List org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 6 /* modifiers */
        start local 6 // int modifiers
         5: .line 765
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 7
            iload 6 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 7
            iload 6 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPrivate:(I)Z
            ifne 7
         6: .line 766
            aload 3 /* allMethods */
            aload 4 /* typeMethods */
            iload 5 /* index */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // int modifiers
         7: .line 763
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* index */
            aload 4 /* typeMethods */
            arraylength
            if_icmplt 4
        end local 5 // int index
         9: .line 768
            aload 1 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* clazz */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding clazz
        10: .line 769
            goto 21
        11: .line 770
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.ITypeBinding int java.util.List org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 5 /* clazz */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 6 /* methods */
        start local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        12: .line 771
            iconst_0
            istore 7 /* offset */
        start local 7 // int offset
        13: goto 19
        14: .line 772
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 6 /* methods */
            iload 7 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 8 /* modifiers */
        start local 8 // int modifiers
        15: .line 773
            aload 6 /* methods */
            iload 7 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 18
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 18
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPrivate:(I)Z
            ifne 18
        16: .line 774
            aload 6 /* methods */
            iload 7 /* offset */
            aaload
            aload 3 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findOverridingMethod:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
            ifnonnull 18
        17: .line 775
            aload 3 /* allMethods */
            aload 6 /* methods */
            iload 7 /* offset */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // int modifiers
        18: .line 771
      StackMap locals:
      StackMap stack:
            iinc 7 /* offset */ 1
      StackMap locals:
      StackMap stack:
        19: iload 7 /* offset */
            aload 6 /* methods */
            arraylength
            if_icmplt 14
        end local 7 // int offset
        20: .line 778
            aload 5 /* clazz */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* clazz */
        end local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        21: .line 769
      StackMap locals:
      StackMap stack:
            aload 5 /* clazz */
            ifnonnull 11
        22: .line 780
            aload 1 /* typeBinding */
            astore 5 /* clazz */
        23: .line 781
            goto 31
        24: .line 782
      StackMap locals:
      StackMap stack:
            aload 5 /* clazz */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getInterfaces:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 6 /* superInterfaces */
        start local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        25: .line 783
            iconst_0
            istore 7 /* index */
        start local 7 // int index
        26: goto 29
        27: .line 784
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 0 /* ast */
            aload 6 /* superInterfaces */
            iload 7 /* index */
            aaload
            aload 3 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getOverridableMethods:(Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        28: .line 783
            iinc 7 /* index */ 1
      StackMap locals:
      StackMap stack:
        29: iload 7 /* index */
            aload 6 /* superInterfaces */
            arraylength
            if_icmplt 27
        end local 7 // int index
        30: .line 786
            aload 5 /* clazz */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* clazz */
        end local 6 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        31: .line 781
      StackMap locals:
      StackMap stack:
            aload 5 /* clazz */
            ifnonnull 24
        32: .line 788
            aload 1 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            ifeq 34
        33: .line 789
            aload 0 /* ast */
            aload 0 /* ast */
            ldc "java.lang.Object"
            invokevirtual org.eclipse.jdt.core.dom.AST.resolveWellKnownType:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
            aload 3 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getOverridableMethods:(Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        34: .line 790
      StackMap locals:
      StackMap stack:
            iload 2 /* isSubType */
            ifne 36
        35: .line 791
            aload 3 /* allMethods */
            aload 4 /* typeMethods */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.removeAll:(Ljava/util/Collection;)Z
            pop
        36: .line 792
      StackMap locals:
      StackMap stack:
            aload 3 /* allMethods */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 6 /* index */
        start local 6 // int index
        37: goto 42
        38: .line 793
      StackMap locals: int
      StackMap stack:
            aload 3 /* allMethods */
            iload 6 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            astore 7 /* method */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding method
        39: .line 794
            aload 7 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            invokestatic org.eclipse.jdt.core.dom.Modifier.isFinal:(I)Z
            ifeq 41
        40: .line 795
            aload 3 /* allMethods */
            iload 6 /* index */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding method
        41: .line 792
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ -1
      StackMap locals:
      StackMap stack:
        42: iload 6 /* index */
            ifge 38
        end local 6 // int index
        43: .line 797
            aload 3 /* allMethods */
            aload 3 /* allMethods */
            invokeinterface java.util.List.size:()I
            anewarray org.eclipse.jdt.core.dom.IMethodBinding
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding[]
            areturn
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding clazz
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
        end local 3 // java.util.List allMethods
        end local 2 // boolean isSubType
        end local 1 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        end local 0 // org.eclipse.jdt.core.dom.AST ast
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   44     0              ast  Lorg/eclipse/jdt/core/dom/AST;
            0   44     1      typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   44     2        isSubType  Z
            1   44     3       allMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            2   44     4      typeMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            3    9     5            index  I
            5    7     6        modifiers  I
           10   44     5            clazz  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           12   21     6          methods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
           13   20     7           offset  I
           15   18     8        modifiers  I
           25   31     6  superInterfaces  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           26   30     7            index  I
           37   43     6            index  I
           39   41     7           method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
    MethodParameters:
             Name  Flags
      ast          
      typeBinding  
      isSubType    

  private static void getOverridableMethods(org.eclipse.jdt.core.dom.AST, org.eclipse.jdt.core.dom.ITypeBinding, java.util.List<org.eclipse.jdt.core.dom.IMethodBinding>);
    descriptor: (Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.core.dom.AST ast
        start local 1 // org.eclipse.jdt.core.dom.ITypeBinding superBinding
        start local 2 // java.util.List allMethods
         0: .line 801
            aload 1 /* superBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 3 /* methods */
        start local 3 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
         1: .line 802
            iconst_0
            istore 4 /* offset */
        start local 4 // int offset
         2: goto 8
         3: .line 803
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 3 /* methods */
            iload 4 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 5 /* modifiers */
        start local 5 // int modifiers
         4: .line 804
            aload 3 /* methods */
            iload 4 /* offset */
            aaload
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 7
            iload 5 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 7
            iload 5 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPrivate:(I)Z
            ifne 7
         5: .line 805
            aload 3 /* methods */
            iload 4 /* offset */
            aaload
            aload 2 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findOverridingMethod:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
            ifnonnull 7
         6: .line 806
            aload 2 /* allMethods */
            aload 3 /* methods */
            iload 4 /* offset */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // int modifiers
         7: .line 802
      StackMap locals:
      StackMap stack:
            iinc 4 /* offset */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* offset */
            aload 3 /* methods */
            arraylength
            if_icmplt 3
        end local 4 // int offset
         9: .line 809
            aload 1 /* superBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getInterfaces:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 4 /* superInterfaces */
        start local 4 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        10: .line 810
            iconst_0
            istore 5 /* index */
        start local 5 // int index
        11: goto 14
        12: .line 811
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.ITypeBinding java.util.List org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 0 /* ast */
            aload 4 /* superInterfaces */
            iload 5 /* index */
            aaload
            aload 2 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getOverridableMethods:(Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List;)V
        13: .line 810
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* index */
            aload 4 /* superInterfaces */
            arraylength
            if_icmplt 12
        end local 5 // int index
        15: .line 813
            return
        end local 4 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        end local 3 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        end local 2 // java.util.List allMethods
        end local 1 // org.eclipse.jdt.core.dom.ITypeBinding superBinding
        end local 0 // org.eclipse.jdt.core.dom.AST ast
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0              ast  Lorg/eclipse/jdt/core/dom/AST;
            0   16     1     superBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   16     2       allMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            1   16     3          methods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            2    9     4           offset  I
            4    7     5        modifiers  I
           10   16     4  superInterfaces  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           11   15     5            index  I
    Signature: (Lorg/eclipse/jdt/core/dom/AST;Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;)V
    MethodParameters:
              Name  Flags
      ast           
      superBinding  
      allMethods    

  private static java.lang.String suggestParameterName(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jdt.core.dom.IVariableBinding, java.lang.String[]);
    descriptor: (Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/dom/IVariableBinding;[Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.core.ICompilationUnit unit
        start local 1 // org.eclipse.jdt.core.dom.IVariableBinding binding
        start local 2 // java.lang.String[] excluded
         0: .line 816
            aload 1 /* binding */
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.getBaseName:(Lorg/eclipse/jdt/core/dom/IVariableBinding;Lorg/eclipse/jdt/core/IJavaProject;)Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         1: .line 817
            aload 0 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            aload 3 /* name */
            aload 2 /* excluded */
            invokestatic org.eclipse.jdt.internal.core.manipulation.StubUtility.suggestArgumentName:(Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String name
        end local 2 // java.lang.String[] excluded
        end local 1 // org.eclipse.jdt.core.dom.IVariableBinding binding
        end local 0 // org.eclipse.jdt.core.ICompilationUnit unit
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      unit  Lorg/eclipse/jdt/core/ICompilationUnit;
            0    2     1   binding  Lorg/eclipse/jdt/core/dom/IVariableBinding;
            0    2     2  excluded  [Ljava/lang/String;
            1    2     3      name  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      unit      
      binding   
      excluded  

  public static org.eclipse.jdt.core.dom.IMethodBinding[] getUnimplementedMethods(org.eclipse.jdt.core.dom.ITypeBinding);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
         0: .line 821
            aload 0 /* typeBinding */
            iconst_0
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.getUnimplementedMethods:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Z)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
    MethodParameters:
             Name  Flags
      typeBinding  

  public static org.eclipse.jdt.core.dom.IMethodBinding[] getUnimplementedMethods(org.eclipse.jdt.core.dom.ITypeBinding, boolean);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Z)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
        start local 1 // boolean implementAbstractsOfInput
         0: .line 825
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* allMethods */
        start local 2 // java.util.ArrayList allMethods
         1: .line 826
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* toImplement */
        start local 3 // java.util.ArrayList toImplement
         2: .line 828
            aload 0 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 4 /* typeMethods */
        start local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
         3: .line 829
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 10
         5: .line 830
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding int java.util.ArrayList java.util.ArrayList org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 4 /* typeMethods */
            iload 5 /* i */
            aaload
            astore 6 /* curr */
        start local 6 // org.eclipse.jdt.core.dom.IMethodBinding curr
         6: .line 831
            aload 6 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 7 /* modifiers */
        start local 7 // int modifiers
         7: .line 832
            aload 6 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 9
            iload 7 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 9
            iload 7 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPrivate:(I)Z
            ifne 9
         8: .line 833
            aload 2 /* allMethods */
            aload 6 /* curr */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // int modifiers
        end local 6 // org.eclipse.jdt.core.dom.IMethodBinding curr
         9: .line 829
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            aload 4 /* typeMethods */
            arraylength
            if_icmplt 5
        end local 5 // int i
        11: .line 837
            aload 0 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* superClass */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding superClass
        12: .line 838
            goto 24
        13: .line 839
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding int java.util.ArrayList java.util.ArrayList org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 5 /* superClass */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 4 /* typeMethods */
        14: .line 840
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        15: goto 22
        16: .line 841
      StackMap locals: int
      StackMap stack:
            aload 4 /* typeMethods */
            iload 6 /* i */
            aaload
            astore 7 /* curr */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
        17: .line 842
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 8 /* modifiers */
        start local 8 // int modifiers
        18: .line 843
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifne 21
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isStatic:(I)Z
            ifne 21
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isPrivate:(I)Z
            ifne 21
        19: .line 844
            aload 7 /* curr */
            aload 2 /* allMethods */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findMethodBinding:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
            ifnonnull 21
        20: .line 845
            aload 2 /* allMethods */
            aload 7 /* curr */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // int modifiers
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
        21: .line 840
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 6 /* i */
            aload 4 /* typeMethods */
            arraylength
            if_icmplt 16
        end local 6 // int i
        23: .line 849
            aload 5 /* superClass */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* superClass */
        24: .line 838
      StackMap locals:
      StackMap stack:
            aload 5 /* superClass */
            ifnonnull 13
        25: .line 852
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        26: goto 33
        27: .line 853
      StackMap locals: int
      StackMap stack:
            aload 2 /* allMethods */
            iload 6 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding
            astore 7 /* curr */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
        28: .line 854
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getModifiers:()I
            istore 8 /* modifiers */
        start local 8 // int modifiers
        29: .line 855
            iload 8 /* modifiers */
            invokestatic org.eclipse.jdt.core.dom.Modifier.isAbstract:(I)Z
            ifne 30
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isInterface:()Z
            ifeq 32
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding int
      StackMap stack:
        30: iload 1 /* implementAbstractsOfInput */
            ifne 31
            aload 0 /* typeBinding */
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.getDeclaringClass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            if_acmpeq 32
        31: .line 857
      StackMap locals:
      StackMap stack:
            aload 3 /* toImplement */
            aload 7 /* curr */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // int modifiers
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding curr
        32: .line 852
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* i */
            aload 2 /* allMethods */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 27
        end local 6 // int i
        34: .line 861
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 6 /* visited */
        start local 6 // java.util.HashSet visited
        35: .line 862
            aload 0 /* typeBinding */
            astore 7 /* curr */
        start local 7 // org.eclipse.jdt.core.dom.ITypeBinding curr
        36: .line 863
            goto 44
        37: .line 864
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding int java.util.ArrayList java.util.ArrayList org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.ITypeBinding java.util.HashSet org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getInterfaces:()[Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 8 /* superInterfaces */
        start local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        38: .line 865
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        39: goto 42
        40: .line 866
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding[] int
      StackMap stack:
            aload 8 /* superInterfaces */
            iload 9 /* i */
            aaload
            aload 6 /* visited */
            aload 2 /* allMethods */
            aload 0 /* typeBinding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getPackage:()Lorg/eclipse/jdt/core/dom/IPackageBinding;
            aload 3 /* toImplement */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findUnimplementedInterfaceMethods:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/util/HashSet;Ljava/util/ArrayList;Lorg/eclipse/jdt/core/dom/IPackageBinding;Ljava/util/ArrayList;)V
        41: .line 865
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 9 /* i */
            aload 8 /* superInterfaces */
            arraylength
            if_icmplt 40
        end local 9 // int i
        43: .line 868
            aload 7 /* curr */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 7 /* curr */
        end local 8 // org.eclipse.jdt.core.dom.ITypeBinding[] superInterfaces
        44: .line 863
      StackMap locals:
      StackMap stack:
            aload 7 /* curr */
            ifnonnull 37
        45: .line 871
            aload 3 /* toImplement */
            aload 3 /* toImplement */
            invokevirtual java.util.ArrayList.size:()I
            anewarray org.eclipse.jdt.core.dom.IMethodBinding
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding[]
            areturn
        end local 7 // org.eclipse.jdt.core.dom.ITypeBinding curr
        end local 6 // java.util.HashSet visited
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding superClass
        end local 4 // org.eclipse.jdt.core.dom.IMethodBinding[] typeMethods
        end local 3 // java.util.ArrayList toImplement
        end local 2 // java.util.ArrayList allMethods
        end local 1 // boolean implementAbstractsOfInput
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding typeBinding
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   46     0                typeBinding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   46     1  implementAbstractsOfInput  Z
            1   46     2                 allMethods  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            2   46     3                toImplement  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            3   46     4                typeMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            4   11     5                          i  I
            6    9     6                       curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
            7    9     7                  modifiers  I
           12   46     5                 superClass  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           15   23     6                          i  I
           17   21     7                       curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           18   21     8                  modifiers  I
           26   34     6                          i  I
           28   32     7                       curr  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           29   32     8                  modifiers  I
           35   46     6                    visited  Ljava/util/HashSet<Lorg/eclipse/jdt/core/dom/ITypeBinding;>;
           36   46     7                       curr  Lorg/eclipse/jdt/core/dom/ITypeBinding;
           38   44     8            superInterfaces  [Lorg/eclipse/jdt/core/dom/ITypeBinding;
           39   43     9                          i  I
    MethodParameters:
                           Name  Flags
      typeBinding                
      implementAbstractsOfInput  

  public static org.eclipse.jdt.core.dom.IMethodBinding[] getVisibleConstructors(org.eclipse.jdt.core.dom.ITypeBinding, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;ZZ)[Lorg/eclipse/jdt/core/dom/IMethodBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
        start local 1 // boolean accountExisting
        start local 2 // boolean proposeDefault
         0: .line 875
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* constructorMethods */
        start local 3 // java.util.List constructorMethods
         1: .line 876
            aconst_null
            astore 4 /* existingConstructors */
        start local 4 // java.util.List existingConstructors
         2: .line 877
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* superType */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding superType
         3: .line 878
            aload 5 /* superType */
            ifnonnull 5
         4: .line 879
            iconst_0
            anewarray org.eclipse.jdt.core.dom.IMethodBinding
            areturn
         5: .line 880
      StackMap locals: java.util.List java.util.List org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
            iload 1 /* accountExisting */
            ifeq 15
         6: .line 881
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 6 /* methods */
        start local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
         7: .line 882
            new java.util.ArrayList
            dup
            aload 6 /* methods */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 4 /* existingConstructors */
         8: .line 883
            iconst_0
            istore 7 /* index */
        start local 7 // int index
         9: goto 14
        10: .line 884
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 6 /* methods */
            iload 7 /* index */
            aaload
            astore 8 /* method */
        start local 8 // org.eclipse.jdt.core.dom.IMethodBinding method
        11: .line 885
            aload 8 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifeq 13
            aload 8 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isDefaultConstructor:()Z
            ifne 13
        12: .line 886
            aload 4 /* existingConstructors */
            aload 8 /* method */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.eclipse.jdt.core.dom.IMethodBinding method
        13: .line 883
      StackMap locals:
      StackMap stack:
            iinc 7 /* index */ 1
      StackMap locals:
      StackMap stack:
        14: iload 7 /* index */
            aload 6 /* methods */
            arraylength
            if_icmplt 10
        end local 7 // int index
        end local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        15: .line 889
      StackMap locals:
      StackMap stack:
            aload 4 /* existingConstructors */
            ifnull 17
        16: .line 890
            aload 3 /* constructorMethods */
            aload 4 /* existingConstructors */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        17: .line 891
      StackMap locals:
      StackMap stack:
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 6 /* methods */
        start local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        18: .line 892
            aload 5 /* superType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getDeclaredMethods:()[Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 7 /* superMethods */
        start local 7 // org.eclipse.jdt.core.dom.IMethodBinding[] superMethods
        19: .line 893
            iconst_0
            istore 8 /* index */
        start local 8 // int index
        20: goto 26
        21: .line 894
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding[] org.eclipse.jdt.core.dom.IMethodBinding[] int
      StackMap stack:
            aload 7 /* superMethods */
            iload 8 /* index */
            aaload
            astore 9 /* method */
        start local 9 // org.eclipse.jdt.core.dom.IMethodBinding method
        22: .line 895
            aload 9 /* method */
            invokeinterface org.eclipse.jdt.core.dom.IMethodBinding.isConstructor:()Z
            ifeq 25
        23: .line 896
            aload 9 /* method */
            aload 0 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getPackage:()Lorg/eclipse/jdt/core/dom/IPackageBinding;
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isVisibleInHierarchy:(Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IPackageBinding;)Z
            ifeq 25
            iload 1 /* accountExisting */
            ifeq 24
            aload 6 /* methods */
            aload 9 /* method */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.containsSignatureEquivalentConstructor:([Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifne 25
        24: .line 897
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding
      StackMap stack:
            aload 3 /* constructorMethods */
            aload 9 /* method */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // org.eclipse.jdt.core.dom.IMethodBinding method
        25: .line 893
      StackMap locals:
      StackMap stack:
            iinc 8 /* index */ 1
      StackMap locals:
      StackMap stack:
        26: iload 8 /* index */
            aload 7 /* superMethods */
            arraylength
            if_icmplt 21
        end local 8 // int index
        27: .line 900
            aload 4 /* existingConstructors */
            ifnull 29
        28: .line 901
            aload 3 /* constructorMethods */
            aload 4 /* existingConstructors */
            invokeinterface java.util.List.removeAll:(Ljava/util/Collection;)Z
            pop
        29: .line 902
      StackMap locals:
      StackMap stack:
            aload 3 /* constructorMethods */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 39
        30: .line 903
            aload 0 /* binding */
            astore 5 /* superType */
        31: .line 904
            goto 33
        32: .line 905
      StackMap locals:
      StackMap stack:
            aload 5 /* superType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* superType */
        33: .line 904
      StackMap locals:
      StackMap stack:
            aload 5 /* superType */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getSuperclass:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            ifnonnull 32
        34: .line 906
            aload 5 /* superType */
            ldc "Object"
            iconst_0
            anewarray org.eclipse.jdt.core.dom.ITypeBinding
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.findMethodInType:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Ljava/lang/String;[Lorg/eclipse/jdt/core/dom/ITypeBinding;)Lorg/eclipse/jdt/core/dom/IMethodBinding;
            astore 8 /* method */
        start local 8 // org.eclipse.jdt.core.dom.IMethodBinding method
        35: .line 907
            aload 8 /* method */
            ifnull 39
        36: .line 908
            iload 2 /* proposeDefault */
            ifne 37
            iload 1 /* accountExisting */
            ifeq 37
            aload 4 /* existingConstructors */
            ifnull 37
            aload 4 /* existingConstructors */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 39
      StackMap locals: org.eclipse.jdt.core.dom.IMethodBinding
      StackMap stack:
        37: iload 1 /* accountExisting */
            ifeq 38
            aload 6 /* methods */
            aload 8 /* method */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.containsSignatureEquivalentConstructor:([Lorg/eclipse/jdt/core/dom/IMethodBinding;Lorg/eclipse/jdt/core/dom/IMethodBinding;)Z
            ifne 39
        38: .line 909
      StackMap locals:
      StackMap stack:
            aload 3 /* constructorMethods */
            aload 8 /* method */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.eclipse.jdt.core.dom.IMethodBinding method
        39: .line 912
      StackMap locals:
      StackMap stack:
            aload 3 /* constructorMethods */
            aload 3 /* constructorMethods */
            invokeinterface java.util.List.size:()I
            anewarray org.eclipse.jdt.core.dom.IMethodBinding
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IMethodBinding[]
            areturn
        end local 7 // org.eclipse.jdt.core.dom.IMethodBinding[] superMethods
        end local 6 // org.eclipse.jdt.core.dom.IMethodBinding[] methods
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding superType
        end local 4 // java.util.List existingConstructors
        end local 3 // java.util.List constructorMethods
        end local 2 // boolean proposeDefault
        end local 1 // boolean accountExisting
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding binding
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   40     0               binding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0   40     1       accountExisting  Z
            0   40     2        proposeDefault  Z
            1   40     3    constructorMethods  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            2   40     4  existingConstructors  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IMethodBinding;>;
            3   40     5             superType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            7   15     6               methods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
            9   15     7                 index  I
           11   13     8                method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           18   40     6               methods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
           19   40     7          superMethods  [Lorg/eclipse/jdt/core/dom/IMethodBinding;
           20   27     8                 index  I
           22   25     9                method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
           35   39     8                method  Lorg/eclipse/jdt/core/dom/IMethodBinding;
    MethodParameters:
                 Name  Flags
      binding          
      accountExisting  
      proposeDefault   

  public static org.eclipse.jdt.core.dom.ASTNode getNodeToInsertBefore(org.eclipse.jdt.core.dom.rewrite.ListRewrite, org.eclipse.jdt.core.IJavaElement);
    descriptor: (Lorg/eclipse/jdt/core/dom/rewrite/ListRewrite;Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/dom/ASTNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.rewrite.ListRewrite listRewrite
        start local 1 // org.eclipse.jdt.core.IJavaElement sibling
         0: .line 926
            aload 1 /* sibling */
            instanceof org.eclipse.jdt.core.IMember
            ifeq 13
         1: .line 927
            aload 1 /* sibling */
            checkcast org.eclipse.jdt.core.IMember
            invokeinterface org.eclipse.jdt.core.IMember.getSourceRange:()Lorg/eclipse/jdt/core/ISourceRange;
            astore 2 /* sourceRange */
        start local 2 // org.eclipse.jdt.core.ISourceRange sourceRange
         2: .line 928
            aload 2 /* sourceRange */
            ifnonnull 4
         3: .line 929
            aconst_null
            areturn
         4: .line 931
      StackMap locals: org.eclipse.jdt.core.ISourceRange
      StackMap stack:
            aload 2 /* sourceRange */
            invokeinterface org.eclipse.jdt.core.ISourceRange.getOffset:()I
            istore 3 /* insertPos */
        start local 3 // int insertPos
         5: .line 933
            aload 0 /* listRewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ListRewrite.getOriginalList:()Ljava/util/List;
            astore 4 /* members */
        start local 4 // java.util.List members
         6: .line 934
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: goto 12
         8: .line 935
      StackMap locals: int java.util.List int
      StackMap stack:
            aload 4 /* members */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.ASTNode
            astore 6 /* curr */
        start local 6 // org.eclipse.jdt.core.dom.ASTNode curr
         9: .line 936
            aload 6 /* curr */
            invokevirtual org.eclipse.jdt.core.dom.ASTNode.getStartPosition:()I
            iload 3 /* insertPos */
            if_icmplt 11
        10: .line 937
            aload 6 /* curr */
            areturn
        end local 6 // org.eclipse.jdt.core.dom.ASTNode curr
        11: .line 934
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 4 /* members */
            invokeinterface java.util.List.size:()I
            if_icmplt 8
        end local 5 // int i
        end local 4 // java.util.List members
        end local 3 // int insertPos
        end local 2 // org.eclipse.jdt.core.ISourceRange sourceRange
        13: .line 941
      StackMap locals: org.eclipse.jdt.core.dom.rewrite.ListRewrite org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.eclipse.jdt.core.IJavaElement sibling
        end local 0 // org.eclipse.jdt.core.dom.rewrite.ListRewrite listRewrite
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0  listRewrite  Lorg/eclipse/jdt/core/dom/rewrite/ListRewrite;
            0   14     1      sibling  Lorg/eclipse/jdt/core/IJavaElement;
            2   13     2  sourceRange  Lorg/eclipse/jdt/core/ISourceRange;
            5   13     3    insertPos  I
            6   13     4      members  Ljava/util/List<+Lorg/eclipse/jdt/core/dom/ASTNode;>;
            7   13     5            i  I
            9   11     6         curr  Lorg/eclipse/jdt/core/dom/ASTNode;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
             Name  Flags
      listRewrite  
      sibling      

  public static void addOverrideAnnotation(org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings, org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.MethodDeclaration, boolean, org.eclipse.text.edits.TextEditGroup);
    descriptor: (Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/MethodDeclaration;ZLorg/eclipse/text/edits/TextEditGroup;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
        start local 1 // org.eclipse.jdt.core.IJavaProject project
        start local 2 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 4 // org.eclipse.jdt.core.dom.MethodDeclaration methodDecl
        start local 5 // boolean isDeclaringTypeInterface
        start local 6 // org.eclipse.text.edits.TextEditGroup group
         0: .line 959
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.is50OrHigher:(Lorg/eclipse/jdt/core/IJavaProject;)Z
            ifne 2
         1: .line 960
            return
         2: .line 962
      StackMap locals:
      StackMap stack:
            iload 5 /* isDeclaringTypeInterface */
            ifeq 8
         3: .line 963
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.compiler.compliance"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 7 /* version */
        start local 7 // java.lang.String version
         4: .line 964
            aload 7 /* version */
            ldc "1.6"
            invokestatic org.eclipse.jdt.internal.corext.util.JavaModelUtil.isVersionLessThan:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 6
         5: .line 965
            return
         6: .line 966
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "disabled"
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 967
            return
        end local 7 // java.lang.String version
         8: .line 969
      StackMap locals:
      StackMap stack:
            aload 0 /* settings */
            ifnull 9
            aload 0 /* settings */
            getfield org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings.overrideAnnotation:Z
            ifne 10
      StackMap locals:
      StackMap stack:
         9: ldc "ignore"
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 970
      StackMap locals:
      StackMap stack:
            aload 2 /* rewrite */
            aload 3 /* imports */
            aload 4 /* methodDecl */
            aload 6 /* group */
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.createOverrideAnnotation:(Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/text/edits/TextEditGroup;)V
        11: .line 972
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.eclipse.text.edits.TextEditGroup group
        end local 5 // boolean isDeclaringTypeInterface
        end local 4 // org.eclipse.jdt.core.dom.MethodDeclaration methodDecl
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 2 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        end local 1 // org.eclipse.jdt.core.IJavaProject project
        end local 0 // org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings settings
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   12     0                  settings  Lorg/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings;
            0   12     1                   project  Lorg/eclipse/jdt/core/IJavaProject;
            0   12     2                   rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   12     3                   imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   12     4                methodDecl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            0   12     5  isDeclaringTypeInterface  Z
            0   12     6                     group  Lorg/eclipse/text/edits/TextEditGroup;
            4    8     7                   version  Ljava/lang/String;
    MethodParameters:
                          Name  Flags
      settings                  
      project                   
      rewrite                   
      imports                   
      methodDecl                
      isDeclaringTypeInterface  
      group                     

  public static void createOverrideAnnotation(org.eclipse.jdt.core.dom.rewrite.ASTRewrite, org.eclipse.jdt.core.dom.rewrite.ImportRewrite, org.eclipse.jdt.core.dom.MethodDeclaration, org.eclipse.text.edits.TextEditGroup);
    descriptor: (Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;Lorg/eclipse/jdt/core/dom/MethodDeclaration;Lorg/eclipse/text/edits/TextEditGroup;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
        start local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        start local 2 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        start local 3 // org.eclipse.text.edits.TextEditGroup group
         0: .line 975
            ldc "java.lang.Override"
            aload 2 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.modifiers:()Ljava/util/List;
            invokestatic org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core.findAnnotation:(Ljava/lang/String;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/Annotation;
            ifnull 2
         1: .line 976
            return
         2: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* rewrite */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getAST:()Lorg/eclipse/jdt/core/dom/AST;
            astore 4 /* ast */
        start local 4 // org.eclipse.jdt.core.dom.AST ast
         3: .line 979
            aload 2 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.getRoot:()Lorg/eclipse/jdt/core/dom/ASTNode;
            astore 5 /* root */
        start local 5 // org.eclipse.jdt.core.dom.ASTNode root
         4: .line 980
            aconst_null
            astore 6 /* context */
        start local 6 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
         5: .line 981
            aload 5 /* root */
            instanceof org.eclipse.jdt.core.dom.CompilationUnit
            ifeq 7
         6: .line 982
            new org.eclipse.jdt.internal.corext.codemanipulation.ContextSensitiveImportRewriteContext
            dup
            aload 5 /* root */
            checkcast org.eclipse.jdt.core.dom.CompilationUnit
            aload 2 /* decl */
            invokevirtual org.eclipse.jdt.core.dom.MethodDeclaration.getStartPosition:()I
            aload 1 /* imports */
            invokespecial org.eclipse.jdt.internal.corext.codemanipulation.ContextSensitiveImportRewriteContext.<init>:(Lorg/eclipse/jdt/core/dom/CompilationUnit;ILorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;)V
            astore 6 /* context */
         7: .line 984
      StackMap locals: org.eclipse.jdt.core.dom.AST org.eclipse.jdt.core.dom.ASTNode org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext
      StackMap stack:
            aload 4 /* ast */
            invokevirtual org.eclipse.jdt.core.dom.AST.newMarkerAnnotation:()Lorg/eclipse/jdt/core/dom/MarkerAnnotation;
            astore 7 /* marker */
        start local 7 // org.eclipse.jdt.core.dom.Annotation marker
         8: .line 985
            aload 7 /* marker */
            aload 4 /* ast */
            aload 1 /* imports */
            ldc "java.lang.Override"
            aload 6 /* context */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ImportRewrite.addImport:(Ljava/lang/String;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;)Ljava/lang/String;
            invokevirtual org.eclipse.jdt.core.dom.AST.newName:(Ljava/lang/String;)Lorg/eclipse/jdt/core/dom/Name;
            invokevirtual org.eclipse.jdt.core.dom.Annotation.setTypeName:(Lorg/eclipse/jdt/core/dom/Name;)V
         9: .line 986
            aload 0 /* rewrite */
            aload 2 /* decl */
            getstatic org.eclipse.jdt.core.dom.MethodDeclaration.MODIFIERS2_PROPERTY:Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ASTRewrite.getListRewrite:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;)Lorg/eclipse/jdt/core/dom/rewrite/ListRewrite;
            aload 7 /* marker */
            aload 3 /* group */
            invokevirtual org.eclipse.jdt.core.dom.rewrite.ListRewrite.insertFirst:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/text/edits/TextEditGroup;)V
        10: .line 987
            return
        end local 7 // org.eclipse.jdt.core.dom.Annotation marker
        end local 6 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext context
        end local 5 // org.eclipse.jdt.core.dom.ASTNode root
        end local 4 // org.eclipse.jdt.core.dom.AST ast
        end local 3 // org.eclipse.text.edits.TextEditGroup group
        end local 2 // org.eclipse.jdt.core.dom.MethodDeclaration decl
        end local 1 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite imports
        end local 0 // org.eclipse.jdt.core.dom.rewrite.ASTRewrite rewrite
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0  rewrite  Lorg/eclipse/jdt/core/dom/rewrite/ASTRewrite;
            0   11     1  imports  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite;
            0   11     2     decl  Lorg/eclipse/jdt/core/dom/MethodDeclaration;
            0   11     3    group  Lorg/eclipse/text/edits/TextEditGroup;
            3   11     4      ast  Lorg/eclipse/jdt/core/dom/AST;
            4   11     5     root  Lorg/eclipse/jdt/core/dom/ASTNode;
            5   11     6  context  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext;
            8   11     7   marker  Lorg/eclipse/jdt/core/dom/Annotation;
    MethodParameters:
         Name  Flags
      rewrite  
      imports  
      decl     
      group    

  public static boolean isCopyOnInheritAnnotation(org.eclipse.jdt.core.dom.ITypeBinding, org.eclipse.jdt.core.IJavaProject, java.util.EnumSet<org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation>, org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/EnumSet;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding annotationType
        start local 1 // org.eclipse.jdt.core.IJavaProject project
        start local 2 // java.util.EnumSet nullnessDefault
        start local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation typeLocation
         0: .line 990
            ldc "enabled"
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 991
            iconst_0
            ireturn
         2: .line 992
      StackMap locals:
      StackMap stack:
            aload 2 /* nullnessDefault */
            ifnull 6
            aload 0 /* annotationType */
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isNonNullAnnotation:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;)Z
            ifeq 6
         3: .line 993
            aload 2 /* nullnessDefault */
            aload 3 /* typeLocation */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 994
            iconst_1
            ireturn
         5: .line 996
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         6: .line 998
      StackMap locals:
      StackMap stack:
            aload 0 /* annotationType */
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.corext.dom.Bindings.isAnyNullAnnotation:(Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;)Z
            ireturn
        end local 3 // org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation typeLocation
        end local 2 // java.util.EnumSet nullnessDefault
        end local 1 // org.eclipse.jdt.core.IJavaProject project
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding annotationType
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0   annotationType  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            0    7     1          project  Lorg/eclipse/jdt/core/IJavaProject;
            0    7     2  nullnessDefault  Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;
            0    7     3     typeLocation  Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;
    Signature: (Lorg/eclipse/jdt/core/dom/ITypeBinding;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/EnumSet<Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;>;Lorg/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation;)Z
    MethodParameters:
                 Name  Flags
      annotationType   
      project          
      nullnessDefault  
      typeLocation     

  public static org.eclipse.jdt.core.dom.Annotation findAnnotation(java.lang.String, java.util.List<org.eclipse.jdt.core.dom.IExtendedModifier>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)Lorg/eclipse/jdt/core/dom/Annotation;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.lang.String qualifiedTypeName
        start local 1 // java.util.List modifiers
         0: .line 1002
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 9
         2: .line 1003
      StackMap locals: int
      StackMap stack:
            aload 1 /* modifiers */
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.dom.IExtendedModifier
            astore 3 /* curr */
        start local 3 // org.eclipse.jdt.core.dom.IExtendedModifier curr
         3: .line 1004
            aload 3 /* curr */
            instanceof org.eclipse.jdt.core.dom.Annotation
            ifeq 8
         4: .line 1005
            aload 3 /* curr */
            checkcast org.eclipse.jdt.core.dom.Annotation
            astore 4 /* annot */
        start local 4 // org.eclipse.jdt.core.dom.Annotation annot
         5: .line 1006
            aload 4 /* annot */
            invokevirtual org.eclipse.jdt.core.dom.Annotation.getTypeName:()Lorg/eclipse/jdt/core/dom/Name;
            invokevirtual org.eclipse.jdt.core.dom.Name.resolveTypeBinding:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 5 /* binding */
        start local 5 // org.eclipse.jdt.core.dom.ITypeBinding binding
         6: .line 1007
            aload 5 /* binding */
            ifnull 8
            aload 0 /* qualifiedTypeName */
            aload 5 /* binding */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getQualifiedName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1008
            aload 4 /* annot */
            areturn
        end local 5 // org.eclipse.jdt.core.dom.ITypeBinding binding
        end local 4 // org.eclipse.jdt.core.dom.Annotation annot
        end local 3 // org.eclipse.jdt.core.dom.IExtendedModifier curr
         8: .line 1002
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 1 /* modifiers */
            invokeinterface java.util.List.size:()I
            if_icmplt 2
        end local 2 // int i
        10: .line 1012
            aconst_null
            areturn
        end local 1 // java.util.List modifiers
        end local 0 // java.lang.String qualifiedTypeName
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0  qualifiedTypeName  Ljava/lang/String;
            0   11     1          modifiers  Ljava/util/List<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;
            1   10     2                  i  I
            3    8     3               curr  Lorg/eclipse/jdt/core/dom/IExtendedModifier;
            5    8     4              annot  Lorg/eclipse/jdt/core/dom/Annotation;
            6    8     5            binding  Lorg/eclipse/jdt/core/dom/ITypeBinding;
    Signature: (Ljava/lang/String;Ljava/util/List<Lorg/eclipse/jdt/core/dom/IExtendedModifier;>;)Lorg/eclipse/jdt/core/dom/Annotation;
    MethodParameters:
                   Name  Flags
      qualifiedTypeName  
      modifiers          

  public static org.eclipse.jdt.core.dom.ITypeBinding replaceWildcardsAndCaptures(org.eclipse.jdt.core.dom.ITypeBinding);
    descriptor: (Lorg/eclipse/jdt/core/dom/ITypeBinding;)Lorg/eclipse/jdt/core/dom/ITypeBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.ITypeBinding type
         0: .line 1016
            goto 5
         1: .line 1017
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getBound:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            astore 1 /* bound */
        start local 1 // org.eclipse.jdt.core.dom.ITypeBinding bound
         2: .line 1018
            aload 1 /* bound */
            ifnull 3
            aload 1 /* bound */
            goto 4
      StackMap locals: org.eclipse.jdt.core.dom.ITypeBinding
      StackMap stack:
         3: aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getErasure:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.dom.ITypeBinding
         4: astore 0 /* type */
        end local 1 // org.eclipse.jdt.core.dom.ITypeBinding bound
         5: .line 1016
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isWildcardType:()Z
            ifne 1
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isCapture:()Z
            ifne 1
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isArray:()Z
            ifeq 6
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.getElementType:()Lorg/eclipse/jdt/core/dom/ITypeBinding;
            invokeinterface org.eclipse.jdt.core.dom.ITypeBinding.isCapture:()Z
            ifne 1
         6: .line 1020
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.eclipse.jdt.core.dom.ITypeBinding type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   type  Lorg/eclipse/jdt/core/dom/ITypeBinding;
            2    5     1  bound  Lorg/eclipse/jdt/core/dom/ITypeBinding;
    MethodParameters:
      Name  Flags
      type  

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core this
         0: .line 1026
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1028
            return
        end local 0 // org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/corext/codemanipulation/StubUtility2Core;
}
SourceFile: "StubUtility2Core.java"
InnerClasses:
  public Operator = org.eclipse.jdt.core.dom.Assignment$Operator of org.eclipse.jdt.core.dom.Assignment
  public ModifierKeyword = org.eclipse.jdt.core.dom.Modifier$ModifierKeyword of org.eclipse.jdt.core.dom.Modifier
  public Code = org.eclipse.jdt.core.dom.PrimitiveType$Code of org.eclipse.jdt.core.dom.PrimitiveType
  public abstract ImportRewriteContext = org.eclipse.jdt.core.dom.rewrite.ImportRewrite$ImportRewriteContext of org.eclipse.jdt.core.dom.rewrite.ImportRewrite
  public final TypeLocation = org.eclipse.jdt.core.dom.rewrite.ImportRewrite$TypeLocation of org.eclipse.jdt.core.dom.rewrite.ImportRewrite
  public DelegateEntry = org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation$DelegateEntry of org.eclipse.jdt.internal.corext.codemanipulation.AddDelegateMethodsOperation