public class org.eclipse.jdt.internal.compiler.ast.TryStatement extends org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.compiler.ast.TryStatement
  super_class: org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement
{
  static final char[] SECRET_RETURN_ADDRESS_NAME;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final char[] SECRET_ANY_HANDLER_NAME;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final char[] SECRET_PRIMARY_EXCEPTION_VARIABLE_NAME;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final char[] SECRET_CAUGHT_THROWABLE_VARIABLE_NAME;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final char[] SECRET_RETURN_VALUE_NAME;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

  public org.eclipse.jdt.internal.compiler.ast.Block tryBlock;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/Block;
    flags: (0x0001) ACC_PUBLIC

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

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

  public org.eclipse.jdt.internal.compiler.ast.Block finallyBlock;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/Block;
    flags: (0x0001) ACC_PUBLIC

  org.eclipse.jdt.internal.compiler.lookup.BlockScope scope;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    flags: (0x0000) 

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

  org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] caughtExceptionTypes;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0000) 

  boolean[] catchExits;
    descriptor: [Z
    flags: (0x0000) 

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

  public org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding anyExceptionVariable;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding returnAddressVariable;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding secretReturnValue;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
    flags: (0x0001) ACC_PUBLIC

  org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] declaredExceptionLabels;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
    flags: (0x0000) 

  private java.lang.Object[] reusableJSRTargets;
    descriptor: [Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.compiler.codegen.BranchLabel[] reusableJSRSequenceStartLabels;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
    flags: (0x0002) ACC_PRIVATE

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

  private int reusableJSRTargetsCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static final int NO_FINALLY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int FINALLY_SUBROUTINE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int FINALLY_DOES_NOT_COMPLETE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int FINALLY_INLINE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

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

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

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

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

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

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

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

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

  private org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] resourceExceptionLabels;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
    flags: (0x0002) ACC_PRIVATE

  private int[] caughtExceptionsCatchBlocks;
    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 47
            ldc " returnAddress"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_RETURN_ADDRESS_NAME:[C
         1: .line 48
            ldc " anyExceptionHandler"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_ANY_HANDLER_NAME:[C
         2: .line 49
            ldc " primaryException"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_PRIMARY_EXCEPTION_VARIABLE_NAME:[C
         3: .line 50
            ldc " caughtThrowable"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_CAUGHT_THROWABLE_VARIABLE_NAME:[C
         4: .line 51
            ldc " returnValue"
            invokevirtual java.lang.String.toCharArray:()[C
            putstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_RETURN_VALUE_NAME:[C
         5: .line 82
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 45
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement.<init>:()V
         1: .line 53
            aload 0 /* this */
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.ast.Statement
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
         2: .line 77
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
         3: .line 85
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
         4: .line 86
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
         5: .line 87
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
         6: .line 89
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
         7: .line 45
            return
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;

  public org.eclipse.jdt.internal.compiler.flow.FlowInfo analyseCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.flow.FlowInfo);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=18, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        start local 2 // org.eclipse.jdt.internal.compiler.flow.FlowContext flowContext
        start local 3 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
         0: .line 106
            aload 0 /* this */
         1: .line 107
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 3 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
         2: .line 106
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
         3: .line 109
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            ifnull 5
         4: .line 110
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
         5: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            ifnull 7
         6: .line 113
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
         7: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            ifnull 9
         8: .line 116
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
         9: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            ifnull 11
        10: .line 119
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
        11: .line 121
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 4 /* resourcesLength */
        start local 4 // int resourcesLength
        12: .line 122
            iload 4 /* resourcesLength */
            ifle 14
        13: .line 123
            aload 0 /* this */
            iload 4 /* resourcesLength */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postResourcesInitStateIndexes:[I
        14: .line 127
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnonnull 101
        15: .line 129
            aload 2 /* flowContext */
            instanceof org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            ifeq 18
        16: .line 132
            aload 2 /* flowContext */
            checkcast org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            astore 5 /* finallyContext */
        start local 5 // org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext finallyContext
        17: .line 133
            aload 5 /* finallyContext */
            aload 5 /* finallyContext */
            getfield org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext.tryContext:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            putfield org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext.outerTryContext:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
        end local 5 // org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext finallyContext
        18: .line 137
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext
            dup
        19: .line 138
            aload 2 /* flowContext */
        20: .line 139
            aload 0 /* this */
        21: .line 140
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        22: .line 141
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
        23: .line 142
            aconst_null
        24: .line 143
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
        25: .line 144
            aload 3 /* flowInfo */
        26: .line 137
            invokespecial org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.<init>:(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
        27: .line 136
            astore 5 /* handlingContext */
        start local 5 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
        28: .line 145
            aload 5 /* handlingContext */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.conditionalLevel:I
        29: .line 149
            aload 3 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 6 /* tryInfo */
        start local 6 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
        30: .line 150
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        31: goto 59
        32: .line 151
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 7 /* i */
            aaload
            astore 8 /* resource */
        start local 8 // org.eclipse.jdt.internal.compiler.ast.Statement resource
        33: .line 152
            aload 8 /* resource */
            aload 1 /* currentScope */
            aload 5 /* handlingContext */
            aload 6 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 6 /* tryInfo */
        34: .line 153
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postResourcesInitStateIndexes:[I
            iload 7 /* i */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 6 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            iastore
        35: .line 154
            aconst_null
            astore 9 /* resolvedType */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        36: .line 155
            aconst_null
            astore 10 /* localVariableBinding */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
        37: .line 156
            aload 8 /* resource */
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 41
        38: .line 157
            aload 8 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            astore 10 /* localVariableBinding */
        39: .line 158
            aload 10 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 9 /* resolvedType */
        40: .line 159
            goto 44
        41: .line 160
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
      StackMap stack:
            aload 8 /* resource */
            instanceof org.eclipse.jdt.internal.compiler.ast.NameReference
            ifeq 43
            aload 8 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            instanceof org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            ifeq 43
        42: .line 161
            aload 8 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            astore 10 /* localVariableBinding */
        43: .line 163
      StackMap locals:
      StackMap stack:
            aload 8 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.Expression
            getfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 9 /* resolvedType */
        44: .line 165
      StackMap locals:
      StackMap stack:
            aload 10 /* localVariableBinding */
            ifnull 49
        45: .line 166
            aload 10 /* localVariableBinding */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
        46: .line 167
            aload 10 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.closeTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            ifnull 49
        47: .line 169
            aload 10 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.closeTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.withdraw:()V
        48: .line 170
            aload 10 /* localVariableBinding */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.closeTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
        49: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* resource */
            aload 9 /* resolvedType */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.findCloseMethod:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 11 /* closeMethod */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
        50: .line 174
            aload 11 /* closeMethod */
            ifnull 58
            aload 11 /* closeMethod */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isValidBinding:()Z
            ifeq 58
            aload 11 /* closeMethod */
            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
            bipush 6
            if_icmpne 58
        51: .line 175
            aload 11 /* closeMethod */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 12 /* thrownExceptions */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] thrownExceptions
        52: .line 176
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        53: aload 12 /* thrownExceptions */
            arraylength
            istore 14 /* length */
        start local 14 // int length
        54: goto 57
        55: .line 177
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.ast.Statement org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int int
      StackMap stack:
            aload 5 /* handlingContext */
            aload 12 /* thrownExceptions */
            iload 13 /* j */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 7 /* i */
            aaload
            aload 6 /* tryInfo */
            aload 1 /* currentScope */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.checkExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Z)V
        56: .line 176
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        57: iload 13 /* j */
            iload 14 /* length */
            if_icmplt 55
        end local 14 // int length
        end local 13 // int j
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] thrownExceptions
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        end local 8 // org.eclipse.jdt.internal.compiler.ast.Statement resource
        58: .line 150
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        59: iload 7 /* i */
            iload 4 /* resourcesLength */
            if_icmplt 32
        end local 7 // int i
        60: .line 181
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.isEmptyBlock:()Z
            ifne 64
        61: .line 182
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* currentScope */
            aload 5 /* handlingContext */
            aload 6 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 6 /* tryInfo */
        62: .line 183
            aload 6 /* tryInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
            iconst_1
            iand
            ifeq 64
        63: .line 184
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            ldc 536870912
            ior
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
        64: .line 186
      StackMap locals:
      StackMap stack:
            iload 4 /* resourcesLength */
            ifle 72
        65: .line 187
            aload 0 /* this */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 6 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
        66: .line 191
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        67: goto 71
        68: .line 192
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 7 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 70
        69: .line 193
            aload 6 /* tryInfo */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 7 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.resetAssignmentInfo:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        70: .line 191
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        71: iload 7 /* i */
            iload 4 /* resourcesLength */
            if_icmplt 68
        end local 7 // int i
        72: .line 197
      StackMap locals:
      StackMap stack:
            aload 5 /* handlingContext */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.complainIfUnusedExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;)V
        73: .line 200
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnull 96
        74: .line 202
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            dup
            istore 7 /* catchCount */
        start local 7 // int catchCount
        75: newarray 4
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExits:[Z
        76: .line 203
            aload 0 /* this */
            iload 7 /* catchCount */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
        77: .line 204
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        78: goto 95
        79: .line 206
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* flowInfo */
            aload 5 /* handlingContext */
            aload 6 /* tryInfo */
            iload 8 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.prepareCatchInfo:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 9 /* catchInfo */
        start local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
        80: .line 207
            aload 2 /* flowContext */
            dup
            getfield org.eclipse.jdt.internal.compiler.flow.FlowContext.conditionalLevel:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.flow.FlowContext.conditionalLevel:I
        81: .line 209
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 8 /* i */
            aaload
        82: .line 210
            aload 1 /* currentScope */
        83: .line 211
            aload 2 /* flowContext */
        84: .line 212
            aload 9 /* catchInfo */
        85: .line 209
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
        86: .line 208
            astore 9 /* catchInfo */
        87: .line 213
            aload 2 /* flowContext */
            dup
            getfield org.eclipse.jdt.internal.compiler.flow.FlowContext.conditionalLevel:I
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.compiler.flow.FlowContext.conditionalLevel:I
        88: .line 214
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
            iload 8 /* i */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 9 /* catchInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            iastore
        89: .line 215
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExits:[Z
            iload 8 /* i */
        90: .line 216
            aload 9 /* catchInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
            iconst_1
            iand
            ifeq 91
            iconst_1
            goto 92
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int int org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack: boolean[] int
        91: iconst_0
        92: .line 215
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int int org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack: boolean[] int int
            bastore
        93: .line 217
            aload 6 /* tryInfo */
            aload 9 /* catchInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            astore 6 /* tryInfo */
        end local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
        94: .line 204
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        95: iload 8 /* i */
            iload 7 /* catchCount */
            if_icmplt 79
        end local 8 // int i
        end local 7 // int catchCount
        96: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        97: .line 221
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 6 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
        98: .line 220
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
        99: .line 224
            aload 2 /* flowContext */
            aload 5 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.mergeFinallyNullInfo:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
       100: .line 226
            aload 6 /* tryInfo */
            areturn
        end local 6 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
        end local 5 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
       101: .line 232
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext
            dup
            aload 2 /* flowContext */
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
            astore 5 /* insideSubContext */
        start local 5 // org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext insideSubContext
       102: .line 233
            aload 2 /* flowContext */
            instanceof org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            ifeq 104
       103: .line 236
            aload 5 /* insideSubContext */
            aload 2 /* flowContext */
            checkcast org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            getfield org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext.tryContext:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            putfield org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.outerTryContext:Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
       104: .line 242
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext
            dup
       105: .line 243
            aload 5 /* insideSubContext */
       106: .line 244
            aload 0 /* this */
       107: .line 245
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
       108: .line 246
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
       109: .line 247
            aconst_null
       110: .line 248
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
       111: .line 249
            aload 3 /* flowInfo */
       112: .line 242
            invokespecial org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.<init>:(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
       113: .line 241
            astore 8 /* handlingContext */
        start local 8 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
       114: .line 250
            aload 5 /* insideSubContext */
            aload 8 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            putfield org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       115: .line 253
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
       116: .line 255
            aload 1 /* currentScope */
       117: .line 256
            new org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            dup
            aload 2 /* flowContext */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 8 /* handlingContext */
            invokespecial org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;)V
            dup
            astore 6 /* finallyContext */
        start local 6 // org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext finallyContext
       118: .line 257
            aload 3 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
       119: .line 254
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       120: .line 258
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
       121: .line 252
            astore 7 /* subInfo */
        start local 7 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo subInfo
       122: .line 259
            aload 8 /* handlingContext */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.conditionalLevel:I
       123: .line 260
            aload 7 /* subInfo */
            getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            if_acmpne 127
       124: .line 261
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            sipush 16384
            ior
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
       125: .line 262
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.finallyMustCompleteNormally:(Lorg/eclipse/jdt/internal/compiler/ast/Block;)V
       126: .line 263
            goto 135
       127: .line 265
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext
      StackMap stack:
            aload 7 /* subInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 9 /* finallyInfo */
        start local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo finallyInfo
       128: .line 266
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 9 /* finallyInfo */
            putfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.finallyInfo:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       129: .line 267
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 135
       130: .line 268
            iconst_0
            istore 10 /* i */
        start local 10 // int i
       131: goto 134
       132: .line 269
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.FlowInfo int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 10 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 9 /* finallyInfo */
            putfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.finallyInfo:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       133: .line 268
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
       134: iload 10 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            if_icmplt 132
        end local 10 // int i
        end local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo finallyInfo
       135: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* subInfo */
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineInits:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
       136: .line 276
            aload 3 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 9 /* tryInfo */
        start local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
       137: .line 277
            iconst_0
            istore 10 /* i */
        start local 10 // int i
       138: goto 165
       139: .line 278
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.FlowInfo int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            astore 11 /* resource */
        start local 11 // org.eclipse.jdt.internal.compiler.ast.Statement resource
       140: .line 279
            aload 11 /* resource */
            aload 1 /* currentScope */
            aload 8 /* handlingContext */
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 9 /* tryInfo */
       141: .line 280
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postResourcesInitStateIndexes:[I
            iload 10 /* i */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            iastore
       142: .line 281
            aconst_null
            astore 12 /* resolvedType */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
       143: .line 282
            aconst_null
            astore 13 /* localVariableBinding */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
       144: .line 283
            aload 11 /* resource */
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 148
       145: .line 284
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            astore 13 /* localVariableBinding */
       146: .line 285
            aload 13 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 12 /* resolvedType */
       147: .line 286
            goto 151
       148: .line 287
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
      StackMap stack:
            aload 11 /* resource */
            instanceof org.eclipse.jdt.internal.compiler.ast.NameReference
            ifeq 150
            aload 11 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            instanceof org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            ifeq 150
       149: .line 288
            aload 11 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            astore 13 /* localVariableBinding */
       150: .line 290
      StackMap locals:
      StackMap stack:
            aload 11 /* resource */
            checkcast org.eclipse.jdt.internal.compiler.ast.Expression
            getfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 12 /* resolvedType */
       151: .line 292
      StackMap locals:
      StackMap stack:
            aload 13 /* localVariableBinding */
            ifnull 155
       152: .line 293
            aload 13 /* localVariableBinding */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
       153: .line 294
            aload 13 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.closeTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            ifnull 155
       154: .line 296
            aload 13 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.closeTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.withdraw:()V
       155: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 11 /* resource */
            aload 12 /* resolvedType */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.findCloseMethod:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 14 /* closeMethod */
        start local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
       156: .line 301
            aload 14 /* closeMethod */
            ifnull 164
            aload 14 /* closeMethod */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isValidBinding:()Z
            ifeq 164
            aload 14 /* closeMethod */
            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
            bipush 6
            if_icmpne 164
       157: .line 302
            aload 14 /* closeMethod */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.thrownExceptions:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 15 /* thrownExceptions */
        start local 15 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] thrownExceptions
       158: .line 303
            iconst_0
            istore 16 /* j */
        start local 16 // int j
       159: aload 15 /* thrownExceptions */
            arraylength
            istore 17 /* length */
        start local 17 // int length
       160: goto 163
       161: .line 304
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.ast.Statement org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding org.eclipse.jdt.internal.compiler.lookup.MethodBinding org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int int
      StackMap stack:
            aload 8 /* handlingContext */
            aload 15 /* thrownExceptions */
            iload 16 /* j */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            aload 9 /* tryInfo */
            aload 1 /* currentScope */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.checkExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Z)V
       162: .line 303
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
       163: iload 16 /* j */
            iload 17 /* length */
            if_icmplt 161
        end local 17 // int length
        end local 16 // int j
        end local 15 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] thrownExceptions
        end local 14 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolvedType
        end local 11 // org.eclipse.jdt.internal.compiler.ast.Statement resource
       164: .line 277
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
       165: iload 10 /* i */
            iload 4 /* resourcesLength */
            if_icmplt 139
        end local 10 // int i
       166: .line 308
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.isEmptyBlock:()Z
            ifne 170
       167: .line 309
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* currentScope */
            aload 8 /* handlingContext */
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 9 /* tryInfo */
       168: .line 310
            aload 9 /* tryInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
            iconst_1
            iand
            ifeq 170
       169: .line 311
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            ldc 536870912
            ior
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
       170: .line 313
      StackMap locals:
      StackMap stack:
            iload 4 /* resourcesLength */
            ifle 178
       171: .line 314
            aload 0 /* this */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
       172: .line 318
            iconst_0
            istore 10 /* i */
        start local 10 // int i
       173: goto 177
       174: .line 319
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 176
       175: .line 320
            aload 9 /* tryInfo */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.resetAssignmentInfo:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       176: .line 318
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
       177: iload 10 /* i */
            iload 4 /* resourcesLength */
            if_icmplt 174
        end local 10 // int i
       178: .line 324
      StackMap locals:
      StackMap stack:
            aload 8 /* handlingContext */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.complainIfUnusedExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;)V
       179: .line 327
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnull 201
       180: .line 329
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            dup
            istore 10 /* catchCount */
        start local 10 // int catchCount
       181: newarray 4
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExits:[Z
       182: .line 330
            aload 0 /* this */
            iload 10 /* catchCount */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
       183: .line 331
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       184: goto 200
       185: .line 333
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* flowInfo */
            aload 8 /* handlingContext */
            aload 9 /* tryInfo */
            iload 11 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.prepareCatchInfo:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 12 /* catchInfo */
        start local 12 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
       186: .line 334
            aload 5 /* insideSubContext */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.conditionalLevel:I
       187: .line 336
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 11 /* i */
            aaload
       188: .line 337
            aload 1 /* currentScope */
       189: .line 338
            aload 5 /* insideSubContext */
       190: .line 339
            aload 12 /* catchInfo */
       191: .line 336
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       192: .line 335
            astore 12 /* catchInfo */
       193: .line 340
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
            iload 11 /* i */
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 12 /* catchInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
            iastore
       194: .line 341
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExits:[Z
            iload 11 /* i */
       195: .line 342
            aload 12 /* catchInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
            iconst_1
            iand
            ifeq 196
            iconst_1
            goto 197
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int int org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack: boolean[] int
       196: iconst_0
       197: .line 341
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int int org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack: boolean[] int int
            bastore
       198: .line 343
            aload 9 /* tryInfo */
            aload 12 /* catchInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            astore 9 /* tryInfo */
        end local 12 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
       199: .line 331
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       200: iload 11 /* i */
            iload 10 /* catchCount */
            if_icmplt 185
        end local 11 // int i
        end local 10 // int catchCount
       201: .line 348
      StackMap locals:
      StackMap stack:
            aload 6 /* finallyContext */
       202: .line 349
            aload 9 /* tryInfo */
            getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
            iconst_3
            iand
            ifne 206
       203: .line 350
            aload 3 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
       204: .line 351
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       205: .line 354
            aload 5 /* insideSubContext */
            getfield org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            goto 207
       206: .line 355
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext
            aload 5 /* insideSubContext */
            getfield org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
       207: .line 357
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack: org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo
            aload 8 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       208: .line 356
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addNullInfoFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
       209: .line 358
            aload 1 /* currentScope */
       210: .line 348
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext.complainOnDeferredChecks:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
       211: .line 361
            aload 2 /* flowContext */
            aload 8 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.mergeFinallyNullInfo:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
       212: .line 363
            aload 0 /* this */
       213: .line 364
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 9 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
       214: .line 363
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
       215: .line 365
            aload 7 /* subInfo */
            getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            if_acmpne 220
       216: .line 366
            aload 0 /* this */
       217: .line 367
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 7 /* subInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
       218: .line 366
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
       219: .line 368
            aload 7 /* subInfo */
            areturn
       220: .line 370
      StackMap locals:
      StackMap stack:
            aload 9 /* tryInfo */
            aload 7 /* subInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            astore 10 /* mergedInfo */
        start local 10 // org.eclipse.jdt.internal.compiler.flow.FlowInfo mergedInfo
       221: .line 371
            aload 0 /* this */
       222: .line 372
            aload 1 /* currentScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            aload 10 /* mergedInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.recordInitializationStates:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)I
       223: .line 371
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
       224: .line 373
            aload 10 /* mergedInfo */
            areturn
        end local 10 // org.eclipse.jdt.internal.compiler.flow.FlowInfo mergedInfo
        end local 9 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
        end local 8 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
        end local 7 // org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo subInfo
        end local 6 // org.eclipse.jdt.internal.compiler.flow.FinallyFlowContext finallyContext
        end local 5 // org.eclipse.jdt.internal.compiler.flow.InsideSubRoutineFlowContext insideSubContext
        end local 4 // int resourcesLength
        end local 3 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
        end local 2 // org.eclipse.jdt.internal.compiler.flow.FlowContext flowContext
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0  225     0                  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0  225     1          currentScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0  225     2           flowContext  Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
            0  225     3              flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
           12  225     4       resourcesLength  I
           17   18     5        finallyContext  Lorg/eclipse/jdt/internal/compiler/flow/FinallyFlowContext;
           28  101     5       handlingContext  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
           30  101     6               tryInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
           31   60     7                     i  I
           33   58     8              resource  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
           36   58     9          resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           37   58    10  localVariableBinding  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
           50   58    11           closeMethod  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           52   58    12      thrownExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           53   58    13                     j  I
           54   58    14                length  I
           67   72     7                     i  I
           75   96     7            catchCount  I
           78   96     8                     i  I
           80   94     9             catchInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
          102  225     5      insideSubContext  Lorg/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext;
          118  225     6        finallyContext  Lorg/eclipse/jdt/internal/compiler/flow/FinallyFlowContext;
          122  225     7               subInfo  Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
          114  225     8       handlingContext  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
          128  135     9           finallyInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
          131  135    10                     i  I
          137  225     9               tryInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
          138  166    10                     i  I
          140  164    11              resource  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
          143  164    12          resolvedType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
          144  164    13  localVariableBinding  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
          156  164    14           closeMethod  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
          158  164    15      thrownExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
          159  164    16                     j  I
          160  164    17                length  I
          173  178    10                     i  I
          181  201    10            catchCount  I
          184  201    11                     i  I
          186  199    12             catchInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
          221  225    10            mergedInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
    MethodParameters:
              Name  Flags
      currentScope  
      flowContext   
      flowInfo      

  private org.eclipse.jdt.internal.compiler.lookup.MethodBinding findCloseMethod(org.eclipse.jdt.internal.compiler.ast.ASTNode, org.eclipse.jdt.internal.compiler.lookup.TypeBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.ASTNode resource
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
         0: .line 378
            aconst_null
            astore 3 /* closeMethod */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
         1: .line 379
            aload 2 /* type */
            ifnull 7
            aload 2 /* type */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
            ifeq 7
            aload 2 /* type */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 7
         2: .line 380
            aload 2 /* type */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 4 /* binding */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding binding
         3: .line 381
            aload 4 /* binding */
            getstatic org.eclipse.jdt.internal.compiler.codegen.ConstantPool.Close:[C
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilationUnitScope:()Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            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;
            astore 3 /* closeMethod */
         4: .line 382
            aload 3 /* closeMethod */
            ifnonnull 7
         5: .line 386
            new org.eclipse.jdt.internal.compiler.lookup.InvocationSite$EmptyWithAstNode
            dup
            aload 1 /* resource */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.InvocationSite$EmptyWithAstNode.<init>:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
            astore 5 /* site */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.InvocationSite site
         6: .line 387
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilationUnitScope:()Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            aload 4 /* binding */
            getstatic org.eclipse.jdt.internal.compiler.codegen.ConstantPool.Close:[C
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            aload 5 /* site */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findMethod:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;[C[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/InvocationSite;Z)Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            astore 3 /* closeMethod */
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.InvocationSite site
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding binding
         7: .line 390
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodBinding
      StackMap stack:
            aload 3 /* closeMethod */
            areturn
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding closeMethod
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding type
        end local 1 // org.eclipse.jdt.internal.compiler.ast.ASTNode resource
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0    8     1     resource  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            0    8     2         type  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            1    8     3  closeMethod  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            3    7     4      binding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            6    7     5         site  Lorg/eclipse/jdt/internal/compiler/lookup/InvocationSite;
    MethodParameters:
          Name  Flags
      resource  final
      type      

  private org.eclipse.jdt.internal.compiler.flow.FlowInfo prepareCatchInfo(org.eclipse.jdt.internal.compiler.flow.FlowInfo, org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext, org.eclipse.jdt.internal.compiler.flow.FlowInfo, int);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
        start local 2 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
        start local 3 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
        start local 4 // int i
         0: .line 394
            aload 0 /* this */
            iload 4 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.isUncheckedCatchBlock:(I)Z
            ifeq 10
         1: .line 396
            aload 1 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
         2: .line 398
            aload 2 /* handlingContext */
            iload 4 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnException:(I)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
         3: .line 397
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
         4: .line 399
            aload 3 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
         5: .line 401
            aload 2 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
         6: .line 400
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
         7: .line 402
            aload 2 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnFinally:Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addNullInfoFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
         8: .line 395
            astore 5 /* catchInfo */
        start local 5 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
         9: .line 403
            goto 19
        end local 5 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
        10: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* handlingContext */
            iload 4 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnException:(I)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            astore 6 /* initsOnException */
        start local 6 // org.eclipse.jdt.internal.compiler.flow.FlowInfo initsOnException
        11: .line 406
            aload 1 /* flowInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        12: .line 407
            aload 6 /* initsOnException */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
        13: .line 408
            aload 6 /* initsOnException */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addNullInfoFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
        14: .line 410
            aload 3 /* tryInfo */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        15: .line 409
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
        16: .line 412
            aload 2 /* handlingContext */
            getfield org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext.initsOnReturn:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
            invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
        17: .line 411
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
        18: .line 405
            astore 5 /* catchInfo */
        end local 6 // org.eclipse.jdt.internal.compiler.flow.FlowInfo initsOnException
        start local 5 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
        19: .line 416
      StackMap locals: org.eclipse.jdt.internal.compiler.flow.FlowInfo
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 4 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            astore 6 /* catchArg */
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding catchArg
        20: .line 417
            aload 5 /* catchInfo */
            aload 6 /* catchArg */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyAssigned:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        21: .line 418
            aload 5 /* catchInfo */
            aload 6 /* catchArg */
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        22: .line 426
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            ifnonnull 24
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            ifnonnull 24
        23: .line 427
            aload 5 /* catchInfo */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            pop
        24: .line 429
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
      StackMap stack:
            aload 5 /* catchInfo */
            areturn
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding catchArg
        end local 5 // org.eclipse.jdt.internal.compiler.flow.FlowInfo catchInfo
        end local 4 // int i
        end local 3 // org.eclipse.jdt.internal.compiler.flow.FlowInfo tryInfo
        end local 2 // org.eclipse.jdt.internal.compiler.flow.ExceptionHandlingFlowContext handlingContext
        end local 1 // org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   25     0              this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   25     1          flowInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            0   25     2   handlingContext  Lorg/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext;
            0   25     3           tryInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
            0   25     4                 i  I
            9   10     5         catchInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
           19   25     5         catchInfo  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
           11   19     6  initsOnException  Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
           20   25     6          catchArg  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
    MethodParameters:
                 Name  Flags
      flowInfo         
      handlingContext  
      tryInfo          
      i                

  private boolean isUncheckedCatchBlock(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // int catchBlock
         0: .line 433
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
            ifnonnull 2
         1: .line 434
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* catchBlock */
            aaload
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isUncheckedException:(Z)Z
            ireturn
         2: .line 436
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
            arraylength
            istore 3 /* length */
        start local 3 // int length
         4: goto 9
         5: .line 437
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
            iload 2 /* i */
            iaload
            iload 1 /* catchBlock */
            if_icmpne 8
         6: .line 438
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 2 /* i */
            aaload
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isUncheckedException:(Z)Z
            ifeq 8
         7: .line 439
            iconst_1
            ireturn
         8: .line 436
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 5
        end local 3 // int length
        end local 2 // int i
        10: .line 443
            iconst_0
            ireturn
        end local 1 // int catchBlock
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   11     1  catchBlock  I
            3   10     2           i  I
            4   10     3      length  I
    MethodParameters:
            Name  Flags
      catchBlock  

  public org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel enterAnyExceptionHandler(org.eclipse.jdt.internal.compiler.codegen.CodeStream);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
         0: .line 448
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnonnull 2
         1: .line 449
            aconst_null
            areturn
         2: .line 450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement.enterAnyExceptionHandler:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            areturn
        end local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0    3     1  codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
    MethodParameters:
            Name  Flags
      codeStream  

  public void enterDeclaredExceptionHandlers(org.eclipse.jdt.internal.compiler.codegen.CodeStream);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
         0: .line 455
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            ifnonnull 2
            iconst_0
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            arraylength
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* length */
        start local 3 // int length
         4: goto 7
         5: .line 456
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeStart:()V
         6: .line 455
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 5
        end local 3 // int length
        end local 2 // int i
         8: .line 458
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 2 /* resourceCount */
        start local 2 // int resourceCount
         9: .line 459
            iload 2 /* resourceCount */
            ifle 15
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            ifnull 15
        10: .line 461
            iload 2 /* resourceCount */
            istore 3 /* i */
        start local 3 // int i
        11: goto 14
        12: .line 462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 3 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeStart:()V
        13: .line 461
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            ifge 12
        end local 3 // int i
        15: .line 465
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int resourceCount
        end local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   16     1     codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            1    8     2              i  I
            4    8     3         length  I
            9   16     2  resourceCount  I
           11   15     3              i  I
    MethodParameters:
            Name  Flags
      codeStream  

  public void exitAnyExceptionHandler();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 469
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnonnull 2
         1: .line 470
            return
         2: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.ast.SubRoutineStatement.exitAnyExceptionHandler:()V
         3: .line 472
            return
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;

  public void exitDeclaredExceptionHandlers(org.eclipse.jdt.internal.compiler.codegen.CodeStream);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
         0: .line 476
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            ifnonnull 2
            iconst_0
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            arraylength
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* length */
        start local 3 // int length
         4: goto 7
         5: .line 477
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 2 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
         6: .line 476
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            iload 3 /* length */
            if_icmplt 5
        end local 3 // int length
        end local 2 // int i
         8: .line 479
            return
        end local 1 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0    9     1  codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            1    8     2           i  I
            4    8     3      length  I
    MethodParameters:
            Name  Flags
      codeStream  

  private int finallyMode();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 482
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnonnull 2
         1: .line 483
            iconst_0
            ireturn
         2: .line 484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.isSubRoutineEscaping:()Z
            ifeq 4
         3: .line 485
            iconst_2
            ireturn
         4: .line 486
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.inlineJsrBytecode:Z
            ifeq 6
         5: .line 487
            iconst_3
            ireturn
         6: .line 489
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;

  public void generateCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=16, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
         0: .line 499
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            ldc -2147483648
            iand
            ifne 2
         1: .line 500
            return
         2: .line 502
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            instanceof org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            istore 3 /* isStackMapFrameCodeStream */
        start local 3 // boolean isStackMapFrameCodeStream
         3: .line 505
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionLabel:Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
         4: .line 506
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
         5: .line 507
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
         6: .line 508
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
         7: .line 510
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 4 /* pc */
        start local 4 // int pc
         8: .line 511
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyMode:()I
            istore 5 /* finallyMode */
        start local 5 // int finallyMode
         9: .line 513
            iconst_0
            istore 6 /* requiresNaturalExit */
        start local 6 // boolean requiresNaturalExit
        10: .line 515
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnonnull 11
            iconst_0
            goto 12
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.codegen.CodeStream int int int int
      StackMap stack:
        11: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            arraylength
      StackMap locals:
      StackMap stack: int
        12: istore 7 /* maxCatches */
        start local 7 // int maxCatches
        13: .line 517
            iload 7 /* maxCatches */
            ifle 30
        14: .line 518
            iload 7 /* maxCatches */
            anewarray org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            astore 8 /* exceptionLabels */
        start local 8 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] exceptionLabels
        15: .line 519
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        16: goto 28
        17: .line 520
      StackMap locals: int org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 9 /* i */
            aaload
            astore 10 /* argument */
        start local 10 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        18: .line 521
            aconst_null
            astore 11 /* exceptionLabel */
        start local 11 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel exceptionLabel
        19: .line 522
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.tagBits:J
            ldc 4096
            land
            lconst_0
            lcmp
            ifeq 24
        20: .line 523
            new org.eclipse.jdt.internal.compiler.codegen.MultiCatchExceptionLabel
            dup
            aload 2 /* codeStream */
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokespecial org.eclipse.jdt.internal.compiler.codegen.MultiCatchExceptionLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
            astore 12 /* multiCatchExceptionLabel */
        start local 12 // org.eclipse.jdt.internal.compiler.codegen.MultiCatchExceptionLabel multiCatchExceptionLabel
        21: .line 524
            aload 12 /* multiCatchExceptionLabel */
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            checkcast org.eclipse.jdt.internal.compiler.ast.UnionTypeReference
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.annotations:[Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.MultiCatchExceptionLabel.initialize:(Lorg/eclipse/jdt/internal/compiler/ast/UnionTypeReference;[Lorg/eclipse/jdt/internal/compiler/ast/Annotation;)V
        22: .line 525
            aload 12 /* multiCatchExceptionLabel */
            astore 11 /* exceptionLabel */
        end local 12 // org.eclipse.jdt.internal.compiler.codegen.MultiCatchExceptionLabel multiCatchExceptionLabel
        23: .line 526
            goto 25
        24: .line 527
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Argument org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            dup
            aload 2 /* codeStream */
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            aload 10 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.annotations:[Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            invokespecial org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;[Lorg/eclipse/jdt/internal/compiler/ast/Annotation;)V
            astore 11 /* exceptionLabel */
        25: .line 529
      StackMap locals:
      StackMap stack:
            aload 11 /* exceptionLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeStart:()V
        26: .line 530
            aload 8 /* exceptionLabels */
            iload 9 /* i */
            aload 11 /* exceptionLabel */
            aastore
        end local 11 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel exceptionLabel
        end local 10 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        27: .line 519
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 9 /* i */
            iload 7 /* maxCatches */
            if_icmplt 17
        end local 9 // int i
        29: .line 532
            goto 31
        end local 8 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] exceptionLabels
        30: .line 533
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* exceptionLabels */
        start local 8 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] exceptionLabels
        31: .line 535
      StackMap locals: org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnull 34
        32: .line 536
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.initialize:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        33: .line 537
            aload 0 /* this */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.enterAnyExceptionHandler:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            pop
        34: .line 541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* exceptionLabels */
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
        35: .line 542
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 9 /* resourceCount */
        start local 9 // int resourceCount
        36: .line 543
            iload 9 /* resourceCount */
            ifle 63
        37: .line 545
            aload 0 /* this */
            iload 9 /* resourceCount */
            iconst_1
            iadd
            anewarray org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
        38: .line 546
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.aconst_null:()V
        39: .line 547
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
        40: .line 548
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        41: .line 549
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.aconst_null:()V
        42: .line 550
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
        43: .line 551
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        44: .line 552
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        45: goto 62
        46: .line 554
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 10 /* i */
            new org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            dup
            aload 2 /* codeStream */
            aconst_null
            invokespecial org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
            aastore
        47: .line 555
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 10 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeStart:()V
        48: .line 556
            iload 10 /* i */
            iload 9 /* resourceCount */
            if_icmpge 61
        49: .line 557
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            aaload
            astore 11 /* stmt */
        start local 11 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        50: .line 558
            aload 11 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.NameReference
            ifeq 56
        51: .line 559
            aload 11 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            astore 12 /* ref */
        start local 12 // org.eclipse.jdt.internal.compiler.ast.NameReference ref
        52: .line 560
            aload 12 /* ref */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.bits:I
            ldc 524288
            ior
            putfield org.eclipse.jdt.internal.compiler.ast.NameReference.bits:I
        53: .line 561
            aload 12 /* ref */
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.VariableBinding
            astore 13 /* binding */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.VariableBinding binding
        54: .line 562
            aload 12 /* ref */
            aload 13 /* binding */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.NameReference.checkEffectiveFinality:(Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding;Lorg/eclipse/jdt/internal/compiler/lookup/Scope;)V
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.VariableBinding binding
        end local 12 // org.eclipse.jdt.internal.compiler.ast.NameReference ref
        55: .line 563
            goto 60
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement
      StackMap stack:
        56: aload 11 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.FieldReference
            ifeq 60
        57: .line 564
            aload 11 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.FieldReference
            astore 12 /* fieldReference */
        start local 12 // org.eclipse.jdt.internal.compiler.ast.FieldReference fieldReference
        58: .line 565
            aload 12 /* fieldReference */
            getfield org.eclipse.jdt.internal.compiler.ast.FieldReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isFinal:()Z
            ifne 60
        59: .line 566
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 12 /* fieldReference */
            getfield org.eclipse.jdt.internal.compiler.ast.FieldReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            aload 12 /* fieldReference */
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.cannotReferToNonFinalField:(Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        end local 12 // org.eclipse.jdt.internal.compiler.ast.FieldReference fieldReference
        60: .line 568
      StackMap locals:
      StackMap stack:
            aload 11 /* stmt */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        end local 11 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        61: .line 552
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        62: iload 10 /* i */
            iload 9 /* resourceCount */
            if_icmple 46
        end local 10 // int i
        63: .line 572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        64: .line 573
            iload 9 /* resourceCount */
            ifle 124
        65: .line 574
            iload 9 /* resourceCount */
            istore 10 /* i */
        start local 10 // int i
        66: goto 116
        67: .line 575
      StackMap locals: int
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 11 /* exitLabel */
        start local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel exitLabel
        68: .line 576
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 10 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
        69: .line 578
            iload 10 /* i */
            ifle 70
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 10 /* i */
            iconst_1
            isub
            aaload
            goto 71
      StackMap locals: org.eclipse.jdt.internal.compiler.codegen.BranchLabel
      StackMap stack:
        70: aconst_null
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.ast.Statement
        71: astore 12 /* stmt */
        start local 12 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        72: .line 579
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            ldc 536870912
            iand
            ifne 81
        73: .line 581
            iload 10 /* i */
            ifle 80
        74: .line 582
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 13 /* invokeCloseStartPc */
        start local 13 // int invokeCloseStartPc
        75: .line 583
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
            iconst_m1
            if_icmpeq 78
        76: .line 587
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        77: .line 588
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        78: .line 590
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement int
      StackMap stack:
            aload 0 /* this */
            aload 12 /* stmt */
            aload 2 /* codeStream */
            aload 11 /* exitLabel */
            iconst_0
            iconst_0
            newarray 10
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.generateCodeSnippet:(Lorg/eclipse/jdt/internal/compiler/ast/Statement;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;Z[I)V
        79: .line 591
            aload 2 /* codeStream */
            iload 13 /* invokeCloseStartPc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
        end local 13 // int invokeCloseStartPc
        80: .line 593
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 11 /* exitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        81: .line 596
      StackMap locals:
      StackMap stack:
            iload 10 /* i */
            ifle 85
        82: .line 598
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postResourcesInitStateIndexes:[I
            iload 10 /* i */
            iconst_1
            isub
            iaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        83: .line 599
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.postResourcesInitStateIndexes:[I
            iload 10 /* i */
            iconst_1
            isub
            iaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        84: .line 600
            goto 87
        85: .line 602
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        86: .line 603
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
        87: .line 606
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pushExceptionOnStack:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        88: .line 607
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 10 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.place:()V
        89: .line 608
            iload 10 /* i */
            iload 9 /* resourceCount */
            if_icmpne 92
        90: .line 610
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
        91: .line 612
            goto 108
        92: .line 613
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 13 /* elseLabel */
        start local 13 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel elseLabel
        93: new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 14 /* postElseLabel */
        start local 14 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postElseLabel
        94: .line 614
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
        95: .line 615
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        96: .line 616
            aload 2 /* codeStream */
            aload 13 /* elseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.ifnonnull:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        97: .line 617
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        98: .line 618
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
        99: .line 619
            aload 2 /* codeStream */
            aload 14 /* postElseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       100: .line 620
            aload 13 /* elseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       101: .line 621
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       102: .line 622
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       103: .line 623
            aload 2 /* codeStream */
            aload 14 /* postElseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.if_acmpeq:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       104: .line 624
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       105: .line 625
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       106: .line 626
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.invokeThrowableAddSuppressed:()V
       107: .line 627
            aload 14 /* postElseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        end local 14 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postElseLabel
        end local 13 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel elseLabel
       108: .line 629
      StackMap locals:
      StackMap stack:
            iload 10 /* i */
            ifle 112
       109: .line 631
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 13 /* postCloseLabel */
        start local 13 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
       110: .line 632
            aload 0 /* this */
            aload 12 /* stmt */
            aload 2 /* codeStream */
            aload 13 /* postCloseLabel */
            iconst_1
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 10 /* i */
            iastore
            dup
            iconst_1
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            iastore
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.generateCodeSnippet:(Lorg/eclipse/jdt/internal/compiler/ast/Statement;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;Z[I)V
       111: .line 633
            aload 13 /* postCloseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        end local 13 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
       112: .line 635
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       113: .line 636
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.athrow:()V
       114: .line 637
            aload 11 /* exitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        end local 12 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        end local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel exitLabel
       115: .line 574
            iinc 10 /* i */ -1
      StackMap locals:
      StackMap stack:
       116: iload 10 /* i */
            ifge 67
        end local 10 // int i
       117: .line 639
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       118: .line 640
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        end local 9 // int resourceCount
       119: .line 642
            goto 124
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.codegen.CodeStream int int int int int org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[]
      StackMap stack: java.lang.Throwable
       120: astore 15
       121: .line 643
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
       122: .line 644
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
       123: .line 645
            aload 15
            athrow
       124: .line 643
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.declaredExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
       125: .line 644
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
       126: .line 646
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            iload 4 /* pc */
            if_icmpeq 127
            iconst_1
            goto 128
      StackMap locals:
      StackMap stack:
       127: iconst_0
      StackMap locals:
      StackMap stack: int
       128: istore 9 /* tryBlockHasSomeCode */
        start local 9 // boolean tryBlockHasSomeCode
       129: .line 650
            iload 9 /* tryBlockHasSomeCode */
            ifeq 281
       130: .line 652
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 10 /* naturalExitLabel */
        start local 10 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel naturalExitLabel
       131: .line 653
            aconst_null
            astore 11 /* postCatchesFinallyLabel */
        start local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCatchesFinallyLabel
       132: .line 654
            iconst_0
            istore 12 /* i */
        start local 12 // int i
       133: goto 136
       134: .line 655
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.codegen.CodeStream int int int int int org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] int org.eclipse.jdt.internal.compiler.codegen.BranchLabel org.eclipse.jdt.internal.compiler.codegen.BranchLabel int
      StackMap stack:
            aload 8 /* exceptionLabels */
            iload 12 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
       135: .line 654
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
       136: iload 12 /* i */
            iload 7 /* maxCatches */
            if_icmplt 134
        end local 12 // int i
       137: .line 657
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            ldc 536870912
            iand
            ifne 153
       138: .line 658
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 12 /* position */
        start local 12 // int position
       139: .line 659
            iload 5 /* finallyMode */
            tableswitch { // 0 - 3
                    0: 146
                    1: 140
                    2: 151
                    3: 140
              default: 152
          }
       140: .line 662
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* requiresNaturalExit */
       141: .line 663
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            iconst_m1
            if_icmpeq 144
       142: .line 664
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       143: .line 665
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       144: .line 667
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       145: .line 668
            goto 152
       146: .line 670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            iconst_m1
            if_icmpeq 149
       147: .line 671
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       148: .line 672
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       149: .line 674
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       150: .line 675
            goto 152
       151: .line 677
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       152: .line 680
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            iload 12 /* position */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
        end local 12 // int position
       153: .line 687
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitAnyExceptionHandler:()V
       154: .line 688
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnull 197
       155: .line 689
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 11 /* postCatchesFinallyLabel */
       156: .line 691
            iconst_0
            istore 12 /* i */
        start local 12 // int i
       157: goto 196
       158: .line 697
      StackMap locals: int
      StackMap stack:
            aload 8 /* exceptionLabels */
            iload 12 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.getCount:()I
            ifne 159
            goto 195
       159: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.enterAnyExceptionHandler:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            pop
       160: .line 700
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            iconst_m1
            if_icmpeq 163
       161: .line 701
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       162: .line 702
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       163: .line 704
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 8 /* exceptionLabels */
            iload 12 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.exceptionType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pushExceptionOnStack:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
       164: .line 705
            aload 8 /* exceptionLabels */
            iload 12 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.place:()V
       165: .line 708
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* varPC */
        start local 14 // int varPC
       166: .line 709
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 12 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            dup
            astore 13 /* catchVar */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding catchVar
       167: getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.resolvedPosition:I
            iconst_m1
            if_icmpeq 172
       168: .line 710
            aload 2 /* codeStream */
            aload 13 /* catchVar */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
       169: .line 711
            aload 13 /* catchVar */
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.recordInitializationStartPC:(I)V
       170: .line 712
            aload 2 /* codeStream */
            aload 13 /* catchVar */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addVisibleLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       171: .line 713
            goto 173
       172: .line 714
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding int
      StackMap stack:
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pop:()V
       173: .line 716
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            iload 14 /* varPC */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 12 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       174: .line 719
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 12 /* i */
            aaload
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       175: .line 720
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitAnyExceptionHandler:()V
       176: .line 721
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExits:[Z
            iload 12 /* i */
            baload
            ifne 195
       177: .line 722
            iload 5 /* finallyMode */
            tableswitch { // 0 - 3
                    0: 189
                    1: 188
                    2: 194
                    3: 178
              default: 195
          }
       178: .line 725
      StackMap locals:
      StackMap stack:
            iload 3 /* isStackMapFrameCodeStream */
            ifeq 180
       179: .line 726
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.pushStateIndex:(I)V
       180: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
            iload 12 /* i */
            iaload
            iconst_m1
            if_icmpeq 183
       181: .line 729
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
            iload 12 /* i */
            iaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       182: .line 730
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchExitInitStateIndexes:[I
            iload 12 /* i */
            iaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       183: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       184: .line 734
            aload 2 /* codeStream */
            aload 11 /* postCatchesFinallyLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       185: .line 735
            iload 3 /* isStackMapFrameCodeStream */
            ifeq 195
       186: .line 736
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.popStateIndex:()V
       187: .line 738
            goto 195
       188: .line 740
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* requiresNaturalExit */
       189: .line 743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            iconst_m1
            if_icmpeq 192
       190: .line 744
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       191: .line 745
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       192: .line 747
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       193: .line 748
            goto 195
       194: .line 750
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        end local 14 // int varPC
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding catchVar
       195: .line 691
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
       196: iload 12 /* i */
            iload 7 /* maxCatches */
            if_icmplt 158
        end local 12 // int i
       197: .line 757
      StackMap locals:
      StackMap stack:
            iload 6 /* requiresNaturalExit */
            ifeq 199
            iload 5 /* finallyMode */
            iconst_1
            if_icmpne 199
       198: .line 758
            new org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            dup
            aload 2 /* codeStream */
            aconst_null
            invokespecial org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
            goto 200
       199: .line 759
      StackMap locals:
      StackMap stack:
            aconst_null
       200: .line 757
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel
            astore 12 /* naturalExitExceptionHandler */
        start local 12 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel naturalExitExceptionHandler
       201: .line 763
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 13 /* finallySequenceStartPC */
        start local 13 // int finallySequenceStartPC
       202: .line 764
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnull 279
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionLabel:Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.getCount:()I
            ifeq 279
       203: .line 765
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pushExceptionOnStack:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
       204: .line 766
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            iconst_m1
            if_icmpeq 207
       205: .line 768
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       206: .line 769
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       207: .line 771
      StackMap locals: org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.placeAllAnyExceptionHandler:()V
       208: .line 772
            aload 12 /* naturalExitExceptionHandler */
            ifnull 209
            aload 12 /* naturalExitExceptionHandler */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.place:()V
       209: .line 774
      StackMap locals:
      StackMap stack:
            iload 5 /* finallyMode */
            tableswitch { // 1 - 3
                    1: 210
                    2: 241
                    3: 229
              default: 245
          }
       210: .line 777
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
       211: .line 778
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.jsr:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       212: .line 779
            aload 2 /* codeStream */
            iload 13 /* finallySequenceStartPC */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       213: .line 780
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
        start local 14 // int position
       214: .line 781
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.throwAnyException:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       215: .line 782
            aload 2 /* codeStream */
            iload 14 /* position */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       216: .line 784
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       217: .line 785
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pushExceptionOnStack:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
       218: .line 786
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
       219: .line 787
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
       220: .line 788
            aload 2 /* codeStream */
            iload 14 /* position */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       221: .line 789
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       222: .line 790
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
       223: .line 791
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.resolvedPosition:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.ret:(I)V
       224: .line 792
            aload 2 /* codeStream */
       225: .line 793
            iload 14 /* position */
       226: .line 794
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
       227: .line 792
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       228: .line 796
            goto 245
        end local 14 // int position
       229: .line 799
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.store:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
       230: .line 800
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       231: .line 801
            aload 2 /* codeStream */
            iload 13 /* finallySequenceStartPC */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       232: .line 803
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* currentScope */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       233: .line 804
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
        start local 14 // int position
       234: .line 805
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.throwAnyException:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       235: .line 806
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
       236: .line 807
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            iconst_m1
            if_icmpeq 238
       237: .line 808
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.preTryInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       238: .line 810
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       239: .line 811
            aload 2 /* codeStream */
            iload 14 /* position */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       240: .line 812
            goto 245
        end local 14 // int position
       241: .line 815
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pop:()V
       242: .line 816
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       243: .line 817
            aload 2 /* codeStream */
            iload 13 /* finallySequenceStartPC */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       244: .line 819
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       245: .line 824
      StackMap locals:
      StackMap stack:
            iload 6 /* requiresNaturalExit */
            ifeq 276
       246: .line 825
            iload 5 /* finallyMode */
            tableswitch { // 1 - 3
                    1: 247
                    2: 274
                    3: 257
              default: 275
          }
       247: .line 827
      StackMap locals:
      StackMap stack:
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       248: .line 828
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
        start local 14 // int position
       249: .line 829
            aload 12 /* naturalExitExceptionHandler */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeStart:()V
       250: .line 830
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.jsr:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       251: .line 831
            aload 12 /* naturalExitExceptionHandler */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
       252: .line 832
            aload 2 /* codeStream */
       253: .line 833
            iload 14 /* position */
       254: .line 834
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
       255: .line 832
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       256: .line 835
            goto 276
        end local 14 // int position
       257: .line 838
      StackMap locals:
      StackMap stack:
            iload 3 /* isStackMapFrameCodeStream */
            ifeq 259
       258: .line 839
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.pushStateIndex:(I)V
       259: .line 841
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            iconst_m1
            if_icmpeq 262
       260: .line 842
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       261: .line 843
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.naturalExitMergeInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       262: .line 845
      StackMap locals:
      StackMap stack:
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       263: .line 847
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       264: .line 848
            aload 11 /* postCatchesFinallyLabel */
            ifnull 271
       265: .line 849
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 14 /* position */
        start local 14 // int position
       266: .line 851
            aload 2 /* codeStream */
            aload 11 /* postCatchesFinallyLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
       267: .line 852
            aload 2 /* codeStream */
       268: .line 853
            iload 14 /* position */
       269: .line 854
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
       270: .line 852
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
        end local 14 // int position
       271: .line 856
      StackMap locals:
      StackMap stack:
            iload 3 /* isStackMapFrameCodeStream */
            ifeq 276
       272: .line 857
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.popStateIndex:()V
       273: .line 859
            goto 276
       274: .line 861
      StackMap locals:
      StackMap stack:
            goto 276
       275: .line 863
      StackMap locals:
      StackMap stack:
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       276: .line 867
      StackMap locals:
      StackMap stack:
            aload 11 /* postCatchesFinallyLabel */
            ifnull 283
       277: .line 868
            aload 11 /* postCatchesFinallyLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
       278: .line 870
            goto 283
       279: .line 872
      StackMap locals:
      StackMap stack:
            aload 10 /* naturalExitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        end local 13 // int finallySequenceStartPC
        end local 12 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel naturalExitExceptionHandler
        end local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCatchesFinallyLabel
        end local 10 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel naturalExitLabel
       280: .line 874
            goto 283
       281: .line 876
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.codegen.CodeStream int int int int int org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            ifnull 283
       282: .line 877
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
       283: .line 881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
            iconst_m1
            if_icmpeq 286
       284: .line 882
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeNotDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       285: .line 883
            aload 2 /* codeStream */
            aload 1 /* currentScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.mergedInitStateIndex:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.addDefinitelyAssignedVariables:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;I)V
       286: .line 885
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            iload 4 /* pc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
       287: .line 886
            return
        end local 9 // boolean tryBlockHasSomeCode
        end local 8 // org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel[] exceptionLabels
        end local 7 // int maxCatches
        end local 6 // boolean requiresNaturalExit
        end local 5 // int finallyMode
        end local 4 // int pc
        end local 3 // boolean isStackMapFrameCodeStream
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0  288     0                         this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0  288     1                 currentScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0  288     2                   codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            3  288     3    isStackMapFrameCodeStream  Z
            8  288     4                           pc  I
            9  288     5                  finallyMode  I
           10  288     6          requiresNaturalExit  Z
           13  288     7                   maxCatches  I
           15   30     8              exceptionLabels  [Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
           31  288     8              exceptionLabels  [Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
           16   29     9                            i  I
           18   27    10                     argument  Lorg/eclipse/jdt/internal/compiler/ast/Argument;
           19   27    11               exceptionLabel  Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
           21   23    12     multiCatchExceptionLabel  Lorg/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel;
           36  119     9                resourceCount  I
           45   63    10                            i  I
           50   61    11                         stmt  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
           52   55    12                          ref  Lorg/eclipse/jdt/internal/compiler/ast/NameReference;
           54   55    13                      binding  Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding;
           58   60    12               fieldReference  Lorg/eclipse/jdt/internal/compiler/ast/FieldReference;
           66  117    10                            i  I
           68  115    11                    exitLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
           72  115    12                         stmt  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
           75   80    13           invokeCloseStartPc  I
           93  108    13                    elseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
           94  108    14                postElseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
          110  112    13               postCloseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
          129  288     9          tryBlockHasSomeCode  Z
          131  280    10             naturalExitLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
          132  280    11      postCatchesFinallyLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
          133  137    12                            i  I
          139  153    12                     position  I
          157  197    12                            i  I
          167  195    13                     catchVar  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
          166  195    14                        varPC  I
          201  280    12  naturalExitExceptionHandler  Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
          202  280    13       finallySequenceStartPC  I
          214  229    14                     position  I
          234  241    14                     position  I
          249  257    14                     position  I
          266  271    14                     position  I
      Exception table:
        from    to  target  type
          34   120     120  any
    MethodParameters:
              Name  Flags
      currentScope  
      codeStream    

  private void generateCodeSnippet(org.eclipse.jdt.internal.compiler.ast.Statement, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.codegen.BranchLabel, boolean, int[]);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Statement;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;Z[I)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=7, locals=8, args_size=6
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.Statement statement
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        start local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        start local 4 // boolean record
        start local 5 // int[] values
         0: .line 889
            iconst_m1
            istore 6 /* i */
        start local 6 // int i
         1: .line 890
            iconst_m1
            istore 7 /* invokeCloseStartPc */
        start local 7 // int invokeCloseStartPc
         2: .line 891
            iload 4 /* record */
            ifeq 5
         3: .line 892
            aload 5 /* values */
            iconst_0
            iaload
            istore 6 /* i */
         4: .line 893
            aload 5 /* values */
            iconst_1
            iaload
            istore 7 /* invokeCloseStartPc */
         5: .line 895
      StackMap locals: int int
      StackMap stack:
            aload 1 /* statement */
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 7
         6: .line 896
            aload 0 /* this */
            aload 1 /* statement */
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            aload 2 /* codeStream */
            aload 3 /* postCloseLabel */
            iload 4 /* record */
            iload 6 /* i */
            iload 7 /* invokeCloseStartPc */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.generateCodeSnippet:(Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;ZII)V
            goto 9
         7: .line 897
      StackMap locals:
      StackMap stack:
            aload 1 /* statement */
            instanceof org.eclipse.jdt.internal.compiler.ast.Reference
            ifeq 9
         8: .line 898
            aload 0 /* this */
            aload 1 /* statement */
            checkcast org.eclipse.jdt.internal.compiler.ast.Reference
            aload 2 /* codeStream */
            aload 3 /* postCloseLabel */
            iload 4 /* record */
            iload 6 /* i */
            iload 7 /* invokeCloseStartPc */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.generateCodeSnippet:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;ZII)V
         9: .line 900
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int invokeCloseStartPc
        end local 6 // int i
        end local 5 // int[] values
        end local 4 // boolean record
        end local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.ast.Statement statement
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   10     1           statement  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            0   10     2          codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            0   10     3      postCloseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            0   10     4              record  Z
            0   10     5              values  [I
            1   10     6                   i  I
            2   10     7  invokeCloseStartPc  I
    MethodParameters:
                Name  Flags
      statement       
      codeStream      
      postCloseLabel  
      record          
      values          

  private void generateCodeSnippet(org.eclipse.jdt.internal.compiler.ast.Reference, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.codegen.BranchLabel, boolean, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Reference;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;ZII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.Reference reference
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        start local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        start local 4 // boolean record
        start local 5 // int i
        start local 6 // int invokeCloseStartPc
         0: .line 903
            aload 1 /* reference */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Reference.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Z)V
         1: .line 904
            aload 2 /* codeStream */
            aload 3 /* postCloseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.ifnull:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
         2: .line 905
            aload 1 /* reference */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* codeStream */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Reference.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Z)V
         3: .line 906
            aload 2 /* codeStream */
            aload 1 /* reference */
            getfield org.eclipse.jdt.internal.compiler.ast.Reference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.invokeAutoCloseableClose:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
         4: .line 907
            iload 4 /* record */
            ifne 5
            return
         5: .line 908
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            iload 6 /* invokeCloseStartPc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
         6: .line 909
            aload 0 /* this */
            iload 5 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.isDuplicateResourceReference:(I)Z
            pop
         7: .line 910
            return
        end local 6 // int invokeCloseStartPc
        end local 5 // int i
        end local 4 // boolean record
        end local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.ast.Reference reference
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    8     0                this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0    8     1           reference  Lorg/eclipse/jdt/internal/compiler/ast/Reference;
            0    8     2          codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            0    8     3      postCloseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            0    8     4              record  Z
            0    8     5                   i  I
            0    8     6  invokeCloseStartPc  I
    MethodParameters:
                    Name  Flags
      reference           
      codeStream          
      postCloseLabel      
      record              
      i                   
      invokeCloseStartPc  

  private void generateCodeSnippet(org.eclipse.jdt.internal.compiler.ast.LocalDeclaration, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.codegen.BranchLabel, boolean, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;ZII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=7
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration localDeclaration
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        start local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        start local 4 // boolean record
        start local 5 // int i
        start local 6 // int invokeCloseStartPc
         0: .line 912
            aload 1 /* localDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            astore 7 /* variableBinding */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding variableBinding
         1: .line 913
            aload 2 /* codeStream */
            aload 7 /* variableBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
         2: .line 914
            aload 2 /* codeStream */
            aload 3 /* postCloseLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.ifnull:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
         3: .line 915
            aload 2 /* codeStream */
            aload 7 /* variableBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.load:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
         4: .line 916
            aload 2 /* codeStream */
            aload 7 /* variableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.invokeAutoCloseableClose:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
         5: .line 917
            iload 4 /* record */
            ifne 6
            return
         6: .line 918
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
      StackMap stack:
            aload 2 /* codeStream */
            iload 6 /* invokeCloseStartPc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
         7: .line 919
            aload 0 /* this */
            iload 5 /* i */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.isDuplicateResourceReference:(I)Z
            ifne 9
         8: .line 920
            aload 2 /* codeStream */
            aload 7 /* variableBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.removeVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
         9: .line 921
      StackMap locals:
      StackMap stack:
            return
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding variableBinding
        end local 6 // int invokeCloseStartPc
        end local 5 // int i
        end local 4 // boolean record
        end local 3 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel postCloseLabel
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration localDeclaration
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   10     1    localDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
            0   10     2          codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            0   10     3      postCloseLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            0   10     4              record  Z
            0   10     5                   i  I
            0   10     6  invokeCloseStartPc  I
            1   10     7     variableBinding  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
    MethodParameters:
                    Name  Flags
      localDeclaration    
      codeStream          
      postCloseLabel      
      record              
      i                   
      invokeCloseStartPc  

  private boolean isDuplicateResourceReference(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // int index
         0: .line 924
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 2 /* len */
        start local 2 // int len
         1: .line 925
            iload 1 /* index */
            iload 2 /* len */
            if_icmpge 21
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 1 /* index */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.ast.Reference
            ifeq 21
         2: .line 926
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 1 /* index */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.Reference
            astore 3 /* ref */
        start local 3 // org.eclipse.jdt.internal.compiler.ast.Reference ref
         3: .line 927
            aload 3 /* ref */
            instanceof org.eclipse.jdt.internal.compiler.ast.NameReference
            ifeq 4
            aload 3 /* ref */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            goto 6
         4: .line 928
      StackMap locals: int org.eclipse.jdt.internal.compiler.ast.Reference
      StackMap stack:
            aload 3 /* ref */
            instanceof org.eclipse.jdt.internal.compiler.ast.FieldReference
            ifeq 5
            aload 3 /* ref */
            checkcast org.eclipse.jdt.internal.compiler.ast.FieldReference
            getfield org.eclipse.jdt.internal.compiler.ast.FieldReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aconst_null
         6: .line 927
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.Binding
            astore 4 /* refBinding */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.Binding refBinding
         7: .line 929
            aload 4 /* refBinding */
            ifnonnull 8
            iconst_0
            ireturn
         8: .line 932
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.Binding
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 20
        10: .line 933
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            astore 6 /* stmt */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        11: .line 934
            aload 6 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 12
            aload 6 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            goto 15
        12: .line 935
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement
      StackMap stack:
            aload 6 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.NameReference
            ifeq 13
            aload 6 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.NameReference
            getfield org.eclipse.jdt.internal.compiler.ast.NameReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            goto 15
        13: .line 936
      StackMap locals:
      StackMap stack:
            aload 6 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.FieldReference
            ifeq 14
            aload 6 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.FieldReference
            getfield org.eclipse.jdt.internal.compiler.ast.FieldReference.binding:Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
            goto 15
      StackMap locals:
      StackMap stack:
        14: aconst_null
        15: .line 934
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.Binding
            astore 7 /* b */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.Binding b
        16: .line 937
            aload 7 /* b */
            aload 4 /* refBinding */
            if_acmpne 19
        17: .line 938
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 3 /* ref */
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.duplicateResourceReference:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;)V
        18: .line 939
            iconst_1
            ireturn
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.Binding b
        end local 6 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        19: .line 932
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 5 /* i */
            iload 1 /* index */
            if_icmplt 10
        end local 5 // int i
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.Binding refBinding
        end local 3 // org.eclipse.jdt.internal.compiler.ast.Reference ref
        21: .line 943
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int len
        end local 1 // int index
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   22     1       index  I
            1   22     2         len  I
            3   21     3         ref  Lorg/eclipse/jdt/internal/compiler/ast/Reference;
            7   21     4  refBinding  Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            9   21     5           i  I
           11   19     6        stmt  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
           16   19     7           b  Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
    MethodParameters:
       Name  Flags
      index  

  public boolean generateSubRoutineInvocation(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, java.lang.Object, int, org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Ljava/lang/Object;ILorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=14, args_size=6
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        start local 3 // java.lang.Object targetLocation
        start local 4 // int stateIndex
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding secretLocal
         0: .line 952
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 6 /* resourceCount */
        start local 6 // int resourceCount
         1: .line 953
            iload 6 /* resourceCount */
            ifle 13
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            ifnull 13
         2: .line 954
            iload 6 /* resourceCount */
            istore 7 /* i */
        start local 7 // int i
         3: goto 11
         4: .line 956
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iload 7 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
         5: .line 957
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 8 /* exitLabel */
        start local 8 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel exitLabel
         6: .line 958
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 9 /* invokeCloseStartPc */
        start local 9 // int invokeCloseStartPc
         7: .line 959
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 7 /* i */
            iconst_1
            isub
            aaload
            aload 2 /* codeStream */
            aload 8 /* exitLabel */
            iconst_0
            iconst_0
            newarray 10
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.generateCodeSnippet:(Lorg/eclipse/jdt/internal/compiler/ast/Statement;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;Z[I)V
         8: .line 960
            aload 2 /* codeStream */
            iload 9 /* invokeCloseStartPc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
         9: .line 961
            aload 8 /* exitLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        end local 9 // int invokeCloseStartPc
        end local 8 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel exitLabel
        10: .line 954
            iinc 7 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 7 /* i */
            ifgt 4
        end local 7 // int i
        12: .line 963
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resourceExceptionLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/ExceptionLabel;
            iconst_0
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.ExceptionLabel.placeEnd:()V
        13: .line 966
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            instanceof org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            istore 7 /* isStackMapFrameCodeStream */
        start local 7 // boolean isStackMapFrameCodeStream
        14: .line 967
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyMode:()I
            istore 8 /* finallyMode */
        start local 8 // int finallyMode
        15: .line 968
            iload 8 /* finallyMode */
            tableswitch { // 0 - 2
                    0: 18
                    1: 20
                    2: 16
              default: 20
          }
        16: .line 970
      StackMap locals: int int
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        17: .line 971
            iconst_1
            ireturn
        18: .line 974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitDeclaredExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        19: .line 975
            iconst_0
            ireturn
        20: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            astore 9 /* options */
        start local 9 // org.eclipse.jdt.internal.compiler.impl.CompilerOptions options
        21: .line 979
            aload 9 /* options */
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.shareCommonFinallyBlocks:Z
            ifeq 54
            aload 3 /* targetLocation */
            ifnull 54
        22: .line 980
            iconst_1
            istore 10 /* reuseTargetLocation */
        start local 10 // boolean reuseTargetLocation
        23: .line 981
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            ifle 41
        24: .line 982
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        25: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            istore 12 /* count */
        start local 12 // int count
        26: goto 39
        27: .line 983
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.codegen.CodeStream java.lang.Object int org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding int int int org.eclipse.jdt.internal.compiler.impl.CompilerOptions int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
            iload 11 /* i */
            aaload
            astore 13 /* reusableJSRTarget */
        start local 13 // java.lang.Object reusableJSRTarget
        28: .line 985
            aload 3 /* targetLocation */
            aload 13 /* reusableJSRTarget */
            if_acmpne 30
        29: .line 986
            goto 33
        30: .line 987
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* targetLocation */
            instanceof org.eclipse.jdt.internal.compiler.impl.Constant
            ifeq 38
        31: .line 988
            aload 13 /* reusableJSRTarget */
            instanceof org.eclipse.jdt.internal.compiler.impl.Constant
            ifeq 38
        32: .line 989
            aload 3 /* targetLocation */
            checkcast org.eclipse.jdt.internal.compiler.impl.Constant
            aload 13 /* reusableJSRTarget */
            checkcast org.eclipse.jdt.internal.compiler.impl.Constant
            invokevirtual org.eclipse.jdt.internal.compiler.impl.Constant.hasSameValue:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)Z
            ifeq 38
        33: .line 996
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRStateIndexes:[I
            iload 11 /* i */
            iaload
            iload 4 /* stateIndex */
            if_icmpeq 36
            iload 8 /* finallyMode */
            iconst_3
            if_icmpne 36
        34: .line 997
            iconst_0
            istore 10 /* reuseTargetLocation */
        35: .line 998
            goto 44
        36: .line 1000
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            iload 11 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.goto_:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        37: .line 1001
            iconst_1
            ireturn
        end local 13 // java.lang.Object reusableJSRTarget
        38: .line 982
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 11 /* i */
            iload 12 /* count */
            if_icmplt 27
        end local 12 // int count
        end local 11 // int i
        40: .line 1004
            goto 44
        41: .line 1005
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_3
            anewarray java.lang.Object
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
        42: .line 1006
            aload 0 /* this */
            iconst_3
            anewarray org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
        43: .line 1007
            aload 0 /* this */
            iconst_3
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRStateIndexes:[I
        44: .line 1009
      StackMap locals:
      StackMap stack:
            iload 10 /* reuseTargetLocation */
            ifeq 54
        45: .line 1010
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
            arraylength
            if_icmpne 49
        46: .line 1011
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
            iconst_0
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            imul
            anewarray java.lang.Object
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        47: .line 1012
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            iconst_0
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            imul
            anewarray org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        48: .line 1013
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRStateIndexes:[I
            iconst_0
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            imul
            newarray 10
            dup_x1
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRStateIndexes:[I
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        49: .line 1015
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargets:[Ljava/lang/Object;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            aload 3 /* targetLocation */
            aastore
        50: .line 1016
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            aload 2 /* codeStream */
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
            astore 11 /* reusableJSRSequenceStartLabel */
        start local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel reusableJSRSequenceStartLabel
        51: .line 1017
            aload 11 /* reusableJSRSequenceStartLabel */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.BranchLabel.place:()V
        52: .line 1018
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRStateIndexes:[I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            iload 4 /* stateIndex */
            iastore
        53: .line 1019
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRSequenceStartLabels:[Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            dup_x1
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.reusableJSRTargetsCount:I
            aload 11 /* reusableJSRSequenceStartLabel */
            aastore
        end local 11 // org.eclipse.jdt.internal.compiler.codegen.BranchLabel reusableJSRSequenceStartLabel
        end local 10 // boolean reuseTargetLocation
        54: .line 1022
      StackMap locals:
      StackMap stack:
            iload 8 /* finallyMode */
            iconst_3
            if_icmpne 63
        55: .line 1023
            iload 7 /* isStackMapFrameCodeStream */
            ifeq 57
        56: .line 1024
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            iload 4 /* stateIndex */
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.pushStateIndex:(I)V
        57: .line 1028
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitAnyExceptionHandler:()V
        58: .line 1029
            aload 0 /* this */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitDeclaredExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        59: .line 1030
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* currentScope */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        60: .line 1031
            iload 7 /* isStackMapFrameCodeStream */
            ifeq 66
        61: .line 1032
            aload 2 /* codeStream */
            checkcast org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream.popStateIndex:()V
        62: .line 1034
            goto 66
        63: .line 1036
      StackMap locals:
      StackMap stack:
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.jsr:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
        64: .line 1037
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitAnyExceptionHandler:()V
        65: .line 1038
            aload 0 /* this */
            aload 2 /* codeStream */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.exitDeclaredExceptionHandlers:(Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
        66: .line 1040
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 9 // org.eclipse.jdt.internal.compiler.impl.CompilerOptions options
        end local 8 // int finallyMode
        end local 7 // boolean isStackMapFrameCodeStream
        end local 6 // int resourceCount
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding secretLocal
        end local 4 // int stateIndex
        end local 3 // java.lang.Object targetLocation
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0   67     0                           this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   67     1                   currentScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0   67     2                     codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            0   67     3                 targetLocation  Ljava/lang/Object;
            0   67     4                     stateIndex  I
            0   67     5                    secretLocal  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            1   67     6                  resourceCount  I
            3   12     7                              i  I
            6   10     8                      exitLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
            7   10     9             invokeCloseStartPc  I
           14   67     7      isStackMapFrameCodeStream  Z
           15   67     8                    finallyMode  I
           21   67     9                        options  Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
           23   54    10            reuseTargetLocation  Z
           25   40    11                              i  I
           26   40    12                          count  I
           28   38    13              reusableJSRTarget  Ljava/lang/Object;
           51   54    11  reusableJSRSequenceStartLabel  Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
    MethodParameters:
                Name  Flags
      currentScope    
      codeStream      
      targetLocation  
      stateIndex      
      secretLocal     

  public boolean isSubRoutineEscaping();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 1044
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.bits:I
            sipush 16384
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;

  public java.lang.StringBuffer printStatement(int, java.lang.StringBuffer);
    descriptor: (ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // int indent
        start local 2 // java.lang.StringBuffer output
         0: .line 1049
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 3 /* length */
        start local 3 // int length
         1: .line 1050
            iload 1 /* indent */
            aload 2 /* output */
            invokestatic org.eclipse.jdt.internal.compiler.ast.TryStatement.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            new java.lang.StringBuilder
            dup
            ldc "try"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* length */
            ifne 2
            ldc "\n"
            goto 3
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement int java.lang.StringBuffer int
      StackMap stack: java.lang.StringBuffer java.lang.StringBuilder
         2: ldc " ("
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement int java.lang.StringBuffer int
      StackMap stack: java.lang.StringBuffer java.lang.StringBuilder java.lang.String
         3: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 1051
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 16
         6: .line 1052
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 4 /* i */
            aaload
            astore 5 /* stmt */
        start local 5 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
         7: .line 1053
            aload 5 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 10
         8: .line 1054
            aload 5 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            iconst_0
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.printAsExpression:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
         9: .line 1055
            goto 12
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement
      StackMap stack:
        10: aload 5 /* stmt */
            instanceof org.eclipse.jdt.internal.compiler.ast.Reference
            ifeq 15
        11: .line 1056
            aload 5 /* stmt */
            checkcast org.eclipse.jdt.internal.compiler.ast.Reference
            iconst_0
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Reference.printExpression:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        12: .line 1058
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iload 3 /* length */
            iconst_1
            isub
            if_icmpeq 15
        13: .line 1059
            aload 2 /* output */
            ldc ";\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 1060
            iload 1 /* indent */
            iconst_2
            iadd
            aload 2 /* output */
            invokestatic org.eclipse.jdt.internal.compiler.ast.TryStatement.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        end local 5 // org.eclipse.jdt.internal.compiler.ast.Statement stmt
        15: .line 1051
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            iload 3 /* length */
            if_icmplt 6
        end local 4 // int i
        17: .line 1063
            iload 3 /* length */
            ifle 19
        18: .line 1064
            aload 2 /* output */
            ldc ")\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        19: .line 1066
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 1 /* indent */
            iconst_1
            iadd
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.printStatement:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        20: .line 1069
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 29
        21: .line 1070
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        22: goto 28
        23: .line 1071
      StackMap locals: int
      StackMap stack:
            aload 2 /* output */
            bipush 10
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        24: .line 1072
            iload 1 /* indent */
            aload 2 /* output */
            invokestatic org.eclipse.jdt.internal.compiler.ast.TryStatement.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            ldc "catch ("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        25: .line 1073
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 4 /* i */
            aaload
            iconst_0
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Argument.print:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            ldc ")\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        26: .line 1074
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 4 /* i */
            aaload
            iload 1 /* indent */
            iconst_1
            iadd
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.printStatement:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        27: .line 1070
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 4 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            if_icmplt 23
        end local 4 // int i
        29: .line 1077
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 33
        30: .line 1078
            aload 2 /* output */
            bipush 10
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        31: .line 1079
            iload 1 /* indent */
            aload 2 /* output */
            invokestatic org.eclipse.jdt.internal.compiler.ast.TryStatement.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            ldc "finally\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        32: .line 1080
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 1 /* indent */
            iconst_1
            iadd
            aload 2 /* output */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.printStatement:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
        33: .line 1082
      StackMap locals:
      StackMap stack:
            aload 2 /* output */
            areturn
        end local 3 // int length
        end local 2 // java.lang.StringBuffer output
        end local 1 // int indent
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   34     0    this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   34     1  indent  I
            0   34     2  output  Ljava/lang/StringBuffer;
            1   34     3  length  I
            5   17     4       i  I
            7   15     5    stmt  Lorg/eclipse/jdt/internal/compiler/ast/Statement;
           22   29     4       i  I
    MethodParameters:
        Name  Flags
      indent  
      output  

  public void resolve(org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=13, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope upperScope
         0: .line 1088
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.lookup.BlockScope
            dup
            aload 1 /* upperScope */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
         1: .line 1090
            aconst_null
            astore 2 /* finallyScope */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope finallyScope
         2: .line 1091
            aconst_null
            astore 3 /* resourceManagementScope */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.BlockScope resourceManagementScope
         3: .line 1092
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            arraylength
            istore 4 /* resourceCount */
        start local 4 // int resourceCount
         4: .line 1093
            iload 4 /* resourceCount */
            ifle 16
         5: .line 1094
            new org.eclipse.jdt.internal.compiler.lookup.BlockScope
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
            astore 3 /* resourceManagementScope */
         6: .line 1095
            aload 0 /* this */
         7: .line 1096
            new org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            dup
            getstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_PRIMARY_EXCEPTION_VARIABLE_NAME:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;IZ)V
         8: .line 1095
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
         9: .line 1097
            aload 3 /* resourceManagementScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        10: .line 1098
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.primaryExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.setConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        11: .line 1099
            aload 0 /* this */
        12: .line 1100
            new org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            dup
            getstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_CAUGHT_THROWABLE_VARIABLE_NAME:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;IZ)V
        13: .line 1099
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
        14: .line 1101
            aload 3 /* resourceManagementScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        15: .line 1102
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtThrowableVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.setConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        16: .line 1104
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        17: goto 46
        18: .line 1105
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            aload 3 /* resourceManagementScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.resolve:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        19: .line 1106
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            ifeq 35
        20: .line 1107
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.LocalDeclaration
            astore 6 /* node */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration node
        21: .line 1108
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            astore 7 /* localVariableBinding */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
        22: .line 1109
            aload 7 /* localVariableBinding */
            ifnull 45
            aload 7 /* localVariableBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.isValidBinding:()Z
            ifeq 45
        23: .line 1110
            aload 7 /* localVariableBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.modifiers:I
            bipush 16
            ior
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.modifiers:I
        24: .line 1111
            aload 7 /* localVariableBinding */
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.tagBits:J
            ldc 8192
            lor
            putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.tagBits:J
        25: .line 1112
            aload 7 /* localVariableBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 8 /* resourceType */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resourceType
        26: .line 1113
            aload 8 /* resourceType */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 31
        27: .line 1114
            aload 8 /* resourceType */
            bipush 62
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.findSuperTypeOriginatingFrom:(IZ)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 45
            aload 8 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
            ifeq 45
        28: .line 1115
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 8 /* resourceType */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.resourceHasToImplementAutoCloseable:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        29: .line 1116
            aload 7 /* localVariableBinding */
            new org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding
            dup
            bipush 46
            aload 8 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.shortReadableName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            aconst_null
            bipush 15
            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.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        30: .line 1118
            goto 45
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.LocalDeclaration org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
        31: aload 8 /* resourceType */
            ifnull 45
        32: .line 1119
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 8 /* resourceType */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.resourceHasToImplementAutoCloseable:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        33: .line 1120
            aload 7 /* localVariableBinding */
            new org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding
            dup
            bipush 46
            aload 8 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.shortReadableName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            aconst_null
            bipush 15
            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.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resourceType
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding localVariableBinding
        end local 6 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration node
        34: .line 1123
            goto 45
        35: .line 1124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.Expression
            astore 6 /* node */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.Expression node
        36: .line 1125
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 7 /* resourceType */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resourceType
        37: .line 1126
            aload 7 /* resourceType */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 42
        38: .line 1127
            aload 7 /* resourceType */
            bipush 62
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.findSuperTypeOriginatingFrom:(IZ)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 45
            aload 7 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
            ifeq 45
        39: .line 1128
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 7 /* resourceType */
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.resourceHasToImplementAutoCloseable:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        40: .line 1129
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.Expression
            new org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding
            dup
            bipush 46
            aload 7 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.shortReadableName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            aconst_null
            bipush 15
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding.<init>:([[CLorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;I)V
            putfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        41: .line 1131
            goto 45
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Expression org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
        42: aload 7 /* resourceType */
            ifnull 45
        43: .line 1132
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 7 /* resourceType */
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.resourceHasToImplementAutoCloseable:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
        44: .line 1133
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            iload 5 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.Expression
            new org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding
            dup
            bipush 46
            aload 7 /* resourceType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.shortReadableName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            aconst_null
            bipush 15
            invokespecial org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding.<init>:([[CLorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;I)V
            putfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding resourceType
        end local 6 // org.eclipse.jdt.internal.compiler.ast.Expression node
        45: .line 1104
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 5 /* i */
            iload 4 /* resourceCount */
            if_icmplt 18
        end local 5 // int i
        47: .line 1137
            new org.eclipse.jdt.internal.compiler.lookup.BlockScope
            dup
            aload 3 /* resourceManagementScope */
            ifnull 48
            aload 3 /* resourceManagementScope */
            goto 49
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int
      StackMap stack: new 47 new 47
        48: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int
      StackMap stack: new 47 new 47 org.eclipse.jdt.internal.compiler.lookup.BlockScope
        49: invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
            astore 5 /* tryScope */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.BlockScope tryScope
        50: .line 1139
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 95
        51: .line 1140
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.isEmptyBlock:()Z
            ifeq 55
        52: .line 1141
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.bits:I
            bipush 8
            iand
            ifeq 95
        53: .line 1142
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.undocumentedEmptyBlock:(II)V
        54: .line 1144
            goto 95
        55: .line 1145
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BlockScope
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.lookup.BlockScope
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Z)V
            astore 2 /* finallyScope */
        56: .line 1148
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
            astore 6 /* methodScope */
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.MethodScope methodScope
        57: .line 1151
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.inlineJsrBytecode:Z
            ifne 63
        58: .line 1152
            aload 0 /* this */
        59: .line 1153
            new org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            dup
            getstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_RETURN_ADDRESS_NAME:[C
            aload 1 /* upperScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangObject:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;IZ)V
        60: .line 1152
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
        61: .line 1154
            aload 2 /* finallyScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        62: .line 1155
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.returnAddressVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.setConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        63: .line 1157
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodScope
      StackMap stack:
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.codegen.BranchLabel
            dup
            invokespecial org.eclipse.jdt.internal.compiler.codegen.BranchLabel.<init>:()V
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.subRoutineStartLabel:Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
        64: .line 1159
            aload 0 /* this */
        65: .line 1160
            new org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            dup
            getstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_ANY_HANDLER_NAME:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.getJavaLangThrowable:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;IZ)V
        66: .line 1159
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
        67: .line 1161
            aload 2 /* finallyScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        68: .line 1162
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.anyExceptionVariable:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.setConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        69: .line 1164
            aload 6 /* methodScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.isInsideInitializer:()Z
            ifne 89
        70: .line 1165
            aload 6 /* methodScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/impl/ReferenceContext;
            instanceof org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
            ifeq 72
        71: .line 1166
            aload 6 /* methodScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/impl/ReferenceContext;
            checkcast org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
            getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            goto 75
      StackMap locals:
      StackMap stack:
        72: aload 6 /* methodScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/impl/ReferenceContext;
            instanceof org.eclipse.jdt.internal.compiler.ast.LambdaExpression
            ifeq 74
        73: .line 1167
            aload 6 /* methodScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/impl/ReferenceContext;
            checkcast org.eclipse.jdt.internal.compiler.ast.LambdaExpression
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.binding:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            goto 75
      StackMap locals:
      StackMap stack:
        74: aconst_null
        75: .line 1165
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.MethodBinding
            astore 7 /* methodBinding */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        76: .line 1168
            aload 7 /* methodBinding */
            ifnull 89
        77: .line 1169
            aload 7 /* methodBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.returnType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 8 /* methodReturnType */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding methodReturnType
        78: .line 1170
            aload 8 /* methodReturnType */
            getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
            bipush 6
            if_icmpeq 89
        79: .line 1171
            aload 0 /* this */
        80: .line 1172
            new org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
            dup
        81: .line 1173
            getstatic org.eclipse.jdt.internal.compiler.ast.TryStatement.SECRET_RETURN_VALUE_NAME:[C
        82: .line 1174
            aload 8 /* methodReturnType */
        83: .line 1175
            iconst_0
        84: .line 1176
            iconst_0
        85: .line 1172
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.<init>:([CLorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;IZ)V
        86: .line 1171
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.secretReturnValue:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
        87: .line 1177
            aload 2 /* finallyScope */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.secretReturnValue:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addLocalVariable:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
        88: .line 1178
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.secretReturnValue:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.setConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;)V
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding methodReturnType
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.MethodBinding methodBinding
        89: .line 1182
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 2 /* finallyScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        90: .line 1184
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnonnull 91
            iconst_1
            goto 92
      StackMap locals:
      StackMap stack:
        91: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            arraylength
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
        92: istore 7 /* shiftScopesLength */
        start local 7 // int shiftScopesLength
        93: .line 1185
            aload 2 /* finallyScope */
            iload 7 /* shiftScopesLength */
            anewarray org.eclipse.jdt.internal.compiler.lookup.BlockScope
            putfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.shiftScopes:[Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
        94: .line 1186
            aload 2 /* finallyScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.shiftScopes:[Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            iconst_0
            aload 5 /* tryScope */
            aastore
        end local 7 // int shiftScopesLength
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.MethodScope methodScope
        95: .line 1189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 5 /* tryScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        96: .line 1192
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 119
        97: .line 1193
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            arraylength
            istore 6 /* length */
        start local 6 // int length
        98: .line 1194
            iload 6 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.TypeBinding
            astore 7 /* argumentTypes */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        99: .line 1195
            iconst_0
            istore 8 /* containsUnionTypes */
        start local 8 // boolean containsUnionTypes
       100: .line 1196
            iconst_0
            istore 9 /* catchHasError */
        start local 9 // boolean catchHasError
       101: .line 1197
            iconst_0
            istore 10 /* i */
        start local 10 // int i
       102: goto 114
       103: .line 1198
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.lookup.BlockScope
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
            astore 11 /* catchScope */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.BlockScope catchScope
       104: .line 1199
            aload 2 /* finallyScope */
            ifnull 106
       105: .line 1200
            aload 2 /* finallyScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.shiftScopes:[Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            iload 10 /* i */
            iconst_1
            iadd
            aload 11 /* catchScope */
            aastore
       106: .line 1203
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BlockScope
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 10 /* i */
            aaload
            astore 12 /* catchArgument */
        start local 12 // org.eclipse.jdt.internal.compiler.ast.Argument catchArgument
       107: .line 1204
            iload 8 /* containsUnionTypes */
            aload 12 /* catchArgument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.bits:I
            ldc 536870912
            iand
            ifeq 108
            iconst_1
            goto 109
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.ast.Argument
      StackMap stack: int
       108: iconst_0
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int int org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.ast.Argument
      StackMap stack: int int
       109: ior
            istore 8 /* containsUnionTypes */
       110: .line 1205
            aload 7 /* argumentTypes */
            iload 10 /* i */
            aload 12 /* catchArgument */
            aload 11 /* catchScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Argument.resolveForCatch:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            dup_x2
            aastore
            ifnonnull 112
       111: .line 1206
            iconst_1
            istore 9 /* catchHasError */
       112: .line 1208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 10 /* i */
            aaload
            aload 11 /* catchScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        end local 12 // org.eclipse.jdt.internal.compiler.ast.Argument catchArgument
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.BlockScope catchScope
       113: .line 1197
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
       114: iload 10 /* i */
            iload 6 /* length */
            if_icmplt 103
        end local 10 // int i
       115: .line 1210
            iload 9 /* catchHasError */
            ifeq 117
       116: .line 1211
            return
       117: .line 1215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 6 /* length */
            aload 7 /* argumentTypes */
            iload 8 /* containsUnionTypes */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TryStatement.verifyDuplicationAndOrder:(I[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Z)V
        end local 9 // boolean catchHasError
        end local 8 // boolean containsUnionTypes
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        end local 6 // int length
       118: .line 1216
            goto 120
       119: .line 1217
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.lookup.BlockScope int org.eclipse.jdt.internal.compiler.lookup.BlockScope
      StackMap stack:
            aload 0 /* this */
            iconst_0
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
       120: .line 1220
      StackMap locals:
      StackMap stack:
            aload 2 /* finallyScope */
            ifnull 122
       121: .line 1224
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 2 /* finallyScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.addSubscope:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;)V
       122: .line 1226
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.BlockScope tryScope
        end local 4 // int resourceCount
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.BlockScope resourceManagementScope
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope finallyScope
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope upperScope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0  123     0                     this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0  123     1               upperScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2  123     2             finallyScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            3  123     3  resourceManagementScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            4  123     4            resourceCount  I
           17   47     5                        i  I
           21   34     6                     node  Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
           22   34     7     localVariableBinding  Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
           26   34     8             resourceType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           36   45     6                     node  Lorg/eclipse/jdt/internal/compiler/ast/Expression;
           37   45     7             resourceType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           50  123     5                 tryScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
           57   95     6              methodScope  Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
           76   89     7            methodBinding  Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
           78   89     8         methodReturnType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           93   95     7        shiftScopesLength  I
           98  118     6                   length  I
           99  118     7            argumentTypes  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
          100  118     8       containsUnionTypes  Z
          101  118     9            catchHasError  Z
          102  115    10                        i  I
          104  113    11               catchScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
          107  113    12            catchArgument  Lorg/eclipse/jdt/internal/compiler/ast/Argument;
    MethodParameters:
            Name  Flags
      upperScope  

  public void traverse(org.eclipse.jdt.internal.compiler.ASTVisitor, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // org.eclipse.jdt.internal.compiler.ASTVisitor visitor
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope blockScope
         0: .line 1229
            aload 1 /* visitor */
            aload 0 /* this */
            aload 2 /* blockScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.visit:(Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
            ifeq 19
         1: .line 1230
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.resources:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            astore 3 /* statements */
        start local 3 // org.eclipse.jdt.internal.compiler.ast.Statement[] statements
         2: .line 1231
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: aload 3 /* statements */
            arraylength
            istore 5 /* max */
        start local 5 // int max
         4: goto 7
         5: .line 1232
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement[] int int
      StackMap stack:
            aload 3 /* statements */
            iload 4 /* i */
            aaload
            aload 1 /* visitor */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
         6: .line 1231
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 5 /* max */
            if_icmplt 5
        end local 5 // int max
        end local 4 // int i
         8: .line 1234
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* visitor */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
         9: .line 1235
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            ifnull 17
        10: .line 1236
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        11: aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            istore 5 /* max */
        start local 5 // int max
        12: goto 16
        13: .line 1237
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 4 /* i */
            aaload
            aload 1 /* visitor */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Argument.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        14: .line 1238
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 4 /* i */
            aaload
            aload 1 /* visitor */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        15: .line 1236
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            iload 5 /* max */
            if_icmplt 13
        end local 5 // int max
        end local 4 // int i
        17: .line 1241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 19
        18: .line 1242
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            aload 1 /* visitor */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        end local 3 // org.eclipse.jdt.internal.compiler.ast.Statement[] statements
        19: .line 1244
      StackMap locals:
      StackMap stack:
            aload 1 /* visitor */
            aload 0 /* this */
            aload 2 /* blockScope */
            invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.endVisit:(Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
        20: .line 1245
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope blockScope
        end local 1 // org.eclipse.jdt.internal.compiler.ASTVisitor visitor
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   21     1     visitor  Lorg/eclipse/jdt/internal/compiler/ASTVisitor;
            0   21     2  blockScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2   19     3  statements  [Lorg/eclipse/jdt/internal/compiler/ast/Statement;
            3    8     4           i  I
            4    8     5         max  I
           11   17     4           i  I
           12   17     5         max  I
    MethodParameters:
            Name  Flags
      visitor     
      blockScope  

  protected void verifyDuplicationAndOrder(int, org.eclipse.jdt.internal.compiler.lookup.TypeBinding[], boolean);
    descriptor: (I[Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=18, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
        start local 1 // int length
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        start local 3 // boolean containsUnionTypes
         0: .line 1249
            iload 3 /* containsUnionTypes */
            ifeq 65
         1: .line 1250
            iconst_0
            istore 4 /* totalCount */
        start local 4 // int totalCount
         2: .line 1251
            iload 1 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
            astore 5 /* allExceptionTypes */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[][] allExceptionTypes
         3: .line 1252
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 24
         5: .line 1253
      StackMap locals: int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[][] int
      StackMap stack:
            aload 2 /* argumentTypes */
            iload 6 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.lookup.ArrayBinding
            ifeq 7
         6: .line 1254
            goto 23
         7: .line 1255
      StackMap locals:
      StackMap stack:
            aload 2 /* argumentTypes */
            iload 6 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* currentExceptionType */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentExceptionType
         8: .line 1256
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 6 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 8 /* catchArgumentType */
        start local 8 // org.eclipse.jdt.internal.compiler.ast.TypeReference catchArgumentType
         9: .line 1257
            aload 8 /* catchArgumentType */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.bits:I
            ldc 536870912
            iand
            ifeq 21
        10: .line 1258
            aload 8 /* catchArgumentType */
            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 9 /* typeReferences */
        start local 9 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] typeReferences
        11: .line 1259
            aload 9 /* typeReferences */
            arraylength
            istore 10 /* typeReferencesLength */
        start local 10 // int typeReferencesLength
        12: .line 1260
            iload 10 /* typeReferencesLength */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 11 /* unionExceptionTypes */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] unionExceptionTypes
        13: .line 1261
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        14: goto 17
        15: .line 1262
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.ast.TypeReference org.eclipse.jdt.internal.compiler.ast.TypeReference[] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int
      StackMap stack:
            aload 11 /* unionExceptionTypes */
            iload 12 /* j */
            aload 9 /* typeReferences */
            iload 12 /* j */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aastore
        16: .line 1261
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        17: iload 12 /* j */
            iload 10 /* typeReferencesLength */
            if_icmplt 15
        end local 12 // int j
        18: .line 1264
            iload 4 /* totalCount */
            iload 10 /* typeReferencesLength */
            iadd
            istore 4 /* totalCount */
        19: .line 1265
            aload 5 /* allExceptionTypes */
            iload 6 /* i */
            aload 11 /* unionExceptionTypes */
            aastore
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] unionExceptionTypes
        end local 10 // int typeReferencesLength
        end local 9 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] typeReferences
        20: .line 1266
            goto 23
        21: .line 1267
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.ast.TypeReference
      StackMap stack:
            aload 5 /* allExceptionTypes */
            iload 6 /* i */
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            dup
            iconst_0
            aload 7 /* currentExceptionType */
            aastore
            aastore
        22: .line 1268
            iinc 4 /* totalCount */ 1
        end local 8 // org.eclipse.jdt.internal.compiler.ast.TypeReference catchArgumentType
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentExceptionType
        23: .line 1252
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            iload 1 /* length */
            if_icmplt 5
        end local 6 // int i
        25: .line 1271
            aload 0 /* this */
            iload 4 /* totalCount */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        26: .line 1272
            aload 0 /* this */
            iload 4 /* totalCount */
            newarray 10
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
        27: .line 1273
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        28: iconst_0
            istore 7 /* l */
        start local 7 // int l
        29: goto 63
        30: .line 1274
      StackMap locals: int
      StackMap stack:
            aload 5 /* allExceptionTypes */
            iload 6 /* i */
            aaload
            astore 8 /* currentExceptions */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] currentExceptions
        31: .line 1275
            aload 8 /* currentExceptions */
            ifnonnull 32
            goto 62
        32: .line 1276
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack:
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        33: aload 8 /* currentExceptions */
            arraylength
            istore 10 /* max */
        start local 10 // int max
        34: goto 61
        35: .line 1277
      StackMap locals: int int
      StackMap stack:
            aload 8 /* currentExceptions */
            iload 9 /* j */
            aaload
            astore 11 /* exception */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding exception
        36: .line 1278
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 7 /* l */
            aload 11 /* exception */
            aastore
        37: .line 1279
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionsCatchBlocks:[I
            iload 7 /* l */
            iinc 7 /* l */ 1
            iload 6 /* i */
            iastore
        38: .line 1281
            iconst_0
            istore 12 /* k */
        start local 12 // int k
        39: goto 59
        40: .line 1282
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int
      StackMap stack:
            aload 5 /* allExceptionTypes */
            iload 12 /* k */
            aaload
            astore 13 /* exceptions */
        start local 13 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] exceptions
        41: .line 1283
            aload 13 /* exceptions */
            ifnonnull 42
            goto 58
        42: .line 1284
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack:
            iconst_0
            istore 14 /* n */
        start local 14 // int n
        43: aload 13 /* exceptions */
            arraylength
            istore 15 /* max2 */
        start local 15 // int max2
        44: goto 57
        45: .line 1285
      StackMap locals: int int
      StackMap stack:
            aload 13 /* exceptions */
            iload 14 /* n */
            aaload
            astore 16 /* currentException */
        start local 16 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentException
        46: .line 1286
            aload 11 /* exception */
            aload 16 /* currentException */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isCompatibleWith:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 56
        47: .line 1287
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 6 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 17 /* catchArgumentType */
        start local 17 // org.eclipse.jdt.internal.compiler.ast.TypeReference catchArgumentType
        48: .line 1288
            aload 17 /* catchArgumentType */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.bits:I
            ldc 536870912
            iand
            ifeq 50
        49: .line 1289
            aload 17 /* catchArgumentType */
            checkcast org.eclipse.jdt.internal.compiler.ast.UnionTypeReference
            getfield org.eclipse.jdt.internal.compiler.ast.UnionTypeReference.typeReferences:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            iload 9 /* j */
            aaload
            astore 17 /* catchArgumentType */
        50: .line 1291
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.ast.TypeReference
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        51: .line 1292
            aload 17 /* catchArgumentType */
        52: .line 1293
            aload 11 /* exception */
        53: .line 1294
            aload 16 /* currentException */
        54: .line 1291
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.wrongSequenceOfExceptionTypesError:(Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        55: .line 1295
            goto 62
        end local 17 // org.eclipse.jdt.internal.compiler.ast.TypeReference catchArgumentType
        end local 16 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding currentException
        56: .line 1284
      StackMap locals:
      StackMap stack:
            iinc 14 /* n */ 1
      StackMap locals:
      StackMap stack:
        57: iload 14 /* n */
            iload 15 /* max2 */
            if_icmplt 45
        end local 15 // int max2
        end local 14 // int n
        end local 13 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] exceptions
        58: .line 1281
      StackMap locals:
      StackMap stack:
            iinc 12 /* k */ 1
      StackMap locals:
      StackMap stack:
        59: iload 12 /* k */
            iload 6 /* i */
            if_icmplt 40
        end local 12 // int k
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding exception
        60: .line 1276
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        61: iload 9 /* j */
            iload 10 /* max */
            if_icmplt 35
        end local 10 // int max
        end local 9 // int j
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] currentExceptions
        62: .line 1273
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 6 /* i */
            iload 1 /* length */
            if_icmplt 30
        end local 7 // int l
        end local 6 // int i
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[][] allExceptionTypes
        end local 4 // int totalCount
        64: .line 1301
            goto 83
        65: .line 1302
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TryStatement int org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        66: .line 1303
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        67: goto 82
        68: .line 1304
      StackMap locals: int
      StackMap stack:
            aload 2 /* argumentTypes */
            iload 4 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.lookup.ArrayBinding
            ifeq 70
        69: .line 1305
            goto 81
        70: .line 1306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 4 /* i */
            aload 2 /* argumentTypes */
            iload 4 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aastore
        71: .line 1307
            iconst_0
            istore 5 /* j */
        start local 5 // int j
        72: goto 80
        73: .line 1308
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 4 /* i */
            aaload
            aload 2 /* argumentTypes */
            iload 5 /* j */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isCompatibleWith:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 79
        74: .line 1309
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        75: .line 1310
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchArguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            iload 4 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
        76: .line 1311
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.caughtExceptionTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 4 /* i */
            aaload
        77: .line 1312
            aload 2 /* argumentTypes */
            iload 5 /* j */
            aaload
        78: .line 1309
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.wrongSequenceOfExceptionTypesError:(Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
        79: .line 1307
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        80: iload 5 /* j */
            iload 4 /* i */
            if_icmplt 73
        end local 5 // int j
        81: .line 1303
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        82: iload 4 /* i */
            iload 1 /* length */
            if_icmplt 68
        end local 4 // int i
        83: .line 1317
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean containsUnionTypes
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding[] argumentTypes
        end local 1 // int length
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   84     0                  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            0   84     1                length  I
            0   84     2         argumentTypes  [Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            0   84     3    containsUnionTypes  Z
            2   64     4            totalCount  I
            3   64     5     allExceptionTypes  [[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            4   25     6                     i  I
            8   23     7  currentExceptionType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            9   23     8     catchArgumentType  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           11   20     9        typeReferences  [Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           12   20    10  typeReferencesLength  I
           13   20    11   unionExceptionTypes  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           14   18    12                     j  I
           28   64     6                     i  I
           29   64     7                     l  I
           31   62     8     currentExceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           33   62     9                     j  I
           34   62    10                   max  I
           36   60    11             exception  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           39   60    12                     k  I
           41   58    13            exceptions  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           43   58    14                     n  I
           44   58    15                  max2  I
           46   56    16      currentException  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           48   56    17     catchArgumentType  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           67   83     4                     i  I
           72   81     5                     j  I
    MethodParameters:
                    Name  Flags
      length              
      argumentTypes       
      containsUnionTypes  

  public boolean doesNotCompleteNormally();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 1320
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            ifne 4
         1: .line 1321
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ireturn
         4: .line 1323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 13
         5: .line 1324
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         6: goto 12
         7: .line 1325
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            ifne 11
         8: .line 1326
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 9
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: ireturn
        11: .line 1324
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            if_icmplt 7
        end local 1 // int i
        13: .line 1330
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            6   13     1     i  I

  public boolean completesByContinue();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
         0: .line 1334
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.tryBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.completesByContinue:()Z
            ifeq 6
         1: .line 1335
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnonnull 2
            iconst_1
            goto 5
         2: .line 1336
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            ifeq 4
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.completesByContinue:()Z
            ifne 4
         3: .line 1335
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: ireturn
         6: .line 1338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 17
         7: .line 1339
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         8: goto 16
         9: .line 1340
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            iload 1 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.completesByContinue:()Z
            ifeq 15
        10: .line 1341
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnonnull 11
            iconst_1
            goto 14
        11: .line 1342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.doesNotCompleteNormally:()Z
            ifeq 13
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.completesByContinue:()Z
            ifne 13
        12: .line 1341
            iconst_0
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_1
      StackMap locals:
      StackMap stack: int
        14: ireturn
        15: .line 1339
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.catchBlocks:[Lorg/eclipse/jdt/internal/compiler/ast/Block;
            arraylength
            if_icmplt 9
        end local 1 // int i
        17: .line 1346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            ifnull 18
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.TryStatement.finallyBlock:Lorg/eclipse/jdt/internal/compiler/ast/Block;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.completesByContinue:()Z
            ifeq 18
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        18: iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.compiler.ast.TryStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lorg/eclipse/jdt/internal/compiler/ast/TryStatement;
            8   17     1     i  I
}
SourceFile: "TryStatement.java"
InnerClasses:
  public EmptyWithAstNode = org.eclipse.jdt.internal.compiler.lookup.InvocationSite$EmptyWithAstNode of org.eclipse.jdt.internal.compiler.lookup.InvocationSite