public class org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext extends org.eclipse.jdt.internal.compiler.flow.FlowContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext
  super_class: org.eclipse.jdt.internal.compiler.flow.FlowContext
{
  public static final int BitCacheSize;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC

  int[] isReached;
    descriptor: [I
    flags: (0x0000) 

  int[] isNeeded;
    descriptor: [I
    flags: (0x0000) 

  org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo[] initsOnExceptions;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    flags: (0x0000) 

  org.eclipse.jdt.internal.compiler.codegen.ObjectCache indexes;
    descriptor: Lorg/eclipse/jdt/internal/compiler/codegen/ObjectCache;
    flags: (0x0000) 

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

  public org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo initsOnReturn;
    descriptor: Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent;
    descriptor: Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
    flags: (0x0001) ACC_PUBLIC

  public java.util.ArrayList extendedExceptions;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC

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

  public org.eclipse.jdt.internal.compiler.ast.Argument[] catchArguments;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/ast/Argument;
    flags: (0x0001) ACC_PUBLIC

  private int[] exceptionToCatchBlockMap;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 63
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.ast.Argument
            putstatic org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.NO_ARGUMENTS:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.ast.ASTNode, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[], org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=7, args_size=7
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        start local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode associatedNode
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        start local 4 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        start local 6 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
         0: .line 75
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* associatedNode */
            aload 3 /* handledExceptions */
            aconst_null
            getstatic org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.NO_ARGUMENTS:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            aload 4 /* initializationParent */
            aload 5 /* scope */
            aload 6 /* flowInfo */
            invokespecial org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[I[Lorg/eclipse/jdt/internal/compiler/ast/Argument;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)V
         1: .line 76
            return
        end local 6 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 4 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        end local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode associatedNode
        end local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0    2     1                parent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0    2     2        associatedNode  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            0    2     3     handledExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            0    2     4  initializationParent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0    2     5                 scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0    2     6              flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    MethodParameters:
                      Name  Flags
      parent                
      associatedNode        
      handledExceptions     
      initializationParent  
      scope                 
      flowInfo              

  public void <init>(org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.ast.TryStatement, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[], int[], org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.FlowInfo);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[ILorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=8
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        start local 2 // org.eclipse.jdt.internal.compiler.ast.TryStatement tryStatement
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        start local 4 // int[] exceptionToCatchBlockMap
        start local 5 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        start local 7 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
         0: .line 85
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* tryStatement */
            aload 3 /* handledExceptions */
            aload 4 /* exceptionToCatchBlockMap */
         1: .line 86
            aload 2 /* tryStatement */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            aload 5 /* initializationParent */
            aload 6 /* scope */
            aload 7 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokespecial org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[I[Lorg/eclipse/jdt/internal/compiler/ast/Argument;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)V
         2: .line 87
            aload 7 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            astore 8 /* unconditionalCopy */
        start local 8 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalCopy
         3: .line 88
            aload 8 /* unconditionalCopy */
            ldc -1
            putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.iNBit:J
         4: .line 89
            aload 8 /* unconditionalCopy */
            ldc -1
            putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.iNNBit:J
         5: .line 90
            aload 8 /* unconditionalCopy */
            dup
            getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
            bipush 64
            ior
            putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
         6: .line 91
            aload 0 /* this */
            aload 8 /* unconditionalCopy */
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
         7: .line 92
            return
        end local 8 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalCopy
        end local 7 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 5 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        end local 4 // int[] exceptionToCatchBlockMap
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        end local 2 // org.eclipse.jdt.internal.compiler.ast.TryStatement tryStatement
        end local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    8     0                      this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0    8     1                    parent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0    8     2              tryStatement  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0    8     3         handledExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            0    8     4  exceptionToCatchBlockMap  [I
            0    8     5      initializationParent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0    8     6                     scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0    8     7                  flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            3    8     8         unconditionalCopy  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    MethodParameters:
                          Name  Flags
      parent                    
      tryStatement              
      handledExceptions         
      exceptionToCatchBlockMap  
      initializationParent      
      scope                     
      flowInfo                  

  void <init>(org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.ast.ASTNode, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[], int[], org.eclipse.jdt.internal.compiler.ast.Argument[], org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[I[Lorg/eclipse/jdt/internal/compiler/ast/Argument;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=15, args_size=9
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        start local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode associatedNode
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        start local 4 // int[] exceptionToCatchBlockMap
        start local 5 // org.eclipse.jdt.internal.compiler.ast.Argument[] catchArguments
        start local 6 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        start local 8 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
         0: .line 103
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* associatedNode */
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.flow.FlowContext.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Z)V
         1: .line 54
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.codegen.ObjectCache
            dup
            invokespecial org.eclipse.jdt.internal.compiler.codegen.ObjectCache.<init>:()V
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.indexes:Lorg/eclipse/jdt/internal/compiler/codegen/ObjectCache;
         2: .line 104
            aload 0 /* this */
            aload 7 /* scope */
            aload 7 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            if_acmpne 3
            iconst_1
            goto 4
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.ast.ASTNode org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int[] org.eclipse.jdt.internal.compiler.ast.Argument[] org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext
         3: iconst_0
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.ast.ASTNode org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int[] org.eclipse.jdt.internal.compiler.ast.Argument[] org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext int
         4: putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isMethodContext:Z
         5: .line 105
            aload 0 /* this */
            aload 3 /* handledExceptions */
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         6: .line 106
            aload 0 /* this */
            aload 5 /* catchArguments */
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
         7: .line 107
            aload 0 /* this */
            aload 4 /* exceptionToCatchBlockMap */
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
         8: .line 108
            aload 3 /* handledExceptions */
            arraylength
            istore 9 /* count */
        start local 9 // int count
         9: iload 9 /* count */
            bipush 32
            idiv
            iconst_1
            iadd
            istore 10 /* cacheSize */
        start local 10 // int cacheSize
        10: .line 109
            aload 0 /* this */
            iload 10 /* cacheSize */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
        11: .line 110
            aload 0 /* this */
            iload 10 /* cacheSize */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isNeeded:[I
        12: .line 111
            aload 0 /* this */
            iload 9 /* count */
            anewarray org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        13: .line 113
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isMethodContext:Z
            ifeq 15
            aload 7 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.reportUnusedDeclaredThrownExceptionExemptExceptionAndThrowable:Z
            ifne 15
        14: .line 112
            iconst_0
            goto 16
      StackMap locals: int int
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: istore 11 /* markExceptionsAndThrowableAsReached */
        start local 11 // boolean markExceptionsAndThrowableAsReached
        17: .line 114
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        18: goto 33
        19: .line 115
      StackMap locals: int int
      StackMap stack:
            aload 3 /* handledExceptions */
            iload 12 /* i */
            aaload
            astore 13 /* handledException */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding handledException
        20: .line 116
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            ifnull 21
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            iload 12 /* i */
            iaload
            goto 22
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
        21: iload 12 /* i */
      StackMap locals:
      StackMap stack: int
        22: istore 14 /* catchBlock */
        start local 14 // int catchBlock
        23: .line 117
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.indexes:Lorg/eclipse/jdt/internal/compiler/codegen/ObjectCache;
            aload 13 /* handledException */
            iload 12 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ObjectCache.put:(Ljava/lang/Object;I)I
            pop
        24: .line 118
            aload 13 /* handledException */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isUncheckedException:(Z)Z
            ifeq 31
        25: .line 119
            iload 11 /* markExceptionsAndThrowableAsReached */
            ifne 28
        26: .line 120
            aload 13 /* handledException */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.id:I
            bipush 21
            if_icmpeq 29
        27: .line 121
            aload 13 /* handledException */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.id:I
            bipush 25
            if_icmpeq 29
        28: .line 122
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iload 12 /* i */
            bipush 32
            idiv
            dup2
            iaload
            iconst_1
            iload 12 /* i */
            bipush 32
            irem
            ishl
            ior
            iastore
        29: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 14 /* catchBlock */
            aload 8 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            aastore
        30: .line 125
            goto 32
        31: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 14 /* catchBlock */
            getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            aastore
        end local 14 // int catchBlock
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding handledException
        32: .line 114
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 12 /* i */
            iload 9 /* count */
            if_icmplt 19
        end local 12 // int i
        34: .line 129
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isMethodContext:Z
            ifne 36
        35: .line 130
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isNeeded:[I
            iconst_0
            iload 10 /* cacheSize */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        36: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        37: .line 133
            aload 0 /* this */
            aload 6 /* initializationParent */
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initializationParent:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
        38: .line 134
            return
        end local 11 // boolean markExceptionsAndThrowableAsReached
        end local 10 // int cacheSize
        end local 9 // int count
        end local 8 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 6 // org.eclipse.jdt.internal.compiler.flow.FlowContext initializationParent
        end local 5 // org.eclipse.jdt.internal.compiler.ast.Argument[] catchArguments
        end local 4 // int[] exceptionToCatchBlockMap
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] handledExceptions
        end local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode associatedNode
        end local 1 // org.eclipse.jdt.internal.compiler.flow.FlowContext parent
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot                                 Name  Signature
            0   39     0                                 this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   39     1                               parent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0   39     2                       associatedNode  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            0   39     3                    handledExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            0   39     4             exceptionToCatchBlockMap  [I
            0   39     5                       catchArguments  [Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            0   39     6                 initializationParent  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0   39     7                                scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0   39     8                             flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            9   39     9                                count  I
           10   39    10                            cacheSize  I
           17   39    11  markExceptionsAndThrowableAsReached  Z
           18   34    12                                    i  I
           20   32    13                     handledException  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           23   32    14                           catchBlock  I
    MethodParameters:
                          Name  Flags
      parent                    
      associatedNode            
      handledExceptions         
      exceptionToCatchBlockMap  
      catchArguments            
      initializationParent      
      scope                     
      flowInfo                  

  public void complainIfUnusedExceptionHandlers(org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration method
         0: .line 137
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            astore 2 /* scope */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodScope scope
         1: .line 139
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.modifiers:I
            ldc 805306368
            iand
            ifeq 4
         2: .line 140
            aload 2 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.reportUnusedDeclaredThrownExceptionWhenOverriding:Z
            ifne 4
         3: .line 141
            return
         4: .line 145
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodScope
      StackMap stack:
            aconst_null
            astore 3 /* docCommentReferences */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] docCommentReferences
         5: .line 146
            iconst_0
            istore 4 /* docCommentReferencesLength */
        start local 4 // int docCommentReferencesLength
         6: .line 147
            aload 2 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
         7: .line 148
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference:Z
            ifeq 17
         8: .line 149
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.javadoc:Lorg/eclipse/jdt/internal/compiler/ast/Javadoc;
            ifnull 17
         9: .line 150
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.javadoc:Lorg/eclipse/jdt/internal/compiler/ast/Javadoc;
            getfield org.eclipse.jdt.internal.compiler.ast.Javadoc.exceptionReferences:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            ifnull 17
        10: .line 151
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.javadoc:Lorg/eclipse/jdt/internal/compiler/ast/Javadoc;
            getfield org.eclipse.jdt.internal.compiler.ast.Javadoc.exceptionReferences:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            arraylength
            dup
            istore 4 /* docCommentReferencesLength */
            ifle 17
        11: .line 152
            iload 4 /* docCommentReferencesLength */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 3 /* docCommentReferences */
        12: .line 153
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 16
        14: .line 154
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int
      StackMap stack:
            aload 3 /* docCommentReferences */
            iload 5 /* i */
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.javadoc:Lorg/eclipse/jdt/internal/compiler/ast/Javadoc;
            getfield org.eclipse.jdt.internal.compiler.ast.Javadoc.exceptionReferences:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            iload 5 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aastore
        15: .line 153
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 5 /* i */
            iload 4 /* docCommentReferencesLength */
            if_icmplt 14
        end local 5 // int i
        17: .line 157
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        18: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 6 /* count */
        start local 6 // int count
        19: goto 34
        20: .line 158
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.indexes:Lorg/eclipse/jdt/internal/compiler/codegen/ObjectCache;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 5 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ObjectCache.get:(Ljava/lang/Object;)I
            istore 7 /* index */
        start local 7 // int index
        21: .line 159
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iload 7 /* index */
            bipush 32
            idiv
            iaload
            iconst_1
            iload 7 /* index */
            bipush 32
            irem
            ishl
            iand
            ifne 33
        22: .line 160
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        23: goto 27
        24: .line 161
      StackMap locals: int int
      StackMap stack:
            aload 3 /* docCommentReferences */
            iload 8 /* j */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 5 /* i */
            aaload
            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 26
        25: .line 162
            goto 33
        26: .line 160
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        27: iload 8 /* j */
            iload 4 /* docCommentReferencesLength */
            if_icmplt 24
        end local 8 // int j
        28: .line 165
            aload 2 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        29: .line 166
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 7 /* index */
            aaload
        30: .line 167
            aload 1 /* method */
        31: .line 168
            aload 1 /* method */
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            iload 7 /* index */
            aaload
        32: .line 165
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unusedDeclaredThrownException:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        end local 7 // int index
        33: .line 157
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 5 /* i */
            iload 6 /* count */
            if_icmplt 20
        end local 6 // int count
        end local 5 // int i
        35: .line 171
            return
        end local 4 // int docCommentReferencesLength
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] docCommentReferences
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.MethodScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration method
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   36     0                        this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   36     1                      method  Lorg/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration;
            1   36     2                       scope  Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            5   36     3        docCommentReferences  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            6   36     4  docCommentReferencesLength  I
           13   17     5                           i  I
           18   35     5                           i  I
           19   35     6                       count  I
           21   33     7                       index  I
           23   28     8                           j  I
    MethodParameters:
        Name  Flags
      method  

  public void complainIfUnusedExceptionHandlers(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.ast.TryStatement);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        start local 2 // org.eclipse.jdt.internal.compiler.ast.TryStatement tryStatement
         0: .line 175
            iconst_0
            istore 3 /* index */
        start local 3 // int index
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 4 /* count */
        start local 4 // int count
         2: goto 17
         3: .line 176
      StackMap locals: int int
      StackMap stack:
            iload 3 /* index */
            bipush 32
            idiv
            istore 5 /* cacheIndex */
        start local 5 // int cacheIndex
         4: .line 177
            iconst_1
            iload 3 /* index */
            bipush 32
            irem
            ishl
            istore 6 /* bitMask */
        start local 6 // int bitMask
         5: .line 178
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iload 5 /* cacheIndex */
            iaload
            iload 6 /* bitMask */
            iand
            ifne 11
         6: .line 179
            aload 1 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
         7: .line 180
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 3 /* index */
            aaload
         8: .line 181
            aload 0 /* this */
            iload 3 /* index */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.getExceptionType:(I)Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
         9: .line 179
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unreachableCatchBlock:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        10: .line 182
            goto 16
        11: .line 183
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isNeeded:[I
            iload 5 /* cacheIndex */
            iaload
            iload 6 /* bitMask */
            iand
            ifne 16
        12: .line 184
            aload 1 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        13: .line 185
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 3 /* index */
            aaload
        14: .line 186
            aload 0 /* this */
            iload 3 /* index */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.getExceptionType:(I)Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        15: .line 184
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.hiddenCatchBlock:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        end local 6 // int bitMask
        end local 5 // int cacheIndex
        16: .line 175
      StackMap locals:
      StackMap stack:
            iinc 3 /* index */ 1
      StackMap locals:
      StackMap stack:
        17: iload 3 /* index */
            iload 4 /* count */
            if_icmplt 3
        end local 4 // int count
        end local 3 // int index
        18: .line 190
            return
        end local 2 // org.eclipse.jdt.internal.compiler.ast.TryStatement tryStatement
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   19     1         scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0   19     2  tryStatement  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            1   18     3         index  I
            2   18     4         count  I
            4   16     5    cacheIndex  I
            5   16     6       bitMask  I
    MethodParameters:
              Name  Flags
      scope         
      tryStatement  

  private org.eclipse.jdt.internal.compiler.ast.ASTNode getExceptionType(int);
    descriptor: (I)Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // int index
         0: .line 193
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            ifnonnull 2
         1: .line 194
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 1 /* index */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            areturn
         2: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            iload 1 /* index */
            iaload
            istore 2 /* catchBlock */
        start local 2 // int catchBlock
         3: .line 197
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 2 /* catchBlock */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 3 /* node */
        start local 3 // org.eclipse.jdt.internal.compiler.ast.ASTNode node
         4: .line 198
            aload 3 /* node */
            instanceof org.eclipse.jdt.internal.compiler.ast.UnionTypeReference
            ifeq 13
         5: .line 199
            aload 3 /* node */
            checkcast org.eclipse.jdt.internal.compiler.ast.UnionTypeReference
            getfield org.eclipse.jdt.internal.compiler.ast.UnionTypeReference.typeReferences:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 4 /* typeRefs */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] typeRefs
         6: .line 200
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: aload 4 /* typeRefs */
            arraylength
            istore 6 /* len */
        start local 6 // int len
         8: goto 12
         9: .line 201
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext int int org.eclipse.jdt.internal.compiler.ast.ASTNode org.eclipse.jdt.internal.compiler.ast.TypeReference[] int int
      StackMap stack:
            aload 4 /* typeRefs */
            iload 5 /* i */
            aaload
            astore 7 /* typeRef */
        start local 7 // org.eclipse.jdt.internal.compiler.ast.TypeReference typeRef
        10: .line 202
            aload 7 /* typeRef */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* index */
            aaload
            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 11
            aload 7 /* typeRef */
            areturn
        end local 7 // org.eclipse.jdt.internal.compiler.ast.TypeReference typeRef
        11: .line 200
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            iload 6 /* len */
            if_icmplt 9
        end local 6 // int len
        end local 5 // int i
        end local 4 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] typeRefs
        13: .line 205
      StackMap locals:
      StackMap stack:
            aload 3 /* node */
            areturn
        end local 3 // org.eclipse.jdt.internal.compiler.ast.ASTNode node
        end local 2 // int catchBlock
        end local 1 // int index
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   14     1       index  I
            3   14     2  catchBlock  I
            4   14     3        node  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            6   13     4    typeRefs  [Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            7   13     5           i  I
            8   13     6         len  I
           10   11     7     typeRef  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
    MethodParameters:
       Name  Flags
      index  

  public org.eclipse.jdt.internal.compiler.flow.FlowContext getInitializationContext();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
         0: .line 210
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initializationParent:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;

  public java.lang.String individualToString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
         0: .line 215
            new java.lang.StringBuffer
            dup
            ldc "Exception flow context"
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuffer buffer
         1: .line 216
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         2: .line 217
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 19
         4: .line 218
      StackMap locals: java.lang.StringBuffer int int
      StackMap stack:
            iload 3 /* i */
            bipush 32
            idiv
            istore 4 /* cacheIndex */
        start local 4 // int cacheIndex
         5: .line 219
            iconst_1
            iload 3 /* i */
            bipush 32
            irem
            ishl
            istore 5 /* bitMask */
        start local 5 // int bitMask
         6: .line 220
            aload 1 /* buffer */
            bipush 91
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 3 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.readableName:()[C
            invokevirtual java.lang.StringBuffer.append:([C)Ljava/lang/StringBuffer;
            pop
         7: .line 221
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iload 4 /* cacheIndex */
            iaload
            iload 5 /* bitMask */
            iand
            ifeq 13
         8: .line 222
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isNeeded:[I
            iload 4 /* cacheIndex */
            iaload
            iload 5 /* bitMask */
            iand
            ifne 11
         9: .line 223
            aload 1 /* buffer */
            ldc "-masked"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 224
            goto 14
        11: .line 225
      StackMap locals: int int
      StackMap stack:
            aload 1 /* buffer */
            ldc "-reached"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 227
            goto 14
        13: .line 228
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "-not reached"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            ifnull 15
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            iload 3 /* i */
            iaload
            goto 16
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
      StackMap locals:
      StackMap stack: int
        16: istore 6 /* catchBlock */
        start local 6 // int catchBlock
        17: .line 231
            aload 1 /* buffer */
            bipush 45
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 6 /* catchBlock */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        end local 6 // int catchBlock
        end local 5 // int bitMask
        end local 4 // int cacheIndex
        18: .line 217
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 3 /* i */
            iload 2 /* length */
            if_icmplt 4
        end local 3 // int i
        20: .line 233
            aload 1 /* buffer */
            ldc "[initsOnReturn -"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        21: .line 234
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 2 // int length
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            1   22     1      buffer  Ljava/lang/StringBuffer;
            2   22     2      length  I
            3   20     3           i  I
            5   18     4  cacheIndex  I
            6   18     5     bitMask  I
           17   18     6  catchBlock  I

  public org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo initsOnException(int);
    descriptor: (I)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // int index
         0: .line 240
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 1 /* index */
            aaload
            areturn
        end local 1 // int index
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  

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

  public void mergeUnhandledException(org.eclipse.jdt.internal.compiler.lookup.TypeBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding newException
         0: .line 253
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            ifnonnull 7
         1: .line 254
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iconst_5
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
         2: .line 255
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 256
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 255
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.handledExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 259
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* isRedundant */
        start local 2 // boolean isRedundant
         8: .line 261
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         9: goto 16
        10: .line 262
      StackMap locals: int int
      StackMap stack:
            aload 1 /* newException */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            invokestatic org.eclipse.jdt.internal.compiler.lookup.Scope.compareTypes:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)I
            tableswitch { // -1 - 1
                   -1: 13
                    0: 15
                    1: 11
              default: 15
          }
        11: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            pop
        12: .line 265
            goto 15
        13: .line 267
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* isRedundant */
        14: .line 268
            goto 15
        15: .line 261
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            ifge 10
        end local 3 // int i
        17: .line 273
            iload 2 /* isRedundant */
            ifne 19
        18: .line 274
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.extendedExceptions:Ljava/util/ArrayList;
            aload 1 /* newException */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        19: .line 276
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean isRedundant
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding newException
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   20     1  newException  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            3    7     2             i  I
            8   20     2   isRedundant  Z
            9   17     3             i  I
    MethodParameters:
              Name  Flags
      newException  

  public void recordHandlingException(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding, org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo, org.eclipse.jdt.internal.compiler.lookup.TypeBinding, org.eclipse.jdt.internal.compiler.lookup.TypeBinding, org.eclipse.jdt.internal.compiler.ast.ASTNode, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=12, args_size=7
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding exceptionType
        start local 2 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding raisedException
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding caughtException
        start local 5 // org.eclipse.jdt.internal.compiler.ast.ASTNode invocationSite
        start local 6 // boolean wasAlreadyDefinitelyCaught
         0: .line 286
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.indexes:Lorg/eclipse/jdt/internal/compiler/codegen/ObjectCache;
            aload 1 /* exceptionType */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ObjectCache.get:(Ljava/lang/Object;)I
            istore 7 /* index */
        start local 7 // int index
         1: .line 287
            iload 7 /* index */
            bipush 32
            idiv
            istore 8 /* cacheIndex */
        start local 8 // int cacheIndex
         2: .line 288
            iconst_1
            iload 7 /* index */
            bipush 32
            irem
            ishl
            istore 9 /* bitMask */
        start local 9 // int bitMask
         3: .line 289
            iload 6 /* wasAlreadyDefinitelyCaught */
            ifne 5
         4: .line 290
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isNeeded:[I
            iload 8 /* cacheIndex */
            dup2
            iaload
            iload 9 /* bitMask */
            ior
            iastore
         5: .line 292
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.isReached:[I
            iload 8 /* cacheIndex */
            dup2
            iaload
            iload 9 /* bitMask */
            ior
            iastore
         6: .line 293
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            ifnull 7
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.exceptionToCatchBlockMap:[I
            iload 7 /* index */
            iaload
            goto 8
      StackMap locals:
      StackMap stack:
         7: iload 7 /* index */
      StackMap locals:
      StackMap stack: int
         8: istore 10 /* catchBlock */
        start local 10 // int catchBlock
         9: .line 294
            aload 4 /* caughtException */
            ifnull 12
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnull 12
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            arraylength
            ifle 12
            iload 6 /* wasAlreadyDefinitelyCaught */
            ifne 12
        10: .line 295
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 10 /* catchBlock */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.CatchParameterBinding
            astore 11 /* catchParameter */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.CatchParameterBinding catchParameter
        11: .line 296
            aload 11 /* catchParameter */
            aload 4 /* caughtException */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.CatchParameterBinding.setPreciseType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.CatchParameterBinding catchParameter
        12: .line 298
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 10 /* catchBlock */
        13: .line 299
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 10 /* catchBlock */
            aaload
            getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
            iconst_3
            iand
            ifne 15
        14: .line 300
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnExceptions:[Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            iload 10 /* catchBlock */
            aaload
            aload 2 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            goto 16
        15: .line 301
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.ast.ASTNode int int int int int
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo[] int
            aload 2 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        16: .line 298
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.ast.ASTNode int int int int int
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo[] int org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
            aastore
        17: .line 302
            return
        end local 10 // int catchBlock
        end local 9 // int bitMask
        end local 8 // int cacheIndex
        end local 7 // int index
        end local 6 // boolean wasAlreadyDefinitelyCaught
        end local 5 // org.eclipse.jdt.internal.compiler.ast.ASTNode invocationSite
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding caughtException
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding raisedException
        end local 2 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding exceptionType
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   18     0                        this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   18     1               exceptionType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            0   18     2                    flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            0   18     3             raisedException  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            0   18     4             caughtException  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            0   18     5              invocationSite  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            0   18     6  wasAlreadyDefinitelyCaught  Z
            1   18     7                       index  I
            2   18     8                  cacheIndex  I
            3   18     9                     bitMask  I
            9   18    10                  catchBlock  I
           11   12    11              catchParameter  Lorg/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding;
    MethodParameters:
                            Name  Flags
      exceptionType               
      flowInfo                    
      raisedException             
      caughtException             
      invocationSite              
      wasAlreadyDefinitelyCaught  

  public void recordReturnFrom(org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
        start local 1 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
         0: .line 306
            aload 1 /* flowInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
            iconst_1
            iand
            ifne 5
         1: .line 307
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
            iconst_1
            iand
            ifne 4
         2: .line 308
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            aload 1 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
         3: .line 309
            goto 5
         4: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            checkcast org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
         5: .line 314
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo flowInfo
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0    6     1  flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
    MethodParameters:
          Name  Flags
      flowInfo  

  public org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement subroutine();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/ast/SubRoutineStatement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
         0: .line 325
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.associatedNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            instanceof org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement
            ifeq 4
         1: .line 327
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.parent:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.subroutine:()Lorg/eclipse/jdt/internal/compiler/ast/SubRoutineStatement;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.associatedNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            if_acmpne 3
         2: .line 328
            aconst_null
            areturn
         3: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.associatedNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            checkcast org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement
            areturn
         4: .line 331
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
}
SourceFile: "ExceptionHandlingFlowContext.java"