public class org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding extends org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
  super_class: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
{
  public static final char[] TYPE_QUALIFIER_DEFAULT;
    descriptor: [C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] NO_BINARY_METHODS;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superclass;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enclosingType;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] superInterfaces;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fields;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] memberTypes;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVariables;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.lookup.ModuleBinding module;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
    flags: (0x0004) ACC_PROTECTED

  private org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding prototype;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
    flags: (0x0002) ACC_PRIVATE

  protected org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
    flags: (0x0004) ACC_PROTECTED

  protected org.eclipse.jdt.internal.compiler.util.SimpleLookupTable storedAnnotations;
    descriptor: Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
    flags: (0x0004) ACC_PROTECTED

  private org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding containerAnnotationType;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0002) ACC_PRIVATE

  int defaultNullness;
    descriptor: I
    flags: (0x0000) 

  boolean memberTypesSorted;
    descriptor: Z
    flags: (0x0000) 

  public org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus externalAnnotationStatus;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
    flags: (0x0001) ACC_PUBLIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 92
            ldc "TypeQualifierDefault"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.TYPE_QUALIFIER_DEFAULT:[C
         1: .line 94
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.env.IBinaryMethod
            putstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.NO_BINARY_METHODS:[Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static java.lang.Object convertMemberValue(java.lang.Object, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, char[][][], boolean);
    descriptor: (Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[CZ)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=8, locals=8, args_size=4
        start local 0 // java.lang.Object binaryValue
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        start local 2 // char[][][] missingTypeNames
        start local 3 // boolean resolveEnumConstants
         0: .line 133
            aload 0 /* binaryValue */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryValue */
            instanceof org.eclipse.jdt.internal.compiler.impl.Constant
            ifeq 3
         2: .line 135
            aload 0 /* binaryValue */
            areturn
         3: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryValue */
            instanceof org.eclipse.jdt.internal.compiler.env.ClassSignature
            ifeq 5
         4: .line 137
            aload 1 /* env */
            aload 0 /* binaryValue */
            checkcast org.eclipse.jdt.internal.compiler.env.ClassSignature
            invokevirtual org.eclipse.jdt.internal.compiler.env.ClassSignature.getTypeName:()[C
            iconst_0
            iconst_m1
            iconst_0
            aconst_null
            aload 2 /* missingTypeNames */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            areturn
         5: .line 138
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryValue */
            instanceof org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation
            ifeq 7
         6: .line 139
            aload 0 /* binaryValue */
            checkcast org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation
            aload 1 /* env */
            aload 2 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            areturn
         7: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryValue */
            instanceof org.eclipse.jdt.internal.compiler.env.EnumConstantSignature
            ifeq 14
         8: .line 141
            aload 0 /* binaryValue */
            checkcast org.eclipse.jdt.internal.compiler.env.EnumConstantSignature
            astore 4 /* ref */
        start local 4 // org.eclipse.jdt.internal.compiler.env.EnumConstantSignature ref
         9: .line 142
            aload 1 /* env */
            aload 4 /* ref */
            invokevirtual org.eclipse.jdt.internal.compiler.env.EnumConstantSignature.getTypeName:()[C
            iconst_0
            iconst_m1
            iconst_0
            aconst_null
            aload 2 /* missingTypeNames */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 5 /* enumType */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enumType
        10: .line 143
            aload 5 /* enumType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isUnresolvedType:()Z
            ifeq 12
            iload 3 /* resolveEnumConstants */
            ifne 12
        11: .line 144
            new org.eclipse.jdt.internal.compiler.lookup.ElementValuePair$UnresolvedEnumConstant
            dup
            aload 5 /* enumType */
            aload 1 /* env */
            aload 4 /* ref */
            invokevirtual org.eclipse.jdt.internal.compiler.env.EnumConstantSignature.getEnumConstantName:()[C
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ElementValuePair$UnresolvedEnumConstant.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[C)V
            areturn
        12: .line 145
      StackMap locals: org.eclipse.jdt.internal.compiler.env.EnumConstantSignature org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 5 /* enumType */
            aload 1 /* env */
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 5 /* enumType */
        13: .line 146
            aload 5 /* enumType */
            aload 4 /* ref */
            invokevirtual org.eclipse.jdt.internal.compiler.env.EnumConstantSignature.getEnumConstantName:()[C
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getField:([CZ)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enumType
        end local 4 // org.eclipse.jdt.internal.compiler.env.EnumConstantSignature ref
        14: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryValue */
            instanceof java.lang.Object[]
            ifeq 25
        15: .line 149
            aload 0 /* binaryValue */
            checkcast java.lang.Object[]
            astore 4 /* objects */
        start local 4 // java.lang.Object[] objects
        16: .line 150
            aload 4 /* objects */
            arraylength
            istore 5 /* length */
        start local 5 // int length
        17: .line 151
            iload 5 /* length */
            ifne 18
            aload 4 /* objects */
            areturn
        18: .line 152
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            iload 5 /* length */
            anewarray java.lang.Object
            astore 6 /* values */
        start local 6 // java.lang.Object[] values
        19: .line 153
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        20: goto 23
        21: .line 154
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 6 /* values */
            iload 7 /* i */
            aload 4 /* objects */
            iload 7 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* missingTypeNames */
            iload 3 /* resolveEnumConstants */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.convertMemberValue:(Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[CZ)Ljava/lang/Object;
            aastore
        22: .line 153
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 7 /* i */
            iload 5 /* length */
            if_icmplt 21
        end local 7 // int i
        24: .line 155
            aload 6 /* values */
            areturn
        end local 6 // java.lang.Object[] values
        end local 5 // int length
        end local 4 // java.lang.Object[] objects
        25: .line 159
      StackMap locals: java.lang.Object org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment char[][][] int
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 3 // boolean resolveEnumConstants
        end local 2 // char[][][] missingTypeNames
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        end local 0 // java.lang.Object binaryValue
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   26     0           binaryValue  Ljava/lang/Object;
            0   26     1                   env  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0   26     2      missingTypeNames  [[[C
            0   26     3  resolveEnumConstants  Z
            9   14     4                   ref  Lorg/eclipse/jdt/internal/compiler/env/EnumConstantSignature;
           10   14     5              enumType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           16   25     4               objects  [Ljava/lang/Object;
           17   25     5                length  I
           19   25     6                values  [Ljava/lang/Object;
           20   24     7                     i  I
    MethodParameters:
                      Name  Flags
      binaryValue           
      env                   
      missingTypeNames      
      resolveEnumConstants  

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding clone(org.eclipse.jdt.internal.compiler.lookup.TypeBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding outerType
         0: .line 164
            new org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            dup
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;)V
            astore 2 /* copy */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding copy
         1: .line 165
            aload 2 /* copy */
            aload 1 /* outerType */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         2: .line 173
            aload 2 /* copy */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 4
         3: .line 174
            aload 2 /* copy */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 134217728
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            goto 5
         4: .line 176
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
      StackMap stack:
            aload 2 /* copy */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -134217729
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         5: .line 178
      StackMap locals:
      StackMap stack:
            aload 2 /* copy */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 268435456
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         6: .line 179
            aload 2 /* copy */
            areturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding copy
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding outerType
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    7     1  outerType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            1    7     2       copy  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
    MethodParameters:
           Name  Flags
      outerType  

  static org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding createAnnotation(org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, char[][][]);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=9, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotationInfo
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        start local 2 // char[][][] missingTypeNames
         0: .line 184
            aload 0 /* annotationInfo */
            instanceof org.eclipse.jdt.internal.compiler.classfmt.AnnotationInfo
            ifeq 4
         1: .line 185
            aload 0 /* annotationInfo */
            checkcast org.eclipse.jdt.internal.compiler.classfmt.AnnotationInfo
            getfield org.eclipse.jdt.internal.compiler.classfmt.AnnotationInfo.exceptionDuringDecode:Ljava/lang/RuntimeException;
            astore 3 /* ex */
        start local 3 // java.lang.RuntimeException ex
         2: .line 186
            aload 3 /* ex */
            ifnull 4
         3: .line 187
            new java.lang.IllegalStateException
            dup
            ldc "Accessing annotation with decode error"
            aload 3 /* ex */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            invokevirtual java.lang.IllegalStateException.printStackTrace:()V
        end local 3 // java.lang.RuntimeException ex
         4: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* annotationInfo */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getElementValuePairs:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
            astore 3 /* binaryPairs */
        start local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] binaryPairs
         5: .line 191
            aload 3 /* binaryPairs */
            ifnonnull 6
            iconst_0
            goto 7
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[]
      StackMap stack:
         6: aload 3 /* binaryPairs */
            arraylength
      StackMap locals:
      StackMap stack: int
         7: istore 4 /* length */
        start local 4 // int length
         8: .line 192
            iload 4 /* length */
            ifne 9
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_ELEMENT_VALUE_PAIRS:[Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
            goto 10
      StackMap locals: int
      StackMap stack:
         9: iload 4 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ElementValuePair
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[]
        10: astore 5 /* pairs */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] pairs
        11: .line 193
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        12: goto 15
        13: .line 194
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] int
      StackMap stack:
            aload 5 /* pairs */
            iload 6 /* i */
            new org.eclipse.jdt.internal.compiler.lookup.ElementValuePair
            dup
            aload 3 /* binaryPairs */
            iload 6 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair.getName:()[C
            aload 3 /* binaryPairs */
            iload 6 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair.getValue:()Ljava/lang/Object;
            aload 1 /* env */
            aload 2 /* missingTypeNames */
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.convertMemberValue:(Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[CZ)Ljava/lang/Object;
            aconst_null
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.<init>:([CLjava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)V
            aastore
        14: .line 193
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 6 /* i */
            iload 4 /* length */
            if_icmplt 13
        end local 6 // int i
        16: .line 196
            aload 0 /* annotationInfo */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 6 /* typeName */
        start local 6 // char[] typeName
        17: .line 197
            aload 0 /* annotationInfo */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.isExternalAnnotation:()Z
            ifeq 18
            aload 1 /* env */
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.root:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            goto 19
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment char[][][] org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] char[]
      StackMap stack:
        18: aload 1 /* env */
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment
        19: astore 7 /* env2 */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env2
        20: .line 198
            aload 7 /* env2 */
            aload 6 /* typeName */
            iconst_1
            aload 6 /* typeName */
            arraylength
            iconst_1
            isub
            iconst_0
        21: .line 199
            aload 2 /* missingTypeNames */
        22: .line 198
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 8 /* annotationType */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
        23: .line 200
            aload 7 /* env2 */
            aload 8 /* annotationType */
            aload 5 /* pairs */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createUnresolvedAnnotation:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;)Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            areturn
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env2
        end local 6 // char[] typeName
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] pairs
        end local 4 // int length
        end local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] binaryPairs
        end local 2 // char[][][] missingTypeNames
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        end local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotationInfo
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   24     0    annotationInfo  Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            0   24     1               env  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0   24     2  missingTypeNames  [[[C
            2    4     3                ex  Ljava/lang/RuntimeException;
            5   24     3       binaryPairs  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
            8   24     4            length  I
           11   24     5             pairs  [Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
           12   16     6                 i  I
           17   24     6          typeName  [C
           20   24     7              env2  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
           23   24     8    annotationType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    MethodParameters:
                  Name  Flags
      annotationInfo    
      env               
      missingTypeNames  

  public static org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] createAnnotations(org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[], org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, char[][][]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotationInfos
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        start local 2 // char[][][] missingTypeNames
         0: .line 204
            aload 0 /* annotationInfos */
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* annotationInfos */
            arraylength
      StackMap locals:
      StackMap stack: int
         2: istore 3 /* length */
        start local 3 // int length
         3: .line 205
            iload 3 /* length */
            ifne 4
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_ANNOTATIONS:[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iload 3 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
         5: astore 4 /* result */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] result
         6: .line 206
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: goto 10
         8: .line 207
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] int
      StackMap stack:
            aload 4 /* result */
            iload 5 /* i */
            aload 0 /* annotationInfos */
            iload 5 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
         9: .line 206
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 3 /* length */
            if_icmplt 8
        end local 5 // int i
        11: .line 208
            aload 4 /* result */
            areturn
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] result
        end local 3 // int length
        end local 2 // char[][][] missingTypeNames
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment env
        end local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotationInfos
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0   annotationInfos  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            0   12     1               env  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0   12     2  missingTypeNames  [[[C
            3   12     3            length  I
            6   12     4            result  [Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            7   11     5                 i  I
    MethodParameters:
                  Name  Flags
      annotationInfos   
      env               
      missingTypeNames  

  public static org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolveType(org.eclipse.jdt.internal.compiler.lookup.TypeBinding, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        start local 2 // boolean convertGenericToRawType
         0: .line 212
            aload 0 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.kind:()I
            lookupswitch { // 6
                   68: 4
                  260: 1
                  516: 3
                 2052: 14
                 4100: 12
                 8196: 3
              default: 16
          }
         1: .line 214
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
         2: .line 215
            goto 20
         3: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.WildcardBinding
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.WildcardBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         4: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ArrayBinding
            astore 3 /* arrayBinding */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ArrayBinding arrayBinding
         5: .line 223
            aload 3 /* arrayBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.leafComponentType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 4 /* leafComponentType */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding leafComponentType
         6: .line 224
            aload 4 /* leafComponentType */
            aload 1 /* environment */
            iload 2 /* convertGenericToRawType */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            pop
         7: .line 225
            aload 4 /* leafComponentType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifeq 20
            aload 1 /* environment */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 20
         8: .line 226
            aload 3 /* arrayBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.nullTagBitsPerDimension:[J
            ifnonnull 10
         9: .line 227
            aload 3 /* arrayBinding */
            aload 3 /* arrayBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.dimensions:I
            iconst_1
            iadd
            newarray 11
            putfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.nullTagBitsPerDimension:[J
        10: .line 228
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ArrayBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 3 /* arrayBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.nullTagBitsPerDimension:[J
            aload 3 /* arrayBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ArrayBinding.dimensions:I
            aload 4 /* leafComponentType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
            ldc 108086391056891904
            land
            lastore
        11: .line 230
            goto 20
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding leafComponentType
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ArrayBinding arrayBinding
        12: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        13: .line 234
            goto 20
        14: .line 237
      StackMap locals:
      StackMap stack:
            iload 2 /* convertGenericToRawType */
            ifeq 20
        15: .line 238
            aload 1 /* environment */
            aload 0 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.convertUnresolvedBinaryToRawType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            areturn
        16: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            instanceof org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            ifeq 18
        17: .line 243
            aload 0 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            aload 1 /* environment */
            iload 2 /* convertGenericToRawType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve:(Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        18: .line 244
      StackMap locals:
      StackMap stack:
            iload 2 /* convertGenericToRawType */
            ifeq 20
        19: .line 245
            aload 1 /* environment */
            aload 0 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.convertUnresolvedBinaryToRawType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            areturn
        20: .line 248
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 2 // boolean convertGenericToRawType
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   21     0                     type  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            0   21     1              environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0   21     2  convertGenericToRawType  Z
            5   12     3             arrayBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ArrayBinding;
            6   12     4        leafComponentType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
                         Name  Flags
      type                     
      environment              
      convertGenericToRawType  

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 254
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.<init>:()V
         1: .line 110
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
         2: .line 113
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
         3: .line 114
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
         4: .line 130
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.NOT_EEA_CONFIGURED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
         5: .line 256
            aload 0 /* this */
            aload 0 /* this */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
         6: .line 257
            return
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public void <init>(org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding prototype
         0: .line 260
            aload 0 /* this */
            aload 1 /* prototype */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
         1: .line 110
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
         2: .line 113
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
         3: .line 114
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
         4: .line 130
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.NOT_EEA_CONFIGURED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
         5: .line 261
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         6: .line 262
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         7: .line 263
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         8: .line 264
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
         9: .line 265
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
        10: .line 266
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        11: .line 267
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        12: .line 268
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
        13: .line 269
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
        14: .line 270
            aload 0 /* this */
            aload 1 /* prototype */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
        15: .line 271
            return
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding prototype
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   16     1  prototype  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
    MethodParameters:
           Name  Flags
      prototype  

  public void <init>(org.eclipse.jdt.internal.compiler.lookup.PackageBinding, org.eclipse.jdt.internal.compiler.env.IBinaryType, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        start local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
         0: .line 280
            aload 0 /* this */
            aload 1 /* packageBinding */
            aload 2 /* binaryType */
            aload 3 /* environment */
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)V
         1: .line 281
            return
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        end local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    2     1  packageBinding  Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            0    2     2      binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0    2     3     environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
    MethodParameters:
                Name  Flags
      packageBinding  
      binaryType      
      environment     

  public void <init>(org.eclipse.jdt.internal.compiler.lookup.PackageBinding, org.eclipse.jdt.internal.compiler.env.IBinaryType, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        start local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        start local 4 // boolean needFieldsAndMethods
         0: .line 289
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.<init>:()V
         1: .line 110
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
         2: .line 113
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
         3: .line 114
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
         4: .line 130
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.NOT_EEA_CONFIGURED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
         5: .line 291
            aload 0 /* this */
            aload 0 /* this */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
         6: .line 292
            aload 0 /* this */
            bipush 47
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
         7: .line 293
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.computeId:()V
         8: .line 295
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 64
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         9: .line 296
            aload 0 /* this */
            aload 3 /* environment */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
        10: .line 297
            aload 0 /* this */
            aload 1 /* packageBinding */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fPackage:Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
        11: .line 298
            aload 0 /* this */
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getFileName:()[C
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fileName:[C
        12: .line 304
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getGenericSignature:()[C
            astore 5 /* typeSignature */
        start local 5 // char[] typeSignature
        13: .line 305
            aload 0 /* this */
            aload 5 /* typeSignature */
            ifnull 15
            aload 5 /* typeSignature */
            arraylength
            ifle 15
            aload 5 /* typeSignature */
            iconst_0
            caload
            bipush 60
            if_icmpne 15
        14: .line 306
            aconst_null
            goto 16
        15: .line 307
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.IBinaryType org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment int char[]
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        16: .line 305
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.IBinaryType org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment int char[]
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[]
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        17: .line 309
            aload 0 /* this */
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getSourceName:()[C
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.sourceName:[C
        18: .line 310
            aload 0 /* this */
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getModifiers:()I
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
        19: .line 312
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getTagBits:()J
            ldc 131072
            land
            lconst_0
            lcmp
            ifeq 21
        20: .line 313
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 131072
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        21: .line 315
      StackMap locals:
      StackMap stack:
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.isAnonymous:()Z
            ifeq 24
        22: .line 316
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 2100
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        23: .line 317
            goto 29
      StackMap locals:
      StackMap stack:
        24: aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.isLocal:()Z
            ifeq 27
        25: .line 318
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 2068
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        26: .line 319
            goto 29
      StackMap locals:
      StackMap stack:
        27: aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.isMember:()Z
            ifeq 29
        28: .line 320
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 2060
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        29: .line 323
      StackMap locals:
      StackMap stack:
            aload 2 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getEnclosingTypeName:()[C
            astore 6 /* enclosingTypeName */
        start local 6 // char[] enclosingTypeName
        30: .line 324
            aload 6 /* enclosingTypeName */
            ifnull 38
        31: .line 326
            aload 0 /* this */
            aload 3 /* environment */
            aload 6 /* enclosingTypeName */
            iconst_0
            iconst_m1
            iconst_1
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        32: .line 327
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 2060
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        33: .line 328
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 134217728
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        34: .line 329
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isStrictfp:()Z
            ifeq 36
        35: .line 330
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
            sipush 2048
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
        36: .line 331
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isDeprecated:()Z
            ifeq 38
        37: .line 332
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
            ldc 2097152
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
        38: .line 334
      StackMap locals:
      StackMap stack:
            iload 4 /* needFieldsAndMethods */
            ifeq 40
        39: .line 335
            aload 0 /* this */
            aload 2 /* binaryType */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.cachePartsFrom:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Z)V
        40: .line 336
      StackMap locals:
      StackMap stack:
            return
        end local 6 // char[] enclosingTypeName
        end local 5 // char[] typeSignature
        end local 4 // boolean needFieldsAndMethods
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        end local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   41     0                  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   41     1        packageBinding  Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            0   41     2            binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0   41     3           environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0   41     4  needFieldsAndMethods  Z
           13   41     5         typeSignature  [C
           30   41     6     enclosingTypeName  [C
    MethodParameters:
                      Name  Flags
      packageBinding        
      binaryType            
      environment           
      needFieldsAndMethods  

  public boolean canBeSeenBy(org.eclipse.jdt.internal.compiler.lookup.Scope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Scope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.Scope sco
         0: .line 339
            aload 1 /* sco */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.module:()Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            astore 2 /* mod */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ModuleBinding mod
         1: .line 340
            aload 2 /* mod */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fPackage:Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ModuleBinding.canAccess:(Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;)Z
            ifeq 2
            aload 0 /* this */
            aload 1 /* sco */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.canBeSeenBy:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ModuleBinding
      StackMap stack:
         2: iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ModuleBinding mod
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.Scope sco
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    3     1   sco  Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
            1    3     2   mod  Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
    MethodParameters:
      Name  Flags
      sco   

  public org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] availableFields();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 348
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 349
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.availableFields:()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         2: .line 352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 8192
            land
            lconst_0
            lcmp
            ifeq 4
         3: .line 353
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         4: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            land
            lconst_0
            lcmp
            ifne 9
         5: .line 357
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         6: .line 358
            iload 1 /* length */
            iconst_1
            if_icmple 8
         7: .line 359
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iconst_0
            iload 1 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortFields:([Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;II)V
         8: .line 360
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 1 // int length
         9: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            anewarray org.eclipse.jdt.internal.compiler.lookup.FieldBinding
            astore 1 /* availableFields */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] availableFields
        10: .line 363
            iconst_0
            istore 2 /* count */
        start local 2 // int count
        11: .line 364
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 18
        13: .line 366
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] int int
      StackMap stack:
            aload 1 /* availableFields */
            iload 2 /* count */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 3 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypeFor:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            aastore
        14: .line 367
            iinc 2 /* count */ 1
        15: .line 368
            goto 17
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        16: pop
        17: .line 364
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            if_icmplt 13
        end local 3 // int i
        19: .line 372
            iload 2 /* count */
            aload 1 /* availableFields */
            arraylength
            if_icmpge 21
        20: .line 373
            aload 1 /* availableFields */
            iconst_0
            iload 2 /* count */
            anewarray org.eclipse.jdt.internal.compiler.lookup.FieldBinding
            dup
            astore 1 /* availableFields */
            iconst_0
            iload 2 /* count */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        21: .line 374
      StackMap locals:
      StackMap stack:
            aload 1 /* availableFields */
            areturn
        end local 2 // int count
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] availableFields
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   22     0             this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            6    9     1           length  I
           10   22     1  availableFields  [Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
           11   22     2            count  I
           12   19     3                i  I
      Exception table:
        from    to  target  type
          13    15      16  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation

  private org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] addMethodTypeVariables(org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;)[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] methodTypeVars
         0: .line 378
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            ifnull 2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            if_acmpne 3
         2: .line 380
      StackMap locals:
      StackMap stack:
            aload 1 /* methodTypeVars */
            areturn
         3: .line 382
      StackMap locals:
      StackMap stack:
            aload 1 /* methodTypeVars */
            ifnull 4
            aload 1 /* methodTypeVars */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            if_acmpne 5
         4: .line 383
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            areturn
         5: .line 386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            aload 1 /* methodTypeVars */
            arraylength
            iadd
            istore 2 /* total */
        start local 2 // int total
         6: .line 387
            iload 2 /* total */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
            astore 3 /* combinedTypeVars */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] combinedTypeVars
         7: .line 388
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iconst_0
            aload 3 /* combinedTypeVars */
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 389
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            istore 4 /* size */
        start local 4 // int size
         9: .line 390
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        10: aload 1 /* methodTypeVars */
            arraylength
            istore 6 /* len */
        start local 6 // int len
        11: goto 20
        12: .line 391
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] int org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            iconst_1
            isub
            istore 7 /* j */
        start local 7 // int j
        13: goto 17
        14: .line 392
      StackMap locals: int
      StackMap stack:
            aload 1 /* methodTypeVars */
            iload 5 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.sourceName:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iload 7 /* j */
            aaload
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.sourceName:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 16
        15: .line 393
            goto 19
        16: .line 391
      StackMap locals:
      StackMap stack:
            iinc 7 /* j */ -1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* j */
            ifge 14
        end local 7 // int j
        18: .line 395
            aload 3 /* combinedTypeVars */
            iload 4 /* size */
            iinc 4 /* size */ 1
            aload 1 /* methodTypeVars */
            iload 5 /* i */
            aaload
            aastore
        19: .line 390
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 5 /* i */
            iload 6 /* len */
            if_icmplt 12
        end local 6 // int len
        end local 5 // int i
        21: .line 397
            iload 4 /* size */
            iload 2 /* total */
            if_icmpeq 23
        22: .line 398
            aload 3 /* combinedTypeVars */
            iconst_0
            iload 4 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
            dup
            astore 3 /* combinedTypeVars */
            iconst_0
            iload 4 /* size */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        23: .line 400
      StackMap locals:
      StackMap stack:
            aload 3 /* combinedTypeVars */
            areturn
        end local 4 // int size
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] combinedTypeVars
        end local 2 // int total
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] methodTypeVars
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   24     0              this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   24     1    methodTypeVars  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            6   24     2             total  I
            7   24     3  combinedTypeVars  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            9   24     4              size  I
           10   21     5                 i  I
           11   21     6               len  I
           13   18     7                 j  I
    MethodParameters:
                Name  Flags
      methodTypeVars  

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] availableMethods();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 409
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 410
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.availableMethods:()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            land
            lconst_0
            lcmp
            ifeq 4
         3: .line 414
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         4: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 9
         5: .line 418
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         6: .line 419
            iload 1 /* length */
            iconst_1
            if_icmple 8
         7: .line 420
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 1 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
         8: .line 421
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 1 // int length
         9: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 1 /* availableMethods */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] availableMethods
        10: .line 424
            iconst_0
            istore 2 /* count */
        start local 2 // int count
        11: .line 425
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 18
        13: .line 427
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            aload 1 /* availableMethods */
            iload 2 /* count */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 3 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            aastore
        14: .line 428
            iinc 2 /* count */ 1
        15: .line 429
            goto 17
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        16: pop
        17: .line 425
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            if_icmplt 13
        end local 3 // int i
        19: .line 433
            iload 2 /* count */
            aload 1 /* availableMethods */
            arraylength
            if_icmpge 21
        20: .line 434
            aload 1 /* availableMethods */
            iconst_0
            iload 2 /* count */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            dup
            astore 1 /* availableMethods */
            iconst_0
            iload 2 /* count */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        21: .line 435
      StackMap locals:
      StackMap stack:
            aload 1 /* availableMethods */
            areturn
        end local 2 // int count
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] availableMethods
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   22     0              this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            6    9     1            length  I
           10   22     1  availableMethods  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           11   22     2             count  I
           12   19     3                 i  I
      Exception table:
        from    to  target  type
          13    15      16  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation

  void cachePartsFrom(org.eclipse.jdt.internal.compiler.env.IBinaryType, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Z)V
    flags: (0x0000) 
    Code:
      stack=11, locals=25, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 2 // boolean needFieldsAndMethods
         0: .line 439
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
         2: .line 444
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_SUPERINTERFACES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 447
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_MEMBER_TYPES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         4: .line 448
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getMemberTypes:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryNestedType;
            astore 3 /* memberTypeStructures */
        start local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] memberTypeStructures
         5: .line 449
            aload 3 /* memberTypeStructures */
            ifnull 15
         6: .line 450
            aload 3 /* memberTypeStructures */
            arraylength
            istore 4 /* size */
        start local 4 // int size
         7: .line 451
            iload 4 /* size */
            ifle 15
         8: .line 452
            aload 0 /* this */
            iload 4 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         9: .line 453
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        10: goto 13
        11: .line 455
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 5 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 3 /* memberTypeStructures */
            iload 5 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryNestedType.getName:()[C
            iconst_0
            iconst_m1
            iconst_0
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aastore
        12: .line 453
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* i */
            iload 4 /* size */
            if_icmplt 11
        end local 5 // int i
        14: .line 457
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 268435456
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 4 // int size
        15: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            astore 4 /* globalOptions */
        start local 4 // org.eclipse.jdt.internal.compiler.impl.CompilerOptions globalOptions
        16: .line 462
            aload 4 /* globalOptions */
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.originalSourceLevel:J
            lstore 5 /* sourceLevel */
        start local 5 // long sourceLevel
        17: .line 468
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            ifeq 19
        18: .line 470
            aload 0 /* this */
            aload 1 /* binaryType */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fPackage:Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.scanTypeForNullDefaultAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;)V
        19: .line 472
      StackMap locals: org.eclipse.jdt.internal.compiler.impl.CompilerOptions long
      StackMap stack:
            aload 0 /* this */
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getTypeAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getTypeAnnotationWalker:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 7 /* walker */
        start local 7 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        20: .line 473
            aload 1 /* binaryType */
            aload 7 /* walker */
            aconst_null
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 8 /* toplevelWalker */
        start local 8 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker toplevelWalker
        21: .line 474
            aload 0 /* this */
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getExternalAnnotationStatus:()Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        22: .line 475
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.isPotentiallyUnannotatedLib:()Z
            ifeq 24
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
            ifeq 24
        23: .line 476
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        24: .line 478
      StackMap locals: org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getGenericSignature:()[C
            astore 9 /* typeSignature */
        start local 9 // char[] typeSignature
        25: .line 479
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getTagBits:()J
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        26: .line 480
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.complianceLevel:J
            ldc 3407872
            lcmp
            ifge 28
        27: .line 481
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -9007199254740993
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        28: .line 483
      StackMap locals: char[]
      StackMap stack:
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getMissingTypeNames:()[[[C
            astore 10 /* missingTypeNames */
        start local 10 // char[][][] missingTypeNames
        29: .line 484
            aconst_null
            astore 11 /* wrapper */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        30: .line 485
            aload 9 /* typeSignature */
            ifnull 38
        31: .line 487
            new org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
            dup
            aload 9 /* typeSignature */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.<init>:([C)V
            astore 11 /* wrapper */
        32: .line 488
            aload 11 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 11 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 60
            if_icmpne 38
        33: .line 490
            aload 11 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        34: .line 491
            aload 0 /* this */
            aload 0 /* this */
            aload 11 /* wrapper */
            iconst_1
            aload 10 /* missingTypeNames */
            aload 8 /* toplevelWalker */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createTypeVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;Z[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Z)[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        35: .line 492
            aload 11 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        36: .line 493
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16777216
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        37: .line 494
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
            ldc 1073741824
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.modifiers:I
        38: .line 497
      StackMap locals: char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            astore 12 /* typeVars */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVars
        39: .line 498
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getEnclosingMethod:()[C
            astore 13 /* methodDescriptor */
        start local 13 // char[] methodDescriptor
        40: .line 499
            aload 13 /* methodDescriptor */
            ifnull 45
        41: .line 500
            aload 0 /* this */
            aload 13 /* methodDescriptor */
            aload 10 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.findMethod:([C[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 14 /* enclosingMethod */
        start local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding enclosingMethod
        42: .line 501
            aload 14 /* enclosingMethod */
            ifnull 45
        43: .line 502
            aload 14 /* enclosingMethod */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            astore 12 /* typeVars */
        44: .line 503
            aload 0 /* this */
            aload 0 /* this */
            aload 12 /* typeVars */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.addMethodTypeVariables:([Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;)[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        end local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding enclosingMethod
        45: .line 506
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[]
      StackMap stack:
            aload 9 /* typeSignature */
            ifnonnull 63
        46: .line 507
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getSuperclassName:()[C
            astore 14 /* superclassName */
        start local 14 // char[] superclassName
        47: .line 508
            aload 14 /* superclassName */
            ifnull 50
        48: .line 510
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 14 /* superclassName */
            iconst_0
            iconst_m1
            iconst_0
            aload 10 /* missingTypeNames */
            aload 8 /* toplevelWalker */
            iconst_m1
            aload 14 /* superclassName */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toSupertype:(S[C)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        49: .line 511
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 33554432
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        50: .line 514
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_SUPERINTERFACES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        51: .line 515
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getInterfaceNames:()[[C
            astore 15 /* interfaceNames */
        start local 15 // char[][] interfaceNames
        52: .line 516
            aload 15 /* interfaceNames */
            ifnull 76
        53: .line 517
            aload 15 /* interfaceNames */
            arraylength
            istore 16 /* size */
        start local 16 // int size
        54: .line 518
            iload 16 /* size */
            ifle 76
        55: .line 519
            aload 0 /* this */
            iload 16 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        56: .line 520
            iconst_0
            istore 17 /* i */
        start local 17 // short i
        57: goto 60
        58: .line 522
      StackMap locals: char[][] int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 17 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 15 /* interfaceNames */
            iload 17 /* i */
            aaload
            iconst_0
            iconst_m1
            iconst_0
            aload 10 /* missingTypeNames */
            aload 8 /* toplevelWalker */
            iload 17 /* i */
            aload 14 /* superclassName */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toSupertype:(S[C)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aastore
        59: .line 520
            iload 17 /* i */
            iconst_1
            iadd
            i2s
            istore 17 /* i */
      StackMap locals:
      StackMap stack:
        60: iload 17 /* i */
            iload 16 /* size */
            if_icmplt 58
        end local 17 // short i
        61: .line 523
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 67108864
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 16 // int size
        end local 15 // char[][] interfaceNames
        end local 14 // char[] superclassName
        62: .line 526
            goto 76
        63: .line 528
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[]
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 11 /* wrapper */
            aload 12 /* typeVars */
            aload 0 /* this */
            aload 10 /* missingTypeNames */
        64: .line 529
            aload 8 /* toplevelWalker */
            iconst_m1
            aload 11 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.peekFullType:()[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toSupertype:(S[C)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
        65: .line 528
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        66: .line 530
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 33554432
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        67: .line 532
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_SUPERINTERFACES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        68: .line 533
            aload 11 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.atEnd:()Z
            ifne 76
        69: .line 535
            new java.util.ArrayList
            dup
            iconst_2
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 14 /* types */
        start local 14 // java.util.ArrayList types
        70: .line 536
            iconst_0
            istore 15 /* rank */
        start local 15 // short rank
        71: .line 538
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 14 /* types */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 11 /* wrapper */
            aload 12 /* typeVars */
            aload 0 /* this */
            aload 10 /* missingTypeNames */
            aload 8 /* toplevelWalker */
            iload 15 /* rank */
            dup
            iconst_1
            iadd
            i2s
            istore 15 /* rank */
            aload 11 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.peekFullType:()[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toSupertype:(S[C)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        72: .line 539
            aload 11 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.atEnd:()Z
            ifeq 71
        73: .line 540
            aload 0 /* this */
            aload 14 /* types */
            invokevirtual java.util.ArrayList.size:()I
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        74: .line 541
            aload 14 /* types */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        75: .line 542
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 67108864
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 15 // short rank
        end local 14 // java.util.ArrayList types
        76: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            ifeq 77
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.sourceLevel:J
            ldc 3407872
            lcmp
            iflt 77
            iconst_1
            goto 78
      StackMap locals:
      StackMap stack:
        77: iconst_0
      StackMap locals:
      StackMap stack: int
        78: istore 14 /* canUseNullTypeAnnotations */
        start local 14 // boolean canUseNullTypeAnnotations
        79: .line 546
            iload 14 /* canUseNullTypeAnnotations */
            ifeq 90
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.isPotentiallyUnannotatedLib:()Z
            ifeq 90
        80: .line 547
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 83
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.hasNullTypeAnnotations:()Z
            ifeq 83
        81: .line 548
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        82: .line 549
            goto 90
        83: .line 550
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            dup
            astore 18
            arraylength
            istore 17
            iconst_0
            istore 16
            goto 89
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int top int int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[]
      StackMap stack:
        84: aload 18
            iload 16
            aaload
            astore 15 /* ifc */
        start local 15 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding ifc
        85: .line 551
            aload 15 /* ifc */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifeq 88
        86: .line 552
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        87: .line 553
            goto 90
        end local 15 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding ifc
        88: .line 550
      StackMap locals:
      StackMap stack:
            iinc 16 1
      StackMap locals:
      StackMap stack:
        89: iload 16
            iload 17
            if_icmplt 84
        90: .line 559
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int
      StackMap stack:
            iload 2 /* needFieldsAndMethods */
            ifeq 131
        91: .line 560
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getFields:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
            astore 15 /* iFields */
        start local 15 // org.eclipse.jdt.internal.compiler.env.IBinaryField[] iFields
        92: .line 561
            aload 0 /* this */
            aload 15 /* iFields */
            aload 1 /* binaryType */
            lload 5 /* sourceLevel */
            aload 10 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createFields:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)V
        93: .line 562
            aload 0 /* this */
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getMethods:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            aload 1 /* binaryType */
            lload 5 /* sourceLevel */
            aload 10 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createMethods:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            astore 16 /* iMethods */
        start local 16 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] iMethods
        94: .line 563
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isViewedAsDeprecated:()Z
            istore 17 /* isViewedAsDeprecated */
        start local 17 // boolean isViewedAsDeprecated
        95: .line 564
            iload 17 /* isViewedAsDeprecated */
            ifeq 112
        96: .line 565
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        97: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 19 /* max */
        start local 19 // int max
        98: goto 103
        99: .line 566
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int org.eclipse.jdt.internal.compiler.env.IBinaryField[] org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 18 /* i */
            aaload
            astore 20 /* field */
        start local 20 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
       100: .line 567
            aload 20 /* field */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isDeprecated:()Z
            ifne 102
       101: .line 568
            aload 20 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
            ldc 2097152
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
        end local 20 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
       102: .line 565
      StackMap locals:
      StackMap stack:
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       103: iload 18 /* i */
            iload 19 /* max */
            if_icmplt 99
        end local 19 // int max
        end local 18 // int i
       104: .line 571
            iconst_0
            istore 18 /* i */
        start local 18 // int i
       105: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 19 /* max */
        start local 19 // int max
       106: goto 111
       107: .line 572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 18 /* i */
            aaload
            astore 20 /* method */
        start local 20 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
       108: .line 573
            aload 20 /* method */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isDeprecated:()Z
            ifne 110
       109: .line 574
            aload 20 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc 2097152
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
        end local 20 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
       110: .line 571
      StackMap locals:
      StackMap stack:
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       111: iload 18 /* i */
            iload 19 /* max */
            if_icmplt 107
        end local 19 // int max
        end local 18 // int i
       112: .line 578
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            ifeq 131
       113: .line 579
            aload 15 /* iFields */
            ifnull 122
       114: .line 580
            iconst_0
            istore 18 /* i */
        start local 18 // int i
       115: goto 121
       116: .line 582
      StackMap locals: int
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 19 /* fieldWalker */
        start local 19 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker fieldWalker
       117: .line 583
            lload 5 /* sourceLevel */
            ldc 3407872
            lcmp
            ifge 119
       118: .line 584
            aload 1 /* binaryType */
            aload 7 /* walker */
            aload 15 /* iFields */
            iload 18 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 19 /* fieldWalker */
       119: .line 585
      StackMap locals: org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 0 /* this */
            aload 15 /* iFields */
            iload 18 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 18 /* i */
            aaload
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isEnum:()Z
            aload 19 /* fieldWalker */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.scanFieldForNullAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;ZLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)V
        end local 19 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker fieldWalker
       120: .line 580
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       121: iload 18 /* i */
            aload 15 /* iFields */
            arraylength
            if_icmplt 116
        end local 18 // int i
       122: .line 588
      StackMap locals:
      StackMap stack:
            aload 16 /* iMethods */
            ifnull 131
       123: .line 589
            iconst_0
            istore 18 /* i */
        start local 18 // int i
       124: goto 130
       125: .line 591
      StackMap locals: int
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 19 /* methodWalker */
        start local 19 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker methodWalker
       126: .line 592
            lload 5 /* sourceLevel */
            ldc 3407872
            lcmp
            ifge 128
       127: .line 593
            aload 1 /* binaryType */
            aload 19 /* methodWalker */
            aload 16 /* iMethods */
            iload 18 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 19 /* methodWalker */
       128: .line 594
      StackMap locals: org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 0 /* this */
            aload 16 /* iMethods */
            iload 18 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 18 /* i */
            aaload
            aload 19 /* methodWalker */
            iload 14 /* canUseNullTypeAnnotations */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.scanMethodForNullAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Z)V
        end local 19 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker methodWalker
       129: .line 589
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       130: iload 18 /* i */
            aload 16 /* iMethods */
            arraylength
            if_icmplt 125
        end local 18 // int i
        end local 17 // boolean isViewedAsDeprecated
        end local 16 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] iMethods
        end local 15 // org.eclipse.jdt.internal.compiler.env.IBinaryField[] iFields
       131: .line 599
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifeq 134
       132: .line 600
            aload 0 /* this */
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 10 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.setAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;Z)V
       133: .line 601
            goto 151
      StackMap locals:
      StackMap stack:
       134: lload 5 /* sourceLevel */
            ldc 3473408
            lcmp
            iflt 151
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isDeprecated:()Z
            ifeq 151
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            ifnull 151
       135: .line 604
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            dup
            astore 18
            arraylength
            istore 17
            iconst_0
            istore 16
            goto 150
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int top int int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack:
       136: aload 18
            iload 16
            aaload
            astore 15 /* annotation */
        start local 15 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
       137: .line 605
            aload 15 /* annotation */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.isDeprecatedAnnotation:()Z
            ifeq 149
       138: .line 606
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation
            dup
            iconst_0
            aload 15 /* annotation */
            aastore
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 10 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            astore 19 /* annotationBindings */
        start local 19 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] annotationBindings
       139: .line 607
            aload 0 /* this */
            aload 19 /* annotationBindings */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.setAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;Z)V
       140: .line 608
            aload 19 /* annotationBindings */
            iconst_0
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.getElementValuePairs:()[Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 147
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation int int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] top int int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[]
      StackMap stack:
       141: aload 23
            iload 21
            aaload
            astore 20 /* elementValuePair */
        start local 20 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair elementValuePair
       142: .line 609
            aload 20 /* elementValuePair */
            getfield org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.name:[C
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.FOR_REMOVAL:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 146
       143: .line 610
            aload 20 /* elementValuePair */
            getfield org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.value:Ljava/lang/Object;
            instanceof org.eclipse.jdt.internal.compiler.impl.BooleanConstant
            ifeq 146
            aload 20 /* elementValuePair */
            getfield org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.value:Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.impl.BooleanConstant
            invokevirtual org.eclipse.jdt.internal.compiler.impl.BooleanConstant.booleanValue:()Z
            ifeq 146
       144: .line 611
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4611686018427387904
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
       145: .line 612
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.markImplicitTerminalDeprecation:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 20 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair elementValuePair
       146: .line 608
      StackMap locals:
      StackMap stack:
            iinc 21 1
      StackMap locals:
      StackMap stack:
       147: iload 21
            iload 22
            if_icmplt 141
       148: .line 616
            goto 151
        end local 19 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] annotationBindings
        end local 15 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
       149: .line 604
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int top int int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack:
            iinc 16 1
      StackMap locals:
      StackMap stack:
       150: iload 16
            iload 17
            if_icmplt 136
       151: .line 620
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] org.eclipse.jdt.internal.compiler.impl.CompilerOptions long org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[][][] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] char[] int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isAnnotationType:()Z
            ifeq 160
       152: .line 621
            aload 0 /* this */
            aload 1 /* binaryType */
            aload 10 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.scanTypeForContainerAnnotation:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;[[[C)V
        end local 14 // boolean canUseNullTypeAnnotations
        end local 13 // char[] methodDescriptor
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVars
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        end local 10 // char[][][] missingTypeNames
        end local 9 // char[] typeSignature
        end local 8 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker toplevelWalker
        end local 7 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        end local 5 // long sourceLevel
        end local 4 // org.eclipse.jdt.internal.compiler.impl.CompilerOptions globalOptions
        end local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryNestedType[] memberTypeStructures
       153: .line 622
            goto 160
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int
      StackMap stack: java.lang.Throwable
       154: astore 24
       155: .line 624
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            ifnonnull 157
       156: .line 625
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_FIELDS:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
       157: .line 626
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int top top top top top top top top top top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            ifnonnull 159
       158: .line 627
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
       159: .line 628
      StackMap locals:
      StackMap stack:
            aload 24
            athrow
       160: .line 624
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            ifnonnull 162
       161: .line 625
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_FIELDS:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
       162: .line 626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            ifnonnull 164
       163: .line 627
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
       164: .line 629
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean needFieldsAndMethods
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0  165     0                       this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0  165     1                 binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0  165     2       needFieldsAndMethods  Z
            5  153     3       memberTypeStructures  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryNestedType;
            7   15     4                       size  I
           10   14     5                          i  I
           16  153     4              globalOptions  Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
           17  153     5                sourceLevel  J
           20  153     7                     walker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           21  153     8             toplevelWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           25  153     9              typeSignature  [C
           29  153    10           missingTypeNames  [[[C
           30  153    11                    wrapper  Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;
           39  153    12                   typeVars  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
           40  153    13           methodDescriptor  [C
           42   45    14            enclosingMethod  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           47   62    14             superclassName  [C
           52   62    15             interfaceNames  [[C
           54   62    16                       size  I
           57   61    17                          i  S
           70   76    14                      types  Ljava/util/ArrayList;
           71   76    15                       rank  S
           79  153    14  canUseNullTypeAnnotations  Z
           85   88    15                        ifc  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           92  131    15                    iFields  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
           94  131    16                   iMethods  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
           95  131    17       isViewedAsDeprecated  Z
           97  104    18                          i  I
           98  104    19                        max  I
          100  102    20                      field  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
          105  112    18                          i  I
          106  112    19                        max  I
          108  110    20                     method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
          115  122    18                          i  I
          117  120    19                fieldWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
          124  131    18                          i  I
          126  129    19               methodWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
          137  149    15                 annotation  Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
          139  149    19         annotationBindings  [Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
          142  146    20           elementValuePair  Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
      Exception table:
        from    to  target  type
           1   154     154  any
    MethodParameters:
                      Name  Flags
      binaryType            
      needFieldsAndMethods  

  void markImplicitTerminalDeprecation(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
         0: .line 631
            aload 1 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.memberTypes:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding top int int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* member */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding member
         2: .line 632
            aload 2 /* member */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 4611686018427387904
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
         3: .line 633
            aload 0 /* this */
            aload 2 /* member */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.markImplicitTerminalDeprecation:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding member
         4: .line 631
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 1
         6: .line 635
            aload 1 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.unResolvedMethods:()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 2 /* methodsOfType */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methodsOfType
         7: .line 636
            aload 2 /* methodsOfType */
            ifnull 13
         8: .line 637
            aload 2 /* methodsOfType */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] top int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[]
      StackMap stack:
         9: aload 6
            iload 4
            aaload
            astore 3 /* methodBinding */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        10: .line 638
            aload 3 /* methodBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 4611686018427387904
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        11: .line 637
            iinc 4 1
      StackMap locals:
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 9
        13: .line 640
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding[]
      StackMap stack:
            aload 1 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.unResolvedFields:()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            astore 3 /* fieldsOfType */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fieldsOfType
        14: .line 641
            aload 3 /* fieldsOfType */
            ifnull 20
        15: .line 642
            aload 3 /* fieldsOfType */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 19
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] top int int org.eclipse.jdt.internal.compiler.lookup.FieldBinding[]
      StackMap stack:
        16: aload 7
            iload 5
            aaload
            astore 4 /* fieldBinding */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding fieldBinding
        17: .line 643
            aload 4 /* fieldBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 4611686018427387904
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding fieldBinding
        18: .line 642
            iinc 5 1
      StackMap locals:
      StackMap stack:
        19: iload 5
            iload 6
            if_icmplt 16
        20: .line 644
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] org.eclipse.jdt.internal.compiler.lookup.FieldBinding[]
      StackMap stack:
            return
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fieldsOfType
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methodsOfType
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   21     0           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   21     1           type  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2    4     2         member  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            7   21     2  methodsOfType  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           10   11     3  methodBinding  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           14   21     3   fieldsOfType  [Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
           17   18     4   fieldBinding  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    MethodParameters:
      Name  Flags
      type  

  private org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker getTypeAnnotationWalker(org.eclipse.jdt.internal.compiler.env.IBinaryTypeAnnotation[], int);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryTypeAnnotation[] annotations
        start local 2 // int nullness
         0: .line 648
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 649
      StackMap locals:
      StackMap stack:
            aload 1 /* annotations */
            ifnull 2
            aload 1 /* annotations */
            arraylength
            ifeq 2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesAnnotatedTypeSystem:()Z
            ifne 8
         2: .line 650
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            ifeq 7
         3: .line 651
            iload 2 /* nullness */
            ifne 5
         4: .line 652
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefault:()I
            istore 2 /* nullness */
         5: .line 653
      StackMap locals:
      StackMap stack:
            iload 2 /* nullness */
            iconst_2
            if_icmple 7
         6: .line 654
            new org.eclipse.jdt.internal.compiler.classfmt.NonNullDefaultAwareTypeAnnotationWalker
            dup
            iload 2 /* nullness */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokespecial org.eclipse.jdt.internal.compiler.classfmt.NonNullDefaultAwareTypeAnnotationWalker.<init>:(ILorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
            areturn
         7: .line 656
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            areturn
         8: .line 658
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            ifeq 13
         9: .line 659
            iload 2 /* nullness */
            ifne 11
        10: .line 660
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefault:()I
            istore 2 /* nullness */
        11: .line 661
      StackMap locals:
      StackMap stack:
            iload 2 /* nullness */
            iconst_2
            if_icmple 13
        12: .line 662
            new org.eclipse.jdt.internal.compiler.classfmt.NonNullDefaultAwareTypeAnnotationWalker
            dup
            aload 1 /* annotations */
            iload 2 /* nullness */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokespecial org.eclipse.jdt.internal.compiler.classfmt.NonNullDefaultAwareTypeAnnotationWalker.<init>:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;ILorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
            areturn
        13: .line 664
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.classfmt.TypeAnnotationWalker
            dup
            aload 1 /* annotations */
            invokespecial org.eclipse.jdt.internal.compiler.classfmt.TypeAnnotationWalker.<init>:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;)V
            areturn
        end local 2 // int nullness
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryTypeAnnotation[] annotations
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   14     1  annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;
            0   14     2     nullness  I
    MethodParameters:
             Name  Flags
      annotations  
      nullness     

  private int getNullDefaultFrom(org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] declAnnotations
         0: .line 668
            iconst_0
            istore 2 /* result */
        start local 2 // int result
         1: .line 669
            aload 1 /* declAnnotations */
            ifnull 9
         2: .line 670
            aload 1 /* declAnnotations */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int top int int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* annotation */
        start local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
         4: .line 671
            aload 3 /* annotation */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            astore 7 /* typeName */
        start local 7 // char[][] typeName
         5: .line 672
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 7 /* typeName */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullAnnotationBit:([[C)I
            sipush 128
            if_icmpne 7
         6: .line 673
            iload 2 /* result */
            aload 3 /* annotation */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNonNullByDefaultValue:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)I
            ior
            istore 2 /* result */
        end local 7 // char[][] typeName
        end local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
         7: .line 670
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 3
         9: .line 676
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int
      StackMap stack:
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] declAnnotations
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   10     1  declAnnotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            1   10     2           result  I
            4    7     3       annotation  Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            5    7     7         typeName  [[C
    MethodParameters:
                 Name  Flags
      declAnnotations  

  private void createFields(org.eclipse.jdt.internal.compiler.env.IBinaryField[], org.eclipse.jdt.internal.compiler.env.IBinaryType, long, char[][][]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=20, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryField[] iFields
        start local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 3 // long sourceLevel
        start local 5 // char[][][] missingTypeNames
         0: .line 680
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
            istore 6 /* save */
        start local 6 // boolean save
         2: .line 682
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
         3: .line 684
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_FIELDS:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
         4: .line 685
            aload 1 /* iFields */
            ifnull 70
         5: .line 686
            aload 1 /* iFields */
            arraylength
            istore 7 /* size */
        start local 7 // int size
         6: .line 687
            iload 7 /* size */
            ifle 70
         7: .line 688
            iload 7 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.FieldBinding
            astore 8 /* fields1 */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fields1
         8: .line 689
            lload 3 /* sourceLevel */
            ldc 3211264
            lcmp
            iflt 9
            iconst_1
            goto 10
      StackMap locals: int int org.eclipse.jdt.internal.compiler.lookup.FieldBinding[]
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 9 /* use15specifics */
        start local 9 // boolean use15specifics
        11: .line 690
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasRestrictedAccess:()Z
            istore 10 /* hasRestrictedAccess */
        start local 10 // boolean hasRestrictedAccess
        12: .line 691
            iconst_m1
            istore 11 /* firstAnnotatedFieldIndex */
        start local 11 // int firstAnnotatedFieldIndex
        13: .line 692
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        14: goto 57
        15: .line 693
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryField[] org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int int org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] int int int int
      StackMap stack:
            aload 1 /* iFields */
            iload 12 /* i */
            aaload
            astore 13 /* binaryField */
        start local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryField binaryField
        16: .line 694
            iload 9 /* use15specifics */
            ifeq 17
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getGenericSignature:()[C
            goto 18
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryField
      StackMap stack:
        17: aconst_null
      StackMap locals:
      StackMap stack: char[]
        18: astore 14 /* fieldSignature */
        start local 14 // char[] fieldSignature
        19: .line 695
            aload 0 /* this */
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getTypeAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;
            aload 0 /* this */
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefaultFrom:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getTypeAnnotationWalker:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 15 /* walker */
        start local 15 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        20: .line 696
            lload 3 /* sourceLevel */
            ldc 3407872
            lcmp
            iflt 22
        21: .line 697
            aload 2 /* binaryType */
            aload 15 /* walker */
            aload 1 /* iFields */
            iload 12 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 15 /* walker */
        22: .line 699
      StackMap locals: char[] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 15 /* walker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toField:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 15 /* walker */
        23: .line 700
            aload 14 /* fieldSignature */
            ifnonnull 25
        24: .line 701
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getTypeName:()[C
            iconst_0
            iconst_m1
            iconst_0
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 15 /* walker */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            goto 26
        25: .line 702
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            new org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
            dup
            aload 14 /* fieldSignature */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.<init>:([C)V
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 15 /* walker */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        26: .line 700
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 16 /* type */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
        27: .line 704
            new org.eclipse.jdt.internal.compiler.lookup.FieldBinding
            dup
        28: .line 705
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getName:()[C
        29: .line 706
            aload 16 /* type */
        30: .line 707
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getModifiers:()I
            ldc 33554432
            ior
        31: .line 708
            aload 0 /* this */
        32: .line 709
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getConstant:()Lorg/eclipse/jdt/internal/compiler/impl/Constant;
        33: .line 704
            invokespecial org.eclipse.jdt.internal.compiler.lookup.FieldBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;ILorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        34: .line 703
            astore 17 /* field */
        start local 17 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
        35: .line 710
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifne 40
        36: .line 711
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.sourceLevel:J
            ldc 3473408
            lcmp
            iflt 40
        37: .line 712
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            ifnull 40
        38: .line 713
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getTagBits:()J
            ldc 70368744177664
            land
            lconst_0
            lcmp
            ifeq 40
        39: .line 710
            iconst_1
            goto 41
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.FieldBinding
      StackMap stack:
        40: iconst_0
      StackMap locals:
      StackMap stack: int
        41: istore 18 /* forceStoreAnnotations */
        start local 18 // boolean forceStoreAnnotations
        42: .line 714
            iload 11 /* firstAnnotatedFieldIndex */
            ifge 48
        43: .line 715
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifne 44
            iload 18 /* forceStoreAnnotations */
            ifeq 48
        44: .line 716
      StackMap locals: int
      StackMap stack:
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            ifnull 48
        45: .line 717
            iload 12 /* i */
            istore 11 /* firstAnnotatedFieldIndex */
        46: .line 718
            iload 18 /* forceStoreAnnotations */
            ifeq 48
        47: .line 719
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:(ZZ)Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            pop
        48: .line 721
      StackMap locals:
      StackMap stack:
            aload 17 /* field */
            iload 12 /* i */
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.id:I
        49: .line 722
            iload 9 /* use15specifics */
            ifeq 51
        50: .line 723
            aload 17 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getTagBits:()J
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
        51: .line 724
      StackMap locals:
      StackMap stack:
            iload 10 /* hasRestrictedAccess */
            ifeq 53
        52: .line 725
            aload 17 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
            ldc 262144
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
        53: .line 726
      StackMap locals:
      StackMap stack:
            aload 14 /* fieldSignature */
            ifnull 55
        54: .line 727
            aload 17 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
            ldc 1073741824
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
        55: .line 728
      StackMap locals:
      StackMap stack:
            aload 8 /* fields1 */
            iload 12 /* i */
            aload 17 /* field */
            aastore
        end local 18 // boolean forceStoreAnnotations
        end local 17 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
        end local 15 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        end local 14 // char[] fieldSignature
        end local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryField binaryField
        56: .line 692
            iinc 12 /* i */ 1
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryField[] org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int int org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] int int int int
      StackMap stack:
        57: iload 12 /* i */
            iload 7 /* size */
            if_icmplt 15
        end local 12 // int i
        58: .line 730
            aload 0 /* this */
            aload 8 /* fields1 */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
        59: .line 732
            iload 11 /* firstAnnotatedFieldIndex */
            iflt 70
        60: .line 733
            iload 11 /* firstAnnotatedFieldIndex */
            istore 12 /* i */
        start local 12 // int i
        61: goto 65
        62: .line 734
      StackMap locals:
      StackMap stack:
            aload 1 /* iFields */
            iload 12 /* i */
            aaload
            astore 13 /* binaryField */
        start local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryField binaryField
        63: .line 735
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 12 /* i */
            aaload
            aload 13 /* binaryField */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.setAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;Z)V
        end local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryField binaryField
        64: .line 733
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        65: iload 12 /* i */
            iload 7 /* size */
            if_icmplt 62
        end local 12 // int i
        end local 11 // int firstAnnotatedFieldIndex
        end local 10 // boolean hasRestrictedAccess
        end local 9 // boolean use15specifics
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fields1
        end local 7 // int size
        66: .line 740
            goto 70
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryField[] org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int
      StackMap stack: java.lang.Throwable
        67: astore 19
        68: .line 741
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        69: .line 742
            aload 19
            athrow
        70: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        71: .line 743
            return
        end local 6 // boolean save
        end local 5 // char[][][] missingTypeNames
        end local 3 // long sourceLevel
        end local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryField[] iFields
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   72     0                      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   72     1                   iFields  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
            0   72     2                binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0   72     3               sourceLevel  J
            0   72     5          missingTypeNames  [[[C
            2   72     6                      save  Z
            6   66     7                      size  I
            8   66     8                   fields1  [Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
           11   66     9            use15specifics  Z
           12   66    10       hasRestrictedAccess  Z
           13   66    11  firstAnnotatedFieldIndex  I
           14   58    12                         i  I
           16   56    13               binaryField  Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
           19   56    14            fieldSignature  [C
           20   56    15                    walker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           27   56    16                      type  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           35   56    17                     field  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
           42   56    18     forceStoreAnnotations  Z
           61   66    12                         i  I
           63   64    13               binaryField  Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
      Exception table:
        from    to  target  type
           3    67      67  any
    MethodParameters:
                  Name  Flags
      iFields           
      binaryType        
      sourceLevel       
      missingTypeNames  

  private org.eclipse.jdt.internal.compiler.lookup.MethodBinding createMethod(org.eclipse.jdt.internal.compiler.env.IBinaryMethod, org.eclipse.jdt.internal.compiler.env.IBinaryType, long, char[][][]);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=25, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        start local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 3 // long sourceLevel
        start local 5 // char[][][] missingTypeNames
         0: .line 746
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 747
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getModifiers:()I
            ldc 33554432
            ior
            istore 6 /* methodModifiers */
        start local 6 // int methodModifiers
         2: .line 748
            lload 3 /* sourceLevel */
            ldc 3211264
            lcmp
            ifge 4
         3: .line 749
            iload 6 /* methodModifiers */
            sipush -129
            iand
            istore 6 /* methodModifiers */
         4: .line 750
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isInterface:()Z
            ifeq 8
            iload 6 /* methodModifiers */
            sipush 1024
            iand
            ifne 8
         5: .line 752
            iload 6 /* methodModifiers */
            bipush 8
            iand
            ifne 8
         6: .line 753
            iload 6 /* methodModifiers */
            iconst_2
            iand
            ifne 8
         7: .line 755
            iload 6 /* methodModifiers */
            ldc 65536
            ior
            istore 6 /* methodModifiers */
         8: .line 758
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_EXCEPTIONS:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 7 /* exceptions */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] exceptions
         9: .line 759
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_PARAMETERS:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 8 /* parameters */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
        10: .line 760
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            astore 9 /* typeVars */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVars
        11: .line 761
            aconst_null
            astore 10 /* paramAnnotations */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] paramAnnotations
        12: .line 762
            aconst_null
            astore 11 /* returnType */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding returnType
        13: .line 764
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getArgumentNames:()[[C
            astore 12 /* argumentNames */
        start local 12 // char[][] argumentNames
        14: .line 766
            lload 3 /* sourceLevel */
            ldc 3211264
            lcmp
            iflt 15
            iconst_1
            goto 16
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][]
      StackMap stack:
        15: iconst_0
      StackMap locals:
      StackMap stack: int
        16: istore 13 /* use15specifics */
        start local 13 // boolean use15specifics
        17: .line 772
            aload 0 /* this */
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getTypeAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;
            aload 0 /* this */
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefaultFrom:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getTypeAnnotationWalker:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation;I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 14 /* walker */
        start local 14 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        18: .line 773
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getGenericSignature:()[C
            astore 15 /* methodSignature */
        start local 15 // char[] methodSignature
        19: .line 774
            aload 15 /* methodSignature */
            ifnonnull 81
        20: .line 775
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getMethodDescriptor:()[C
            astore 16 /* methodDescriptor */
        start local 16 // char[] methodDescriptor
        21: .line 776
            lload 3 /* sourceLevel */
            ldc 3407872
            lcmp
            iflt 23
        22: .line 777
            aload 2 /* binaryType */
            aload 14 /* walker */
            aload 1 /* method */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 14 /* walker */
        23: .line 779
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[]
      StackMap stack:
            iconst_0
            istore 17 /* numOfParams */
        start local 17 // int numOfParams
        24: .line 781
            iconst_0
            istore 19 /* index */
        start local 19 // int index
        25: .line 782
            goto 30
        start local 18 // char nextChar
        26: .line 783
      StackMap locals: int int int
      StackMap stack:
            iload 18 /* nextChar */
            bipush 91
            if_icmpeq 30
        27: .line 784
            iinc 17 /* numOfParams */ 1
        28: .line 785
            iload 18 /* nextChar */
            bipush 76
            if_icmpne 30
        29: .line 786
      StackMap locals:
      StackMap stack:
            aload 16 /* methodDescriptor */
            iinc 19 /* index */ 1
            iload 19 /* index */
            caload
            dup
            istore 18 /* nextChar */
            bipush 59
            if_icmpne 29
        end local 18 // char nextChar
        30: .line 782
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[] int top int
      StackMap stack:
            aload 16 /* methodDescriptor */
            iinc 19 /* index */ 1
            iload 19 /* index */
            caload
            dup
            istore 18 /* nextChar */
        start local 18 // char nextChar
        31: bipush 41
            if_icmpne 26
        32: .line 791
            iconst_0
            istore 20 /* startIndex */
        start local 20 // int startIndex
        33: .line 792
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.isConstructor:()Z
            ifeq 38
        34: .line 793
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isMemberType:()Z
            ifeq 36
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isStatic:()Z
            ifne 36
        35: .line 795
            iinc 20 /* startIndex */ 1
        36: .line 797
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] char[] int int int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isEnum:()Z
            ifeq 38
        37: .line 799
            iinc 20 /* startIndex */ 2
        38: .line 802
      StackMap locals:
      StackMap stack:
            iload 17 /* numOfParams */
            iload 20 /* startIndex */
            isub
            istore 21 /* size */
        start local 21 // int size
        39: .line 803
            iload 21 /* size */
            ifle 58
        40: .line 804
            iload 21 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 8 /* parameters */
        41: .line 805
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifeq 43
        42: .line 806
            iload 21 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
            astore 10 /* paramAnnotations */
        43: .line 807
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 19 /* index */
        44: .line 808
            iconst_0
            istore 22 /* visibleIdx */
        start local 22 // short visibleIdx
        45: .line 809
            iconst_0
            istore 23 /* end */
        start local 23 // int end
        46: .line 810
            iconst_0
            istore 24 /* i */
        start local 24 // int i
        47: goto 57
        48: .line 811
      StackMap locals: int int int
      StackMap stack:
            aload 16 /* methodDescriptor */
            iinc 23 /* end */ 1
            iload 23 /* end */
            caload
            dup
            istore 18 /* nextChar */
            bipush 91
            if_icmpeq 48
        49: .line 812
            iload 18 /* nextChar */
            bipush 76
            if_icmpne 51
        50: .line 813
      StackMap locals:
      StackMap stack:
            aload 16 /* methodDescriptor */
            iinc 23 /* end */ 1
            iload 23 /* end */
            caload
            dup
            istore 18 /* nextChar */
            bipush 59
            if_icmpne 50
        51: .line 815
      StackMap locals:
      StackMap stack:
            iload 24 /* i */
            iload 20 /* startIndex */
            if_icmplt 55
        52: .line 817
            aload 8 /* parameters */
            iload 24 /* i */
            iload 20 /* startIndex */
            isub
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 16 /* methodDescriptor */
            iload 19 /* index */
            iload 23 /* end */
            iconst_0
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            iload 22 /* visibleIdx */
            dup
            iconst_1
            iadd
            i2s
            istore 22 /* visibleIdx */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodParameter:(S)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aastore
        53: .line 820
            aload 10 /* paramAnnotations */
            ifnull 55
        54: .line 821
            aload 10 /* paramAnnotations */
            iload 24 /* i */
            iload 20 /* startIndex */
            isub
            aload 1 /* method */
            iload 24 /* i */
            iload 20 /* startIndex */
            isub
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fileName:[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getParameterAnnotations:(I[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        55: .line 823
      StackMap locals:
      StackMap stack:
            iload 23 /* end */
            iconst_1
            iadd
            istore 19 /* index */
        56: .line 810
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 24 /* i */
            iload 17 /* numOfParams */
            if_icmplt 48
        end local 24 // int i
        end local 23 // int end
        end local 22 // short visibleIdx
        58: .line 827
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getExceptionTypeNames:()[[C
            astore 22 /* exceptionTypes */
        start local 22 // char[][] exceptionTypes
        59: .line 828
            aload 22 /* exceptionTypes */
            ifnull 68
        60: .line 829
            aload 22 /* exceptionTypes */
            arraylength
            istore 21 /* size */
        61: .line 830
            iload 21 /* size */
            ifle 68
        62: .line 831
            iload 21 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* exceptions */
        63: .line 832
            iconst_0
            istore 23 /* i */
        start local 23 // int i
        64: goto 67
        65: .line 833
      StackMap locals: char[][] int
      StackMap stack:
            aload 7 /* exceptions */
            iload 23 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 22 /* exceptionTypes */
            iload 23 /* i */
            aaload
            iconst_0
            iconst_m1
            iconst_0
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            iload 23 /* i */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toThrows:(I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aastore
        66: .line 832
            iinc 23 /* i */ 1
      StackMap locals:
      StackMap stack:
        67: iload 23 /* i */
            iload 21 /* size */
            if_icmplt 65
        end local 23 // int i
        68: .line 837
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.isConstructor:()Z
            ifne 70
        69: .line 838
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 16 /* methodDescriptor */
            iload 19 /* index */
            iconst_1
            iadd
            iconst_m1
            iconst_0
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodReturn:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 11 /* returnType */
        70: .line 840
      StackMap locals:
      StackMap stack:
            aload 12 /* argumentNames */
            ifnonnull 71
            iconst_0
            goto 72
      StackMap locals:
      StackMap stack:
        71: aload 12 /* argumentNames */
            arraylength
      StackMap locals:
      StackMap stack: int
        72: istore 23 /* argumentNamesLength */
        start local 23 // int argumentNamesLength
        73: .line 841
            iload 20 /* startIndex */
            ifle 135
            iload 23 /* argumentNamesLength */
            ifle 135
        74: .line 843
            iload 20 /* startIndex */
            iload 23 /* argumentNamesLength */
            if_icmplt 77
        75: .line 844
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_PARAMETER_NAMES:[[C
            astore 12 /* argumentNames */
        76: .line 845
            goto 135
        77: .line 846
      StackMap locals: int
      StackMap stack:
            iload 23 /* argumentNamesLength */
            iload 20 /* startIndex */
            isub
            anewarray char[]
            astore 24 /* slicedArgumentNames */
        start local 24 // char[][] slicedArgumentNames
        78: .line 847
            aload 12 /* argumentNames */
            iload 20 /* startIndex */
            aload 24 /* slicedArgumentNames */
            iconst_0
            iload 23 /* argumentNamesLength */
            iload 20 /* startIndex */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        79: .line 848
            aload 24 /* slicedArgumentNames */
            astore 12 /* argumentNames */
        end local 24 // char[][] slicedArgumentNames
        end local 23 // int argumentNamesLength
        end local 22 // char[][] exceptionTypes
        end local 21 // int size
        end local 20 // int startIndex
        end local 19 // int index
        end local 18 // char nextChar
        end local 17 // int numOfParams
        end local 16 // char[] methodDescriptor
        80: .line 852
            goto 135
        81: .line 853
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[]
      StackMap stack:
            lload 3 /* sourceLevel */
            ldc 3407872
            lcmp
            iflt 83
        82: .line 854
            aload 2 /* binaryType */
            aload 14 /* walker */
            aload 1 /* method */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.enrichWithExternalAnnotationsFor:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 14 /* walker */
        83: .line 856
      StackMap locals:
      StackMap stack:
            iload 6 /* methodModifiers */
            ldc 1073741824
            ior
            istore 6 /* methodModifiers */
        84: .line 858
            new org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
            dup
            aload 15 /* methodSignature */
            iload 13 /* use15specifics */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.<init>:([CZ)V
            astore 16 /* wrapper */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        85: .line 859
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 60
            if_icmpne 89
        86: .line 862
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        87: .line 863
            aload 0 /* this */
            aload 16 /* wrapper */
            iconst_0
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createTypeVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;Z[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Z)[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            astore 9 /* typeVars */
        88: .line 864
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        89: .line 867
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
      StackMap stack:
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 40
            if_icmpne 113
        90: .line 868
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        91: .line 869
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 41
            if_icmpne 94
        92: .line 870
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        93: .line 871
            goto 113
        94: .line 872
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            iconst_2
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 17 /* types */
        start local 17 // java.util.ArrayList types
        95: .line 873
            iconst_0
            istore 18 /* rank */
        start local 18 // short rank
        96: .line 874
            goto 101
        97: .line 875
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 1 /* method */
            iload 18 /* rank */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fileName:[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getParameterAnnotations:(I[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 19 /* binaryParameterAnnotations */
        start local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] binaryParameterAnnotations
        98: .line 876
            aload 14 /* walker */
            aload 0 /* this */
            aload 19 /* binaryParameterAnnotations */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefaultFrom:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.classfmt.NonNullDefaultAwareTypeAnnotationWalker.updateWalkerForParamNonNullDefault:(Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;ILorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 20 /* updatedWalker */
        start local 20 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker updatedWalker
        99: .line 877
            aload 17 /* types */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 16 /* wrapper */
            aload 9 /* typeVars */
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 20 /* updatedWalker */
            iload 18 /* rank */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodParameter:(S)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
       100: .line 878
            iload 18 /* rank */
            iconst_1
            iadd
            i2s
            istore 18 /* rank */
        end local 20 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker updatedWalker
        end local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] binaryParameterAnnotations
       101: .line 874
      StackMap locals:
      StackMap stack:
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 41
            if_icmpne 97
       102: .line 880
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
       103: .line 881
            aload 17 /* types */
            invokevirtual java.util.ArrayList.size:()I
            istore 19 /* numParam */
        start local 19 // int numParam
       104: .line 882
            iload 19 /* numParam */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 8 /* parameters */
       105: .line 883
            aload 17 /* types */
            aload 8 /* parameters */
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
       106: .line 884
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifeq 113
       107: .line 885
            iload 19 /* numParam */
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
            astore 10 /* paramAnnotations */
       108: .line 886
            iconst_0
            istore 20 /* i */
        start local 20 // int i
       109: goto 112
       110: .line 887
      StackMap locals: int int
      StackMap stack:
            aload 10 /* paramAnnotations */
            iload 20 /* i */
            aload 1 /* method */
            iload 20 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fileName:[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getParameterAnnotations:(I[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
       111: .line 886
            iinc 20 /* i */ 1
      StackMap locals:
      StackMap stack:
       112: iload 20 /* i */
            iload 19 /* numParam */
            if_icmplt 110
        end local 20 // int i
        end local 19 // int numParam
        end local 18 // short rank
        end local 17 // java.util.ArrayList types
       113: .line 893
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 16 /* wrapper */
            aload 9 /* typeVars */
            aload 0 /* this */
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodReturn:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 11 /* returnType */
       114: .line 895
            aload 16 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.atEnd:()Z
            ifne 125
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 94
            if_icmpne 125
       115: .line 897
            new java.util.ArrayList
            dup
            iconst_2
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 17 /* types */
        start local 17 // java.util.ArrayList types
       116: .line 898
            iconst_0
            istore 18 /* excRank */
        start local 18 // int excRank
       117: .line 900
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 16 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
       118: .line 901
            aload 17 /* types */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 16 /* wrapper */
            aload 9 /* typeVars */
            aload 0 /* this */
            aload 5 /* missingTypeNames */
       119: .line 902
            aload 14 /* walker */
            iload 18 /* excRank */
            iinc 18 /* excRank */ 1
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toThrows:(I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
       120: .line 901
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
       121: .line 903
            aload 16 /* wrapper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.atEnd:()Z
            ifne 122
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 16 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 94
            if_icmpeq 117
       122: .line 904
      StackMap locals:
      StackMap stack:
            aload 17 /* types */
            invokevirtual java.util.ArrayList.size:()I
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* exceptions */
       123: .line 905
            aload 17 /* types */
            aload 7 /* exceptions */
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        end local 18 // int excRank
        end local 17 // java.util.ArrayList types
       124: .line 906
            goto 135
       125: .line 907
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getExceptionTypeNames:()[[C
            astore 17 /* exceptionTypes */
        start local 17 // char[][] exceptionTypes
       126: .line 908
            aload 17 /* exceptionTypes */
            ifnull 135
       127: .line 909
            aload 17 /* exceptionTypes */
            arraylength
            istore 18 /* size */
        start local 18 // int size
       128: .line 910
            iload 18 /* size */
            ifle 135
       129: .line 911
            iload 18 /* size */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* exceptions */
       130: .line 912
            iconst_0
            istore 19 /* i */
        start local 19 // int i
       131: goto 134
       132: .line 913
      StackMap locals: char[][] int int
      StackMap stack:
            aload 7 /* exceptions */
            iload 19 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 17 /* exceptionTypes */
            iload 19 /* i */
            aaload
            iconst_0
            iconst_m1
            iconst_0
            aload 5 /* missingTypeNames */
            aload 14 /* walker */
            iload 19 /* i */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toThrows:(I)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromConstantPoolName:([CIIZ[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aastore
       133: .line 912
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       134: iload 19 /* i */
            iload 18 /* size */
            if_icmplt 132
        end local 19 // int i
        end local 18 // int size
        end local 17 // char[][] exceptionTypes
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
       135: .line 919
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[]
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.isConstructor:()Z
            ifeq 137
       136: .line 920
            new org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            dup
            iload 6 /* methodModifiers */
            aload 8 /* parameters */
            aload 7 /* exceptions */
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.MethodBinding.<init>:(I[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
            goto 138
       137: .line 921
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            dup
            iload 6 /* methodModifiers */
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getSelector:()[C
            aload 11 /* returnType */
            aload 8 /* parameters */
            aload 7 /* exceptions */
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.MethodBinding.<init>:(I[CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
       138: .line 919
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 16 /* result */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding result
       139: .line 923
            aload 14 /* walker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toReceiver:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.id:I
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 17 /* receiverAnnotations */
        start local 17 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] receiverAnnotations
       140: .line 924
            aload 17 /* receiverAnnotations */
            ifnull 142
            aload 17 /* receiverAnnotations */
            arraylength
            ifle 142
       141: .line 925
            aload 16 /* result */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 0 /* this */
            aload 17 /* receiverAnnotations */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.receiver:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
       142: .line 928
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifne 147
       143: .line 929
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.sourceLevel:J
            ldc 3473408
            lcmp
            iflt 147
       144: .line 930
            aload 1 /* method */
            instanceof org.eclipse.jdt.internal.compiler.classfmt.MethodInfoWithAnnotations
            ifeq 147
       145: .line 931
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getTagBits:()J
            ldc 70368744177664
            land
            lconst_0
            lcmp
            ifeq 147
       146: .line 928
            iconst_1
            goto 148
      StackMap locals:
      StackMap stack:
       147: iconst_0
      StackMap locals:
      StackMap stack: int
       148: istore 18 /* forceStoreAnnotations */
        start local 18 // boolean forceStoreAnnotations
       149: .line 932
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifne 150
            iload 18 /* forceStoreAnnotations */
            ifeq 163
       150: .line 933
      StackMap locals: int
      StackMap stack:
            iload 18 /* forceStoreAnnotations */
            ifeq 152
       151: .line 934
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:(ZZ)Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            pop
       152: .line 935
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 19 /* annotations */
        start local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
       153: .line 936
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.isConstructor:()Z
            ifeq 156
       154: .line 937
            aload 14 /* walker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodReturn:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.id:I
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 20 /* tAnnotations */
        start local 20 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] tAnnotations
       155: .line 938
            aload 16 /* result */
            aload 20 /* tAnnotations */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.setTypeAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)V
        end local 20 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] tAnnotations
       156: .line 940
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack:
            aload 16 /* result */
       157: .line 941
            aload 19 /* annotations */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
       158: .line 942
            aload 10 /* paramAnnotations */
       159: .line 943
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isAnnotationType:()Z
            ifeq 160
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getDefaultValue:()Ljava/lang/Object;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* missingTypeNames */
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.convertMemberValue:(Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[CZ)Ljava/lang/Object;
            goto 161
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][]
       160: aconst_null
       161: .line 944
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] org.eclipse.jdt.internal.compiler.lookup.TypeBinding char[][] int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker char[] org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] java.lang.Object
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
       162: .line 940
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.setAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;[[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;Ljava/lang/Object;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
        end local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
       163: .line 947
      StackMap locals:
      StackMap stack:
            aload 12 /* argumentNames */
            ifnull 164
            aload 16 /* result */
            aload 12 /* argumentNames */
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNames:[[C
       164: .line 949
      StackMap locals:
      StackMap stack:
            iload 13 /* use15specifics */
            ifeq 166
       165: .line 950
            aload 16 /* result */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getTagBits:()J
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
       166: .line 951
      StackMap locals:
      StackMap stack:
            aload 16 /* result */
            aload 9 /* typeVars */
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
       167: .line 953
            iconst_0
            istore 19 /* i */
        start local 19 // int i
       168: aload 9 /* typeVars */
            arraylength
            istore 20 /* length */
        start local 20 // int length
       169: goto 172
       170: .line 954
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.typeSystem:Lorg/eclipse/jdt/internal/compiler/lookup/TypeSystem;
            aload 9 /* typeVars */
            iload 19 /* i */
            aaload
            aload 16 /* result */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeSystem.fixTypeVariableDeclaringElement:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/Binding;)V
       171: .line 953
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       172: iload 19 /* i */
            iload 20 /* length */
            if_icmplt 170
        end local 20 // int length
        end local 19 // int i
       173: .line 956
            aload 16 /* result */
            areturn
        end local 18 // boolean forceStoreAnnotations
        end local 17 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] receiverAnnotations
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding result
        end local 15 // char[] methodSignature
        end local 14 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        end local 13 // boolean use15specifics
        end local 12 // char[][] argumentNames
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding returnType
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[][] paramAnnotations
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVars
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] exceptions
        end local 6 // int methodModifiers
        end local 5 // char[][][] missingTypeNames
        end local 3 // long sourceLevel
        end local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0  174     0                        this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0  174     1                      method  Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            0  174     2                  binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0  174     3                 sourceLevel  J
            0  174     5            missingTypeNames  [[[C
            2  174     6             methodModifiers  I
            9  174     7                  exceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           10  174     8                  parameters  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           11  174     9                    typeVars  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
           12  174    10            paramAnnotations  [[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
           13  174    11                  returnType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           14  174    12               argumentNames  [[C
           17  174    13              use15specifics  Z
           18  174    14                      walker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           19  174    15             methodSignature  [C
           21   80    16            methodDescriptor  [C
           24   80    17                 numOfParams  I
           26   30    18                    nextChar  C
           31   80    18                    nextChar  C
           25   80    19                       index  I
           33   80    20                  startIndex  I
           39   80    21                        size  I
           45   58    22                  visibleIdx  S
           46   58    23                         end  I
           47   58    24                           i  I
           59   80    22              exceptionTypes  [[C
           64   68    23                           i  I
           73   80    23         argumentNamesLength  I
           78   80    24         slicedArgumentNames  [[C
           85  135    16                     wrapper  Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;
           95  113    17                       types  Ljava/util/ArrayList;
           96  113    18                        rank  S
           98  101    19  binaryParameterAnnotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
           99  101    20               updatedWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
          104  113    19                    numParam  I
          109  113    20                           i  I
          116  124    17                       types  Ljava/util/ArrayList;
          117  124    18                     excRank  I
          126  135    17              exceptionTypes  [[C
          128  135    18                        size  I
          131  135    19                           i  I
          139  174    16                      result  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
          140  174    17         receiverAnnotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
          149  174    18       forceStoreAnnotations  Z
          153  163    19                 annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
          155  156    20                tAnnotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
          168  173    19                           i  I
          169  173    20                      length  I
    MethodParameters:
                  Name  Flags
      method            
      binaryType        
      sourceLevel       
      missingTypeNames  

  private org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] createMethods(org.eclipse.jdt.internal.compiler.env.IBinaryMethod[], org.eclipse.jdt.internal.compiler.env.IBinaryType, long, char[][][]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=19, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] iMethods
        start local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 3 // long sourceLevel
        start local 5 // char[][][] missingTypeNames
         0: .line 965
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 966
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
            istore 6 /* save */
        start local 6 // boolean save
         2: .line 967
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
         3: .line 969
            iconst_0
            istore 7 /* total */
        start local 7 // int total
         4: iconst_0
            istore 8 /* initialTotal */
        start local 8 // int initialTotal
         5: iconst_m1
            istore 9 /* iClinit */
        start local 9 // int iClinit
         6: .line 970
            aconst_null
            astore 10 /* toSkip */
        start local 10 // int[] toSkip
         7: .line 971
            aload 1 /* iMethods */
            ifnull 28
         8: .line 972
            aload 1 /* iMethods */
            arraylength
            dup
            istore 8 /* initialTotal */
            istore 7 /* total */
         9: .line 973
            lload 3 /* sourceLevel */
            ldc 3211264
            lcmp
            ifge 10
            iconst_1
            goto 11
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int int int int int[]
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 11 /* keepBridgeMethods */
        start local 11 // boolean keepBridgeMethods
        12: .line 974
            iload 7 /* total */
            istore 12 /* i */
        start local 12 // int i
        13: goto 27
        14: .line 975
      StackMap locals: int int
      StackMap stack:
            aload 1 /* iMethods */
            iload 12 /* i */
            aaload
            astore 13 /* method */
        start local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        15: .line 976
            aload 13 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getModifiers:()I
            sipush 4096
            iand
            ifeq 22
        16: .line 977
            iload 11 /* keepBridgeMethods */
            ifeq 18
            aload 13 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getModifiers:()I
            bipush 64
            iand
            ifeq 18
        17: .line 978
            goto 27
        18: .line 980
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryMethod
      StackMap stack:
            aload 10 /* toSkip */
            ifnonnull 19
            aload 1 /* iMethods */
            arraylength
            newarray 10
            astore 10 /* toSkip */
        19: .line 981
      StackMap locals:
      StackMap stack:
            aload 10 /* toSkip */
            iload 12 /* i */
            iconst_m1
            iastore
        20: .line 982
            iinc 7 /* total */ -1
        21: .line 983
            goto 27
      StackMap locals:
      StackMap stack:
        22: iload 9 /* iClinit */
            iconst_m1
            if_icmpne 27
        23: .line 984
            aload 13 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getSelector:()[C
            astore 14 /* methodName */
        start local 14 // char[] methodName
        24: .line 985
            aload 14 /* methodName */
            arraylength
            bipush 8
            if_icmpne 27
            aload 14 /* methodName */
            iconst_0
            caload
            bipush 60
            if_icmpne 27
        25: .line 987
            iload 12 /* i */
            istore 9 /* iClinit */
        26: .line 988
            iinc 7 /* total */ -1
        end local 14 // char[] methodName
        end local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        27: .line 974
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ -1
            iload 12 /* i */
            ifge 14
        end local 12 // int i
        end local 11 // boolean keepBridgeMethods
        28: .line 993
      StackMap locals:
      StackMap stack:
            iload 7 /* total */
            ifne 33
        29: .line 994
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
        30: .line 995
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.NO_BINARY_METHODS:[Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            astore 18
        31: .line 1024
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        32: .line 995
            aload 18
            areturn
        33: .line 998
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasRestrictedAccess:()Z
            istore 11 /* hasRestrictedAccess */
        start local 11 // boolean hasRestrictedAccess
        34: .line 999
            iload 7 /* total */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 12 /* methods1 */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods1
        35: .line 1000
            iload 7 /* total */
            iload 8 /* initialTotal */
            if_icmpne 48
        36: .line 1001
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        37: goto 43
        38: .line 1002
      StackMap locals: int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* iMethods */
            iload 13 /* i */
            aaload
            aload 2 /* binaryType */
            lload 3 /* sourceLevel */
            aload 5 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createMethod:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 14 /* method */
        start local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        39: .line 1003
            iload 11 /* hasRestrictedAccess */
            ifeq 41
        40: .line 1004
            aload 14 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc 262144
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
        41: .line 1005
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding
      StackMap stack:
            aload 12 /* methods1 */
            iload 13 /* i */
            aload 14 /* method */
            aastore
        end local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        42: .line 1001
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        43: iload 13 /* i */
            iload 8 /* initialTotal */
            if_icmplt 38
        end local 13 // int i
        44: .line 1007
            aload 0 /* this */
            aload 12 /* methods1 */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
        45: .line 1008
            aload 1 /* iMethods */
            astore 18
        46: .line 1024
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        47: .line 1008
            aload 18
            areturn
        48: .line 1010
      StackMap locals:
      StackMap stack:
            iload 7 /* total */
            anewarray org.eclipse.jdt.internal.compiler.env.IBinaryMethod
            astore 13 /* mappedBinaryMethods */
        start local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] mappedBinaryMethods
        49: .line 1011
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        50: iconst_0
            istore 15 /* index */
        start local 15 // int index
        51: goto 59
        52: .line 1012
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] int int
      StackMap stack:
            iload 9 /* iClinit */
            iload 14 /* i */
            if_icmpeq 58
            aload 10 /* toSkip */
            ifnull 53
            aload 10 /* toSkip */
            iload 14 /* i */
            iaload
            iconst_m1
            if_icmpeq 58
        53: .line 1013
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* iMethods */
            iload 14 /* i */
            aaload
            aload 2 /* binaryType */
            lload 3 /* sourceLevel */
            aload 5 /* missingTypeNames */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createMethod:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;J[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 16 /* method */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        54: .line 1014
            iload 11 /* hasRestrictedAccess */
            ifeq 56
        55: .line 1015
            aload 16 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc 262144
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
        56: .line 1016
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding
      StackMap stack:
            aload 13 /* mappedBinaryMethods */
            iload 15 /* index */
            aload 1 /* iMethods */
            iload 14 /* i */
            aaload
            aastore
        57: .line 1017
            aload 12 /* methods1 */
            iload 15 /* index */
            iinc 15 /* index */ 1
            aload 16 /* method */
            aastore
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        58: .line 1011
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        59: iload 14 /* i */
            iload 8 /* initialTotal */
            if_icmplt 52
        end local 15 // int index
        end local 14 // int i
        60: .line 1020
            aload 0 /* this */
            aload 12 /* methods1 */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
        61: .line 1021
            aload 13 /* mappedBinaryMethods */
            astore 18
        62: .line 1024
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        63: .line 1021
            aload 18
            areturn
        end local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] mappedBinaryMethods
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods1
        end local 11 // boolean hasRestrictedAccess
        end local 10 // int[] toSkip
        end local 9 // int iClinit
        end local 8 // int initialTotal
        end local 7 // int total
        64: .line 1023
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] org.eclipse.jdt.internal.compiler.env.IBinaryType long char[][][] int
      StackMap stack: java.lang.Throwable
            astore 17
        65: .line 1024
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 6 /* save */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        66: .line 1025
            aload 17
            athrow
        end local 6 // boolean save
        end local 5 // char[][][] missingTypeNames
        end local 3 // long sourceLevel
        end local 2 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod[] iMethods
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   67     0                 this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   67     1             iMethods  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            0   67     2           binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0   67     3          sourceLevel  J
            0   67     5     missingTypeNames  [[[C
            2   67     6                 save  Z
            4   64     7                total  I
            5   64     8         initialTotal  I
            6   64     9              iClinit  I
            7   64    10               toSkip  [I
           12   28    11    keepBridgeMethods  Z
           13   28    12                    i  I
           15   27    13               method  Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
           24   27    14           methodName  [C
           34   64    11  hasRestrictedAccess  Z
           35   64    12             methods1  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           37   44    13                    i  I
           39   42    14               method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           49   64    13  mappedBinaryMethods  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
           50   60    14                    i  I
           51   60    15                index  I
           54   58    16               method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
      Exception table:
        from    to  target  type
           3    31      64  any
          33    46      64  any
          48    62      64  any
    MethodParameters:
                  Name  Flags
      iMethods          
      binaryType        
      sourceLevel       
      missingTypeNames  

  private org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] createTypeVariables(org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper, boolean, char[][][], org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;Z[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Z)[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=17, args_size=6
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        start local 2 // boolean assignVariables
        start local 3 // char[][][] missingTypeNames
        start local 4 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        start local 5 // boolean isClassTypeParameter
         0: .line 1031
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1033
      StackMap locals:
      StackMap stack:
            aload 1 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            astore 6 /* typeSignature */
        start local 6 // char[] typeSignature
         2: .line 1034
            iconst_0
            istore 7 /* depth */
        start local 7 // int depth
         3: aload 6 /* typeSignature */
            arraylength
            istore 8 /* length */
        start local 8 // int length
         4: .line 1035
            iconst_0
            istore 9 /* rank */
        start local 9 // int rank
         5: .line 1036
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 10 /* variables */
        start local 10 // java.util.ArrayList variables
         6: .line 1037
            iconst_0
            istore 7 /* depth */
         7: .line 1038
            iconst_1
            istore 11 /* pendingVariable */
        start local 11 // boolean pendingVariable
         8: .line 1040
            iconst_1
            istore 12 /* i */
        start local 12 // int i
         9: goto 30
        10: .line 1041
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper int char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int char[] int int int java.util.ArrayList int int
      StackMap stack:
            aload 6 /* typeSignature */
            iload 12 /* i */
            caload
            tableswitch { // 59 - 62
                   59: 15
                   60: 11
                   61: 18
                   62: 13
              default: 18
          }
        11: .line 1043
      StackMap locals:
      StackMap stack:
            iinc 7 /* depth */ 1
        12: .line 1044
            goto 29
        13: .line 1046
      StackMap locals:
      StackMap stack:
            iinc 7 /* depth */ -1
            iload 7 /* depth */
            ifge 29
        14: .line 1047
            goto 31
        15: .line 1050
      StackMap locals:
      StackMap stack:
            iload 7 /* depth */
            ifne 29
            iload 12 /* i */
            iconst_1
            iadd
            iload 8 /* length */
            if_icmpge 29
            aload 6 /* typeSignature */
            iload 12 /* i */
            iconst_1
            iadd
            caload
            bipush 58
            if_icmpeq 29
        16: .line 1051
            iconst_1
            istore 11 /* pendingVariable */
        17: .line 1052
            goto 29
        18: .line 1054
      StackMap locals:
      StackMap stack:
            iload 11 /* pendingVariable */
            ifeq 29
        19: .line 1055
            iconst_0
            istore 11 /* pendingVariable */
        20: .line 1056
            bipush 58
            aload 6 /* typeSignature */
            iload 12 /* i */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[CI)I
            istore 13 /* colon */
        start local 13 // int colon
        21: .line 1057
            aload 6 /* typeSignature */
            iload 12 /* i */
            iload 13 /* colon */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 14 /* variableName */
        start local 14 // char[] variableName
        22: .line 1058
            new org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
            dup
            aload 14 /* variableName */
            aload 0 /* this */
            iload 9 /* rank */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokespecial org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/Binding;ILorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
            astore 15 /* typeVariable */
        start local 15 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding typeVariable
        23: .line 1059
            aload 4 /* walker */
            iload 5 /* isClassTypeParameter */
            iload 9 /* rank */
            iinc 9 /* rank */ 1
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toTypeParameter:(ZI)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            iconst_0
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
        24: .line 1060
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 3 /* missingTypeNames */
        25: .line 1059
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createAnnotations:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;[[[C)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            astore 16 /* annotations */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] annotations
        26: .line 1061
            aload 16 /* annotations */
            ifnull 28
            aload 16 /* annotations */
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_ANNOTATIONS:[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            if_acmpeq 28
        27: .line 1062
            aload 15 /* typeVariable */
            aload 16 /* annotations */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.isAnnotationBasedNullAnalysisEnabled:Z
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.setTypeAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;Z)V
        28: .line 1063
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper int char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int char[] int int int java.util.ArrayList int int int char[] org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
      StackMap stack:
            aload 10 /* variables */
            aload 15 /* typeVariable */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] annotations
        end local 15 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding typeVariable
        end local 14 // char[] variableName
        end local 13 // int colon
        29: .line 1040
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper int char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int char[] int int int java.util.ArrayList int int
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 12 /* i */
            iload 8 /* length */
            if_icmplt 10
        end local 12 // int i
        31: .line 1070
      StackMap locals:
      StackMap stack:
            aload 10 /* variables */
            iload 9 /* rank */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
            dup
            astore 12 /* result */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] result
        32: invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        33: .line 1073
            iload 2 /* assignVariables */
            ifeq 35
        34: .line 1074
            aload 0 /* this */
            aload 12 /* result */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
        35: .line 1075
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[]
      StackMap stack:
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        36: goto 41
        37: .line 1076
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 12 /* result */
            iload 13 /* i */
            aaload
            aload 12 /* result */
            aload 1 /* wrapper */
            aload 3 /* missingTypeNames */
            aload 4 /* walker */
            iload 5 /* isClassTypeParameter */
            iload 13 /* i */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toTypeParameterBounds:(ZI)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.initializeTypeVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)V
        38: .line 1077
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.isPotentiallyUnannotatedLib:()Z
            ifeq 40
            aload 12 /* result */
            iload 13 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.hasNullTypeAnnotations:()Z
            ifeq 40
        39: .line 1078
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        40: .line 1075
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 13 /* i */
            iload 9 /* rank */
            if_icmplt 37
        end local 13 // int i
        42: .line 1080
            aload 12 /* result */
            areturn
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] result
        end local 11 // boolean pendingVariable
        end local 10 // java.util.ArrayList variables
        end local 9 // int rank
        end local 8 // int length
        end local 7 // int depth
        end local 6 // char[] typeSignature
        end local 5 // boolean isClassTypeParameter
        end local 4 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        end local 3 // char[][][] missingTypeNames
        end local 2 // boolean assignVariables
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   43     0                  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   43     1               wrapper  Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;
            0   43     2       assignVariables  Z
            0   43     3      missingTypeNames  [[[C
            0   43     4                walker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            0   43     5  isClassTypeParameter  Z
            2   43     6         typeSignature  [C
            3   43     7                 depth  I
            4   43     8                length  I
            5   43     9                  rank  I
            6   43    10             variables  Ljava/util/ArrayList;
            8   43    11       pendingVariable  Z
            9   31    12                     i  I
           21   29    13                 colon  I
           22   29    14          variableName  [C
           23   29    15          typeVariable  Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
           26   29    16           annotations  [Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
           32   43    12                result  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
           36   42    13                     i  I
    MethodParameters:
                      Name  Flags
      wrapper               
      assignVariables       
      missingTypeNames      
      walker                
      isClassTypeParameter  

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enclosingType();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1089
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 134217728
            land
            lconst_0
            lcmp
            ifne 2
         1: .line 1090
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         2: .line 1093
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 1094
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -134217729
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         4: .line 1095
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] fields();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1101
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1102
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         2: .line 1105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 8192
            land
            lconst_0
            lcmp
            ifeq 4
         3: .line 1106
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         4: .line 1109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            land
            lconst_0
            lcmp
            ifne 9
         5: .line 1110
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         6: .line 1111
            iload 1 /* length */
            iconst_1
            if_icmple 8
         7: .line 1112
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iconst_0
            iload 1 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortFields:([Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;II)V
         8: .line 1113
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 1 // int length
         9: .line 1115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 1 /* i */
        start local 1 // int i
        10: goto 12
        11: .line 1116
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypeFor:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            pop
        12: .line 1115
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
            iload 1 /* i */
            ifge 11
        end local 1 // int i
        13: .line 1117
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 8192
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        14: .line 1118
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            6    9     1  length  I
           10   13     1       i  I

  private org.eclipse.jdt.internal.compiler.lookup.MethodBinding findMethod(char[], char[][][]);
    descriptor: ([C[[[C)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=17, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] methodDescriptor
        start local 2 // char[][][] missingTypeNames
         0: .line 1122
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1123
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 3 /* index */
        start local 3 // int index
         2: .line 1124
      StackMap locals: int
      StackMap stack:
            aload 1 /* methodDescriptor */
            iinc 3 /* index */ 1
            iload 3 /* index */
            caload
            bipush 40
            if_icmpne 2
         3: .line 1127
            iload 3 /* index */
            newarray 5
            astore 4 /* selector */
        start local 4 // char[] selector
         4: .line 1128
            aload 1 /* methodDescriptor */
            iconst_0
            aload 4 /* selector */
            iconst_0
            iload 3 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 1129
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_PARAMETERS:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 5 /* parameters */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
         6: .line 1130
            iconst_0
            istore 6 /* numOfParams */
        start local 6 // int numOfParams
         7: .line 1132
            iload 3 /* index */
            istore 8 /* paramStart */
        start local 8 // int paramStart
         8: .line 1133
            goto 13
        start local 7 // char nextChar
         9: .line 1134
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int
      StackMap stack:
            iload 7 /* nextChar */
            bipush 91
            if_icmpeq 13
        10: .line 1135
            iinc 6 /* numOfParams */ 1
        11: .line 1136
            iload 7 /* nextChar */
            bipush 76
            if_icmpne 13
        12: .line 1137
      StackMap locals:
      StackMap stack:
            aload 1 /* methodDescriptor */
            iinc 3 /* index */ 1
            iload 3 /* index */
            caload
            dup
            istore 7 /* nextChar */
            bipush 59
            if_icmpne 12
        end local 7 // char nextChar
        13: .line 1133
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int top int
      StackMap stack:
            aload 1 /* methodDescriptor */
            iinc 3 /* index */ 1
            iload 3 /* index */
            caload
            dup
            istore 7 /* nextChar */
        start local 7 // char nextChar
        14: bipush 41
            if_icmpne 9
        15: .line 1140
            iload 6 /* numOfParams */
            ifle 31
        16: .line 1141
            iload 6 /* numOfParams */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 5 /* parameters */
        17: .line 1142
            iload 8 /* paramStart */
            iconst_1
            iadd
            istore 3 /* index */
        18: .line 1143
            iload 8 /* paramStart */
            istore 9 /* end */
        start local 9 // int end
        19: .line 1144
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        20: goto 30
        21: .line 1145
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int int int
      StackMap stack:
            aload 1 /* methodDescriptor */
            iinc 9 /* end */ 1
            iload 9 /* end */
            caload
            dup
            istore 7 /* nextChar */
            bipush 91
            if_icmpeq 21
        22: .line 1146
            iload 7 /* nextChar */
            bipush 76
            if_icmpne 24
        23: .line 1147
      StackMap locals:
      StackMap stack:
            aload 1 /* methodDescriptor */
            iinc 9 /* end */ 1
            iload 9 /* end */
            caload
            dup
            istore 7 /* nextChar */
            bipush 59
            if_icmpne 23
        24: .line 1150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* methodDescriptor */
            iload 3 /* index */
            iload 9 /* end */
            iconst_0
            aload 0 /* this */
            aload 2 /* missingTypeNames */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 11 /* param */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding param
        25: .line 1151
            aload 11 /* param */
            instanceof org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            ifeq 27
        26: .line 1152
            aload 11 /* param */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 11 /* param */
        27: .line 1154
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 5 /* parameters */
            iload 10 /* i */
            aload 11 /* param */
            aastore
        28: .line 1155
            iload 9 /* end */
            iconst_1
            iadd
            istore 3 /* index */
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding param
        29: .line 1144
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 10 /* i */
            iload 6 /* numOfParams */
            if_icmplt 21
        end local 10 // int i
        end local 9 // int end
        31: .line 1159
      StackMap locals:
      StackMap stack:
            aload 5 /* parameters */
            arraylength
            istore 9 /* parameterLength */
        start local 9 // int parameterLength
        32: .line 1160
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 4 /* selector */
            iload 9 /* parameterLength */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getMethods:([CI)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 10 /* methods2 */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods2
        33: .line 1162
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        34: aload 10 /* methods2 */
            arraylength
            istore 12 /* max */
        start local 12 // int max
        35: goto 48
        36: .line 1163
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            aload 10 /* methods2 */
            iload 11 /* i */
            aaload
            astore 13 /* currentMethod */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding currentMethod
        37: .line 1164
            aload 13 /* currentMethod */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 14 /* parameters2 */
        start local 14 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters2
        38: .line 1165
            aload 14 /* parameters2 */
            arraylength
            istore 15 /* currentMethodParameterLength */
        start local 15 // int currentMethodParameterLength
        39: .line 1166
            iload 9 /* parameterLength */
            iload 15 /* currentMethodParameterLength */
            if_icmpne 47
        40: .line 1167
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        41: goto 45
        42: .line 1168
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int
      StackMap stack:
            aload 5 /* parameters */
            iload 16 /* j */
            aaload
            aload 14 /* parameters2 */
            iload 16 /* j */
            aaload
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.notEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 44
            aload 5 /* parameters */
            iload 16 /* j */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 14 /* parameters2 */
            iload 16 /* j */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.notEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 44
        43: .line 1169
            goto 47
        44: .line 1167
      StackMap locals:
      StackMap stack:
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        45: iload 16 /* j */
            iload 15 /* currentMethodParameterLength */
            if_icmplt 42
        end local 16 // int j
        46: .line 1172
            aload 13 /* currentMethod */
            areturn
        end local 15 // int currentMethodParameterLength
        end local 14 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters2
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding currentMethod
        47: .line 1162
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] char[][][] int char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 11 /* i */
            iload 12 /* max */
            if_icmplt 36
        end local 12 // int max
        end local 11 // int i
        49: .line 1175
            aconst_null
            areturn
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods2
        end local 9 // int parameterLength
        end local 8 // int paramStart
        end local 7 // char nextChar
        end local 6 // int numOfParams
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
        end local 4 // char[] selector
        end local 3 // int index
        end local 2 // char[][][] missingTypeNames
        end local 1 // char[] methodDescriptor
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   50     0                          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   50     1              methodDescriptor  [C
            0   50     2              missingTypeNames  [[[C
            2   50     3                         index  I
            4   50     4                      selector  [C
            6   50     5                    parameters  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            7   50     6                   numOfParams  I
            9   13     7                      nextChar  C
           14   50     7                      nextChar  C
            8   50     8                    paramStart  I
           19   31     9                           end  I
           20   31    10                             i  I
           25   29    11                         param  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           32   50     9               parameterLength  I
           33   50    10                      methods2  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           34   49    11                             i  I
           35   49    12                           max  I
           37   47    13                 currentMethod  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           38   47    14                   parameters2  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           39   47    15  currentMethodParameterLength  I
           41   46    16                             j  I
    MethodParameters:
                  Name  Flags
      methodDescriptor  
      missingTypeNames  

  public char[] genericTypeSignature();
    descriptor: ()[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1183
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1184
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.computeGenericTypeSignature:([Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;)[C
            areturn
         2: .line 1185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.computeGenericTypeSignature:([Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;)[C
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding getExactConstructor(org.eclipse.jdt.internal.compiler.lookup.TypeBinding[]);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
         0: .line 1192
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1193
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* argumentTypes */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getExactConstructor:([Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 7
         3: .line 1197
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         4: .line 1198
            iload 2 /* length */
            iconst_1
            if_icmple 6
         5: .line 1199
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 2 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
         6: .line 1200
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 2 // int length
         7: .line 1202
      StackMap locals:
      StackMap stack:
            aload 1 /* argumentTypes */
            arraylength
            istore 2 /* argCount */
        start local 2 // int argCount
         8: .line 1204
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.INIT:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)J
            dup2
            lstore 3 /* range */
        start local 3 // long range
         9: lconst_0
            lcmp
            iflt 26
        10: .line 1205
            lload 3 /* range */
            l2i
            istore 5 /* imethod */
        start local 5 // int imethod
        11: lload 3 /* range */
            bipush 32
            lshr
            l2i
            istore 6 /* end */
        start local 6 // int end
        12: goto 25
        13: .line 1206
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int long int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 5 /* imethod */
            aaload
            astore 7 /* method */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        14: .line 1207
            aload 7 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            arraylength
            iload 2 /* argCount */
            if_icmpne 24
        15: .line 1208
            aload 0 /* this */
            aload 7 /* method */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            pop
        16: .line 1209
            aload 7 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 8 /* toMatch */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] toMatch
        17: .line 1210
            iconst_0
            istore 9 /* iarg */
        start local 9 // int iarg
        18: goto 22
        19: .line 1211
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int
      StackMap stack:
            aload 8 /* toMatch */
            iload 9 /* iarg */
            aaload
            aload 1 /* argumentTypes */
            iload 9 /* iarg */
            aaload
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.notEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 21
        20: .line 1212
            goto 24
        21: .line 1210
      StackMap locals:
      StackMap stack:
            iinc 9 /* iarg */ 1
      StackMap locals:
      StackMap stack:
        22: iload 9 /* iarg */
            iload 2 /* argCount */
            if_icmplt 19
        end local 9 // int iarg
        23: .line 1213
            aload 7 /* method */
            areturn
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] toMatch
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        24: .line 1205
      StackMap locals:
      StackMap stack:
            iinc 5 /* imethod */ 1
      StackMap locals:
      StackMap stack:
        25: iload 5 /* imethod */
            iload 6 /* end */
            if_icmple 13
        end local 6 // int end
        end local 5 // int imethod
        26: .line 1217
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // long range
        end local 2 // int argCount
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   27     0           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   27     1  argumentTypes  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            4    7     2         length  I
            8   27     2       argCount  I
            9   27     3          range  J
           11   26     5        imethod  I
           12   26     6            end  I
           14   24     7         method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           17   24     8        toMatch  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           18   23     9           iarg  I
    MethodParameters:
               Name  Flags
      argumentTypes  

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding getExactMethod(char[], org.eclipse.jdt.internal.compiler.lookup.TypeBinding[], org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope);
    descriptor: ([C[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=13, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] selector
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope refScope
         0: .line 1226
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1227
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* selector */
            aload 2 /* argumentTypes */
            aload 3 /* refScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getExactMethod:([C[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 7
         3: .line 1231
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 4 /* length */
        start local 4 // int length
         4: .line 1232
            iload 4 /* length */
            iconst_1
            if_icmple 6
         5: .line 1233
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 4 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
         6: .line 1234
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 4 // int length
         7: .line 1237
      StackMap locals:
      StackMap stack:
            aload 2 /* argumentTypes */
            arraylength
            istore 4 /* argCount */
        start local 4 // int argCount
         8: .line 1238
            iconst_1
            istore 5 /* foundNothing */
        start local 5 // boolean foundNothing
         9: .line 1241
            aload 1 /* selector */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)J
            dup2
            lstore 6 /* range */
        start local 6 // long range
        10: lconst_0
            lcmp
            iflt 28
        11: .line 1242
            lload 6 /* range */
            l2i
            istore 8 /* imethod */
        start local 8 // int imethod
        12: lload 6 /* range */
            bipush 32
            lshr
            l2i
            istore 9 /* end */
        start local 9 // int end
        13: goto 27
        14: .line 1243
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope int int long int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 8 /* imethod */
            aaload
            astore 10 /* method */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        15: .line 1244
            iconst_0
            istore 5 /* foundNothing */
        16: .line 1245
            aload 10 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            arraylength
            iload 4 /* argCount */
            if_icmpne 26
        17: .line 1246
            aload 0 /* this */
            aload 10 /* method */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            pop
        18: .line 1247
            aload 10 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 11 /* toMatch */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] toMatch
        19: .line 1248
            iconst_0
            istore 12 /* iarg */
        start local 12 // int iarg
        20: goto 24
        21: .line 1249
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int
      StackMap stack:
            aload 11 /* toMatch */
            iload 12 /* iarg */
            aaload
            aload 2 /* argumentTypes */
            iload 12 /* iarg */
            aaload
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.notEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 23
        22: .line 1250
            goto 26
        23: .line 1248
      StackMap locals:
      StackMap stack:
            iinc 12 /* iarg */ 1
      StackMap locals:
      StackMap stack:
        24: iload 12 /* iarg */
            iload 4 /* argCount */
            if_icmplt 21
        end local 12 // int iarg
        25: .line 1251
            aload 10 /* method */
            areturn
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] toMatch
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        26: .line 1242
      StackMap locals:
      StackMap stack:
            iinc 8 /* imethod */ 1
      StackMap locals:
      StackMap stack:
        27: iload 8 /* imethod */
            iload 9 /* end */
            if_icmple 14
        end local 9 // int end
        end local 8 // int imethod
        28: .line 1255
      StackMap locals:
      StackMap stack:
            iload 5 /* foundNothing */
            ifeq 38
        29: .line 1256
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isInterface:()Z
            ifeq 34
        30: .line 1257
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            iconst_1
            if_icmpne 38
        31: .line 1258
            aload 3 /* refScope */
            ifnull 33
        32: .line 1259
            aload 3 /* refScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.recordTypeReference:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        33: .line 1260
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aaload
            aload 1 /* selector */
            aload 2 /* argumentTypes */
            aload 3 /* refScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getExactMethod:([C[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        34: .line 1262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 38
        35: .line 1263
            aload 3 /* refScope */
            ifnull 37
        36: .line 1264
            aload 3 /* refScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.recordTypeReference:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        37: .line 1265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 1 /* selector */
            aload 2 /* argumentTypes */
            aload 3 /* refScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getExactMethod:([C[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        38: .line 1268
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 6 // long range
        end local 5 // boolean foundNothing
        end local 4 // int argCount
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope refScope
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        end local 1 // char[] selector
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   39     0           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   39     1       selector  [C
            0   39     2  argumentTypes  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            0   39     3       refScope  Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            4    7     4         length  I
            8   39     4       argCount  I
            9   39     5   foundNothing  Z
           10   39     6          range  J
           12   28     8        imethod  I
           13   28     9            end  I
           15   26    10         method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           19   26    11        toMatch  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           20   25    12           iarg  I
    MethodParameters:
               Name  Flags
      selector       
      argumentTypes  
      refScope       

  public org.eclipse.jdt.internal.compiler.lookup.FieldBinding getField(char[], boolean);
    descriptor: ([CZ)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] fieldName
        start local 2 // boolean needResolve
         0: .line 1274
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1275
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* fieldName */
            iload 2 /* needResolve */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getField:([CZ)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         2: .line 1278
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            land
            lconst_0
            lcmp
            ifne 7
         3: .line 1279
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
         4: .line 1280
            iload 3 /* length */
            iconst_1
            if_icmple 6
         5: .line 1281
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iconst_0
            iload 3 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortFields:([Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;II)V
         6: .line 1282
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 4096
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 3 // int length
         7: .line 1284
      StackMap locals:
      StackMap stack:
            aload 1 /* fieldName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            astore 3 /* field */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
         8: .line 1285
            iload 2 /* needResolve */
            ifeq 9
            aload 3 /* field */
            ifnull 9
            aload 0 /* this */
            aload 3 /* field */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypeFor:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            goto 10
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.FieldBinding
      StackMap stack:
         9: aload 3 /* field */
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.FieldBinding
        10: areturn
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
        end local 2 // boolean needResolve
        end local 1 // char[] fieldName
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   11     1    fieldName  [C
            0   11     2  needResolve  Z
            4    7     3       length  I
            8   11     3        field  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    MethodParameters:
             Name  Flags
      fieldName    
      needResolve  

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding getMemberType(char[]);
    descriptor: ([C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] typeName
         0: .line 1293
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 5
         1: .line 1294
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* typeName */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getMemberType:([C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 2 /* memberType */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding memberType
         2: .line 1295
            aload 2 /* memberType */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
         3: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 2 /* memberType */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createMemberType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
         4: areturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding memberType
         5: .line 1298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.maybeSortedMemberTypes:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 2 /* members */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] members
         6: .line 1300
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
            ifne 20
         7: .line 1301
            aload 2 /* members */
            arraylength
            istore 3 /* i */
        start local 3 // int i
         8: goto 18
         9: .line 1302
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int
      StackMap stack:
            aload 2 /* members */
            iload 3 /* i */
            aaload
            astore 4 /* memberType */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding memberType
        10: .line 1303
            aload 4 /* memberType */
            instanceof org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            ifeq 16
        11: .line 1304
            aload 4 /* memberType */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:[C
            astore 5 /* name */
        start local 5 // char[] name
        12: .line 1305
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
            arraylength
            iconst_1
            isub
            aaload
            arraylength
            iconst_1
            iadd
            istore 6 /* prefixLength */
        start local 6 // int prefixLength
        13: .line 1306
            aload 5 /* name */
            arraylength
            iload 6 /* prefixLength */
            aload 1 /* typeName */
            arraylength
            iadd
            if_icmpne 18
        14: .line 1307
            aload 1 /* typeName */
            aload 5 /* name */
            iload 6 /* prefixLength */
            iconst_1
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.fragmentEquals:([C[CIZ)Z
            ifeq 18
        15: .line 1308
            aload 2 /* members */
            iload 3 /* i */
            aload 4 /* memberType */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            dup_x2
            aastore
            areturn
        end local 6 // int prefixLength
        end local 5 // char[] name
        16: .line 1309
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 1 /* typeName */
            aload 4 /* memberType */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 18
        17: .line 1310
            aload 4 /* memberType */
            areturn
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding memberType
        18: .line 1301
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
            iload 3 /* i */
            ifge 9
        end local 3 // int i
        19: .line 1313
            aconst_null
            areturn
        20: .line 1315
      StackMap locals:
      StackMap stack:
            aload 1 /* typeName */
            aload 2 /* members */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)I
            istore 3 /* memberTypeIndex */
        start local 3 // int memberTypeIndex
        21: .line 1316
            iload 3 /* memberTypeIndex */
            iflt 23
        22: .line 1317
            aload 2 /* members */
            iload 3 /* memberTypeIndex */
            aaload
            areturn
        23: .line 1319
      StackMap locals: int
      StackMap stack:
            aconst_null
            areturn
        end local 3 // int memberTypeIndex
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] members
        end local 1 // char[] typeName
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0             this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   24     1         typeName  [C
            2    5     2       memberType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            6   24     2          members  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            8   19     3                i  I
           10   18     4       memberType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           12   16     5             name  [C
           13   16     6     prefixLength  I
           21   24     3  memberTypeIndex  I
    MethodParameters:
          Name  Flags
      typeName  

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] getMethods(char[]);
    descriptor: ([C)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] selector
         0: .line 1326
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1327
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* selector */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getMethods:([C)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            land
            lconst_0
            lcmp
            ifeq 13
         3: .line 1331
            aload 1 /* selector */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)J
            dup2
            lstore 2 /* range */
        start local 2 // long range
         4: lconst_0
            lcmp
            iflt 12
         5: .line 1332
            lload 2 /* range */
            l2i
            istore 4 /* start */
        start local 4 // int start
         6: lload 2 /* range */
            bipush 32
            lshr
            l2i
            istore 5 /* end */
        start local 5 // int end
         7: .line 1333
            iload 5 /* end */
            iload 4 /* start */
            isub
            iconst_1
            iadd
            istore 6 /* length */
        start local 6 // int length
         8: .line 1334
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            land
            lconst_0
            lcmp
            ifeq 12
         9: .line 1337
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 4 /* start */
            iload 6 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            dup
            astore 7 /* result */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        10: iconst_0
            iload 6 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 1338
            aload 7 /* result */
            areturn
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        end local 6 // int length
        end local 5 // int end
        end local 4 // int start
        12: .line 1341
      StackMap locals: long
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        end local 2 // long range
        13: .line 1344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 18
        14: .line 1345
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 2 /* length */
        start local 2 // int length
        15: .line 1346
            iload 2 /* length */
            iconst_1
            if_icmple 17
        16: .line 1347
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 2 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
        17: .line 1348
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 2 // int length
        18: .line 1351
      StackMap locals:
      StackMap stack:
            aload 1 /* selector */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)J
            dup2
            lstore 2 /* range */
        start local 2 // long range
        19: lconst_0
            lcmp
            iflt 31
        20: .line 1352
            lload 2 /* range */
            l2i
            istore 4 /* start */
        start local 4 // int start
        21: lload 2 /* range */
            bipush 32
            lshr
            l2i
            istore 5 /* end */
        start local 5 // int end
        22: .line 1353
            iload 5 /* end */
            iload 4 /* start */
            isub
            iconst_1
            iadd
            istore 6 /* length */
        start local 6 // int length
        23: .line 1354
            iload 6 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 7 /* result */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        24: .line 1356
            iload 4 /* start */
            istore 8 /* i */
        start local 8 // int i
        25: iconst_0
            istore 9 /* index */
        start local 9 // int index
        26: goto 29
        27: .line 1357
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] long int int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            aload 7 /* result */
            iload 9 /* index */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 8 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            aastore
        28: .line 1356
            iinc 8 /* i */ 1
            iinc 9 /* index */ 1
      StackMap locals:
      StackMap stack:
        29: iload 8 /* i */
            iload 5 /* end */
            if_icmple 27
        end local 9 // int index
        end local 8 // int i
        30: .line 1358
            aload 7 /* result */
            areturn
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        end local 6 // int length
        end local 5 // int end
        end local 4 // int start
        31: .line 1360
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] long
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        end local 2 // long range
        end local 1 // char[] selector
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   32     1  selector  [C
            4   13     2     range  J
            6   12     4     start  I
            7   12     5       end  I
            8   12     6    length  I
           10   12     7    result  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           15   18     2    length  I
           19   32     2     range  J
           21   31     4     start  I
           22   31     5       end  I
           23   31     6    length  I
           24   31     7    result  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           25   30     8         i  I
           26   30     9     index  I
    MethodParameters:
          Name  Flags
      selector  

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] getMethods(char[], int);
    descriptor: ([CI)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] selector
        start local 2 // int suggestedParameterLength
         0: .line 1367
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1368
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* selector */
            iload 2 /* suggestedParameterLength */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getMethods:([CI)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            land
            lconst_0
            lcmp
            ifeq 4
         3: .line 1371
            aload 0 /* this */
            aload 1 /* selector */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getMethods:([C)[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         4: .line 1373
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 9
         5: .line 1374
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
         6: .line 1375
            iload 3 /* length */
            iconst_1
            if_icmple 8
         7: .line 1376
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 3 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
         8: .line 1377
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 3 // int length
         9: .line 1380
      StackMap locals:
      StackMap stack:
            aload 1 /* selector */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.binarySearch:([C[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)J
            dup2
            lstore 3 /* range */
        start local 3 // long range
        10: lconst_0
            lcmp
            iflt 39
        11: .line 1381
            lload 3 /* range */
            l2i
            istore 5 /* start */
        start local 5 // int start
        12: lload 3 /* range */
            bipush 32
            lshr
            l2i
            istore 6 /* end */
        start local 6 // int end
        13: .line 1382
            iload 6 /* end */
            iload 5 /* start */
            isub
            iconst_1
            iadd
            istore 7 /* length */
        start local 7 // int length
        14: .line 1383
            iconst_0
            istore 8 /* count */
        start local 8 // int count
        15: .line 1384
            iload 5 /* start */
            istore 9 /* i */
        start local 9 // int i
        16: goto 20
        17: .line 1385
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] int long int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 9 /* i */
            aaload
            iload 2 /* suggestedParameterLength */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.doesParameterLengthMatch:(I)Z
            ifeq 19
        18: .line 1386
            iinc 8 /* count */ 1
        19: .line 1384
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 9 /* i */
            iload 6 /* end */
            if_icmple 17
        end local 9 // int i
        21: .line 1388
            iload 8 /* count */
            ifne 30
        22: .line 1389
            iload 7 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 9 /* result */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        23: .line 1391
            iload 5 /* start */
            istore 10 /* i */
        start local 10 // int i
        24: iconst_0
            istore 11 /* index */
        start local 11 // int index
        25: goto 28
        26: .line 1392
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] int long int int int int org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            aload 9 /* result */
            iload 11 /* index */
            iinc 11 /* index */ 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 10 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            aastore
        27: .line 1391
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 10 /* i */
            iload 6 /* end */
            if_icmple 26
        end local 11 // int index
        end local 10 // int i
        29: .line 1393
            aload 9 /* result */
            areturn
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        30: .line 1395
      StackMap locals:
      StackMap stack:
            iload 8 /* count */
            anewarray org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 9 /* result */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        31: .line 1397
            iload 5 /* start */
            istore 10 /* i */
        start local 10 // int i
        32: iconst_0
            istore 11 /* index */
        start local 11 // int index
        33: goto 37
        34: .line 1398
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 10 /* i */
            aaload
            iload 2 /* suggestedParameterLength */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.doesParameterLengthMatch:(I)Z
            ifeq 36
        35: .line 1399
            aload 9 /* result */
            iload 11 /* index */
            iinc 11 /* index */ 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 10 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            aastore
        36: .line 1397
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 10 /* i */
            iload 6 /* end */
            if_icmple 34
        end local 11 // int index
        end local 10 // int i
        38: .line 1401
            aload 9 /* result */
            areturn
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] result
        end local 8 // int count
        end local 7 // int length
        end local 6 // int end
        end local 5 // int start
        39: .line 1404
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding char[] int long
      StackMap stack:
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        end local 3 // long range
        end local 2 // int suggestedParameterLength
        end local 1 // char[] selector
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   40     0                      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   40     1                  selector  [C
            0   40     2  suggestedParameterLength  I
            6    9     3                    length  I
           10   40     3                     range  J
           12   39     5                     start  I
           13   39     6                       end  I
           14   39     7                    length  I
           15   39     8                     count  I
           16   21     9                         i  I
           23   30     9                    result  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           24   29    10                         i  I
           25   29    11                     index  I
           31   39     9                    result  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           32   38    10                         i  I
           33   38    11                     index  I
    MethodParameters:
                          Name  Flags
      selector                  
      suggestedParameterLength  

  public boolean hasMemberTypes();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1409
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1410
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasMemberTypes:()Z
            ireturn
         2: .line 1411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            ifle 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding getTypeVariable(char[]);
    descriptor: ([C)Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // char[] variableName
         0: .line 1416
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1417
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* variableName */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getTypeVariable:([C)Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            areturn
         2: .line 1419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* variableName */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getTypeVariable:([C)Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            astore 2 /* variable */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding variable
         3: .line 1420
            aload 2 /* variable */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
         4: .line 1421
            aload 2 /* variable */
            areturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding variable
        end local 1 // char[] variableName
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    5     1  variableName  [C
            3    5     2      variable  Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    MethodParameters:
              Name  Flags
      variableName  

  public boolean hasTypeBit(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // int bit
         0: .line 1426
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1427
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            iload 1 /* bit */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasTypeBit:(I)Z
            ireturn
         2: .line 1430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
            istore 2 /* wasToleratingMissingTypeProcessingAnnotations */
        start local 2 // boolean wasToleratingMissingTypeProcessingAnnotations
         3: .line 1431
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
         4: .line 1433
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
         5: .line 1434
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
         6: .line 1435
            goto 10
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding int int
      StackMap stack: java.lang.Throwable
         7: astore 3
         8: .line 1436
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 2 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
         9: .line 1437
            aload 3
            athrow
        10: .line 1436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 2 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        11: .line 1438
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            iload 1 /* bit */
            iand
            ifeq 12
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        12: iconst_0
            ireturn
        end local 2 // boolean wasToleratingMissingTypeProcessingAnnotations
        end local 1 // int bit
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                                           Name  Signature
            0   13     0                                           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   13     1                                            bit  I
            3   13     2  wasToleratingMissingTypeProcessingAnnotations  Z
      Exception table:
        from    to  target  type
           4     7       7  any
    MethodParameters:
      Name  Flags
      bit   

  private void initializeTypeVariable(org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding, org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[], org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper, char[][][], org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=12, args_size=6
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding variable
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] existingVariables
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        start local 4 // char[][][] missingTypeNames
        start local 5 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
         0: .line 1441
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1445
      StackMap locals:
      StackMap stack:
            bipush 58
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[CI)I
            istore 6 /* colon */
        start local 6 // int colon
         2: .line 1446
            aload 3 /* wrapper */
            iload 6 /* colon */
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
         3: .line 1447
            aconst_null
            astore 8 /* firstBound */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding firstBound
         4: .line 1448
            iconst_0
            istore 9 /* rank */
        start local 9 // short rank
         5: .line 1449
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 58
            if_icmpne 9
         6: .line 1450
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.JAVA_LANG_OBJECT:[[C
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getResolvedJavaBaseType:([[CLorg/eclipse/jdt/internal/compiler/lookup/Scope;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 7 /* type */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
         7: .line 1451
            iload 9 /* rank */
            iconst_1
            iadd
            i2s
            istore 9 /* rank */
         8: .line 1452
            goto 15
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
         9: .line 1453
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int top org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 3 /* wrapper */
            aload 2 /* existingVariables */
            aload 0 /* this */
            aload 4 /* missingTypeNames */
            aload 5 /* walker */
            iload 9 /* rank */
            dup
            iconst_1
            iadd
            i2s
            istore 9 /* rank */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toTypeBound:(S)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 10 /* typeFromTypeSignature */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding typeFromTypeSignature
        10: .line 1454
            aload 10 /* typeFromTypeSignature */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 13
        11: .line 1455
            aload 10 /* typeFromTypeSignature */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* type */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
        12: .line 1456
            goto 14
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
        13: .line 1458
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.JAVA_LANG_OBJECT:[[C
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getResolvedJavaBaseType:([[CLorg/eclipse/jdt/internal/compiler/lookup/Scope;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 7 /* type */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
        14: .line 1460
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 7 /* type */
            astore 8 /* firstBound */
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding typeFromTypeSignature
        15: .line 1464
      StackMap locals:
      StackMap stack:
            aload 1 /* variable */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.modifiers:I
            ldc 33554432
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.modifiers:I
        16: .line 1465
            aload 1 /* variable */
            aload 7 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.setSuperClass:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        17: .line 1467
            aconst_null
            astore 10 /* bounds */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] bounds
        18: .line 1468
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 58
            if_icmpne 25
        19: .line 1469
            new java.util.ArrayList
            dup
            iconst_2
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 11 /* types */
        start local 11 // java.util.ArrayList types
        20: .line 1471
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] java.util.ArrayList
      StackMap stack:
            aload 3 /* wrapper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
        21: .line 1472
            aload 11 /* types */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 3 /* wrapper */
            aload 2 /* existingVariables */
            aload 0 /* this */
            aload 4 /* missingTypeNames */
            aload 5 /* walker */
            iload 9 /* rank */
            dup
            iconst_1
            iadd
            i2s
            istore 9 /* rank */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toTypeBound:(S)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature:(Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        22: .line 1473
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.signature:[C
            aload 3 /* wrapper */
            getfield org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper.start:I
            caload
            bipush 58
            if_icmpeq 20
        23: .line 1474
            aload 11 /* types */
            invokevirtual java.util.ArrayList.size:()I
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 10 /* bounds */
        24: .line 1475
            aload 11 /* types */
            aload 10 /* bounds */
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        end local 11 // java.util.ArrayList types
        25: .line 1478
      StackMap locals:
      StackMap stack:
            aload 1 /* variable */
            aload 10 /* bounds */
            ifnonnull 26
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_SUPERINTERFACES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            goto 27
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
        26: aload 10 /* bounds */
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper char[][][] org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
        27: invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.setSuperInterfaces:([Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        28: .line 1479
            aload 8 /* firstBound */
            ifnonnull 32
        29: .line 1480
            aload 1 /* variable */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            ifne 30
            aconst_null
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 1 /* variable */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aaload
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
        31: astore 8 /* firstBound */
        32: .line 1482
      StackMap locals:
      StackMap stack:
            aload 1 /* variable */
            aload 8 /* firstBound */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.setFirstBound:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            pop
        33: .line 1483
            return
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] bounds
        end local 9 // short rank
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding firstBound
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding type
        end local 6 // int colon
        end local 5 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker walker
        end local 4 // char[][][] missingTypeNames
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.SignatureWrapper wrapper
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] existingVariables
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding variable
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   34     0                   this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   34     1               variable  Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            0   34     2      existingVariables  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            0   34     3                wrapper  Lorg/eclipse/jdt/internal/compiler/lookup/SignatureWrapper;
            0   34     4       missingTypeNames  [[[C
            0   34     5                 walker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            2   34     6                  colon  I
            7    9     7                   type  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           12   13     7                   type  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           14   34     7                   type  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            4   34     8             firstBound  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            5   34     9                   rank  S
           10   15    10  typeFromTypeSignature  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           18   34    10                 bounds  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           20   25    11                  types  Ljava/util/ArrayList;
    MethodParameters:
                   Name  Flags
      variable           
      existingVariables  
      wrapper            
      missingTypeNames   
      walker             

  public boolean isEquivalentTo(org.eclipse.jdt.internal.compiler.lookup.TypeBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding otherType
         0: .line 1491
            aload 0 /* this */
            aload 1 /* otherType */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 1
            iconst_1
            ireturn
         1: .line 1492
      StackMap locals:
      StackMap stack:
            aload 1 /* otherType */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 1493
      StackMap locals:
      StackMap stack:
            aload 1 /* otherType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.kind:()I
            lookupswitch { // 4
                  260: 4
                  516: 3
                 1028: 4
                 8196: 3
              default: 5
          }
         3: .line 1496
      StackMap locals:
      StackMap stack:
            aload 1 /* otherType */
            checkcast org.eclipse.jdt.internal.compiler.lookup.WildcardBinding
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.WildcardBinding.boundCheck:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ireturn
         4: .line 1506
      StackMap locals:
      StackMap stack:
            aload 1 /* otherType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 0 /* this */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ireturn
         5: .line 1508
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding otherType
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    6     1  otherType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
           Name  Flags
      otherType  

  public boolean isGenericType();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1513
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1514
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isGenericType:()Z
            ireturn
         2: .line 1516
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            if_acmpeq 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public boolean isHierarchyConnected();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1521
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1522
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isHierarchyConnected:()Z
            ireturn
         2: .line 1524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 100663296
            land
            lconst_0
            lcmp
            ifne 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public boolean isRepeatableAnnotationType();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1528
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public int kind();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1534
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1535
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.kind:()I
            ireturn
         2: .line 1537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            if_acmpeq 4
         3: .line 1538
            sipush 2052
            ireturn
         4: .line 1539
      StackMap locals:
      StackMap stack:
            iconst_4
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] memberTypes();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1544
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 17
         1: .line 1545
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 268435456
            land
            lconst_0
            lcmp
            ifne 3
         2: .line 1546
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         3: .line 1552
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 1 /* members */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] members
         4: .line 1553
            aload 1 /* members */
            ifnonnull 5
            iconst_0
            goto 6
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack:
         5: aload 1 /* members */
            arraylength
      StackMap locals:
      StackMap stack: int
         6: istore 2 /* memberTypesLength */
        start local 2 // int memberTypesLength
         7: .line 1554
            iload 2 /* memberTypesLength */
            ifle 14
         8: .line 1555
            aload 0 /* this */
            iload 2 /* memberTypesLength */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         9: .line 1556
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        10: goto 13
        11: .line 1557
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 3 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* members */
            iload 3 /* i */
            aaload
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createMemberType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aastore
        12: .line 1556
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            iload 2 /* memberTypesLength */
            if_icmplt 11
        end local 3 // int i
        14: .line 1559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -268435457
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        15: .line 1560
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
        16: .line 1561
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 2 // int memberTypesLength
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] members
        17: .line 1564
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 268435456
            land
            lconst_0
            lcmp
            ifne 19
        18: .line 1565
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.maybeSortedMemberTypes:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        19: .line 1567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 1 /* i */
        start local 1 // int i
        20: goto 22
        21: .line 1568
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aastore
        22: .line 1567
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
            iload 1 /* i */
            ifge 21
        end local 1 // int i
        23: .line 1569
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -268435457
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        24: .line 1570
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.maybeSortedMemberTypes:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0               this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            4   17     1            members  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            7   17     2  memberTypesLength  I
           10   14     3                  i  I
           20   23     1                  i  I

  private org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] maybeSortedMemberTypes();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1575
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 268435456
            land
            lconst_0
            lcmp
            ifeq 2
         1: .line 1576
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         2: .line 1578
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
            ifne 7
         3: .line 1580
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         4: .line 1581
            iload 1 /* length */
            iconst_1
            if_icmple 6
         5: .line 1582
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            iload 1 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.sortMemberTypes:([Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;II)V
         6: .line 1583
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypesSorted:Z
        end local 1 // int length
         7: .line 1585
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            4    7     1  length  I

  public org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] methods();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1592
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1593
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            land
            lconst_0
            lcmp
            ifeq 4
         3: .line 1597
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         4: .line 1600
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            land
            lconst_0
            lcmp
            ifne 9
         5: .line 1601
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         6: .line 1602
            iload 1 /* length */
            iconst_1
            if_icmple 8
         7: .line 1603
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iconst_0
            iload 1 /* length */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sortMethods:([Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;II)V
         8: .line 1604
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16384
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 1 // int length
         9: .line 1606
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 1 /* i */
        start local 1 // int i
        10: goto 12
        11: .line 1607
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            pop
        12: .line 1606
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
            iload 1 /* i */
            ifge 11
        end local 1 // int i
        13: .line 1608
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 32768
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        14: .line 1609
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            6    9     1  length  I
           10   13     1       i  I

  public void setHierarchyCheckDone();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1613
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 768
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         1: .line 1614
            return
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding prototype();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1618
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  private boolean isPrototype();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1622
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding containerAnnotationType();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1627
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            instanceof org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            ifeq 3
         2: .line 1629
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_0
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 1631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  private org.eclipse.jdt.internal.compiler.lookup.FieldBinding resolveTypeFor(org.eclipse.jdt.internal.compiler.lookup.FieldBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
         0: .line 1636
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1637
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* field */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypeFor:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         2: .line 1639
      StackMap locals:
      StackMap stack:
            aload 1 /* field */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
            ldc 33554432
            iand
            ifne 4
         3: .line 1640
            aload 1 /* field */
            areturn
         4: .line 1642
      StackMap locals:
      StackMap stack:
            aload 1 /* field */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 2 /* resolvedType */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
         5: .line 1643
            aload 1 /* field */
            aload 2 /* resolvedType */
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
         6: .line 1644
            aload 2 /* resolvedType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
            ldc 128
            land
            lconst_0
            lcmp
            ifeq 8
         7: .line 1645
            aload 1 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 128
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
         8: .line 1647
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 1 /* field */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
            ldc -33554433
            iand
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
         9: .line 1648
            aload 1 /* field */
            areturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding field
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   10     1         field  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            5   10     2  resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
       Name  Flags
      field  

  org.eclipse.jdt.internal.compiler.lookup.MethodBinding resolveTypesFor(org.eclipse.jdt.internal.compiler.lookup.MethodBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
         0: .line 1652
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1653
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* method */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 1655
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc 33554432
            iand
            ifne 4
         3: .line 1656
            aload 1 /* method */
            areturn
         4: .line 1658
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isConstructor:()Z
            ifne 9
         5: .line 1659
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 2 /* resolvedType */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
         6: .line 1660
            aload 1 /* method */
            aload 2 /* resolvedType */
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
         7: .line 1661
            aload 2 /* resolvedType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
            ldc 128
            land
            lconst_0
            lcmp
            ifeq 9
         8: .line 1662
            aload 1 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 128
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
         9: .line 1665
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            arraylength
            istore 2 /* i */
        start local 2 // int i
        10: goto 15
        11: .line 1666
      StackMap locals: int
      StackMap stack:
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 2 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 3 /* resolvedType */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        12: .line 1667
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 2 /* i */
            aload 3 /* resolvedType */
            aastore
        13: .line 1668
            aload 3 /* resolvedType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
            ldc 128
            land
            lconst_0
            lcmp
            ifeq 15
        14: .line 1669
            aload 1 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 128
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        15: .line 1665
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
            iload 2 /* i */
            ifge 11
        end local 2 // int i
        16: .line 1672
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 2 /* i */
        start local 2 // int i
        17: goto 22
        18: .line 1673
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 3 /* resolvedType */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding resolvedType
        19: .line 1674
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aload 3 /* resolvedType */
            aastore
        20: .line 1675
            aload 3 /* resolvedType */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 128
            land
            lconst_0
            lcmp
            ifeq 22
        21: .line 1676
            aload 1 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 128
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding resolvedType
        22: .line 1672
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
            iload 2 /* i */
            ifge 18
        end local 2 // int i
        23: .line 1679
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            istore 2 /* i */
        start local 2 // int i
        24: goto 26
        25: .line 1680
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        26: .line 1679
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
            iload 2 /* i */
            ifge 25
        end local 2 // int i
        27: .line 1682
            aload 1 /* method */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc -33554433
            iand
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
        28: .line 1683
            aload 1 /* method */
            areturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding method
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   29     0          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   29     1        method  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            6    9     2  resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           10   16     2             i  I
           12   15     3  resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           17   23     2             i  I
           19   22     3  resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           24   27     2             i  I
    MethodParameters:
        Name  Flags
      method  

  org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] retrieveAnnotations(org.eclipse.jdt.internal.compiler.lookup.Binding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Binding;)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.Binding binding
         0: .line 1688
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1689
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* binding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.retrieveAnnotations:(Lorg/eclipse/jdt/internal/compiler/lookup/Binding;)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            areturn
         2: .line 1691
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* binding */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.retrieveAnnotations:(Lorg/eclipse/jdt/internal/compiler/lookup/Binding;)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aload 1 /* binding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.Binding.getAnnotationTagBits:()J
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.addStandardAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;JLorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            areturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.Binding binding
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    3     1  binding  Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
    MethodParameters:
         Name  Flags
      binding  

  public void setContainerAnnotationType(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding value
         0: .line 1696
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* value */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         2: .line 1698
            return
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding value
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    3     1  value  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    MethodParameters:
       Name  Flags
      value  

  public void tagAsHavingDefectiveContainerType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 1702
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 3
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isValidBinding:()Z
            ifeq 3
         2: .line 1704
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.compoundName:[[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            bipush 22
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding.<init>:([[CLorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;I)V
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 1705
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  org.eclipse.jdt.internal.compiler.util.SimpleLookupTable storedAnnotations(boolean, boolean);
    descriptor: (ZZ)Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // boolean forceInitialize
        start local 2 // boolean forceStore
         0: .line 1710
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 1711
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            iload 1 /* forceInitialize */
            iload 2 /* forceStore */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:(ZZ)Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            areturn
         2: .line 1713
      StackMap locals:
      StackMap stack:
            iload 1 /* forceInitialize */
            ifeq 6
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            ifnonnull 6
         3: .line 1714
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.storeAnnotations:Z
            ifne 5
            iload 2 /* forceStore */
            ifne 5
         4: .line 1715
            aconst_null
            areturn
         5: .line 1716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.util.SimpleLookupTable
            dup
            iconst_3
            invokespecial org.eclipse.jdt.internal.compiler.util.SimpleLookupTable.<init>:(I)V
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
         6: .line 1718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.storedAnnotations:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            areturn
        end local 2 // boolean forceStore
        end local 1 // boolean forceInitialize
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    7     1  forceInitialize  Z
            0    7     2       forceStore  Z
    MethodParameters:
                 Name  Flags
      forceInitialize  
      forceStore       

  private void scanFieldForNullAnnotation(org.eclipse.jdt.internal.compiler.env.IBinaryField, org.eclipse.jdt.internal.compiler.lookup.FieldBinding, boolean, org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;ZLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryField field
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding fieldBinding
        start local 3 // boolean isEnum
        start local 4 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker externalAnnotationWalker
         0: .line 1723
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1725
      StackMap locals:
      StackMap stack:
            iload 3 /* isEnum */
            ifeq 4
            aload 1 /* field */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getModifiers:()I
            sipush 16384
            iand
            ifeq 4
         2: .line 1726
            aload 2 /* fieldBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 72057594037927936
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
         3: .line 1727
            return
         4: .line 1730
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fPackage:Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.PackageBinding.compoundName:[[C
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.JAVA_LANG_ANNOTATION:[[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([[C[[C)Z
            ifne 19
         5: .line 1731
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 19
         6: .line 1732
            aload 2 /* fieldBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 5 /* fieldType */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding fieldType
         7: .line 1733
            aload 5 /* fieldType */
            ifnull 18
         8: .line 1734
            aload 5 /* fieldType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isBaseType:()Z
            ifne 18
         9: .line 1735
            aload 5 /* fieldType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
            ldc 108086391056891904
            land
            lconst_0
            lcmp
            ifne 18
        10: .line 1736
            aload 5 /* fieldType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.acceptsNonNullDefault:()Z
            ifeq 18
        11: .line 1737
            aload 0 /* this */
            aload 1 /* field */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefaultFrom:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
            istore 6 /* nullDefaultFromField */
        start local 6 // int nullDefaultFromField
        12: .line 1738
            iload 6 /* nullDefaultFromField */
            ifne 14
        13: .line 1739
            aload 0 /* this */
            bipush 32
            iconst_m1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasNonNullDefaultFor:(II)Z
            ifeq 18
            goto 15
        14: .line 1740
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding int
      StackMap stack:
            iload 6 /* nullDefaultFromField */
            bipush 32
            iand
            ifeq 18
        15: .line 1741
      StackMap locals:
      StackMap stack:
            aload 2 /* fieldBinding */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 5 /* fieldType */
        16: .line 1742
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNonNullAnnotation:()Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        17: .line 1741
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        end local 6 // int nullDefaultFromField
        18: .line 1745
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding fieldType
        19: .line 1750
      StackMap locals:
      StackMap stack:
            aload 2 /* fieldBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 20
            aload 2 /* fieldBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isBaseType:()Z
            ifeq 21
        20: .line 1751
      StackMap locals:
      StackMap stack:
            return
        21: .line 1753
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* explicitNullness */
        start local 5 // boolean explicitNullness
        22: .line 1754
            aload 4 /* externalAnnotationWalker */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            if_acmpeq 24
        23: .line 1755
            aload 4 /* externalAnnotationWalker */
            aload 2 /* fieldBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            goto 25
        24: .line 1756
      StackMap locals: int
      StackMap stack:
            aload 1 /* field */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
        25: .line 1754
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
            astore 6 /* annotations */
        start local 6 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        26: .line 1757
            aload 6 /* annotations */
            ifnull 43
        27: .line 1758
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        28: goto 42
        29: .line 1759
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int
      StackMap stack:
            aload 6 /* annotations */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 8 /* annotationTypeName */
        start local 8 // char[] annotationTypeName
        30: .line 1760
            aload 8 /* annotationTypeName */
            iconst_0
            caload
            bipush 76
            if_icmpeq 32
        31: .line 1761
            goto 41
        32: .line 1762
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 8 /* annotationTypeName */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullAnnotationBit:([[C)I
            istore 9 /* typeBit */
        start local 9 // int typeBit
        33: .line 1763
            iload 9 /* typeBit */
            bipush 32
            if_icmpne 37
        34: .line 1764
            aload 2 /* fieldBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 72057594037927936
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
        35: .line 1765
            iconst_1
            istore 5 /* explicitNullness */
        36: .line 1766
            goto 43
        37: .line 1768
      StackMap locals: int
      StackMap stack:
            iload 9 /* typeBit */
            bipush 64
            if_icmpne 41
        38: .line 1769
            aload 2 /* fieldBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 36028797018963968
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
        39: .line 1770
            iconst_1
            istore 5 /* explicitNullness */
        40: .line 1771
            goto 43
        end local 9 // int typeBit
        end local 8 // char[] annotationTypeName
        41: .line 1758
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 7 /* i */
            aload 6 /* annotations */
            arraylength
            if_icmplt 29
        end local 7 // int i
        43: .line 1775
      StackMap locals:
      StackMap stack:
            iload 5 /* explicitNullness */
            ifeq 45
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.isPotentiallyUnannotatedLib:()Z
            ifeq 45
        44: .line 1776
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
        45: .line 1777
      StackMap locals:
      StackMap stack:
            iload 5 /* explicitNullness */
            ifne 50
        46: .line 1778
            aload 0 /* this */
            aload 1 /* field */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryField.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNullDefaultFrom:([Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;)I
            istore 7 /* nullDefaultFromField */
        start local 7 // int nullDefaultFromField
        47: .line 1779
            iload 7 /* nullDefaultFromField */
            ifne 48
            aload 0 /* this */
            bipush 32
            iconst_m1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasNonNullDefaultFor:(II)Z
            ifeq 50
            goto 49
        48: .line 1780
      StackMap locals: int
      StackMap stack:
            iload 7 /* nullDefaultFromField */
            bipush 32
            iand
            ifeq 50
        49: .line 1781
      StackMap locals:
      StackMap stack:
            aload 2 /* fieldBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
            ldc 72057594037927936
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
        end local 7 // int nullDefaultFromField
        50: .line 1784
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        end local 5 // boolean explicitNullness
        end local 4 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker externalAnnotationWalker
        end local 3 // boolean isEnum
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.FieldBinding fieldBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryField field
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   51     0                      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   51     1                     field  Lorg/eclipse/jdt/internal/compiler/env/IBinaryField;
            0   51     2              fieldBinding  Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            0   51     3                    isEnum  Z
            0   51     4  externalAnnotationWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            7   19     5                 fieldType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           12   18     6      nullDefaultFromField  I
           22   51     5          explicitNullness  Z
           26   51     6               annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
           28   43     7                         i  I
           30   41     8        annotationTypeName  [C
           33   41     9                   typeBit  I
           47   50     7      nullDefaultFromField  I
    MethodParameters:
                          Name  Flags
      field                     
      fieldBinding              
      isEnum                    
      externalAnnotationWalker  

  private void scanMethodForNullAnnotation(org.eclipse.jdt.internal.compiler.env.IBinaryMethod, org.eclipse.jdt.internal.compiler.lookup.MethodBinding, org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=17, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        start local 3 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker externalAnnotationWalker
        start local 4 // boolean useNullTypeAnnotations
         0: .line 1787
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1788
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isEnum:()Z
            ifeq 19
         2: .line 1789
            iconst_0
            istore 5 /* purpose */
        start local 5 // int purpose
         3: .line 1790
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.VALUEOF:[C
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getSelector:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 8
         4: .line 1791
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            arraylength
            iconst_1
            if_icmpne 8
         5: .line 1792
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iconst_0
            aaload
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
            bipush 11
            if_icmpne 8
         6: .line 1794
            bipush 10
            istore 5 /* purpose */
         7: .line 1795
            goto 11
      StackMap locals: int
      StackMap stack:
         8: getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.VALUES:[C
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getSelector:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 11
         9: .line 1796
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_PARAMETERS:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            if_acmpne 11
        10: .line 1797
            bipush 9
            istore 5 /* purpose */
        11: .line 1799
      StackMap locals:
      StackMap stack:
            iload 5 /* purpose */
            ifeq 19
        12: .line 1800
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.useNullTypeAnnotations:Ljava/lang/Boolean;
            ifnonnull 13
            iconst_1
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 6 /* needToDefer */
        start local 6 // boolean needToDefer
        15: .line 1801
            iload 6 /* needToDefer */
            ifeq 17
        16: .line 1802
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.deferredEnumMethods:Ljava/util/List;
            aload 2 /* methodBinding */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
            goto 18
        17: .line 1804
      StackMap locals: int
      StackMap stack:
            aload 2 /* methodBinding */
            iload 5 /* purpose */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.SyntheticMethodBinding.markNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;ILorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
        18: .line 1805
      StackMap locals:
      StackMap stack:
            return
        end local 6 // boolean needToDefer
        end local 5 // int purpose
        19: .line 1810
      StackMap locals:
      StackMap stack:
            aload 3 /* externalAnnotationWalker */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodReturn:()Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 5 /* returnWalker */
        start local 5 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker returnWalker
        20: .line 1811
            aload 5 /* returnWalker */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            if_acmpeq 22
        21: .line 1812
            aload 5 /* returnWalker */
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            goto 23
        22: .line 1813
      StackMap locals: org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
        23: .line 1811
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
            astore 6 /* annotations */
        start local 6 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        24: .line 1814
            aload 6 /* annotations */
            ifnull 53
        25: .line 1815
            iconst_0
            istore 7 /* methodDefaultNullness */
        start local 7 // int methodDefaultNullness
        26: .line 1816
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        27: goto 51
        28: .line 1817
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int int
      StackMap stack:
            aload 6 /* annotations */
            iload 8 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 9 /* annotationTypeName */
        start local 9 // char[] annotationTypeName
        29: .line 1818
            aload 9 /* annotationTypeName */
            iconst_0
            caload
            bipush 76
            if_icmpeq 31
        30: .line 1819
            goto 50
        31: .line 1820
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 9 /* annotationTypeName */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullAnnotationBit:([[C)I
            istore 10 /* typeBit */
        start local 10 // int typeBit
        32: .line 1821
            iload 10 /* typeBit */
            sipush 128
            if_icmpne 35
        33: .line 1822
            iload 7 /* methodDefaultNullness */
            aload 6 /* annotations */
            iload 8 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNonNullByDefaultValue:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)I
            ior
            istore 7 /* methodDefaultNullness */
        34: .line 1823
            goto 50
      StackMap locals: int
      StackMap stack:
        35: iload 10 /* typeBit */
            bipush 32
            if_icmpne 43
        36: .line 1824
            aload 2 /* methodBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 72057594037927936
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        37: .line 1825
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 50
        38: .line 1826
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 50
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifne 50
        39: .line 1827
            aload 2 /* methodBinding */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        40: .line 1828
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNonNullAnnotation:()Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        41: .line 1827
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        42: .line 1831
            goto 50
      StackMap locals:
      StackMap stack:
        43: iload 10 /* typeBit */
            bipush 64
            if_icmpne 50
        44: .line 1832
            aload 2 /* methodBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 36028797018963968
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
        45: .line 1833
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 50
        46: .line 1834
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 50
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifne 50
        47: .line 1835
            aload 2 /* methodBinding */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        48: .line 1836
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullableAnnotation:()Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        49: .line 1835
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        end local 10 // int typeBit
        end local 9 // char[] annotationTypeName
        50: .line 1816
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 8 /* i */
            aload 6 /* annotations */
            arraylength
            if_icmplt 28
        end local 8 // int i
        52: .line 1841
            aload 2 /* methodBinding */
            iload 7 /* methodDefaultNullness */
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.defaultNullness:I
        end local 7 // int methodDefaultNullness
        53: .line 1845
      StackMap locals:
      StackMap stack:
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 7 /* parameters */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
        54: .line 1846
            aload 7 /* parameters */
            arraylength
            istore 8 /* numVisibleParams */
        start local 8 // int numVisibleParams
        55: .line 1847
            aload 3 /* externalAnnotationWalker */
            instanceof org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider$IMethodAnnotationWalker
            ifeq 57
        56: .line 1848
            aload 3 /* externalAnnotationWalker */
            checkcast org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider$IMethodAnnotationWalker
            invokeinterface org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider$IMethodAnnotationWalker.getParameterCount:()I
            goto 58
        57: .line 1849
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int
      StackMap stack:
            aload 1 /* method */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getAnnotatedParametersCount:()I
        58: .line 1847
      StackMap locals:
      StackMap stack: int
            istore 9 /* numParamAnnotations */
        start local 9 // int numParamAnnotations
        59: .line 1850
            iload 9 /* numParamAnnotations */
            ifle 104
        60: .line 1851
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        61: goto 103
        62: .line 1852
      StackMap locals: int int
      StackMap stack:
            iload 9 /* numParamAnnotations */
            ifle 102
        63: .line 1853
            iload 9 /* numParamAnnotations */
            iload 8 /* numVisibleParams */
            isub
            istore 11 /* startIndex */
        start local 11 // int startIndex
        64: .line 1854
            aload 3 /* externalAnnotationWalker */
            iload 10 /* j */
            iload 11 /* startIndex */
            iadd
            i2s
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.toMethodParameter:(S)Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            astore 12 /* parameterWalker */
        start local 12 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker parameterWalker
        65: .line 1855
            aload 12 /* parameterWalker */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            if_acmpeq 67
        66: .line 1856
            aload 12 /* parameterWalker */
            aload 7 /* parameters */
            iload 10 /* j */
            aaload
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
            iconst_0
            invokeinterface org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.getAnnotationsAtCursor:(IZ)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            goto 68
        67: .line 1857
      StackMap locals: int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker
      StackMap stack:
            aload 1 /* method */
            iload 10 /* j */
            iload 11 /* startIndex */
            iadd
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fileName:[C
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryMethod.getParameterAnnotations:(I[C)[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
        68: .line 1855
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[]
            astore 13 /* paramAnnotations */
        start local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] paramAnnotations
        69: .line 1858
            aload 13 /* paramAnnotations */
            ifnull 102
        70: .line 1859
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        71: goto 101
        72: .line 1860
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int
      StackMap stack:
            aload 13 /* paramAnnotations */
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 15 /* annotationTypeName */
        start local 15 // char[] annotationTypeName
        73: .line 1861
            aload 15 /* annotationTypeName */
            iconst_0
            caload
            bipush 76
            if_icmpeq 75
        74: .line 1862
            goto 100
        75: .line 1863
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 15 /* annotationTypeName */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullAnnotationBit:([[C)I
            istore 16 /* typeBit */
        start local 16 // int typeBit
        76: .line 1864
            iload 16 /* typeBit */
            bipush 32
            if_icmpne 88
        77: .line 1865
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
            ifnonnull 79
        78: .line 1866
            aload 2 /* methodBinding */
            iload 8 /* numVisibleParams */
            anewarray java.lang.Boolean
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
        79: .line 1867
      StackMap locals: int
      StackMap stack:
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
            iload 10 /* j */
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            aastore
        80: .line 1868
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 102
        81: .line 1869
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
            ifnull 102
        82: .line 1870
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifne 102
        83: .line 1871
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
        84: .line 1872
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
        85: .line 1873
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNonNullAnnotation:()Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        86: .line 1871
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aastore
        87: .line 1876
            goto 102
        88: .line 1877
      StackMap locals:
      StackMap stack:
            iload 16 /* typeBit */
            bipush 64
            if_icmpne 100
        89: .line 1878
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
            ifnonnull 91
        90: .line 1879
            aload 2 /* methodBinding */
            iload 8 /* numVisibleParams */
            anewarray java.lang.Boolean
            putfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
        91: .line 1880
      StackMap locals:
      StackMap stack:
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
            iload 10 /* j */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            aastore
        92: .line 1881
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.usesNullTypeAnnotations:()Z
            ifeq 102
        93: .line 1882
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
            ifnull 102
        94: .line 1883
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifne 102
        95: .line 1884
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
        96: .line 1885
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameters:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            iload 10 /* j */
            aaload
        97: .line 1886
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullableAnnotation:()Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            aastore
        98: .line 1884
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aastore
        99: .line 1889
            goto 102
        end local 16 // int typeBit
        end local 15 // char[] annotationTypeName
       100: .line 1859
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
       101: iload 14 /* i */
            aload 13 /* paramAnnotations */
            arraylength
            if_icmplt 72
        end local 14 // int i
        end local 13 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] paramAnnotations
        end local 12 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker parameterWalker
        end local 11 // int startIndex
       102: .line 1851
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int
      StackMap stack:
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
       103: iload 10 /* j */
            iload 8 /* numVisibleParams */
            if_icmplt 62
        end local 10 // int j
       104: .line 1896
      StackMap locals:
      StackMap stack:
            iload 4 /* useNullTypeAnnotations */
            ifeq 117
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.isPotentiallyUnannotatedLib:()Z
            ifeq 117
       105: .line 1897
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifne 108
       106: .line 1898
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.tagBits:J
            ldc 108086391056891904
            land
            lconst_0
            lcmp
            ifne 108
       107: .line 1899
            aload 2 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.parameterNonNullness:[Ljava/lang/Boolean;
            ifnull 110
       108: .line 1900
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
       109: .line 1901
            goto 117
       110: .line 1902
      StackMap locals:
      StackMap stack:
            aload 7 /* parameters */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 116
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int top int int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[]
      StackMap stack:
       111: aload 13
            iload 11
            aaload
            astore 10 /* parameter */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding parameter
       112: .line 1903
            aload 10 /* parameter */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.hasNullTypeAnnotations:()Z
            ifeq 115
       113: .line 1904
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus.TYPE_IS_ANNOTATED:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.externalAnnotationStatus:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus;
       114: .line 1905
            goto 117
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding parameter
       115: .line 1902
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
       116: iload 11
            iload 12
            if_icmplt 111
       117: .line 1910
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryMethod org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker int org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int
      StackMap stack:
            return
        end local 9 // int numParamAnnotations
        end local 8 // int numVisibleParams
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] parameters
        end local 6 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        end local 5 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker returnWalker
        end local 4 // boolean useNullTypeAnnotations
        end local 3 // org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker externalAnnotationWalker
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryMethod method
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0  118     0                      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0  118     1                    method  Lorg/eclipse/jdt/internal/compiler/env/IBinaryMethod;
            0  118     2             methodBinding  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            0  118     3  externalAnnotationWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            0  118     4    useNullTypeAnnotations  Z
            3   19     5                   purpose  I
           15   19     6               needToDefer  Z
           20  118     5              returnWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           24  118     6               annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
           26   53     7     methodDefaultNullness  I
           27   52     8                         i  I
           29   50     9        annotationTypeName  [C
           32   50    10                   typeBit  I
           54  118     7                parameters  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           55  118     8          numVisibleParams  I
           59  118     9       numParamAnnotations  I
           61  104    10                         j  I
           64  102    11                startIndex  I
           65  102    12           parameterWalker  Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
           69  102    13          paramAnnotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
           71  102    14                         i  I
           73  100    15        annotationTypeName  [C
           76  100    16                   typeBit  I
          112  115    10                 parameter  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
                          Name  Flags
      method                    
      methodBinding             
      externalAnnotationWalker  
      useNullTypeAnnotations    

  private void scanTypeForNullDefaultAnnotation(org.eclipse.jdt.internal.compiler.env.IBinaryType, org.eclipse.jdt.internal.compiler.lookup.PackageBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=11, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
         0: .line 1913
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 1914
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNonNullByDefaultAnnotationName:()[[C
            astore 3 /* nonNullByDefaultAnnotationName */
        start local 3 // char[][] nonNullByDefaultAnnotationName
         2: .line 1915
            aload 3 /* nonNullByDefaultAnnotationName */
            ifnonnull 4
         3: .line 1916
            return
         4: .line 1918
      StackMap locals: char[][]
      StackMap stack:
            bipush 47
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            aload 3 /* nonNullByDefaultAnnotationName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([[C[[C)Z
            ifeq 6
         5: .line 1919
            return
         6: .line 1920
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.nonNullByDefaultAnnotationSecondaryNames:[Ljava/lang/String;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 11
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType org.eclipse.jdt.internal.compiler.lookup.PackageBinding char[][] top int int java.lang.String[]
      StackMap stack:
         7: aload 7
            iload 5
            aaload
            astore 4 /* name */
        start local 4 // java.lang.String name
         8: .line 1921
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toString:([[C)Ljava/lang/String;
            aload 4 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 1922
            return
        end local 4 // java.lang.String name
        10: .line 1920
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        11: iload 5
            iload 6
            if_icmplt 7
        12: .line 1924
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 4 /* annotations */
        start local 4 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        13: .line 1925
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.sourceName:()[C
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.PACKAGE_INFO_NAME:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            istore 5 /* isPackageInfo */
        start local 5 // boolean isPackageInfo
        14: .line 1926
            aload 4 /* annotations */
            ifnull 32
        15: .line 1927
            iconst_0
            istore 6 /* nullness */
        start local 6 // int nullness
        16: .line 1928
            aload 4 /* annotations */
            arraylength
            istore 7 /* length */
        start local 7 // int length
        17: .line 1929
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        18: goto 26
        19: .line 1930
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.env.IBinaryType org.eclipse.jdt.internal.compiler.lookup.PackageBinding char[][] org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int int int int
      StackMap stack:
            aload 4 /* annotations */
            iload 8 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 9 /* annotationTypeName */
        start local 9 // char[] annotationTypeName
        20: .line 1931
            aload 9 /* annotationTypeName */
            iconst_0
            caload
            bipush 76
            if_icmpeq 22
        21: .line 1932
            goto 25
        22: .line 1933
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 9 /* annotationTypeName */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getNullAnnotationBit:([[C)I
            istore 10 /* typeBit */
        start local 10 // int typeBit
        23: .line 1934
            iload 10 /* typeBit */
            sipush 128
            if_icmpne 25
        24: .line 1936
            iload 6 /* nullness */
            aload 4 /* annotations */
            iload 8 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getNonNullByDefaultValue:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)I
            ior
            istore 6 /* nullness */
        end local 10 // int typeBit
        end local 9 // char[] annotationTypeName
        25: .line 1929
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 8 /* i */
            iload 7 /* length */
            if_icmplt 19
        end local 8 // int i
        27: .line 1939
            aload 0 /* this */
            iload 6 /* nullness */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
        28: .line 1940
            iload 6 /* nullness */
            ifeq 32
        29: .line 1941
            iload 5 /* isPackageInfo */
            ifeq 31
        30: .line 1942
            aload 2 /* packageBinding */
            iload 6 /* nullness */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.setDefaultNullness:(I)V
        31: .line 1943
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int length
        end local 6 // int nullness
        32: .line 1946
      StackMap locals:
      StackMap stack:
            iload 5 /* isPackageInfo */
            ifeq 35
        33: .line 1948
            aload 2 /* packageBinding */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.setDefaultNullness:(I)V
        34: .line 1949
            return
        35: .line 1951
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 6 /* enclosingTypeBinding */
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enclosingTypeBinding
        36: .line 1952
            aload 6 /* enclosingTypeBinding */
            ifnull 39
        37: .line 1953
            aload 0 /* this */
            aload 6 /* enclosingTypeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getNullDefault:()I
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.setNullDefault:(I)Z
            ifeq 39
        38: .line 1954
            return
        39: .line 1958
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 2 /* packageBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getDefaultNullness:()I
            ifne 44
            iload 5 /* isPackageInfo */
            ifne 44
        40: .line 1959
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            sipush 224
            iand
            ifne 44
        41: .line 1962
            aload 2 /* packageBinding */
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.PACKAGE_INFO_NAME:[C
            aload 2 /* packageBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.PackageBinding.enclosingModule:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getType:([CLorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 7 /* packageInfo */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding packageInfo
        42: .line 1963
            aload 7 /* packageInfo */
            ifnonnull 44
        43: .line 1964
            aload 2 /* packageBinding */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.setDefaultNullness:(I)V
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding packageInfo
        44: .line 1968
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* packageBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getDefaultNullness:()I
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.setNullDefault:(I)Z
            pop
        45: .line 1969
            return
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding enclosingTypeBinding
        end local 5 // boolean isPackageInfo
        end local 4 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        end local 3 // char[][] nonNullByDefaultAnnotationName
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   46     0                            this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   46     1                      binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0   46     2                  packageBinding  Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            2   46     3  nonNullByDefaultAnnotationName  [[C
            8   10     4                            name  Ljava/lang/String;
           13   46     4                     annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
           14   46     5                   isPackageInfo  Z
           16   32     6                        nullness  I
           17   32     7                          length  I
           18   27     8                               i  I
           20   25     9              annotationTypeName  [C
           23   25    10                         typeBit  I
           36   46     6            enclosingTypeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           42   44     7                     packageInfo  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    MethodParameters:
                Name  Flags
      binaryType      
      packageBinding  

  boolean setNullDefault(int);
    descriptor: (I)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // int newNullDefault
         0: .line 1972
            aload 0 /* this */
            iload 1 /* newNullDefault */
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
         1: .line 1973
            iload 1 /* newNullDefault */
            ifeq 3
         2: .line 1974
            iconst_1
            ireturn
         3: .line 1976
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int newNullDefault
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0    4     1  newNullDefault  I
    MethodParameters:
                Name  Flags
      newNullDefault  

  static int getNonNullByDefaultValue(org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation, org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
         0: .line 1983
            aload 0 /* annotation */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 2 /* annotationTypeName */
        start local 2 // char[] annotationTypeName
         1: .line 1984
            aload 2 /* annotationTypeName */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.signature2qualifiedTypeName:([C)[[C
            astore 3 /* typeName */
        start local 3 // char[][] typeName
         2: .line 1985
            aload 0 /* annotation */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getElementValuePairs:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
            astore 4 /* elementValuePairs */
        start local 4 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] elementValuePairs
         3: .line 1986
            aload 4 /* elementValuePairs */
            ifnull 4
            aload 4 /* elementValuePairs */
            arraylength
            ifne 16
         4: .line 1988
      StackMap locals: char[] char[][] org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[]
      StackMap stack:
            aload 1 /* environment */
            aload 3 /* typeName */
            aload 1 /* environment */
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.UnNamedModule:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getType:([[CLorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 5 /* annotationType */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
         5: .line 1989
            aload 5 /* annotationType */
            ifnonnull 6
            iconst_0
            ireturn
         6: .line 1990
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 5 /* annotationType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isUnresolvedType:()Z
            ifeq 8
         7: .line 1991
            aload 5 /* annotationType */
            checkcast org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding
            aload 1 /* environment */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve:(Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 5 /* annotationType */
         8: .line 1992
      StackMap locals:
      StackMap stack:
            aload 5 /* annotationType */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.evaluateTypeQualifierDefault:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)I
            istore 6 /* nullness */
        start local 6 // int nullness
         9: .line 1993
            iload 6 /* nullness */
            ifeq 11
        10: .line 1994
            iload 6 /* nullness */
            ireturn
        11: .line 1995
      StackMap locals: int
      StackMap stack:
            aload 5 /* annotationType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.methods:()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 7 /* annotationMethods */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] annotationMethods
        12: .line 1996
            aload 7 /* annotationMethods */
            ifnull 15
            aload 7 /* annotationMethods */
            arraylength
            iconst_1
            if_icmpne 15
        13: .line 1997
            aload 7 /* annotationMethods */
            iconst_0
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.getDefaultValue:()Ljava/lang/Object;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        14: .line 1998
            aload 8 /* value */
            invokestatic org.eclipse.jdt.internal.compiler.ast.Annotation.nullLocationBitsFromAnnotationValue:(Ljava/lang/Object;)I
            ireturn
        end local 8 // java.lang.Object value
        15: .line 2000
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding[]
      StackMap stack:
            bipush 56
            ireturn
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] annotationMethods
        end local 6 // int nullness
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
        16: .line 2001
      StackMap locals:
      StackMap stack:
            aload 4 /* elementValuePairs */
            arraylength
            ifle 24
        17: .line 2003
            iconst_0
            istore 5 /* nullness */
        start local 5 // int nullness
        18: .line 2004
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        19: goto 22
        20: .line 2005
      StackMap locals: int int
      StackMap stack:
            iload 5 /* nullness */
            aload 4 /* elementValuePairs */
            iload 6 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair.getValue:()Ljava/lang/Object;
            invokestatic org.eclipse.jdt.internal.compiler.ast.Annotation.nullLocationBitsFromAnnotationValue:(Ljava/lang/Object;)I
            ior
            istore 5 /* nullness */
        21: .line 2004
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 6 /* i */
            aload 4 /* elementValuePairs */
            arraylength
            if_icmplt 20
        end local 6 // int i
        23: .line 2006
            iload 5 /* nullness */
            ireturn
        end local 5 // int nullness
        24: .line 2009
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
        end local 4 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] elementValuePairs
        end local 3 // char[][] typeName
        end local 2 // char[] annotationTypeName
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        end local 0 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation annotation
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   25     0          annotation  Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            0   25     1         environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            1   25     2  annotationTypeName  [C
            2   25     3            typeName  [[C
            3   25     4   elementValuePairs  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
            5   16     5      annotationType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            9   16     6            nullness  I
           12   16     7   annotationMethods  [Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           14   15     8               value  Ljava/lang/Object;
           18   24     5            nullness  I
           19   23     6                   i  I
    MethodParameters:
             Name  Flags
      annotation   
      environment  

  public static int evaluateTypeQualifierDefault(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=18, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
         0: .line 2014
            aload 0 /* annotationType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 24
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding top int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* annotationOnAnnotation */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding annotationOnAnnotation
         2: .line 2015
            aload 1 /* annotationOnAnnotation */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.getAnnotationType:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.compoundName:[[C
            aload 1 /* annotationOnAnnotation */
            getfield org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.compoundName:[[C
            arraylength
            iconst_1
            isub
            aaload
            getstatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.TYPE_QUALIFIER_DEFAULT:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 23
         3: .line 2016
            aload 1 /* annotationOnAnnotation */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding.getElementValuePairs:()[Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
            astore 5 /* pairs2 */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] pairs2
         4: .line 2017
            aload 5 /* pairs2 */
            ifnull 23
         5: .line 2018
            aload 5 /* pairs2 */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 22
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] top int int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[]
      StackMap stack:
         6: aload 9
            iload 7
            aaload
            astore 6 /* elementValuePair */
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair elementValuePair
         7: .line 2019
            aload 6 /* elementValuePair */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.getName:()[C
            astore 10 /* name */
        start local 10 // char[] name
         8: .line 2020
            aload 10 /* name */
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.VALUE:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 21
         9: .line 2021
            iconst_0
            istore 11 /* nullness */
        start local 11 // int nullness
        10: .line 2022
            aload 6 /* elementValuePair */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ElementValuePair.getValue:()Ljava/lang/Object;
            astore 12 /* value */
        start local 12 // java.lang.Object value
        11: .line 2023
            aload 12 /* value */
            instanceof java.lang.Object[]
            ifeq 19
        12: .line 2024
            aload 12 /* value */
            checkcast java.lang.Object[]
            astore 13 /* values */
        start local 13 // java.lang.Object[] values
        13: .line 2025
            aload 13 /* values */
            dup
            astore 17
            arraylength
            istore 16
            iconst_0
            istore 15
            goto 17
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair int int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] char[] int java.lang.Object java.lang.Object[] top int int java.lang.Object[]
      StackMap stack:
        14: aload 17
            iload 15
            aaload
            astore 14 /* value1 */
        start local 14 // java.lang.Object value1
        15: .line 2026
            iload 11 /* nullness */
            aload 14 /* value1 */
            invokestatic org.eclipse.jdt.internal.compiler.ast.Annotation.nullLocationBitsFromElementTypeAnnotationValue:(Ljava/lang/Object;)I
            ior
            istore 11 /* nullness */
        end local 14 // java.lang.Object value1
        16: .line 2025
            iinc 15 1
      StackMap locals:
      StackMap stack:
        17: iload 15
            iload 16
            if_icmplt 14
        end local 13 // java.lang.Object[] values
        18: .line 2027
            goto 20
        19: .line 2028
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair int int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] char[] int java.lang.Object
      StackMap stack:
            iload 11 /* nullness */
            aload 12 /* value */
            invokestatic org.eclipse.jdt.internal.compiler.ast.Annotation.nullLocationBitsFromElementTypeAnnotationValue:(Ljava/lang/Object;)I
            ior
            istore 11 /* nullness */
        20: .line 2030
      StackMap locals:
      StackMap stack:
            iload 11 /* nullness */
            ireturn
        end local 12 // java.lang.Object value
        end local 11 // int nullness
        end local 10 // char[] name
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair elementValuePair
        21: .line 2018
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] top int int org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        22: iload 7
            iload 8
            if_icmplt 6
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ElementValuePair[] pairs2
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding annotationOnAnnotation
        23: .line 2014
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding top int int org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
        24: iload 2
            iload 3
            if_icmplt 1
        25: .line 2036
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding annotationType
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   26     0          annotationType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2   23     1  annotationOnAnnotation  Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            4   23     5                  pairs2  [Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
            7   21     6        elementValuePair  Lorg/eclipse/jdt/internal/compiler/lookup/ElementValuePair;
            8   21    10                    name  [C
           10   21    11                nullness  I
           11   21    12                   value  Ljava/lang/Object;
           13   18    13                  values  [Ljava/lang/Object;
           15   16    14                  value1  Ljava/lang/Object;
    MethodParameters:
                Name  Flags
      annotationType  

  static char[][] signature2qualifiedTypeName(char[]);
    descriptor: ([C)[[C
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // char[] typeSignature
         0: .line 2040
            bipush 47
            aload 0 /* typeSignature */
            iconst_1
            aload 0 /* typeSignature */
            arraylength
            iconst_1
            isub
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[CII)[[C
            areturn
        end local 0 // char[] typeSignature
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0  typeSignature  [C
    MethodParameters:
               Name  Flags
      typeSignature  

  int getNullDefault();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2045
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.defaultNullness:I
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  private void scanTypeForContainerAnnotation(org.eclipse.jdt.internal.compiler.env.IBinaryType, char[][][]);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;[[[C)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=9, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 2 // char[][][] missingTypeNames
         0: .line 2049
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 1
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         1: .line 2050
      StackMap locals:
      StackMap stack:
            aload 1 /* binaryType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getAnnotations:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            astore 3 /* annotations */
        start local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
         2: .line 2051
            aload 3 /* annotations */
            ifnull 16
         3: .line 2052
            aload 3 /* annotations */
            arraylength
            istore 4 /* length */
        start local 4 // int length
         4: .line 2053
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 15
         6: .line 2054
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] int int
      StackMap stack:
            aload 3 /* annotations */
            iload 5 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getTypeName:()[C
            astore 6 /* annotationTypeName */
        start local 6 // char[] annotationTypeName
         7: .line 2055
            aload 6 /* annotationTypeName */
            getstatic org.eclipse.jdt.internal.compiler.codegen.ConstantPool.JAVA_LANG_ANNOTATION_REPEATABLE:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 14
         8: .line 2056
            aload 3 /* annotations */
            iload 5 /* i */
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation.getElementValuePairs:()[Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
            astore 7 /* elementValuePairs */
        start local 7 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] elementValuePairs
         9: .line 2057
            aload 7 /* elementValuePairs */
            ifnull 16
            aload 7 /* elementValuePairs */
            arraylength
            iconst_1
            if_icmpne 16
        10: .line 2058
            aload 7 /* elementValuePairs */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair.getValue:()Ljava/lang/Object;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        11: .line 2059
            aload 8 /* value */
            instanceof org.eclipse.jdt.internal.compiler.env.ClassSignature
            ifeq 16
        12: .line 2060
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 8 /* value */
            checkcast org.eclipse.jdt.internal.compiler.env.ClassSignature
            invokevirtual org.eclipse.jdt.internal.compiler.env.ClassSignature.getTypeName:()[C
            iconst_0
            iconst_m1
            iconst_0
            aconst_null
            aload 2 /* missingTypeNames */
            getstatic org.eclipse.jdt.internal.compiler.env.ITypeAnnotationWalker.EMPTY_ANNOTATION_WALKER:Lorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromSignature:([CIIZLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[[[CLorg/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.containerAnnotationType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        end local 8 // java.lang.Object value
        13: .line 2063
            goto 16
        end local 7 // org.eclipse.jdt.internal.compiler.env.IBinaryElementValuePair[] elementValuePairs
        end local 6 // char[] annotationTypeName
        14: .line 2053
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* i */
            iload 4 /* length */
            if_icmplt 6
        end local 5 // int i
        end local 4 // int length
        16: .line 2067
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation[] annotations
        end local 2 // char[][][] missingTypeNames
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   17     0                this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            0   17     1          binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0   17     2    missingTypeNames  [[[C
            2   17     3         annotations  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryAnnotation;
            4   16     4              length  I
            5   16     5                   i  I
            7   14     6  annotationTypeName  [C
            9   14     7   elementValuePairs  [Lorg/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair;
           11   13     8               value  Ljava/lang/Object;
    MethodParameters:
                  Name  Flags
      binaryType        
      missingTypeNames  

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superclass();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2076
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2077
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         2: .line 2080
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 33554432
            land
            lconst_0
            lcmp
            ifne 4
         3: .line 2081
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         4: .line 2084
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         5: .line 2085
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -33554433
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         6: .line 2086
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.problemId:()I
            iconst_1
            if_icmpne 9
         7: .line 2087
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 131072
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         8: .line 2088
            goto 18
         9: .line 2090
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
            istore 1 /* wasToleratingMissingTypeProcessingAnnotations */
        start local 1 // boolean wasToleratingMissingTypeProcessingAnnotations
        10: .line 2091
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        11: .line 2093
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        12: .line 2094
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        13: .line 2095
            goto 17
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding int
      StackMap stack: java.lang.Throwable
        14: astore 2
        15: .line 2096
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 1 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        16: .line 2097
            aload 2
            athrow
        17: .line 2096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 1 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        end local 1 // boolean wasToleratingMissingTypeProcessingAnnotations
        18: .line 2099
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.typeBits:I
            sipush 1811
            iand
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
        19: .line 2100
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            iconst_3
            iand
            ifeq 21
        20: .line 2101
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.applyCloseableClassWhitelists:()I
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
        21: .line 2102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.detectCircularHierarchy:()V
        22: .line 2103
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                                           Name  Signature
            0   23     0                                           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
           10   18     1  wasToleratingMissingTypeProcessingAnnotations  Z
      Exception table:
        from    to  target  type
          11    14      14  any

  private void breakLoop();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2107
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 1 /* currentSuper */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentSuper
         1: .line 2108
            aconst_null
            astore 2 /* prevSuper */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding prevSuper
         2: .line 2109
            goto 9
         3: .line 2110
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 1 /* currentSuper */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 512
            land
            lconst_0
            lcmp
            ifeq 6
            aload 2 /* prevSuper */
            instanceof org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            ifeq 6
         4: .line 2111
            aload 2 /* prevSuper */
            checkcast org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.JAVA_LANG_OBJECT:[[C
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getResolvedType:([[CLorg/eclipse/jdt/internal/compiler/lookup/Scope;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         5: .line 2112
            goto 10
         6: .line 2114
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 512
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
         7: .line 2115
            aload 1 /* currentSuper */
            astore 2 /* prevSuper */
         8: .line 2116
            aload 1 /* currentSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 1 /* currentSuper */
         9: .line 2109
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            ifnonnull 3
        10: .line 2118
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding prevSuper
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentSuper
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            1   11     1  currentSuper  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2   11     2     prevSuper  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;

  private void detectCircularHierarchy();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2121
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 1 /* currentSuper */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentSuper
         1: .line 2122
            aconst_null
            astore 2 /* tempSuper */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding tempSuper
         2: .line 2123
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         3: .line 2124
            bipush 20
            istore 4 /* skipCount */
        start local 4 // int skipCount
         4: .line 2125
            goto 20
         5: .line 2126
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int int
      StackMap stack:
            aload 1 /* currentSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.hasHierarchyCheckStarted:()Z
            ifeq 7
         6: .line 2127
            goto 21
         7: .line 2128
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            aload 0 /* this */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifne 8
            aload 1 /* currentSuper */
            aload 2 /* tempSuper */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 12
         8: .line 2129
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 131072
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
         9: .line 2130
            aload 1 /* currentSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isBinaryBinding:()Z
            ifeq 11
        10: .line 2131
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.breakLoop:()V
        11: .line 2133
      StackMap locals:
      StackMap stack:
            return
        12: .line 2135
      StackMap locals:
      StackMap stack:
            iload 3 /* count */
            iload 4 /* skipCount */
            if_icmpne 16
        13: .line 2136
            aload 1 /* currentSuper */
            astore 2 /* tempSuper */
        14: .line 2137
            iload 4 /* skipCount */
            iconst_2
            imul
            istore 4 /* skipCount */
        15: .line 2138
            iconst_0
            istore 3 /* count */
        16: .line 2141
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isHierarchyConnected:()Z
            ifne 18
        17: .line 2142
            return
        18: .line 2143
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 1 /* currentSuper */
        19: .line 2144
            iinc 3 /* count */ 1
        20: .line 2125
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            ifnonnull 5
        21: .line 2149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            astore 2 /* tempSuper */
        22: .line 2150
            goto 25
        23: .line 2151
      StackMap locals:
      StackMap stack:
            aload 2 /* tempSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.setHierarchyCheckDone:()V
        24: .line 2152
            aload 2 /* tempSuper */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 2 /* tempSuper */
        25: .line 2150
      StackMap locals:
      StackMap stack:
            aload 1 /* currentSuper */
            aload 2 /* tempSuper */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.notEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifne 23
        26: .line 2154
            return
        end local 4 // int skipCount
        end local 3 // int count
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding tempSuper
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentSuper
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   27     0          this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            1   27     1  currentSuper  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2   27     2     tempSuper  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            3   27     3         count  I
            4   27     4     skipCount  I

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] superInterfaces();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2160
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2161
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         2: .line 2163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 67108864
            land
            lconst_0
            lcmp
            ifne 4
         3: .line 2164
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
         4: .line 2166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 1 /* i */
        start local 1 // int i
         5: goto 28
         6: .line 2167
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            invokestatic org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aastore
         7: .line 2168
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.problemId:()I
            iconst_1
            if_icmpne 10
         8: .line 2169
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 131072
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         9: .line 2170
            goto 25
        10: .line 2172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
            istore 2 /* wasToleratingMissingTypeProcessingAnnotations */
        start local 2 // boolean wasToleratingMissingTypeProcessingAnnotations
        11: .line 2173
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        12: .line 2175
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        13: .line 2176
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isParameterizedType:()Z
            ifeq 19
        14: .line 2177
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.actualType:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 3 /* superType */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superType
        15: .line 2178
            aload 3 /* superType */
            aload 0 /* this */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 19
        16: .line 2179
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 131072
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        17: .line 2185
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 2 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        18: .line 2180
            goto 28
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superType
        19: .line 2183
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        20: .line 2184
            goto 24
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 4
        22: .line 2185
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 2 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        23: .line 2186
            aload 4
            athrow
        24: .line 2185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            iload 2 /* wasToleratingMissingTypeProcessingAnnotations */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
        end local 2 // boolean wasToleratingMissingTypeProcessingAnnotations
        25: .line 2188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.typeBits:I
            sipush 1811
            iand
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
        26: .line 2189
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            iconst_3
            iand
            ifeq 28
        27: .line 2190
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.applyCloseableInterfaceWhitelists:()I
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeBits:I
        28: .line 2166
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
            iload 1 /* i */
            ifge 6
        end local 1 // int i
        29: .line 2192
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -67108865
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        30: .line 2193
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot                                           Name  Signature
            0   31     0                                           this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            5   29     1                                              i  I
           11   25     2  wasToleratingMissingTypeProcessingAnnotations  Z
           15   19     3                                      superType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
      Exception table:
        from    to  target  type
          12    17      21  any
          19    21      21  any

  public org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding[] typeVariables();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2198
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2199
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:()[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            areturn
         2: .line 2201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc 16777216
            land
            lconst_0
            lcmp
            ifne 4
         3: .line 2202
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            areturn
         4: .line 2204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            istore 1 /* i */
        start local 1 // int i
         5: goto 7
         6: .line 2205
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.resolve:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
         7: .line 2204
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
            iload 1 /* i */
            ifge 6
        end local 1 // int i
         8: .line 2206
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -16777217
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
         9: .line 2207
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            5    8     1     i  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2212
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasTypeAnnotations:()Z
            ifeq 2
         1: .line 2213
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.annotatedDebugName:()Ljava/lang/String;
            areturn
         2: .line 2215
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuffer buffer
         3: .line 2217
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isDeprecated:()Z
            ifeq 4
            aload 1 /* buffer */
            ldc "deprecated "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 2218
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPublic:()Z
            ifeq 5
            aload 1 /* buffer */
            ldc "public "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         5: .line 2219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isProtected:()Z
            ifeq 6
            aload 1 /* buffer */
            ldc "protected "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 2220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrivate:()Z
            ifeq 7
            aload 1 /* buffer */
            ldc "private "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 2221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isAbstract:()Z
            ifeq 8
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isClass:()Z
            ifeq 8
            aload 1 /* buffer */
            ldc "abstract "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 2222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isStatic:()Z
            ifeq 9
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isNestedType:()Z
            ifeq 9
            aload 1 /* buffer */
            ldc "static "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 2223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isFinal:()Z
            ifeq 10
            aload 1 /* buffer */
            ldc "final "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 2225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isEnum:()Z
            ifeq 11
            aload 1 /* buffer */
            ldc "enum "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 14
        11: .line 2226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isAnnotationType:()Z
            ifeq 12
            aload 1 /* buffer */
            ldc "@interface "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 14
        12: .line 2227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isClass:()Z
            ifeq 13
            aload 1 /* buffer */
            ldc "class "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 14
        13: .line 2228
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "interface "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 2229
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
            ifnull 15
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.compoundName:[[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toString:([[C)Ljava/lang/String;
            goto 16
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        15: ldc "UNNAMED TYPE"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer
      StackMap stack: java.lang.StringBuffer java.lang.String
        16: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        17: .line 2231
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            ifnonnull 20
        18: .line 2232
            aload 1 /* buffer */
            ldc "<NULL TYPE VARIABLES>"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        19: .line 2233
            goto 34
      StackMap locals:
      StackMap stack:
        20: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_TYPE_VARIABLES:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            if_acmpeq 34
        21: .line 2234
            aload 1 /* buffer */
            ldc "<"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        22: .line 2235
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        23: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        24: goto 32
        25: .line 2236
      StackMap locals: int int
      StackMap stack:
            iload 2 /* i */
            ifle 26
            aload 1 /* buffer */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        26: .line 2237
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iload 2 /* i */
            aaload
            ifnonnull 29
        27: .line 2238
            aload 1 /* buffer */
            ldc "NULL TYPE VARIABLE"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        28: .line 2239
            goto 31
        29: .line 2241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeVariables:[Lorg/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 4 /* varChars */
        start local 4 // char[] varChars
        30: .line 2242
            aload 1 /* buffer */
            aload 4 /* varChars */
            iconst_1
            aload 4 /* varChars */
            arraylength
            iconst_2
            isub
            invokevirtual java.lang.StringBuffer.append:([CII)Ljava/lang/StringBuffer;
            pop
        end local 4 // char[] varChars
        31: .line 2235
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 25
        end local 3 // int length
        end local 2 // int i
        33: .line 2244
            aload 1 /* buffer */
            ldc ">"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        34: .line 2246
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "\n\textends "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        35: .line 2247
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 36
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.debugName:()Ljava/lang/String;
            goto 37
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        36: ldc "NULL TYPE"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer
      StackMap stack: java.lang.StringBuffer java.lang.String
        37: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        38: .line 2249
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 52
        39: .line 2250
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_SUPERINTERFACES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            if_acmpeq 53
        40: .line 2251
            aload 1 /* buffer */
            ldc "\n\timplements : "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        41: .line 2252
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        42: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        43: goto 50
        44: .line 2253
      StackMap locals: int int
      StackMap stack:
            iload 2 /* i */
            ifle 46
        45: .line 2254
            aload 1 /* buffer */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        46: .line 2255
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            ifnull 47
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.debugName:()Ljava/lang/String;
            goto 48
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        47: ldc "NULL TYPE"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer int int
      StackMap stack: java.lang.StringBuffer java.lang.String
        48: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        49: .line 2252
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 44
        end local 3 // int length
        end local 2 // int i
        51: .line 2258
            goto 53
        52: .line 2259
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "NULL SUPERINTERFACES"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        53: .line 2262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 56
        54: .line 2263
            aload 1 /* buffer */
            ldc "\n\tenclosing type : "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        55: .line 2264
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.enclosingType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.debugName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        56: .line 2267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            ifnull 68
        57: .line 2268
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_FIELDS:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            if_acmpeq 69
        58: .line 2269
            aload 1 /* buffer */
            ldc "\n/*   fields   */"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        59: .line 2270
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        60: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        61: goto 66
        62: .line 2271
      StackMap locals: int int
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 2 /* i */
            aaload
            ifnull 63
            new java.lang.StringBuilder
            dup
            ldc "\n"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 64
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        63: ldc "\nNULL FIELD"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer int int
      StackMap stack: java.lang.StringBuffer java.lang.String
        64: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        65: .line 2270
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        66: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 62
        end local 3 // int length
        end local 2 // int i
        67: .line 2273
            goto 69
        68: .line 2274
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "NULL FIELDS"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        69: .line 2277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            ifnull 81
        70: .line 2278
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_METHODS:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            if_acmpeq 82
        71: .line 2279
            aload 1 /* buffer */
            ldc "\n/*   methods   */"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        72: .line 2280
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        73: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        74: goto 79
        75: .line 2281
      StackMap locals: int int
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 2 /* i */
            aaload
            ifnull 76
            new java.lang.StringBuilder
            dup
            ldc "\n"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 77
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        76: ldc "\nNULL METHOD"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer int int
      StackMap stack: java.lang.StringBuffer java.lang.String
        77: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        78: .line 2280
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        79: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 75
        end local 3 // int length
        end local 2 // int i
        80: .line 2283
            goto 82
        81: .line 2284
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "NULL METHODS"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        82: .line 2287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 94
        83: .line 2288
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            getstatic org.eclipse.jdt.internal.compiler.lookup.Binding.NO_MEMBER_TYPES:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            if_acmpeq 95
        84: .line 2289
            aload 1 /* buffer */
            ldc "\n/*   members   */"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        85: .line 2290
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        86: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        87: goto 92
        88: .line 2291
      StackMap locals: int int
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            ifnull 89
            new java.lang.StringBuilder
            dup
            ldc "\n"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.memberTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 90
      StackMap locals:
      StackMap stack: java.lang.StringBuffer
        89: ldc "\nNULL TYPE"
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding java.lang.StringBuffer int int
      StackMap stack: java.lang.StringBuffer java.lang.String
        90: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        91: .line 2290
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        92: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 88
        end local 3 // int length
        end local 2 // int i
        93: .line 2293
            goto 95
        94: .line 2294
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "NULL MEMBER TYPES"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        95: .line 2297
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "\n\n\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        96: .line 2298
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   97     0      this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            3   97     1    buffer  Ljava/lang/StringBuffer;
           23   33     2         i  I
           24   33     3    length  I
           30   31     4  varChars  [C
           42   51     2         i  I
           43   51     3    length  I
           60   67     2         i  I
           61   67     3    length  I
           73   80     2         i  I
           74   80     3    length  I
           86   93     2         i  I
           87   93     3    length  I

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding unannotated();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2303
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding withoutToplevelNullAnnotation();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2307
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.hasNullTypeAnnotations:()Z
            ifne 2
         1: .line 2308
            aload 0 /* this */
            areturn
         2: .line 2309
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.typeAnnotations:[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.filterNullTypeAnnotations:([Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;
            astore 1 /* newAnnotations */
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] newAnnotations
         3: .line 2310
            aload 1 /* newAnnotations */
            arraylength
            ifle 5
         4: .line 2311
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            aload 1 /* newAnnotations */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createAnnotatedType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;[Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            areturn
         5: .line 2312
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            areturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] newAnnotations
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            3    6     1  newAnnotations  [Lorg/eclipse/jdt/internal/compiler/lookup/AnnotationBinding;

  org.eclipse.jdt.internal.compiler.lookup.MethodBinding[] unResolvedMethods();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2317
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2318
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.unResolvedMethods:()[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
         2: .line 2320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.methods:[Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.FieldBinding[] unResolvedFields();
    descriptor: ()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2326
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2327
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.unResolvedFields:()[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
         2: .line 2329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.fields:[Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;

  public org.eclipse.jdt.internal.compiler.lookup.ModuleBinding module();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
         0: .line 2333
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.isPrototype:()Z
            ifne 2
         1: .line 2334
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.prototype:Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.module:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            areturn
         2: .line 2335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.module:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
}
SourceFile: "BinaryTypeBinding.java"
NestMembers:
  org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus
InnerClasses:
  public abstract IMethodAnnotationWalker = org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider$IMethodAnnotationWalker of org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider
  public final ExternalAnnotationStatus = org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding$ExternalAnnotationStatus of org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
  public UnresolvedEnumConstant = org.eclipse.jdt.internal.compiler.lookup.ElementValuePair$UnresolvedEnumConstant of org.eclipse.jdt.internal.compiler.lookup.ElementValuePair