public class com.oracle.truffle.api.debug.test.BreakpointTest extends com.oracle.truffle.api.debug.test.AbstractDebugTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.api.debug.test.BreakpointTest
  super_class: com.oracle.truffle.api.debug.test.AbstractDebugTest
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 81
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.AbstractDebugTest.<init>:()V
            return
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;

  public void testBreakpointDefaults();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 85
            aload 0 /* this */
            ldc "STATEMENT"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 86
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 2 /* breakpoint */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         2: .line 87
            lconst_0
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 88
            lconst_0
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getIgnoreCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         4: .line 89
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 90
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isDisposed:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         6: .line 91
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         7: .line 92
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         8: .line 95
            aload 2 /* breakpoint */
            bipush 9
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setIgnoreCount:(I)V
         9: .line 96
            ldc 9
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getIgnoreCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        10: .line 98
            aload 2 /* breakpoint */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        11: .line 99
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 101
            aload 2 /* breakpoint */
            ldc "a + b"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        13: .line 103
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
        14: .line 105
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isDisposed:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        15: .line 106
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        16: .line 107
            aload 2 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        17: .line 108
            return
        end local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   18     1  testSource  Lorg/graalvm/polyglot/Source;
            2   18     2  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointResolve();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 112
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 117
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 2 /* breakpoint2 */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
         2: .line 118
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         3: .line 119
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 3 /* breakpoint3 */
        start local 3 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
         4: .line 120
            aload 3 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         5: .line 121
            aconst_null
            astore 4
            aconst_null
            astore 5
         6: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 6 /* session */
        start local 6 // com.oracle.truffle.api.debug.DebuggerSession session
         7: .line 122
            aload 6 /* session */
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 123
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         9: .line 124
            aload 3 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        10: .line 126
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        11: .line 127
            aload 0 /* this */
            aload 2 /* breakpoint2 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$0(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        12: .line 131
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        13: .line 132
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        14: .line 134
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        15: .line 135
            aload 3 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        16: .line 138
            aload 6 /* session */
            aload 3 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        17: .line 139
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        18: .line 140
            aload 3 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        19: .line 141
            aload 6 /* session */
            ifnull 25
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 25
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        20: astore 4
            aload 6 /* session */
            ifnull 21
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 6 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        21: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: astore 5
            aload 4
            ifnonnull 23
            aload 5
            astore 4
            goto 24
      StackMap locals:
      StackMap stack:
        23: aload 4
            aload 5
            if_acmpeq 24
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        24: aload 4
            athrow
        25: .line 142
      StackMap locals:
      StackMap stack:
            return
        end local 3 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        end local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   26     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   26     1   testSource  Lorg/graalvm/polyglot/Source;
            2   26     2  breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
            4   26     3  breakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   21     6      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
           7    19      20  any
           6    22      22  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointAfter();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 146
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT(CONSTANT(10)))"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 149
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.suspendAnchor:(Lcom/oracle/truffle/api/debug/SuspendAnchor;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 2 /* breakpoint2 */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
         2: .line 150
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.suspendAnchor:(Lcom/oracle/truffle/api/debug/SuspendAnchor;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 3 /* breakpoint3a */
        start local 3 // com.oracle.truffle.api.debug.Breakpoint breakpoint3a
         3: .line 151
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.suspendAnchor:(Lcom/oracle/truffle/api/debug/SuspendAnchor;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 4 /* breakpoint3b */
        start local 4 // com.oracle.truffle.api.debug.Breakpoint breakpoint3b
         4: .line 152
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 153
            aconst_null
            astore 5
            aconst_null
            astore 6
         6: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 7 /* session */
        start local 7 // com.oracle.truffle.api.debug.DebuggerSession session
         7: .line 154
            aload 7 /* session */
            aload 2 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 155
            aload 7 /* session */
            aload 3 /* breakpoint3a */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         9: .line 156
            aload 7 /* session */
            aload 4 /* breakpoint3b */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        10: .line 158
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        11: .line 159
            aload 0 /* this */
            aload 2 /* breakpoint2 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$1(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        12: .line 164
            aload 0 /* this */
            aload 3 /* breakpoint3a */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$2(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        13: .line 169
            aload 0 /* this */
            aload 4 /* breakpoint3b */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$3(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        14: .line 174
            aload 7 /* session */
            ifnull 20
            aload 7 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 20
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        15: astore 5
            aload 7 /* session */
            ifnull 16
            aload 7 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 7 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        16: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 6
            aload 5
            ifnonnull 18
            aload 6
            astore 5
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 5
            aload 6
            if_acmpeq 19
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 5
            athrow
        20: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        21: .line 176
            return
        end local 4 // com.oracle.truffle.api.debug.Breakpoint breakpoint3b
        end local 3 // com.oracle.truffle.api.debug.Breakpoint breakpoint3a
        end local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0          this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   22     1    testSource  Lorg/graalvm/polyglot/Source;
            2   22     2   breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
            3   22     3  breakpoint3a  Lcom/oracle/truffle/api/debug/Breakpoint;
            4   22     4  breakpoint3b  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   16     7       session  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
           7    14      15  any
           6    17      17  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointCondition();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 180
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 185
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 186
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 188
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 189
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$4(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         6: .line 193
            lconst_1
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         7: .line 194
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
         8: .line 196
            aload 5 /* breakpoint */
            ldc "CONSTANT(true)"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         9: .line 198
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        10: .line 199
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$5(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        11: .line 203
            ldc 2
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        12: .line 204
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        13: .line 206
            aload 5 /* breakpoint */
            ldc "CONSTANT(false)"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        14: .line 207
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        15: .line 208
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        16: .line 209
            ldc 2
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        17: .line 211
            aload 5 /* breakpoint */
            aconst_null
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        18: .line 212
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        19: .line 213
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$6(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        20: .line 217
            ldc 3
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        21: .line 218
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        22: .line 220
            aload 5 /* breakpoint */
            ldc "CONSTANT("
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        23: .line 221
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        24: .line 222
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$7(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        25: .line 226
            ldc 4
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        26: .line 227
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        27: .line 228
            aload 4 /* session */
            ifnull 33
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 33
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        28: astore 2
            aload 4 /* session */
            ifnull 29
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        29: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 3
            aload 2
            ifnonnull 31
            aload 3
            astore 2
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 2
            aload 3
            if_acmpeq 32
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        32: aload 2
            athrow
        33: .line 229
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   34     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   34     1  testSource  Lorg/graalvm/polyglot/Source;
            3   29     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   27     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3    27      28  any
           2    30      30  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testNotStepIntoBreakpointCondition();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 233
            aload 0 /* this */
            ldc "ROOT(DEFINE(test, ROOT(\nSTATEMENT(EXPRESSION),\nCONSTANT(true))))"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* defineSource */
        start local 1 // org.graalvm.polyglot.Source defineSource
         1: .line 236
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 2 /* testSource */
        start local 2 // org.graalvm.polyglot.Source testSource
         2: .line 240
            aconst_null
            astore 3
            aconst_null
            astore 4
         3: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 5 /* session */
        start local 5 // com.oracle.truffle.api.debug.DebuggerSession session
         4: .line 241
            aload 0 /* this */
            aload 1 /* defineSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 242
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
         6: .line 243
            aload 5 /* session */
            aload 0 /* this */
            aload 2 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         7: .line 244
            aload 6 /* breakpoint */
            ldc "CALL(test)"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         8: .line 245
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         9: .line 246
            aload 0 /* this */
            aload 2 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        10: .line 247
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$8(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        11: .line 253
            lconst_0
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        12: .line 254
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$9(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        13: .line 260
            lconst_1
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        14: .line 261
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$10(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        15: .line 267
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        16: .line 268
            lconst_1
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        17: .line 269
            aload 5 /* session */
            ifnull 23
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 23
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        18: astore 3
            aload 5 /* session */
            ifnull 19
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 5 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        19: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 4
            aload 3
            ifnonnull 21
            aload 4
            astore 3
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 3
            aload 4
            if_acmpeq 22
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 3
            athrow
        23: .line 270
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.polyglot.Source testSource
        end local 1 // org.graalvm.polyglot.Source defineSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   24     1  defineSource  Lorg/graalvm/polyglot/Source;
            2   24     2    testSource  Lorg/graalvm/polyglot/Source;
            4   19     5       session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            7   17     6    breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           4    17      18  any
           3    20      20  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointConditionExecutedOnce();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 274
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 279
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 280
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 281
            aload 5 /* breakpoint */
            ldc "ROOT(PRINT(OUT, Hi), CONSTANT(true))"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         5: .line 283
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         6: .line 284
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$11(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 288
            lconst_1
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         8: .line 289
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
         9: .line 290
            ldc "Hi"
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 293
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint2 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        11: .line 294
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        12: .line 295
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        13: .line 296
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$12(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        14: .line 300
            aload 0 /* this */
            aload 5 /* breakpoint */
            aload 6 /* breakpoint2 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$13(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        15: .line 308
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$14(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        16: .line 312
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        17: .line 313
            ldc "HiHi"
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        18: .line 314
            ldc 2
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        19: .line 315
            lconst_1
            aload 6 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        20: .line 316
            aload 4 /* session */
            ifnull 26
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 26
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        21: astore 2
            aload 4 /* session */
            ifnull 22
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 3
            aload 2
            ifnonnull 24
            aload 3
            astore 2
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 2
            aload 3
            if_acmpeq 25
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
        26: .line 317
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   27     1   testSource  Lorg/graalvm/polyglot/Source;
            3   22     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   20     5   breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
           11   20     6  breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3    20      21  any
           2    23      23  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointsAtSamePlaceHitCorrectly();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=15, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 321
            aload 0 /* this */
            ldc "ROOT(\n  LOOP(4,\n    STATEMENT\n  )\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 326
            ldc "ROOT(PRINT(OUT, CT), CONSTANT(true))"
            astore 2 /* conditionTrue */
        start local 2 // java.lang.String conditionTrue
         2: .line 327
            ldc "ROOT(PRINT(OUT, CF), CONSTANT(false))"
            astore 3 /* conditionFalse */
        start local 3 // java.lang.String conditionFalse
         3: .line 328
            iconst_1
            istore 4 /* isBefore */
        start local 4 // boolean isBefore
         4: .line 329
            ldc ""
            astore 5 /* prefix */
        start local 5 // java.lang.String prefix
         5: .line 331
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String
      StackMap stack:
            iload 4 /* isBefore */
            ifeq 6
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            goto 7
      StackMap locals:
      StackMap stack:
         6: getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.debug.SuspendAnchor
         7: astore 6 /* anchor */
        start local 6 // com.oracle.truffle.api.debug.SuspendAnchor anchor
         8: .line 332
            aconst_null
            astore 7
            aconst_null
            astore 8
         9: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 9 /* session */
        start local 9 // com.oracle.truffle.api.debug.DebuggerSession session
        10: .line 333
            aload 9 /* session */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 6 /* anchor */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.suspendAnchor:(Lcom/oracle/truffle/api/debug/SuspendAnchor;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 10 /* breakpoint1 */
        start local 10 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
        11: .line 334
            aload 9 /* session */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 6 /* anchor */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.suspendAnchor:(Lcom/oracle/truffle/api/debug/SuspendAnchor;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 11 /* breakpoint2 */
        start local 11 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        12: .line 335
            aload 10 /* breakpoint1 */
            aload 3 /* conditionFalse */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        13: .line 336
            aload 11 /* breakpoint2 */
            aload 2 /* conditionTrue */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        14: .line 337
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        15: .line 339
            new java.lang.StringBuilder
            dup
            aload 5 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* isBefore */
            ifeq 16
            ldc "CFCT"
            goto 17
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint
      StackMap stack: java.lang.StringBuilder
        16: ldc "CTCF"
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint
      StackMap stack: java.lang.StringBuilder java.lang.String
        17: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 12 /* out1 */
        start local 12 // java.lang.String out1
        18: .line 340
            aload 0 /* this */
            aload 0 /* this */
            aload 11 /* breakpoint2 */
            aload 12 /* out1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$15(Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        19: .line 346
            new java.lang.StringBuilder
            dup
            aload 12 /* out1 */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* isBefore */
            ifeq 20
            ldc "CFCT"
            goto 21
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.String
      StackMap stack: java.lang.StringBuilder
        20: ldc "CTCF"
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
        21: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* out2 */
        start local 13 // java.lang.String out2
        22: .line 347
            aload 0 /* this */
            aload 0 /* this */
            aload 11 /* breakpoint2 */
            aload 10 /* breakpoint1 */
            aload 2 /* conditionTrue */
            aload 3 /* conditionFalse */
            aload 13 /* out2 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$16(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        23: .line 355
            new java.lang.StringBuilder
            dup
            aload 13 /* out2 */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* isBefore */
            ifeq 24
            ldc "CTCF"
            goto 25
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.String java.lang.String
      StackMap stack: java.lang.StringBuilder
        24: ldc "CFCT"
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.lang.String java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
        25: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 14 /* out3 */
        start local 14 // java.lang.String out3
        26: .line 356
            aload 0 /* this */
            aload 0 /* this */
            aload 10 /* breakpoint1 */
            aload 11 /* breakpoint2 */
            aload 14 /* out3 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$17(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        27: .line 364
            aload 0 /* this */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$18(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        28: .line 367
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        29: .line 368
            new java.lang.StringBuilder
            dup
            aload 5 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 14 /* out3 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* prefix */
        30: .line 369
            aload 14 /* out3 */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        31: .line 370
            ldc 2
            aload 10 /* breakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        32: .line 371
            ldc 3
            aload 11 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        end local 14 // java.lang.String out3
        end local 13 // java.lang.String out2
        end local 12 // java.lang.String out1
        end local 11 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        end local 10 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
        33: .line 372
            aload 9 /* session */
            ifnull 39
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 39
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.String java.lang.String int java.lang.String com.oracle.truffle.api.debug.SuspendAnchor java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        34: astore 7
            aload 9 /* session */
            ifnull 35
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 9 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        35: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        36: astore 8
            aload 7
            ifnonnull 37
            aload 8
            astore 7
            goto 38
      StackMap locals:
      StackMap stack:
        37: aload 7
            aload 8
            if_acmpeq 38
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        38: aload 7
            athrow
        end local 6 // com.oracle.truffle.api.debug.SuspendAnchor anchor
        39: .line 373
      StackMap locals:
      StackMap stack:
            iload 4 /* isBefore */
            ifeq 40
            iconst_0
            goto 41
      StackMap locals:
      StackMap stack:
        40: iconst_1
      StackMap locals:
      StackMap stack: int
        41: dup
            istore 4 /* isBefore */
            ifeq 5
        42: .line 374
            return
        end local 5 // java.lang.String prefix
        end local 4 // boolean isBefore
        end local 3 // java.lang.String conditionFalse
        end local 2 // java.lang.String conditionTrue
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   43     0            this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   43     1      testSource  Lorg/graalvm/polyglot/Source;
            2   43     2   conditionTrue  Ljava/lang/String;
            3   43     3  conditionFalse  Ljava/lang/String;
            4   43     4        isBefore  Z
            5   43     5          prefix  Ljava/lang/String;
            8   39     6          anchor  Lcom/oracle/truffle/api/debug/SuspendAnchor;
           10   35     9         session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           11   33    10     breakpoint1  Lcom/oracle/truffle/api/debug/Breakpoint;
           12   33    11     breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
           18   33    12            out1  Ljava/lang/String;
           22   33    13            out2  Ljava/lang/String;
           26   33    14            out3  Ljava/lang/String;
      Exception table:
        from    to  target  type
          10    33      34  any
           9    36      36  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testMultiSessionBreakpointConditionExecutedOnce();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 378
            aload 0 /* this */
            ldc "ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 383
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session1 */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session1
         3: .line 384
            aload 4 /* session1 */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint1 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
         4: .line 385
            aload 5 /* breakpoint1 */
            ldc "ROOT(PRINT(OUT, Hi1), CONSTANT(true))"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         5: .line 386
            aconst_null
            astore 6
            aconst_null
            astore 7
         6: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 8 /* session2 */
        start local 8 // com.oracle.truffle.api.debug.DebuggerSession session2
         7: .line 387
            aload 8 /* session2 */
            aload 5 /* breakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 388
            aconst_null
            astore 9
            aconst_null
            astore 10
         9: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 11 /* session3 */
        start local 11 // com.oracle.truffle.api.debug.DebuggerSession session3
        10: .line 389
            aload 11 /* session3 */
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 12 /* breakpoint3 */
        start local 12 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        11: .line 390
            aload 12 /* breakpoint3 */
            ldc "ROOT(PRINT(OUT, Hi3), CONSTANT(true))"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        12: .line 391
            aload 11 /* session3 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        13: .line 392
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        14: .line 393
            aload 0 /* this */
            aload 11 /* session3 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$19(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        15: .line 398
            aload 0 /* this */
            aload 11 /* session3 */
            aload 12 /* breakpoint3 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$20(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        16: .line 403
            aload 0 /* this */
            aload 4 /* session1 */
            aload 5 /* breakpoint1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$21(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        17: .line 408
            aload 0 /* this */
            aload 8 /* session2 */
            aload 5 /* breakpoint1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$22(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        18: .line 413
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        19: .line 414
            ldc "Hi3Hi1"
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        20: .line 415
            lconst_1
            aload 5 /* breakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        21: .line 416
            lconst_1
            aload 12 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        end local 12 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        22: .line 417
            aload 11 /* session3 */
            ifnull 28
            aload 11 /* session3 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 28
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        23: astore 9
            aload 11 /* session3 */
            ifnull 24
            aload 11 /* session3 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 11 // com.oracle.truffle.api.debug.DebuggerSession session3
      StackMap locals:
      StackMap stack:
        24: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        25: astore 10
            aload 9
            ifnonnull 26
            aload 10
            astore 9
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 9
            aload 10
            if_acmpeq 27
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        27: aload 9
            athrow
        28: .line 418
      StackMap locals:
      StackMap stack:
            aload 8 /* session2 */
            ifnull 34
            aload 8 /* session2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 34
      StackMap locals:
      StackMap stack: java.lang.Throwable
        29: astore 6
            aload 8 /* session2 */
            ifnull 30
            aload 8 /* session2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 8 // com.oracle.truffle.api.debug.DebuggerSession session2
      StackMap locals:
      StackMap stack:
        30: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: astore 7
            aload 6
            ifnonnull 32
            aload 7
            astore 6
            goto 33
      StackMap locals:
      StackMap stack:
        32: aload 6
            aload 7
            if_acmpeq 33
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        33: aload 6
            athrow
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
        34: .line 419
      StackMap locals:
      StackMap stack:
            aload 4 /* session1 */
            ifnull 40
            aload 4 /* session1 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 40
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 2
            aload 4 /* session1 */
            ifnull 36
            aload 4 /* session1 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session1
      StackMap locals:
      StackMap stack:
        36: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: astore 3
            aload 2
            ifnonnull 38
            aload 3
            astore 2
            goto 39
      StackMap locals:
      StackMap stack:
        38: aload 2
            aload 3
            if_acmpeq 39
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        39: aload 2
            athrow
        40: .line 420
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   41     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   41     1   testSource  Lorg/graalvm/polyglot/Source;
            3   36     4     session1  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   34     5  breakpoint1  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   30     8     session2  Lcom/oracle/truffle/api/debug/DebuggerSession;
           10   24    11     session3  Lcom/oracle/truffle/api/debug/DebuggerSession;
           11   22    12  breakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
          10    22      23  any
           9    25      25  any
           7    28      29  any
           6    31      31  any
           3    34      35  any
           2    37      37  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakURI1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 424
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 431
            aconst_null
            astore 2 /* sessionBreakpoint */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
         2: .line 432
            aconst_null
            astore 3
            aconst_null
            astore 4
         3: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 5 /* session */
        start local 5 // com.oracle.truffle.api.debug.DebuggerSession session
         4: .line 433
            aload 5 /* session */
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Source.getURI:()Ljava/net/URI;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Ljava/net/URI;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         5: .line 434
            aload 6 /* breakpoint */
            astore 2 /* sessionBreakpoint */
         6: .line 435
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         7: .line 436
            aload 0 /* this */
            aload 0 /* this */
            aload 6 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$23(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         8: .line 441
            lconst_1
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         9: .line 442
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 443
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        11: .line 444
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        12: .line 445
            aload 5 /* session */
            ifnull 18
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 18
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 5 /* session */
            ifnull 14
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 5 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        14: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 4
            aload 3
            ifnonnull 16
            aload 4
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 3
            aload 4
            if_acmpeq 17
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 3
            athrow
        18: .line 446
      StackMap locals:
      StackMap stack:
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 2 /* sessionBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        19: .line 447
            return
        end local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   20     1             source  Lorg/graalvm/polyglot/Source;
            2   20     2  sessionBreakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            4   14     5            session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            5   12     6         breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           4    12      13  any
           3    15      15  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakURI2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 451
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(foo,\n    LOOP(3,\n      STATEMENT)\n  ),\n  CALL(foo)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testFile:(Ljava/lang/String;)Ljava/io/File;
            astore 1 /* testFile */
        start local 1 // java.io.File testFile
         1: .line 459
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 460
            aload 4 /* session */
            aload 1 /* testFile */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Ljava/net/URI;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 461
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         5: .line 462
            aload 0 /* this */
            ldc "instrumentation-test-language"
            aload 1 /* testFile */
            invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/io/File;)Lorg/graalvm/polyglot/Source$Builder;
            invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         6: .line 463
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 11
         8: .line 464
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest java.io.File java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint int
      StackMap stack:
            iload 6 /* i */
            istore 7 /* finalIndex */
        start local 7 // int finalIndex
         9: .line 465
            aload 0 /* this */
            aload 0 /* this */
            iload 7 /* finalIndex */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$24(ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 7 // int finalIndex
        10: .line 463
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            iconst_3
            if_icmplt 8
        end local 6 // int i
        12: .line 469
            ldc 3
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        13: .line 470
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        14: .line 471
            aload 4 /* session */
            ifnull 20
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 20
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest java.io.File java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        15: astore 2
            aload 4 /* session */
            ifnull 16
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        16: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 3
            aload 2
            ifnonnull 18
            aload 3
            astore 2
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 2
            aload 3
            if_acmpeq 19
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 2
            athrow
        20: .line 472
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.File testFile
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   21     1    testFile  Ljava/io/File;
            3   16     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   14     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   12     6           i  I
            9   10     7  finalIndex  I
      Exception table:
        from    to  target  type
           3    14      15  any
           2    17      17  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testDisableBreakpointsDuringSuspend();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 476
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(foo,\n    LOOP(3,\n      STATEMENT)\n  ),\n  CALL(foo)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 484
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 485
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint1 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
         4: .line 486
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint2 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
         5: .line 487
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint3 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
         6: .line 488
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         7: .line 489
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         8: goto 16
         9: .line 490
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint int
      StackMap stack:
            iload 8 /* i */
            istore 9 /* finalIndex */
        start local 9 // int finalIndex
        10: .line 491
            aload 0 /* this */
            aload 0 /* this */
            iload 9 /* finalIndex */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$25(ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        11: .line 494
            iload 8 /* i */
            ifne 13
        12: .line 495
            aload 7 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
        13: .line 497
      StackMap locals: int
      StackMap stack:
            iload 8 /* i */
            iconst_1
            if_icmpne 15
        14: .line 498
            aload 5 /* breakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
        end local 9 // int finalIndex
        15: .line 489
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 8 /* i */
            iconst_3
            if_icmplt 9
        end local 8 // int i
        17: .line 501
            ldc 2
            aload 5 /* breakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        18: .line 502
            ldc 3
            aload 6 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        19: .line 503
            lconst_1
            aload 7 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        20: .line 505
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint1
        21: .line 506
            aload 4 /* session */
            ifnull 27
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 27
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        22: astore 2
            aload 4 /* session */
            ifnull 23
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        23: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 3
            aload 2
            ifnonnull 25
            aload 3
            astore 2
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 2
            aload 3
            if_acmpeq 26
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        26: aload 2
            athrow
        27: .line 507
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   28     1       source  Lorg/graalvm/polyglot/Source;
            3   23     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   21     5  breakpoint1  Lcom/oracle/truffle/api/debug/Breakpoint;
            5   21     6  breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
            6   21     7  breakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
            8   17     8            i  I
           10   15     9   finalIndex  I
      Exception table:
        from    to  target  type
           3    21      22  any
           2    24      24  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakSource();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 511
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 518
            aconst_null
            astore 2 /* sessionBreakpoint */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
         2: .line 519
            aconst_null
            astore 3
            aconst_null
            astore 4
         3: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 5 /* session */
        start local 5 // com.oracle.truffle.api.debug.DebuggerSession session
         4: .line 520
            aload 5 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         5: .line 521
            aload 6 /* breakpoint */
            astore 2 /* sessionBreakpoint */
         6: .line 522
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         7: .line 523
            aload 0 /* this */
            aload 0 /* this */
            aload 6 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$26(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         8: .line 528
            lconst_1
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         9: .line 529
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 530
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        11: .line 531
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        12: .line 532
            aload 5 /* session */
            ifnull 18
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 18
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 5 /* session */
            ifnull 14
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 5 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        14: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 4
            aload 3
            ifnonnull 16
            aload 4
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 3
            aload 4
            if_acmpeq 17
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 3
            athrow
        18: .line 533
      StackMap locals:
      StackMap stack:
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 2 /* sessionBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        19: .line 534
            return
        end local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   20     1             source  Lorg/graalvm/polyglot/Source;
            2   20     2  sessionBreakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            4   14     5            session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            5   12     6         breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           4    12      13  any
           3    15      15  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testChangeDuringSuspension();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 538
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(foo,\n    STATEMENT\n  ),\n  STATEMENT,\n  CALL(foo)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 545
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 546
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         4: .line 547
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 548
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            aload 1 /* source */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$27(Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         6: .line 555
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$28(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 560
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
         8: .line 561
            aload 4 /* session */
            ifnull 14
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 14
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* session */
            ifnull 10
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        14: .line 562
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   15     1   source  Lorg/graalvm/polyglot/Source;
            3   10     4  session  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
           3     8       9  any
           2    11      11  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testOneShot();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 566
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  LOOP(3, STATEMENT),\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 571
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 572
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.oneShot:()Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 574
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 576
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$29(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         6: .line 587
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$30(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 596
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         8: .line 597
            aload 4 /* session */
            ifnull 14
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 14
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* session */
            ifnull 10
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        14: .line 598
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   15     1      source  Lorg/graalvm/polyglot/Source;
            3   10     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4    8     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3     8       9  any
           2    11      11  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakSourceSection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 602
            aload 0 /* this */
            ldc "ROOT(STATEMENT, STATEMENT, STATEMENT)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 603
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 604
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            bipush 16
            bipush 9
            invokevirtual com.oracle.truffle.api.source.Source.createSection:(II)Lcom/oracle/truffle/api/source/SourceSection;
            astore 5 /* sourceSection */
        start local 5 // com.oracle.truffle.api.source.SourceSection sourceSection
         4: .line 605
            aload 4 /* session */
            aload 5 /* sourceSection */
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         5: .line 607
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         6: .line 609
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* sourceSection */
            aload 6 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$31(Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 616
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 5 // com.oracle.truffle.api.source.SourceSection sourceSection
         8: .line 617
            aload 4 /* session */
            ifnull 14
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 14
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* session */
            ifnull 10
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        14: .line 618
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   15     1         source  Lorg/graalvm/polyglot/Source;
            3   10     4        session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4    8     5  sourceSection  Lcom/oracle/truffle/api/source/SourceSection;
            5    8     6     breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3     8       9  any
           2    11      11  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testDisableDispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 622
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 637
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 639
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint4 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
         4: .line 642
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 6
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint6 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint6
         5: .line 643
            aload 6 /* breakpoint6 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
         6: .line 646
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 8
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint8 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint8
         7: .line 647
            aload 7 /* breakpoint8 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
         8: .line 650
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 10
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 8 /* breakpoint10 */
        start local 8 // com.oracle.truffle.api.debug.Breakpoint breakpoint10
         9: .line 651
            aload 8 /* breakpoint10 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        10: .line 652
            aload 8 /* breakpoint10 */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        11: .line 655
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getBreakpoints:()Ljava/util/List;
            astore 9 /* breakpoints */
        start local 9 // java.util.List breakpoints
        12: .line 656
            aload 5 /* breakpoint4 */
            aload 9 /* breakpoints */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        13: .line 657
            aload 7 /* breakpoint8 */
            aload 9 /* breakpoints */
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        14: .line 658
            aload 8 /* breakpoint10 */
            aload 9 /* breakpoints */
            iconst_2
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        15: .line 660
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        16: .line 661
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        17: .line 663
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$32(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        18: .line 666
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$33(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        19: .line 670
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$34(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        20: .line 674
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        21: .line 676
            lconst_1
            aload 5 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        22: .line 677
            aload 5 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        23: .line 678
            lconst_0
            aload 6 /* breakpoint6 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        24: .line 679
            aload 6 /* breakpoint6 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        25: .line 680
            lconst_0
            aload 7 /* breakpoint8 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        26: .line 681
            aload 7 /* breakpoint8 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        27: .line 682
            lconst_1
            aload 8 /* breakpoint10 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        28: .line 683
            aload 8 /* breakpoint10 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 9 // java.util.List breakpoints
        end local 8 // com.oracle.truffle.api.debug.Breakpoint breakpoint10
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint8
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint6
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        29: .line 684
            aload 4 /* session */
            ifnull 35
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 35
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        30: astore 2
            aload 4 /* session */
            ifnull 31
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        31: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        32: astore 3
            aload 2
            ifnonnull 33
            aload 3
            astore 2
            goto 34
      StackMap locals:
      StackMap stack:
        33: aload 2
            aload 3
            if_acmpeq 34
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        34: aload 2
            athrow
        35: .line 685
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   36     0          this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   36     1        source  Lorg/graalvm/polyglot/Source;
            3   31     4       session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4   29     5   breakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
            5   29     6   breakpoint6  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   29     7   breakpoint8  Lcom/oracle/truffle/api/debug/Breakpoint;
            9   29     8  breakpoint10  Lcom/oracle/truffle/api/debug/Breakpoint;
           12   29     9   breakpoints  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;
      Exception table:
        from    to  target  type
           3    29      30  any
           2    32      32  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testInactive();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 689
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 698
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 699
            aload 4 /* session */
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.isBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 701
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint3 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
         5: .line 704
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint4 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
         6: .line 705
            aload 6 /* breakpoint4 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
         7: .line 708
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_5
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint5 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
         8: .line 709
            aload 7 /* breakpoint5 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
         9: .line 710
            aload 7 /* breakpoint5 */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        10: .line 712
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        11: .line 713
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        12: .line 715
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$35(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        13: .line 719
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        14: .line 721
            lconst_0
            aload 5 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        15: .line 722
            lconst_0
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        16: .line 723
            lconst_0
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        17: .line 724
            aload 5 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        18: .line 725
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        19: .line 726
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        20: .line 727
            aload 4 /* session */
            ifnull 26
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 26
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        21: astore 2
            aload 4 /* session */
            ifnull 22
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 3
            aload 2
            ifnonnull 24
            aload 3
            astore 2
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 2
            aload 3
            if_acmpeq 25
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
        26: .line 730
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
        27: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
        28: .line 731
            aload 4 /* session */
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.isBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        29: .line 733
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint2 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        30: .line 736
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint4 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        31: .line 737
            aload 6 /* breakpoint4 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        32: .line 740
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_5
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint5 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        33: .line 741
            aload 7 /* breakpoint5 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        34: .line 742
            aload 7 /* breakpoint5 */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        35: .line 744
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        36: .line 745
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        37: .line 747
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$36(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        38: .line 751
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        39: .line 753
            lconst_1
            aload 5 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        40: .line 754
            lconst_0
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        41: .line 755
            lconst_0
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        42: .line 756
            aload 5 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        43: .line 757
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        44: .line 758
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        45: .line 759
            aload 4 /* session */
            ifnull 51
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 51
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        46: astore 2
            aload 4 /* session */
            ifnull 47
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        47: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        48: astore 3
            aload 2
            ifnonnull 49
            aload 3
            astore 2
            goto 50
      StackMap locals:
      StackMap stack:
        49: aload 2
            aload 3
            if_acmpeq 50
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        50: aload 2
            athrow
        51: .line 762
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
        52: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
        53: .line 763
            aload 4 /* session */
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.isBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        54: .line 764
            aload 4 /* session */
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;Z)V
        55: .line 765
            aload 4 /* session */
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.isBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        56: .line 767
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint2 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        57: .line 770
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint4 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        58: .line 771
            aload 6 /* breakpoint4 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        59: .line 774
            aload 4 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_5
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint5 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        60: .line 775
            aload 7 /* breakpoint5 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        61: .line 776
            aload 7 /* breakpoint5 */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        62: .line 778
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        63: .line 779
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        64: .line 781
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$37(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        65: .line 784
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$38(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        66: .line 788
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$39(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        67: .line 791
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        68: .line 793
            lconst_0
            aload 5 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        69: .line 794
            lconst_0
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        70: .line 795
            lconst_1
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        71: .line 796
            aload 5 /* breakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        72: .line 797
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        73: .line 798
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint2
        74: .line 799
            aload 4 /* session */
            ifnull 80
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 80
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        75: astore 2
            aload 4 /* session */
            ifnull 76
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        76: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        77: astore 3
            aload 2
            ifnonnull 78
            aload 3
            astore 2
            goto 79
      StackMap locals:
      StackMap stack:
        78: aload 2
            aload 3
            if_acmpeq 79
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        79: aload 2
            athrow
        80: .line 800
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   81     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   81     1       source  Lorg/graalvm/polyglot/Source;
            3   22     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            5   20     5  breakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
            6   20     6  breakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
            8   20     7  breakpoint5  Lcom/oracle/truffle/api/debug/Breakpoint;
           28   47     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           30   45     5  breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
           31   45     6  breakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
           33   45     7  breakpoint5  Lcom/oracle/truffle/api/debug/Breakpoint;
           53   76     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           57   74     5  breakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
           58   74     6  breakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
           60   74     7  breakpoint5  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3    20      21  any
           2    23      23  any
          28    45      46  any
          27    48      48  any
          53    74      75  any
          52    77      77  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testGlobalBreakpoints();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 806
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 811
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getDebugger:()Lcom/oracle/truffle/api/debug/Debugger;
            astore 2 /* debugger */
        start local 2 // com.oracle.truffle.api.debug.Debugger debugger
         2: .line 812
            aload 2 /* debugger */
            invokevirtual com.oracle.truffle.api.debug.Debugger.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         3: .line 813
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 3 /* globalBreakpoint */
        start local 3 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint
         4: .line 814
            iconst_1
            newarray 4
            astore 4 /* notified */
        start local 4 // boolean[] notified
         5: .line 815
            aload 4 /* notified */
            aload 2 /* debugger */
            aload 3 /* globalBreakpoint */
            invokestatic com.oracle.truffle.api.debug.test.BreakpointListener.register:([ZLcom/oracle/truffle/api/debug/Debugger;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/test/BreakpointListener;
            astore 5 /* newBPListener */
        start local 5 // com.oracle.truffle.api.debug.test.BreakpointListener newBPListener
         6: .line 816
            aload 2 /* debugger */
            aload 3 /* globalBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Debugger.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         7: .line 817
            aload 4 /* notified */
            iconst_0
            baload
            invokestatic org.junit.Assert.assertTrue:(Z)V
         8: .line 818
            lconst_1
            aload 2 /* debugger */
            invokevirtual com.oracle.truffle.api.debug.Debugger.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         9: .line 819
            aload 2 /* debugger */
            invokevirtual com.oracle.truffle.api.debug.Debugger.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            astore 6 /* newBP */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint newBP
        10: .line 820
            aload 3 /* globalBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isModifiable:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        11: .line 821
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isModifiable:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 823
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
        13: .line 824
            ldc "Public dispose must not be possible for global breakpoints."
            invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
        14: .line 825
            goto 16
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Debugger com.oracle.truffle.api.debug.Breakpoint boolean[] com.oracle.truffle.api.debug.test.BreakpointListener com.oracle.truffle.api.debug.Breakpoint
      StackMap stack: java.lang.IllegalStateException
        15: pop
        16: .line 829
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            ldc "Something"
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        17: .line 830
            invokestatic org.junit.Assert.fail:()V
        18: .line 831
            goto 20
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
        19: pop
        20: .line 835
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            aconst_null
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
        21: .line 836
            invokestatic org.junit.Assert.fail:()V
        22: .line 837
            goto 24
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
        23: pop
        24: .line 841
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        25: .line 842
            invokestatic org.junit.Assert.fail:()V
        26: .line 843
            goto 28
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
        27: pop
        28: .line 847
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            bipush 10
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setIgnoreCount:(I)V
        29: .line 848
            invokestatic org.junit.Assert.fail:()V
        30: .line 849
            goto 32
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
        31: pop
        32: .line 852
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getCondition:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
        33: .line 853
            lconst_0
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        34: .line 854
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        35: .line 855
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isDisposed:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        36: .line 856
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        37: .line 858
            aconst_null
            astore 7
            aconst_null
            astore 8
        38: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 9 /* session */
        start local 9 // com.oracle.truffle.api.debug.DebuggerSession session
        39: .line 860
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        40: .line 862
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        41: .line 864
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$40(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        42: .line 877
            aload 9 /* session */
            ifnull 48
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 48
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Debugger com.oracle.truffle.api.debug.Breakpoint boolean[] com.oracle.truffle.api.debug.test.BreakpointListener com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        43: astore 7
            aload 9 /* session */
            ifnull 44
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 9 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        44: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        45: astore 8
            aload 7
            ifnonnull 46
            aload 8
            astore 7
            goto 47
      StackMap locals:
      StackMap stack:
        46: aload 7
            aload 8
            if_acmpeq 47
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        47: aload 7
            athrow
        48: .line 879
      StackMap locals:
      StackMap stack:
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isDisposed:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        49: .line 880
            aload 6 /* newBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        50: .line 881
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        51: .line 883
            aconst_null
            astore 7
            aconst_null
            astore 8
        52: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 9 /* session */
        start local 9 // com.oracle.truffle.api.debug.DebuggerSession session
        53: .line 884
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        54: .line 885
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$41(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        55: .line 889
            aload 9 /* session */
            ifnull 61
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 61
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Debugger com.oracle.truffle.api.debug.Breakpoint boolean[] com.oracle.truffle.api.debug.test.BreakpointListener com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        56: astore 7
            aload 9 /* session */
            ifnull 57
            aload 9 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 9 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        57: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        58: astore 8
            aload 7
            ifnonnull 59
            aload 8
            astore 7
            goto 60
      StackMap locals:
      StackMap stack:
        59: aload 7
            aload 8
            if_acmpeq 60
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        60: aload 7
            athrow
        61: .line 890
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        62: .line 892
            aload 5 /* newBPListener */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointListener.unregister:()V
        63: .line 893
            aload 4 /* notified */
            iconst_0
            iconst_0
            bastore
        64: .line 894
            aload 4 /* notified */
            aload 2 /* debugger */
            aload 3 /* globalBreakpoint */
            invokestatic com.oracle.truffle.api.debug.test.BreakpointDisposeListener.register:([ZLcom/oracle/truffle/api/debug/Debugger;Lcom/oracle/truffle/api/debug/Breakpoint;)V
        65: .line 895
            aload 3 /* globalBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
        66: .line 896
            aload 4 /* notified */
            iconst_0
            baload
            invokestatic org.junit.Assert.assertTrue:(Z)V
        67: .line 897
            lconst_0
            aload 2 /* debugger */
            invokevirtual com.oracle.truffle.api.debug.Debugger.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        68: .line 898
            return
        end local 6 // com.oracle.truffle.api.debug.Breakpoint newBP
        end local 5 // com.oracle.truffle.api.debug.test.BreakpointListener newBPListener
        end local 4 // boolean[] notified
        end local 3 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint
        end local 2 // com.oracle.truffle.api.debug.Debugger debugger
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   69     0              this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   69     1            source  Lorg/graalvm/polyglot/Source;
            2   69     2          debugger  Lcom/oracle/truffle/api/debug/Debugger;
            4   69     3  globalBreakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            5   69     4          notified  [Z
            6   69     5     newBPListener  Lcom/oracle/truffle/api/debug/test/BreakpointListener;
           10   69     6             newBP  Lcom/oracle/truffle/api/debug/Breakpoint;
           39   44     9           session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           53   57     9           session  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
          12    14      15  Class java.lang.IllegalStateException
          16    18      19  Class java.lang.IllegalStateException
          20    22      23  Class java.lang.IllegalStateException
          24    26      27  Class java.lang.IllegalStateException
          28    30      31  Class java.lang.IllegalStateException
          39    42      43  any
          38    45      45  any
          53    55      56  any
          52    58      58  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testGlobalBreakpointsInMultipleSessions();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=12, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 902
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 914
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getDebugger:()Lcom/oracle/truffle/api/debug/Debugger;
            astore 2 /* debugger */
        start local 2 // com.oracle.truffle.api.debug.Debugger debugger
         2: .line 915
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 3 /* globalBreakpoint1 */
        start local 3 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint1
         3: .line 916
            aload 2 /* debugger */
            aload 3 /* globalBreakpoint1 */
            invokevirtual com.oracle.truffle.api.debug.Debugger.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         4: .line 917
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 4 /* globalBreakpoint2 */
        start local 4 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint2
         5: .line 918
            aload 2 /* debugger */
            aload 4 /* globalBreakpoint2 */
            invokevirtual com.oracle.truffle.api.debug.Debugger.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         6: .line 919
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 6
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* globalBreakpoint3 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint3
         7: .line 920
            aload 2 /* debugger */
            aload 5 /* globalBreakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.Debugger.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 921
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 8
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* globalBreakpoint4 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint4
         9: .line 922
            aload 2 /* debugger */
            aload 6 /* globalBreakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.Debugger.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        10: .line 924
            aload 2 /* debugger */
            invokevirtual com.oracle.truffle.api.debug.Debugger.getBreakpoints:()Ljava/util/List;
            astore 7 /* breakpoints */
        start local 7 // java.util.List breakpoints
        11: .line 925
            ldc 4
            aload 7 /* breakpoints */
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        12: .line 926
            aload 7 /* breakpoints */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getLocationDescription:()Ljava/lang/String;
            ldc "line=2"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        13: .line 927
            aload 7 /* breakpoints */
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getLocationDescription:()Ljava/lang/String;
            ldc "line=4"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        14: .line 928
            aload 7 /* breakpoints */
            iconst_2
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getLocationDescription:()Ljava/lang/String;
            ldc "line=6"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        15: .line 930
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 8 /* session1 */
        start local 8 // com.oracle.truffle.api.debug.DebuggerSession session1
        16: .line 932
            aload 8 /* session1 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        17: .line 934
            aconst_null
            astore 9
            aconst_null
            astore 10
        18: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 11 /* session2 */
        start local 11 // com.oracle.truffle.api.debug.DebuggerSession session2
        19: .line 936
            aload 11 /* session2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        20: .line 938
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        21: .line 941
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* session1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$42(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        22: .line 945
            aload 0 /* this */
            aload 0 /* this */
            aload 11 /* session2 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$43(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        23: .line 950
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* session1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$44(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        24: .line 954
            aload 11 /* session2 */
            ifnull 30
            aload 11 /* session2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 30
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Debugger com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint com.oracle.truffle.api.debug.Breakpoint java.util.List com.oracle.truffle.api.debug.DebuggerSession java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        25: astore 9
            aload 11 /* session2 */
            ifnull 26
            aload 11 /* session2 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 11 // com.oracle.truffle.api.debug.DebuggerSession session2
      StackMap locals:
      StackMap stack:
        26: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 10
            aload 9
            ifnonnull 28
            aload 10
            astore 9
            goto 29
      StackMap locals:
      StackMap stack:
        28: aload 9
            aload 10
            if_acmpeq 29
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        29: aload 9
            athrow
        30: .line 956
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* session1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$45(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        31: .line 962
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* session1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$46(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        32: .line 966
            aload 0 /* this */
            aload 0 /* this */
            aload 8 /* session1 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$47(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        33: .line 974
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        34: .line 976
            return
        end local 8 // com.oracle.truffle.api.debug.DebuggerSession session1
        end local 7 // java.util.List breakpoints
        end local 6 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint4
        end local 5 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint3
        end local 4 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint2
        end local 3 // com.oracle.truffle.api.debug.Breakpoint globalBreakpoint1
        end local 2 // com.oracle.truffle.api.debug.Debugger debugger
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   35     0               this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   35     1             source  Lorg/graalvm/polyglot/Source;
            2   35     2           debugger  Lcom/oracle/truffle/api/debug/Debugger;
            3   35     3  globalBreakpoint1  Lcom/oracle/truffle/api/debug/Breakpoint;
            5   35     4  globalBreakpoint2  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   35     5  globalBreakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
            9   35     6  globalBreakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
           11   35     7        breakpoints  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;
           16   35     8           session1  Lcom/oracle/truffle/api/debug/DebuggerSession;
           19   26    11           session2  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
          19    24      25  any
          18    27      27  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testResolveListener();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 980
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 987
            aconst_null
            astore 2 /* sessionBreakpoint */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
         2: .line 988
            aconst_null
            astore 3
            aconst_null
            astore 4
         3: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 5 /* session */
        start local 5 // com.oracle.truffle.api.debug.DebuggerSession session
         4: .line 989
            iconst_1
            anewarray com.oracle.truffle.api.debug.Breakpoint
            astore 6 /* resolvedBp */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint[] resolvedBp
         5: .line 990
            iconst_1
            anewarray com.oracle.truffle.api.source.SourceSection
            astore 7 /* resolvedSection */
        start local 7 // com.oracle.truffle.api.source.SourceSection[] resolvedSection
         6: .line 991
            aload 6 /* resolvedBp */
            aload 7 /* resolvedSection */
            invokedynamic breakpointResolved([Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$48([Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V (6)
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
            astore 8 /* bpResolveListener */
        start local 8 // com.oracle.truffle.api.debug.Breakpoint$ResolveListener bpResolveListener
         7: .line 995
            aload 5 /* session */
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 8 /* bpResolveListener */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.resolveListener:(Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 9 /* breakpoint */
        start local 9 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         8: .line 996
            aload 6 /* resolvedBp */
            iconst_0
            aaload
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         9: .line 997
            aload 7 /* resolvedSection */
            iconst_0
            aaload
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
        10: .line 998
            aload 9 /* breakpoint */
            astore 2 /* sessionBreakpoint */
        11: .line 999
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        12: .line 1000
            aload 0 /* this */
            aload 0 /* this */
            aload 9 /* breakpoint */
            aload 6 /* resolvedBp */
            aload 7 /* resolvedSection */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$49(Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        13: .line 1007
            lconst_1
            aload 9 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        14: .line 1008
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 9 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        15: .line 1009
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 9 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        16: .line 1010
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 9 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 8 // com.oracle.truffle.api.debug.Breakpoint$ResolveListener bpResolveListener
        end local 7 // com.oracle.truffle.api.source.SourceSection[] resolvedSection
        end local 6 // com.oracle.truffle.api.debug.Breakpoint[] resolvedBp
        17: .line 1011
            aload 5 /* session */
            ifnull 23
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 23
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source com.oracle.truffle.api.debug.Breakpoint java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        18: astore 3
            aload 5 /* session */
            ifnull 19
            aload 5 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 5 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        19: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 4
            aload 3
            ifnonnull 21
            aload 4
            astore 3
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 3
            aload 4
            if_acmpeq 22
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 3
            athrow
        23: .line 1012
      StackMap locals:
      StackMap stack:
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 2 /* sessionBreakpoint */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        24: .line 1014
            return
        end local 2 // com.oracle.truffle.api.debug.Breakpoint sessionBreakpoint
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0               this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   25     1             source  Lorg/graalvm/polyglot/Source;
            2   25     2  sessionBreakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            4   19     5            session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            5   17     6         resolvedBp  [Lcom/oracle/truffle/api/debug/Breakpoint;
            6   17     7    resolvedSection  [Lcom/oracle/truffle/api/source/SourceSection;
            7   17     8  bpResolveListener  Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;
            8   17     9         breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           4    17      18  any
           3    20      20  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakAtExpressions();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1018
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  EXPRESSION,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1023
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1024
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            anewarray com.oracle.truffle.api.debug.SourceElement
            dup
            iconst_0
            getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 1025
            aload 4 /* session */
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         5: .line 1026
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         6: .line 1027
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$50(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 1031
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         8: .line 1032
            aload 4 /* session */
            ifnull 14
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 14
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* session */
            ifnull 10
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        14: .line 1033
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
        15: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
        16: .line 1034
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            anewarray com.oracle.truffle.api.debug.SourceElement
            dup
            iconst_0
            getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        17: .line 1036
            aload 4 /* session */
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        18: .line 1037
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        19: .line 1038
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$51(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        20: .line 1042
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        21: .line 1043
            aload 4 /* session */
            ifnull 27
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 27
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        22: astore 2
            aload 4 /* session */
            ifnull 23
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        23: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 3
            aload 2
            ifnonnull 25
            aload 3
            astore 2
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 2
            aload 3
            if_acmpeq 26
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        26: aload 2
            athrow
        27: .line 1044
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   28     1      source  Lorg/graalvm/polyglot/Source;
            3   10     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4    8     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
           16   23     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           17   21     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3     8       9  any
           2    11      11  any
          16    21      22  any
          15    24      24  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakAtMultipleSourceElements();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1048
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,EXPRESSION,\n  EXPRESSION,STATEMENT,\n  STATEMENT,EXPRESSION\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1053
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1054
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            anewarray com.oracle.truffle.api.debug.SourceElement
            dup
            iconst_0
            getstatic com.oracle.truffle.api.debug.SourceElement.STATEMENT:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            dup
            iconst_1
            getstatic com.oracle.truffle.api.debug.SourceElement.EXPRESSION:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 1055
            aload 4 /* session */
            aload 5 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         5: .line 1056
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         6: .line 1057
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$52(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 1061
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$53(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         8: .line 1065
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         9: .line 1066
            aload 4 /* session */
            ifnull 15
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 15
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        10: astore 2
            aload 4 /* session */
            ifnull 11
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        11: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 3
            aload 2
            ifnonnull 13
            aload 3
            astore 2
            goto 14
      StackMap locals:
      StackMap stack:
        13: aload 2
            aload 3
            if_acmpeq 14
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        14: aload 2
            athrow
        15: .line 1067
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   16     1      source  Lorg/graalvm/polyglot/Source;
            3   11     4     session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            4    9     5  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3     9      10  any
           2    12      12  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testMisplacedLineBreakpoints();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1087
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            ldc "ROOT(\n  DEFINE(foo,\n    R3_STATEMENT,\n    EXPRESSION,\n    DEFINE(fooinner,\n      VARIABLE(n, 10),\n      \n      R6-9_STATEMENT\n    ),\n    R4-5_R10-12_STATEMENT(EXPRESSION),\n    CALL(fooinner)\n  ),\n  \n  R1-2_R13-16_STATEMENT,\n  CALL(foo)\n)\n"
            ldc "R"
            ldc "instrumentation-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertLineBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1088
            return
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testMisplacedLineBreakpoints2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1119
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            ldc "ROOT(\n  LOOP(2,\n    EXPRESSION),\n\n  LOOP(3,\n    EXPRESSION),\n\n  LOOP(1,\n    R1-9_STATEMENT),\n\n  LOOP(3,\n    EXPRESSION),\n\n  LOOP(2,\n    EXPRESSION),\n\n  LOOP(1, LOOP(1,\n    R10-25_STATEMENT)),\n\n  LOOP(3,\n    EXPRESSION),\n\n  LOOP(2,\n    EXPRESSION)\n)\n"
            ldc "R"
            ldc "instrumentation-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertLineBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1120
            return
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testMisplacedLineBreakpointsComplex();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1169
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            ldc "ROOT(\n  EXPRESSION,\n  EXPRESSION(\n    R1-4_STATEMENT,\n    EXPRESSION,\n    R5-7_STATEMENT,\n    EXPRESSION),\n\n  R8-9_STATEMENT,\n  LOOP(1,\n    EXPRESSION,\n    LOOP(1,\n      R10-14_STATEMENT),\n    EXPRESSION),\n\n  LOOP(1,\n    LOOP(1,\n      EXPRESSION)),\n  EXPRESSION(\n    LOOP(1,\n      R15-21_STATEMENT,\n      LOOP(1,\n        EXPRESSION,\n        R22-24_STATEMENT,\n        EXPRESSION(\n          R25-29_STATEMENT),\n        EXPRESSION),\n      EXPRESSION),\n    EXPRESSION),\n  EXPRESSION,\n  LOOP(1,\n    R30-32_STATEMENT),\n\n  LOOP(1,\n    LOOP(1,\n      EXPRESSION(\n        R33-37_STATEMENT),\n      R38_STATEMENT),\n    R39-43_STATEMENT),\n\n  LOOP(1,\n    EXPRESSION)\n)\n"
            ldc "R"
            ldc "instrumentation-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertLineBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1170
            return
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testMisplacedBreakpointPositions();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1174
            ldc " B1_{} R1-2_{S B2_}B3_\nR3_[SFB ]\n{F{B\n  B4_{I B5_ } R4-5_[SFIB B6_ R6-7_{S}B7_] B8_\n  {}\n  R8-11_{S}\nB9_}B10_}B11_\n"
            astore 1 /* source */
        start local 1 // java.lang.String source
         1: .line 1181
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.assertColumnPositionsTest:(Ljava/lang/String;)V
         2: .line 1182
            return
        end local 1 // java.lang.String source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1    3     1  source  Ljava/lang/String;
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  private void assertColumnPositionsTest(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // java.lang.String source
         0: .line 1185
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            aload 1 /* source */
            ldc "B"
            ldc "R"
            ldc "instrumentable-positions-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertColumnBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1186
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            invokevirtual com.oracle.truffle.tck.DebuggerTester.close:()V
         2: .line 1189
            aload 0 /* this */
            new com.oracle.truffle.tck.DebuggerTester
            dup
            iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            iconst_1
            invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
            ldc "instrumentable-positions-test-language.PreMaterialize"
            ldc "1"
            invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            invokespecial com.oracle.truffle.tck.DebuggerTester.<init>:(Lorg/graalvm/polyglot/Context$Builder;)V
            putfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
         3: .line 1190
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            aload 1 /* source */
            ldc "B"
            ldc "R"
            ldc "instrumentable-positions-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertColumnBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         4: .line 1191
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            invokevirtual com.oracle.truffle.tck.DebuggerTester.close:()V
         5: .line 1192
            aload 0 /* this */
            new com.oracle.truffle.tck.DebuggerTester
            dup
            iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            iconst_1
            invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
            ldc "instrumentable-positions-test-language.PreMaterialize"
            ldc "2"
            invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            invokespecial com.oracle.truffle.tck.DebuggerTester.<init>:(Lorg/graalvm/polyglot/Context$Builder;)V
            putfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
         6: .line 1193
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            aload 1 /* source */
            ldc "B"
            ldc "R"
            ldc "instrumentable-positions-test-language"
            invokevirtual com.oracle.truffle.tck.DebuggerTester.assertColumnBreakpointsResolution:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1194
            return
        end local 1 // java.lang.String source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    8     1  source  Ljava/lang/String;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      source  

  public void testFunctionSensitiveBreakpoints1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1199
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(foo0, ROOT()),\n  DEFINE(foo1, ROOT()),\n  STATEMENT,\n  CALL(foo0),\n  CALL(foo1)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1206
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1207
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         4: .line 1208
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 1209
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            aload 1 /* source */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$54(Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         6: .line 1217
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$55(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         7: .line 1222
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
         8: .line 1223
            aload 4 /* session */
            ifnull 14
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 14
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* session */
            ifnull 10
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        14: .line 1224
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   15     1   source  Lorg/graalvm/polyglot/Source;
            3   10     4  session  Lcom/oracle/truffle/api/debug/DebuggerSession;
      Exception table:
        from    to  target  type
           3     8       9  any
           2    11      11  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testFunctionSensitiveBreakpoints2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=11, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1230
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(\n    foo0, ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  DEFINE(\n    foo1, ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  STATEMENT,\n  CALL(foo0),\n  CALL(foo1)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1245
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1246
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         4: .line 1247
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 1248
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "foo0"
            aastore
            dup
            iconst_1
            ldc "foo1"
            aastore
            astore 5 /* functions */
        start local 5 // java.lang.String[] functions
         6: .line 1249
            iconst_2
            anewarray com.oracle.truffle.api.debug.Breakpoint
            astore 6 /* breakpoints */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
         7: .line 1250
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            aload 1 /* source */
            aload 5 /* functions */
            aload 6 /* breakpoints */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$56(Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         8: .line 1261
            iconst_0
            istore 7 /* f */
        start local 7 // int f
         9: goto 18
        10: .line 1262
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession java.lang.String[] com.oracle.truffle.api.debug.Breakpoint[] int
      StackMap stack:
            iload 7 /* f */
            istore 8 /* ff */
        start local 8 // int ff
        11: .line 1263
            iconst_0
            istore 9 /* iElem */
        start local 9 // int iElem
        12: goto 16
        13: .line 1264
      StackMap locals: int int
      StackMap stack:
            iconst_5
            iload 7 /* f */
            imul
            iconst_3
            iadd
            iload 9 /* iElem */
            iadd
            istore 10 /* expectedLine */
        start local 10 // int expectedLine
        14: .line 1265
            aload 0 /* this */
            iload 10 /* expectedLine */
            aload 6 /* breakpoints */
            iload 8 /* ff */
            invokedynamic onSuspend(I[Lcom/oracle/truffle/api/debug/Breakpoint;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$57(I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 10 // int expectedLine
        15: .line 1263
            iinc 9 /* iElem */ 1
      StackMap locals:
      StackMap stack:
        16: iload 9 /* iElem */
            invokestatic com.oracle.truffle.api.debug.SourceElement.values:()[Lcom/oracle/truffle/api/debug/SourceElement;
            arraylength
            if_icmplt 13
        end local 9 // int iElem
        end local 8 // int ff
        17: .line 1261
            iinc 7 /* f */ 1
      StackMap locals:
      StackMap stack:
        18: iload 7 /* f */
            aload 5 /* functions */
            arraylength
            if_icmplt 10
        end local 7 // int f
        19: .line 1273
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
        end local 5 // java.lang.String[] functions
        20: .line 1274
            aload 4 /* session */
            ifnull 26
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 26
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        21: astore 2
            aload 4 /* session */
            ifnull 22
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 3
            aload 2
            ifnonnull 24
            aload 3
            astore 2
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 2
            aload 3
            if_acmpeq 25
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
        26: .line 1275
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   27     0          this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   27     1        source  Lorg/graalvm/polyglot/Source;
            3   22     4       session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            6   20     5     functions  [Ljava/lang/String;
            7   20     6   breakpoints  [Lcom/oracle/truffle/api/debug/Breakpoint;
            9   19     7             f  I
           11   17     8            ff  I
           12   17     9         iElem  I
           14   15    10  expectedLine  I
      Exception table:
        from    to  target  type
           3    20      21  any
           2    23      23  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testFunctionSensitiveBreakpoints3();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1281
            aload 0 /* this */
            ldc "ROOT(\n  DEFINE(foo0,\n    ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  DEFINE(foo1,\n    ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  STATEMENT,\n  CALL(foo0),\n  CALL(foo1)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1296
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1297
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         4: .line 1298
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
         5: .line 1299
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "foo0"
            aastore
            dup
            iconst_1
            ldc "foo1"
            aastore
            astore 5 /* functions */
        start local 5 // java.lang.String[] functions
         6: .line 1300
            iconst_2
            iconst_2
            multianewarray [[Lcom/oracle/truffle/api/debug/Breakpoint; 2
            astore 6 /* breakpoints */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint[][] breakpoints
         7: .line 1301
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            aload 1 /* source */
            aload 5 /* functions */
            aload 6 /* breakpoints */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[[Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$58(Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
         8: .line 1315
            iconst_0
            istore 7 /* f */
        start local 7 // int f
         9: goto 14
        10: .line 1316
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession java.lang.String[] com.oracle.truffle.api.debug.Breakpoint[][] int
      StackMap stack:
            iload 7 /* f */
            istore 8 /* ff */
        start local 8 // int ff
        11: .line 1317
            iconst_5
            iload 7 /* f */
            imul
            iconst_4
            iadd
            istore 9 /* expectedLine */
        start local 9 // int expectedLine
        12: .line 1318
            aload 0 /* this */
            iload 9 /* expectedLine */
            aload 6 /* breakpoints */
            iload 8 /* ff */
            invokedynamic onSuspend(I[[Lcom/oracle/truffle/api/debug/Breakpoint;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$59(I[[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 9 // int expectedLine
        end local 8 // int ff
        13: .line 1315
            iinc 7 /* f */ 1
      StackMap locals:
      StackMap stack:
        14: iload 7 /* f */
            aload 5 /* functions */
            arraylength
            if_icmplt 10
        end local 7 // int f
        15: .line 1325
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint[][] breakpoints
        end local 5 // java.lang.String[] functions
        16: .line 1326
            aload 4 /* session */
            ifnull 22
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 22
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        17: astore 2
            aload 4 /* session */
            ifnull 18
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        18: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 3
            aload 2
            ifnonnull 20
            aload 3
            astore 2
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 2
            aload 3
            if_acmpeq 21
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        21: aload 2
            athrow
        22: .line 1327
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   23     1        source  Lorg/graalvm/polyglot/Source;
            3   18     4       session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            6   16     5     functions  [Ljava/lang/String;
            7   16     6   breakpoints  [[Lcom/oracle/truffle/api/debug/Breakpoint;
            9   15     7             f  I
           11   13     8            ff  I
           12   13     9  expectedLine  I
      Exception table:
        from    to  target  type
           3    16      17  any
           2    19      19  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testFunctionSensitiveBreakpointsInternal();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1332
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  CALL(foo0),\n  CALL(foo1),\n  CALL(foo2)\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1338
            ldc "instrumentation-test-language"
            ldc "ROOT(\n  DEFINE(foo0,\n    ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  DEFINE(foo1,\n    ROOT(\n      STATEMENT,\n      EXPRESSION)\n  ),\n  DEFINE(foo2,\n    ROOT(\n      CALL(foo0),\n      CALL(foo1))\n  )\n)\n"
         2: .line 1354
            ldc "SLInternal.sl"
         3: .line 1338
            invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
         4: .line 1354
            iconst_1
            invokevirtual org.graalvm.polyglot.Source$Builder.internal:(Z)Lorg/graalvm/polyglot/Source$Builder;
            invokevirtual org.graalvm.polyglot.Source$Builder.buildLiteral:()Lorg/graalvm/polyglot/Source;
         5: .line 1338
            astore 2 /* internalSource */
        start local 2 // org.graalvm.polyglot.Source internalSource
         6: .line 1355
            iconst_0
            istore 3 /* internalSession */
        start local 3 // boolean internalSession
         7: .line 1357
      StackMap locals: org.graalvm.polyglot.Source org.graalvm.polyglot.Source int
      StackMap stack:
            aconst_null
            astore 4
            aconst_null
            astore 5
         8: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 6 /* session */
        start local 6 // com.oracle.truffle.api.debug.DebuggerSession session
         9: .line 1358
            aload 6 /* session */
            invokestatic com.oracle.truffle.api.debug.SuspensionFilter.newBuilder:()Lcom/oracle/truffle/api/debug/SuspensionFilter$Builder;
            iload 3 /* internalSession */
            invokevirtual com.oracle.truffle.api.debug.SuspensionFilter$Builder.includeInternal:(Z)Lcom/oracle/truffle/api/debug/SuspensionFilter$Builder;
            invokevirtual com.oracle.truffle.api.debug.SuspensionFilter$Builder.build:()Lcom/oracle/truffle/api/debug/SuspensionFilter;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setSteppingFilter:(Lcom/oracle/truffle/api/debug/SuspensionFilter;)V
        10: .line 1359
            aload 0 /* this */
            aload 2 /* internalSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        11: .line 1360
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        12: .line 1361
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
        13: .line 1362
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        14: .line 1363
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "foo0"
            aastore
            dup
            iconst_1
            ldc "foo1"
            aastore
            astore 7 /* functions */
        start local 7 // java.lang.String[] functions
        15: .line 1364
            iconst_2
            anewarray com.oracle.truffle.api.debug.Breakpoint
            astore 8 /* breakpoints */
        start local 8 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
        16: .line 1365
            aload 0 /* this */
            aload 0 /* this */
            aload 6 /* session */
            aload 1 /* source */
            aload 7 /* functions */
            aload 8 /* breakpoints */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$60(Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        17: .line 1383
            iload 3 /* internalSession */
            ifne 26
        18: .line 1385
            iconst_0
            istore 9 /* f */
        start local 9 // int f
        19: goto 24
        20: .line 1386
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source org.graalvm.polyglot.Source int java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession java.lang.String[] com.oracle.truffle.api.debug.Breakpoint[] int
      StackMap stack:
            iload 9 /* f */
            istore 10 /* ff */
        start local 10 // int ff
        21: .line 1387
            iconst_3
            iload 9 /* f */
            iadd
            istore 11 /* expectedLine */
        start local 11 // int expectedLine
        22: .line 1388
            aload 0 /* this */
            iload 11 /* expectedLine */
            aload 8 /* breakpoints */
            iload 10 /* ff */
            invokedynamic onSuspend(I[Lcom/oracle/truffle/api/debug/Breakpoint;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$61(I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 11 // int expectedLine
        end local 10 // int ff
        23: .line 1385
            iinc 9 /* f */ 1
      StackMap locals:
      StackMap stack:
        24: iload 9 /* f */
            aload 7 /* functions */
            arraylength
            if_icmplt 20
        end local 9 // int f
        25: .line 1396
            goto 33
        26: .line 1399
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 9 /* f */
        start local 9 // int f
        27: goto 32
        28: .line 1400
      StackMap locals: int
      StackMap stack:
            iload 9 /* f */
            iconst_2
            irem
            istore 10 /* ff */
        start local 10 // int ff
        29: .line 1401
            iconst_2
            iconst_5
            iload 10 /* ff */
            imul
            iadd
            istore 11 /* expectedLine */
        start local 11 // int expectedLine
        30: .line 1402
            aload 0 /* this */
            iload 11 /* expectedLine */
            aload 8 /* breakpoints */
            iload 10 /* ff */
            invokedynamic onSuspend(I[Lcom/oracle/truffle/api/debug/Breakpoint;I)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$62(I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 11 // int expectedLine
        end local 10 // int ff
        31: .line 1399
            iinc 9 /* f */ 1
      StackMap locals:
      StackMap stack:
        32: iload 9 /* f */
            aload 7 /* functions */
            arraylength
            iconst_2
            imul
            if_icmplt 28
        end local 9 // int f
        33: .line 1411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 8 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
        end local 7 // java.lang.String[] functions
        34: .line 1412
            aload 6 /* session */
            ifnull 40
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 40
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source org.graalvm.polyglot.Source int java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        35: astore 4
            aload 6 /* session */
            ifnull 36
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 6 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        36: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: astore 5
            aload 4
            ifnonnull 38
            aload 5
            astore 4
            goto 39
      StackMap locals:
      StackMap stack:
        38: aload 4
            aload 5
            if_acmpeq 39
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        39: aload 4
            athrow
        40: .line 1413
      StackMap locals:
      StackMap stack:
            iload 3 /* internalSession */
            ifeq 41
            iconst_0
            goto 42
      StackMap locals:
      StackMap stack:
        41: iconst_1
      StackMap locals:
      StackMap stack: int
        42: dup
            istore 3 /* internalSession */
            ifne 7
        43: .line 1414
            return
        end local 3 // boolean internalSession
        end local 2 // org.graalvm.polyglot.Source internalSource
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   44     0             this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   44     1           source  Lorg/graalvm/polyglot/Source;
            6   44     2   internalSource  Lorg/graalvm/polyglot/Source;
            7   44     3  internalSession  Z
            9   36     6          session  Lcom/oracle/truffle/api/debug/DebuggerSession;
           15   34     7        functions  [Ljava/lang/String;
           16   34     8      breakpoints  [Lcom/oracle/truffle/api/debug/Breakpoint;
           19   25     9                f  I
           21   23    10               ff  I
           22   23    11     expectedLine  I
           27   33     9                f  I
           29   31    10               ff  I
           30   31    11     expectedLine  I
      Exception table:
        from    to  target  type
           9    34      35  any
           8    37      37  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStepOverBreakpoint();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1418
            aload 0 /* this */
            ldc "ROOT(\n  STATEMENT,\n  STATEMENT,\n  STATEMENT,\n  STATEMENT\n)\n"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         1: .line 1424
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 4 /* session */
        start local 4 // com.oracle.truffle.api.debug.DebuggerSession session
         3: .line 1425
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.suspendNextExecution:()V
         4: .line 1426
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 5 /* breakpoint3 */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
         5: .line 1427
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint4 */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
         6: .line 1428
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_5
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint5 */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
         7: .line 1429
            aload 4 /* session */
            aload 5 /* breakpoint3 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 1430
            aload 4 /* session */
            aload 6 /* breakpoint4 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         9: .line 1431
            aload 4 /* session */
            aload 7 /* breakpoint5 */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        10: .line 1432
            aload 6 /* breakpoint4 */
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
        11: .line 1434
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.startEval:(Lorg/graalvm/polyglot/Source;)V
        12: .line 1435
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$63(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        13: .line 1440
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* breakpoint3 */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$64(Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        14: .line 1446
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* session */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;Lcom/oracle/truffle/api/debug/DebuggerSession;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$65(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        15: .line 1452
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/test/BreakpointTest;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$66(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (7)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        16: .line 1457
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint5
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint4
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint3
        17: .line 1458
            aload 4 /* session */
            ifnull 23
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 23
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        18: astore 2
            aload 4 /* session */
            ifnull 19
            aload 4 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 4 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        19: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 3
            aload 2
            ifnonnull 21
            aload 3
            astore 2
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 2
            aload 3
            if_acmpeq 22
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
        23: .line 1459
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   24     1       source  Lorg/graalvm/polyglot/Source;
            3   19     4      session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            5   17     5  breakpoint3  Lcom/oracle/truffle/api/debug/Breakpoint;
            6   17     6  breakpoint4  Lcom/oracle/truffle/api/debug/Breakpoint;
            7   17     7  breakpoint5  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3    17      18  any
           2    20      20  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testRelativeSourceBreak();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1463
            ldc "relative source\nVarA"
            astore 1 /* sourceContent */
        start local 1 // java.lang.String sourceContent
         1: .line 1464
            ldc "relative/test.file"
            astore 2 /* relativePath */
        start local 2 // java.lang.String relativePath
         2: .line 1465
            new com.oracle.truffle.api.debug.test.TestDebugNoContentLanguage
            dup
            aload 2 /* relativePath */
            iconst_1
            iconst_1
            invokespecial com.oracle.truffle.api.debug.test.TestDebugNoContentLanguage.<init>:(Ljava/lang/String;ZZ)V
            astore 3 /* language */
        start local 3 // com.oracle.truffle.api.debug.test.TestDebugNoContentLanguage language
         3: .line 1466
            aload 3 /* language */
            invokestatic com.oracle.truffle.api.test.polyglot.ProxyLanguage.setDelegate:(Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;)Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;
            pop
         4: .line 1467
            aconst_null
            astore 4
            aconst_null
            astore 5
         5: aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            invokevirtual com.oracle.truffle.tck.DebuggerTester.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 6 /* session */
        start local 6 // com.oracle.truffle.api.debug.DebuggerSession session
         6: .line 1468
            new java.net.URI
            dup
            aconst_null
            aconst_null
            aload 2 /* relativePath */
            aconst_null
            invokespecial java.net.URI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Ljava/net/URI;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 7 /* breakpoint */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         7: .line 1469
            aload 6 /* session */
            aload 7 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         8: .line 1470
            ldc "proxyLanguage"
            aload 1 /* sourceContent */
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 8 /* source */
        start local 8 // org.graalvm.polyglot.Source source
         9: .line 1471
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            aload 8 /* source */
            invokevirtual com.oracle.truffle.tck.DebuggerTester.startEval:(Lorg/graalvm/polyglot/Source;)V
        10: .line 1472
            aload 0 /* this */
            aload 7 /* breakpoint */
            aload 2 /* relativePath */
            invokedynamic onSuspend(Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$67(Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 8 // org.graalvm.polyglot.Source source
        end local 7 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        11: .line 1487
            aload 6 /* session */
            ifnull 17
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 17
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest java.lang.String java.lang.String com.oracle.truffle.api.debug.test.TestDebugNoContentLanguage java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        12: astore 4
            aload 6 /* session */
            ifnull 13
            aload 6 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 6 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        13: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 5
            aload 4
            ifnonnull 15
            aload 5
            astore 4
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 4
            aload 5
            if_acmpeq 16
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 4
            athrow
        17: .line 1488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        18: .line 1489
            return
        end local 3 // com.oracle.truffle.api.debug.test.TestDebugNoContentLanguage language
        end local 2 // java.lang.String relativePath
        end local 1 // java.lang.String sourceContent
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   19     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   19     1  sourceContent  Ljava/lang/String;
            2   19     2   relativePath  Ljava/lang/String;
            3   19     3       language  Lcom/oracle/truffle/api/debug/test/TestDebugNoContentLanguage;
            6   13     6        session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            7   11     7     breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            9   11     8         source  Lorg/graalvm/polyglot/Source;
      Exception table:
        from    to  target  type
           6    11      12  any
           5    14      14  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testLazyParsingBreak();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1493
            new com.oracle.truffle.api.debug.test.TestLazyParsingLanguage
            dup
            invokespecial com.oracle.truffle.api.debug.test.TestLazyParsingLanguage.<init>:()V
            invokestatic com.oracle.truffle.api.test.polyglot.ProxyLanguage.setDelegate:(Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;)Lcom/oracle/truffle/api/test/polyglot/ProxyLanguage;
            pop
         1: .line 1494
            ldc "proxyLanguage"
            ldc "main\n\nfoo\n\nfoo2\n\n"
            invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
            astore 1 /* source */
        start local 1 // org.graalvm.polyglot.Source source
         2: .line 1501
            aload 1 /* source */
            invokevirtual org.graalvm.polyglot.Source.getLineCount:()I
            istore 2 /* lineCount */
        start local 2 // int lineCount
         3: .line 1502
            iload 2 /* lineCount */
            anewarray com.oracle.truffle.api.debug.Breakpoint
            astore 3 /* breakpoints */
        start local 3 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
         4: .line 1503
            iload 2 /* lineCount */
            newarray 10
            astore 4 /* resolvedLines */
        start local 4 // int[] resolvedLines
         5: .line 1504
            aconst_null
            astore 5
            aconst_null
            astore 6
         6: aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            invokevirtual com.oracle.truffle.tck.DebuggerTester.startSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 7 /* session */
        start local 7 // com.oracle.truffle.api.debug.DebuggerSession session
         7: .line 1505
            aload 7 /* session */
            ldc "breakpointsUnresolvedEmpty"
            invokestatic com.oracle.truffle.api.test.ReflectionUtils.getField:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         8: .line 1506
            iconst_1
            istore 8 /* l */
        start local 8 // int l
         9: goto 17
        10: .line 1507
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source int com.oracle.truffle.api.debug.Breakpoint[] int[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession int
      StackMap stack:
            iload 8 /* l */
            istore 9 /* line */
        start local 9 // int line
        11: .line 1508
            aload 0 /* this */
            aload 1 /* source */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iload 9 /* line */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 4 /* resolvedLines */
            iload 9 /* line */
            invokedynamic breakpointResolved([II)Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$68([IILcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V (6)
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.resolveListener:(Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
        12: .line 1510
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
        13: .line 1508
            astore 10 /* breakpoint */
        start local 10 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        14: .line 1511
            aload 3 /* breakpoints */
            iload 9 /* line */
            iconst_1
            isub
            aload 10 /* breakpoint */
            aastore
        15: .line 1512
            aload 7 /* session */
            aload 10 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        end local 10 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 9 // int line
        16: .line 1506
            iinc 8 /* l */ 1
      StackMap locals:
      StackMap stack:
        17: iload 8 /* l */
            iload 2 /* lineCount */
            if_icmple 10
        end local 8 // int l
        18: .line 1514
            aload 7 /* session */
            ldc "breakpointsUnresolvedEmpty"
            invokestatic com.oracle.truffle.api.test.ReflectionUtils.getField:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        19: .line 1515
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.BreakpointTest.tester:Lcom/oracle/truffle/tck/DebuggerTester;
            aload 1 /* source */
            invokevirtual com.oracle.truffle.tck.DebuggerTester.startEval:(Lorg/graalvm/polyglot/Source;)V
        20: .line 1516
            iconst_1
            istore 8 /* l */
        start local 8 // int l
        21: goto 25
        22: .line 1517
      StackMap locals:
      StackMap stack:
            iload 8 /* l */
            istore 9 /* line */
        start local 9 // int line
        23: .line 1518
            aload 0 /* this */
            iload 9 /* line */
            aload 3 /* breakpoints */
            aload 4 /* resolvedLines */
            iload 2 /* lineCount */
            invokedynamic onSuspend(I[Lcom/oracle/truffle/api/debug/Breakpoint;[II)Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$69(I[Lcom/oracle/truffle/api/debug/Breakpoint;[IILcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectSuspended:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)V
        end local 9 // int line
        24: .line 1516
            iinc 8 /* l */ 2
      StackMap locals:
      StackMap stack:
        25: iload 8 /* l */
            iload 2 /* lineCount */
            if_icmple 22
        end local 8 // int l
        26: .line 1533
            aload 7 /* session */
            ldc "breakpointsUnresolvedEmpty"
            invokestatic com.oracle.truffle.api.test.ReflectionUtils.getField:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        27: .line 1534
            aload 7 /* session */
            ifnull 33
            aload 7 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 33
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source int com.oracle.truffle.api.debug.Breakpoint[] int[] java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        28: astore 5
            aload 7 /* session */
            ifnull 29
            aload 7 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 7 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        29: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 6
            aload 5
            ifnonnull 31
            aload 6
            astore 5
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 5
            aload 6
            if_acmpeq 32
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        32: aload 5
            athrow
        33: .line 1535
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.expectDone:()Ljava/lang/String;
            pop
        34: .line 1536
            return
        end local 4 // int[] resolvedLines
        end local 3 // com.oracle.truffle.api.debug.Breakpoint[] breakpoints
        end local 2 // int lineCount
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   35     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            2   35     1         source  Lorg/graalvm/polyglot/Source;
            3   35     2      lineCount  I
            4   35     3    breakpoints  [Lcom/oracle/truffle/api/debug/Breakpoint;
            5   35     4  resolvedLines  [I
            7   29     7        session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            9   18     8              l  I
           11   16     9           line  I
           14   16    10     breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
           21   26     8              l  I
           23   24     9           line  I
      Exception table:
        from    to  target  type
           7    27      28  any
           6    30      30  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testBreakpointInRunningApp();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=12, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
         0: .line 1540
            aload 0 /* this */
            ldc "ROOT(DEFINE(test, ROOT(\nSTATEMENT,\nSTATEMENT,\nSTATEMENT)))"
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.testSource:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source;
            astore 1 /* testSource */
        start local 1 // org.graalvm.polyglot.Source testSource
         1: .line 1546
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
            astore 4 /* context */
        start local 4 // org.graalvm.polyglot.Context context
         3: .line 1547
            aload 4 /* context */
            invokevirtual org.graalvm.polyglot.Context.getEngine:()Lorg/graalvm/polyglot/Engine;
            invokevirtual org.graalvm.polyglot.Engine.getInstruments:()Ljava/util/Map;
            ldc "debugger"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Instrument
            ldc Lcom/oracle/truffle/api/debug/Debugger;
            invokevirtual org.graalvm.polyglot.Instrument.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Debugger
            astore 5 /* debugger */
        start local 5 // com.oracle.truffle.api.debug.Debugger debugger
         4: .line 1548
            aconst_null
            astore 6
            aconst_null
            astore 7
         5: aload 5 /* debugger */
            invokedynamic onSuspend()Lcom/oracle/truffle/api/debug/SuspendedCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$70(Lcom/oracle/truffle/api/debug/SuspendedEvent;)V (6)
                  (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
            invokevirtual com.oracle.truffle.api.debug.Debugger.startSession:(Lcom/oracle/truffle/api/debug/SuspendedCallback;)Lcom/oracle/truffle/api/debug/DebuggerSession;
            astore 8 /* session */
        start local 8 // com.oracle.truffle.api.debug.DebuggerSession session
         6: .line 1550
            aload 4 /* context */
            aload 1 /* testSource */
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            pop
         7: .line 1551
            aload 0 /* this */
            aload 1 /* testSource */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            astore 9 /* breakpointSource */
        start local 9 // com.oracle.truffle.api.source.Source breakpointSource
         8: .line 1552
            invokestatic java.util.concurrent.Executors.newSingleThreadExecutor:()Ljava/util/concurrent/ExecutorService;
            astore 10 /* instrumentationExecutor */
        start local 10 // java.util.concurrent.ExecutorService instrumentationExecutor
         9: .line 1553
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        10: goto 13
        11: .line 1554
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context com.oracle.truffle.api.debug.Debugger java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession com.oracle.truffle.api.source.Source java.util.concurrent.ExecutorService int
      StackMap stack:
            aload 4 /* context */
            aload 8 /* session */
            aload 10 /* instrumentationExecutor */
            aload 9 /* breakpointSource */
            invokestatic com.oracle.truffle.api.debug.test.BreakpointTest.checkParallelBreakpoint:(Lorg/graalvm/polyglot/Context;Lcom/oracle/truffle/api/debug/DebuggerSession;Ljava/util/concurrent/ExecutorService;Lcom/oracle/truffle/api/source/Source;)V
        12: .line 1553
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 11 /* i */
            sipush 1000
            if_icmplt 11
        end local 11 // int i
        end local 10 // java.util.concurrent.ExecutorService instrumentationExecutor
        end local 9 // com.oracle.truffle.api.source.Source breakpointSource
        14: .line 1556
            aload 8 /* session */
            ifnull 20
            aload 8 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
            goto 20
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest org.graalvm.polyglot.Source java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context com.oracle.truffle.api.debug.Debugger java.lang.Throwable java.lang.Throwable com.oracle.truffle.api.debug.DebuggerSession
      StackMap stack: java.lang.Throwable
        15: astore 6
            aload 8 /* session */
            ifnull 16
            aload 8 /* session */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
        end local 8 // com.oracle.truffle.api.debug.DebuggerSession session
      StackMap locals:
      StackMap stack:
        16: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 7
            aload 6
            ifnonnull 18
            aload 7
            astore 6
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 6
            aload 7
            if_acmpeq 19
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 6
            athrow
        end local 5 // com.oracle.truffle.api.debug.Debugger debugger
        20: .line 1557
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            ifnull 26
            aload 4 /* context */
            invokevirtual org.graalvm.polyglot.Context.close:()V
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 2
            aload 4 /* context */
            ifnull 22
            aload 4 /* context */
            invokevirtual org.graalvm.polyglot.Context.close:()V
        end local 4 // org.graalvm.polyglot.Context context
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 3
            aload 2
            ifnonnull 24
            aload 3
            astore 2
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 2
            aload 3
            if_acmpeq 25
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
        26: .line 1558
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.polyglot.Source testSource
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   27     0                     this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            1   27     1               testSource  Lorg/graalvm/polyglot/Source;
            3   22     4                  context  Lorg/graalvm/polyglot/Context;
            4   20     5                 debugger  Lcom/oracle/truffle/api/debug/Debugger;
            6   16     8                  session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            8   14     9         breakpointSource  Lcom/oracle/truffle/api/source/Source;
            9   14    10  instrumentationExecutor  Ljava/util/concurrent/ExecutorService;
           10   14    11                        i  I
      Exception table:
        from    to  target  type
           6    14      15  any
           5    17      17  any
           3    20      21  any
           2    23      23  any
    Exceptions:
      throws java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  private static void checkParallelBreakpoint(org.graalvm.polyglot.Context, com.oracle.truffle.api.debug.DebuggerSession, java.util.concurrent.ExecutorService, com.oracle.truffle.api.source.Source);
    descriptor: (Lorg/graalvm/polyglot/Context;Lcom/oracle/truffle/api/debug/DebuggerSession;Ljava/util/concurrent/ExecutorService;Lcom/oracle/truffle/api/source/Source;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // org.graalvm.polyglot.Context context
        start local 1 // com.oracle.truffle.api.debug.DebuggerSession session
        start local 2 // java.util.concurrent.ExecutorService instrumentationExecutor
        start local 3 // com.oracle.truffle.api.source.Source breakpointSource
         0: .line 1562
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            astore 4 /* resolved */
        start local 4 // java.util.concurrent.atomic.AtomicBoolean resolved
         1: .line 1563
            aload 3 /* breakpointSource */
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 4 /* resolved */
            invokedynamic breakpointResolved(Ljava/util/concurrent/atomic/AtomicBoolean;)Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$71(Ljava/util/concurrent/atomic/AtomicBoolean;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V (6)
                  (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.resolveListener:(Lcom/oracle/truffle/api/debug/Breakpoint$ResolveListener;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
         2: .line 1565
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
         3: .line 1563
            astore 5 /* breakpoint */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 1566
            aload 2 /* instrumentationExecutor */
            aload 1 /* session */
            aload 5 /* breakpoint */
            invokedynamic run(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$72(Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)V (6)
                  ()V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            astore 6 /* instrumentFuture */
        start local 6 // java.util.concurrent.Future instrumentFuture
         5: .line 1570
            aload 0 /* context */
            ldc "instrumentation-test-language"
            invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
            ldc "test"
            invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
            astore 7 /* test */
        start local 7 // org.graalvm.polyglot.Value test
         6: .line 1571
            aload 7 /* test */
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            pop
         7: .line 1572
            aload 6 /* instrumentFuture */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
         8: .line 1573
            aload 2 /* instrumentationExecutor */
            aload 5 /* breakpoint */
            invokedynamic run(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  com/oracle/truffle/api/debug/test/BreakpointTest.lambda$73(Lcom/oracle/truffle/api/debug/Breakpoint;)V (6)
                  ()V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
         9: .line 1575
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        10: .line 1576
            aload 4 /* resolved */
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        11: .line 1577
            return
        end local 7 // org.graalvm.polyglot.Value test
        end local 6 // java.util.concurrent.Future instrumentFuture
        end local 5 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 4 // java.util.concurrent.atomic.AtomicBoolean resolved
        end local 3 // com.oracle.truffle.api.source.Source breakpointSource
        end local 2 // java.util.concurrent.ExecutorService instrumentationExecutor
        end local 1 // com.oracle.truffle.api.debug.DebuggerSession session
        end local 0 // org.graalvm.polyglot.Context context
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   12     0                  context  Lorg/graalvm/polyglot/Context;
            0   12     1                  session  Lcom/oracle/truffle/api/debug/DebuggerSession;
            0   12     2  instrumentationExecutor  Ljava/util/concurrent/ExecutorService;
            0   12     3         breakpointSource  Lcom/oracle/truffle/api/source/Source;
            1   12     4                 resolved  Ljava/util/concurrent/atomic/AtomicBoolean;
            4   12     5               breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            5   12     6         instrumentFuture  Ljava/util/concurrent/Future<*>;
            6   12     7                     test  Lorg/graalvm/polyglot/Value;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
                         Name  Flags
      context                  
      session                  
      instrumentationExecutor  
      breakpointSource         

  private static void lambda$0(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 128
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 129
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 130
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$1(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 160
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 161
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 162
            ldc "Null"
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
            invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 163
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$2(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 165
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 166
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.BEFORE:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 167
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         3: .line 168
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$3(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 170
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 171
            getstatic com.oracle.truffle.api.debug.SuspendAnchor.AFTER:Lcom/oracle/truffle/api/debug/SuspendAnchor;
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSuspendAnchor:()Lcom/oracle/truffle/api/debug/SuspendAnchor;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 172
            ldc "10"
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getReturnValue:()Lcom/oracle/truffle/api/debug/DebugValue;
            invokevirtual com.oracle.truffle.api.debug.DebugValue.toDisplayString:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 173
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$4(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 190
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 191
            aload 1 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         2: .line 192
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$5(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 200
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 201
            aload 1 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         2: .line 202
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$6(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 214
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 215
            aload 1 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         2: .line 216
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$7(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 223
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 224
            aload 1 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
         2: .line 225
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$8(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 248
            ldc "STATEMENT"
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getCharacters:()Ljava/lang/CharSequence;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 249
            ldc 2
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 250
            lconst_0
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 251
            aload 0 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         4: .line 252
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$9(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 255
            ldc "STATEMENT"
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getCharacters:()Ljava/lang/CharSequence;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 256
            ldc 3
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 257
            lconst_1
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 258
            aload 0 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         4: .line 259
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$10(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 262
            ldc "STATEMENT"
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getCharacters:()Ljava/lang/CharSequence;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 263
            ldc 4
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 264
            lconst_0
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 265
            aload 0 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepInto:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         4: .line 266
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$11(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 285
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 286
            aload 1 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         2: .line 287
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$12(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 297
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         1: .line 298
            aload 0 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 299
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$13(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 301
            ldc 2
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 302
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            aload 0
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         2: .line 303
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            aload 1
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         3: .line 304
            aload 2 /* event */
            aload 0
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         4: .line 305
            aload 2 /* event */
            aload 1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpointConditionException:(Lcom/oracle/truffle/api/debug/Breakpoint;)Ljava/lang/Throwable;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         5: .line 306
            aload 2 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         6: .line 307
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$14(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 309
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         1: .line 310
            aload 0 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 311
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$15(com.oracle.truffle.api.debug.Breakpoint, java.lang.String, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 341
            lconst_1
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 342
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            astore 4 /* hit */
        start local 4 // com.oracle.truffle.api.debug.Breakpoint hit
         2: .line 343
            aload 1
            aload 4 /* hit */
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 344
            aload 2
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // com.oracle.truffle.api.debug.Breakpoint hit
         4: .line 345
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    5     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    4     4    hit  Lcom/oracle/truffle/api/debug/Breakpoint;

  private void lambda$16(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.Breakpoint, java.lang.String, java.lang.String, java.lang.String, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 6 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 348
            lconst_1
            aload 6 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 349
            aload 6 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            astore 7 /* hit */
        start local 7 // com.oracle.truffle.api.debug.Breakpoint hit
         2: .line 350
            aload 1
            aload 7 /* hit */
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 351
            aload 2
            aload 3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         4: .line 352
            aload 1
            aload 4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         5: .line 353
            aload 5
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 7 // com.oracle.truffle.api.debug.Breakpoint hit
         6: .line 354
            return
        end local 6 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    7     6  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    6     7    hit  Lcom/oracle/truffle/api/debug/Breakpoint;

  private void lambda$17(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.Breakpoint, java.lang.String, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 357
            lconst_1
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 358
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            astore 5 /* hit */
        start local 5 // com.oracle.truffle.api.debug.Breakpoint hit
         2: .line 359
            aload 1
            aload 5 /* hit */
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 360
            aload 1
            aconst_null
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         4: .line 361
            aload 2
            aconst_null
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setCondition:(Ljava/lang/String;)V
         5: .line 362
            aload 3
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getOutput:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 5 // com.oracle.truffle.api.debug.Breakpoint hit
         6: .line 363
            return
        end local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    7     4  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    6     5    hit  Lcom/oracle/truffle/api/debug/Breakpoint;

  private static void lambda$18(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 365
            ldc 2
            aload 0 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 366
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$19(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 394
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 395
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         2: .line 396
            aload 1 /* event */
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         3: .line 397
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$20(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 399
            aload 0
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 400
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 401
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 402
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$21(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 404
            aload 0
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 405
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 406
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 407
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$22(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 409
            aload 0
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 410
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 411
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 412
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$23(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 437
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 438
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 439
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 440
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$24(int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 466
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
            ldc "loopIndex0"
            aastore
            dup
            iconst_1
            iload 1
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            aastore
            dup
            iconst_2
            ldc "loopResult0"
            aastore
            dup
            iconst_3
            ldc "Null"
            aastore
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         1: .line 467
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$25(int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 492
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
            ldc "loopIndex0"
            aastore
            dup
            iconst_1
            iload 1
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            aastore
            dup
            iconst_2
            ldc "loopResult0"
            aastore
            dup
            iconst_3
            ldc "Null"
            aastore
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         1: .line 493
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$26(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 524
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 525
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 526
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 527
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$27(com.oracle.truffle.api.debug.DebuggerSession, org.graalvm.polyglot.Source, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 549
            aload 0 /* this */
            aload 3 /* event */
            iconst_5
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 550
            lconst_0
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 551
            aload 1
            aload 0 /* this */
            aload 2
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_3
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         3: .line 552
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         4: .line 553
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    5     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$28(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 556
            aload 0 /* this */
            aload 1 /* event */
            iconst_3
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 557
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         2: .line 558
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$29(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 577
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "STATEMENT"
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
            ldc "loopIndex0"
            aastore
            dup
            iconst_1
            ldc "0"
            aastore
            dup
            iconst_2
            ldc "loopResult0"
            aastore
            dup
            iconst_3
            ldc "Null"
            aastore
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 578
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 579
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 580
            aload 1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         4: .line 581
            lconst_1
            aload 1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         5: .line 583
            aload 1
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.setEnabled:(Z)V
         6: .line 584
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         7: .line 585
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    8     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$30(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 588
            lconst_1
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 589
            aload 0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 590
            aload 0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isEnabled:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         3: .line 591
            ldc 2
            aload 0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.getHitCount:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         4: .line 592
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         5: .line 593
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$31(com.oracle.truffle.api.source.SourceSection, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 610
            aload 0 /* this */
            aload 3 /* event */
            iconst_1
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 611
            aload 1
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 612
            aload 2
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 613
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         4: .line 614
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    5     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$32(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 664
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         1: .line 665
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$33(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 667
            aload 0 /* this */
            aload 1 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         1: .line 668
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$34(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 671
            aload 0 /* this */
            aload 1 /* event */
            bipush 10
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         1: .line 672
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$35(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 716
            aload 0 /* this */
            aload 2 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 717
            aload 1
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;Z)V
         2: .line 718
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$36(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 748
            aload 0 /* this */
            aload 2 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 749
            aload 1
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;Z)V
         2: .line 750
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$37(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 782
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_2
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 783
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$38(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 785
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 786
            aload 1
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;Z)V
         2: .line 787
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$39(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 789
            aload 0 /* this */
            aload 1 /* event */
            iconst_5
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 790
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    2     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$40(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 865
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 866
            lconst_1
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 867
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.Breakpoint
            astore 2 /* eventBP */
        start local 2 // com.oracle.truffle.api.debug.Breakpoint eventBP
         3: .line 869
            aload 2 /* eventBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
         4: .line 870
            ldc "Public dispose must not be possible for global breakpoints."
            invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
         5: .line 871
            goto 7
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.debug.Breakpoint
      StackMap stack: java.lang.IllegalStateException
         6: pop
         7: .line 874
      StackMap locals:
      StackMap stack:
            aload 2 /* eventBP */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         8: .line 875
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
        end local 2 // com.oracle.truffle.api.debug.Breakpoint eventBP
         9: .line 876
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0   10     1    event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            3    9     2  eventBP  Lcom/oracle/truffle/api/debug/Breakpoint;
      Exception table:
        from    to  target  type
           3     5       6  Class java.lang.IllegalStateException

  private void lambda$41(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 886
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 887
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         2: .line 888
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$42(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 942
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 943
            aload 0 /* this */
            aload 2 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         2: .line 944
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$43(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 946
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 947
            aload 0 /* this */
            aload 2 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         2: .line 948
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$44(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 951
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 952
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 953
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$45(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 957
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertNotSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 958
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         2: .line 959
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$46(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 963
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 964
            aload 0 /* this */
            aload 2 /* event */
            bipush 6
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 965
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$47(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 967
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSession:()Lcom/oracle/truffle/api/debug/DebuggerSession;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 968
            aload 0 /* this */
            aload 2 /* event */
            bipush 7
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 969
            aload 1
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.close:()V
         3: .line 970
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
         4: .line 971
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    5     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$48(com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.source.SourceSection[], com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.source.SourceSection);
    descriptor: ([Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        start local 3 // com.oracle.truffle.api.source.SourceSection section
         0: .line 992
            aload 0
            iconst_0
            aload 2 /* breakpoint */
            aastore
         1: .line 993
            aload 1
            iconst_0
            aload 3 /* section */
            aastore
         2: .line 994
            return
        end local 3 // com.oracle.truffle.api.source.SourceSection section
        end local 2 // com.oracle.truffle.api.debug.Breakpoint breakpoint
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     2  breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;
            0    3     3     section  Lcom/oracle/truffle/api/source/SourceSection;

  private void lambda$49(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.source.SourceSection[], com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/debug/Breakpoint;[Lcom/oracle/truffle/api/source/SourceSection;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1001
            aload 1
            aload 2
            iconst_0
            aaload
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1002
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            aload 3
            iconst_0
            aaload
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 1003
            aload 0 /* this */
            aload 4 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         3: .line 1004
            lconst_1
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         4: .line 1005
            aload 1
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 1006
            return
        end local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    6     4  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$50(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1028
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1029
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "EXPRESSION"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1030
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$51(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1039
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1040
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "EXPRESSION"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1041
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$52(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1058
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1059
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "EXPRESSION"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1060
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$53(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1062
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1063
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1064
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$54(com.oracle.truffle.api.debug.DebuggerSession, org.graalvm.polyglot.Source, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1210
            aload 0 /* this */
            aload 3 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 1212
            aload 1
            aload 2
            invokevirtual org.graalvm.polyglot.Source.getLanguage:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getTopScope:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugScope;
            astore 4 /* functionScope */
        start local 4 // com.oracle.truffle.api.debug.DebugScope functionScope
         2: .line 1213
            aload 4 /* functionScope */
            ldc "foo0"
            invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
            astore 5 /* foo0 */
        start local 5 // com.oracle.truffle.api.debug.DebugValue foo0
         3: .line 1214
            aload 0 /* this */
            aload 2
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 5 /* foo0 */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            anewarray com.oracle.truffle.api.debug.SourceElement
            dup
            iconst_0
            getstatic com.oracle.truffle.api.debug.SourceElement.ROOT:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            astore 6 /* breakpoint */
        start local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
         4: .line 1215
            aload 1
            aload 6 /* breakpoint */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        end local 6 // com.oracle.truffle.api.debug.Breakpoint breakpoint
        end local 5 // com.oracle.truffle.api.debug.DebugValue foo0
        end local 4 // com.oracle.truffle.api.debug.DebugScope functionScope
         5: .line 1216
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    6     3          event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    5     4  functionScope  Lcom/oracle/truffle/api/debug/DebugScope;
            3    5     5           foo0  Lcom/oracle/truffle/api/debug/DebugValue;
            4    5     6     breakpoint  Lcom/oracle/truffle/api/debug/Breakpoint;

  private void lambda$55(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1219
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc " ROOT()"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 1220
            lconst_1
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 1221
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$56(com.oracle.truffle.api.debug.DebuggerSession, org.graalvm.polyglot.Source, java.lang.String[], com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=9, args_size=6
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1251
            aload 0 /* this */
            aload 5 /* event */
            bipush 12
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 1253
            aload 1
            aload 2
            invokevirtual org.graalvm.polyglot.Source.getLanguage:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getTopScope:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugScope;
            astore 6 /* functionScope */
        start local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
         2: .line 1254
            iconst_0
            istore 7 /* f */
        start local 7 // int f
         3: goto 8
         4: .line 1255
      StackMap locals: com.oracle.truffle.api.debug.DebugScope int
      StackMap stack:
            aload 6 /* functionScope */
            aload 3
            iload 7 /* f */
            aaload
            invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
            astore 8 /* foo */
        start local 8 // com.oracle.truffle.api.debug.DebugValue foo
         5: .line 1257
            aload 4
            iload 7 /* f */
            aload 0 /* this */
            aload 2
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokestatic com.oracle.truffle.api.debug.SourceElement.values:()[Lcom/oracle/truffle/api/debug/SourceElement;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            aastore
         6: .line 1258
            aload 1
            aload 4
            iload 7 /* f */
            aaload
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        end local 8 // com.oracle.truffle.api.debug.DebugValue foo
         7: .line 1254
            iinc 7 /* f */ 1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* f */
            aload 3
            arraylength
            if_icmplt 4
        end local 7 // int f
        end local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
         9: .line 1260
            return
        end local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0   10     5          event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    9     6  functionScope  Lcom/oracle/truffle/api/debug/DebugScope;
            3    9     7              f  I
            5    7     8            foo  Lcom/oracle/truffle/api/debug/DebugValue;

  private static void lambda$57(int, com.oracle.truffle.api.debug.Breakpoint[], int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1266
            iload 0
            i2l
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1267
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            astore 4 /* bpHit */
        start local 4 // java.util.List bpHit
         2: .line 1268
            lconst_1
            aload 4 /* bpHit */
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 1269
            aload 1
            iload 2
            aaload
            aload 4 /* bpHit */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // java.util.List bpHit
         4: .line 1270
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    4     4  bpHit  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;

  private void lambda$58(com.oracle.truffle.api.debug.DebuggerSession, org.graalvm.polyglot.Source, java.lang.String[], com.oracle.truffle.api.debug.Breakpoint[][], com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=13, args_size=6
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1302
            aload 0 /* this */
            aload 5 /* event */
            bipush 12
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 1304
            aload 1
            aload 2
            invokevirtual org.graalvm.polyglot.Source.getLanguage:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getTopScope:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugScope;
            astore 6 /* functionScope */
        start local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
         2: .line 1305
            iconst_0
            istore 7 /* f */
        start local 7 // int f
         3: goto 13
         4: .line 1306
      StackMap locals: com.oracle.truffle.api.debug.DebugScope int
      StackMap stack:
            aload 6 /* functionScope */
            aload 3
            iload 7 /* f */
            aaload
            invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
            astore 8 /* foo */
        start local 8 // com.oracle.truffle.api.debug.DebugValue foo
         5: .line 1308
            aload 4
            iload 7 /* f */
            aaload
            iconst_0
            aload 0 /* this */
            aload 2
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_4
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            aastore
         6: .line 1309
            aload 4
            iload 7 /* f */
            aaload
            iconst_1
            aload 0 /* this */
            aload 2
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.getSourceImpl:(Lorg/graalvm/polyglot/Source;)Lcom/oracle/truffle/api/source/Source;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/Source;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            bipush 9
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.lineIs:(I)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            aastore
         7: .line 1310
            aload 4
            iload 7 /* f */
            aaload
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 11
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest com.oracle.truffle.api.debug.DebuggerSession org.graalvm.polyglot.Source java.lang.String[] com.oracle.truffle.api.debug.Breakpoint[][] com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.debug.DebugScope int com.oracle.truffle.api.debug.DebugValue top int int com.oracle.truffle.api.debug.Breakpoint[]
      StackMap stack:
         8: aload 12
            iload 10
            aaload
            astore 9 /* b */
        start local 9 // com.oracle.truffle.api.debug.Breakpoint b
         9: .line 1311
            aload 1
            aload 9 /* b */
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        end local 9 // com.oracle.truffle.api.debug.Breakpoint b
        10: .line 1310
            iinc 10 1
      StackMap locals:
      StackMap stack:
        11: iload 10
            iload 11
            if_icmplt 8
        end local 8 // com.oracle.truffle.api.debug.DebugValue foo
        12: .line 1305
            iinc 7 /* f */ 1
      StackMap locals: com.oracle.truffle.api.debug.test.BreakpointTest com.oracle.truffle.api.debug.DebuggerSession org.graalvm.polyglot.Source java.lang.String[] com.oracle.truffle.api.debug.Breakpoint[][] com.oracle.truffle.api.debug.SuspendedEvent com.oracle.truffle.api.debug.DebugScope int
      StackMap stack:
        13: iload 7 /* f */
            aload 3
            arraylength
            if_icmplt 4
        end local 7 // int f
        end local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
        14: .line 1314
            return
        end local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0   15     5          event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2   14     6  functionScope  Lcom/oracle/truffle/api/debug/DebugScope;
            3   14     7              f  I
            5   12     8            foo  Lcom/oracle/truffle/api/debug/DebugValue;
            9   10     9              b  Lcom/oracle/truffle/api/debug/Breakpoint;

  private static void lambda$59(int, com.oracle.truffle.api.debug.Breakpoint[][], int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (I[[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1319
            iload 0
            i2l
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1320
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            astore 4 /* bpHit */
        start local 4 // java.util.List bpHit
         2: .line 1321
            lconst_1
            aload 4 /* bpHit */
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         3: .line 1322
            aload 1
            iload 2
            aaload
            iload 2
            aaload
            aload 4 /* bpHit */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // java.util.List bpHit
         4: .line 1323
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2    4     4  bpHit  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;

  private void lambda$60(com.oracle.truffle.api.debug.DebuggerSession, org.graalvm.polyglot.Source, java.lang.String[], com.oracle.truffle.api.debug.Breakpoint[], com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lorg/graalvm/polyglot/Source;[Ljava/lang/String;[Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=7, locals=10, args_size=6
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1366
            aload 0 /* this */
            aload 5 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         1: .line 1368
            aload 1
            aload 2
            invokevirtual org.graalvm.polyglot.Source.getLanguage:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.getTopScope:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugScope;
            astore 6 /* functionScope */
        start local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
         2: .line 1369
            iconst_0
            istore 7 /* f */
        start local 7 // int f
         3: goto 13
         4: .line 1370
      StackMap locals: com.oracle.truffle.api.debug.DebugScope int
      StackMap stack:
            aload 6 /* functionScope */
            aload 3
            iload 7 /* f */
            aaload
            invokevirtual com.oracle.truffle.api.debug.DebugScope.getDeclaredValue:(Ljava/lang/String;)Lcom/oracle/truffle/api/debug/DebugValue;
            astore 8 /* foo */
        start local 8 // com.oracle.truffle.api.debug.DebugValue foo
         5: .line 1371
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            invokevirtual com.oracle.truffle.api.source.Source.isInternal:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         6: .line 1374
            iload 7 /* f */
            ifne 9
         7: .line 1375
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.DebugValue.getSourceLocation:()Lcom/oracle/truffle/api/source/SourceSection;
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Lcom/oracle/truffle/api/source/SourceSection;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            astore 9 /* builder */
        start local 9 // com.oracle.truffle.api.debug.Breakpoint$Builder builder
         8: .line 1376
            goto 10
        end local 9 // com.oracle.truffle.api.debug.Breakpoint$Builder builder
         9: .line 1377
      StackMap locals: com.oracle.truffle.api.debug.DebugValue
      StackMap stack:
            aconst_null
            invokestatic com.oracle.truffle.api.debug.Breakpoint.newBuilder:(Ljava/net/URI;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            astore 9 /* builder */
        start local 9 // com.oracle.truffle.api.debug.Breakpoint$Builder builder
        10: .line 1379
      StackMap locals: com.oracle.truffle.api.debug.Breakpoint$Builder
      StackMap stack:
            aload 4
            iload 7 /* f */
            aload 9 /* builder */
            aload 8 /* foo */
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.rootInstance:(Lcom/oracle/truffle/api/debug/DebugValue;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            iconst_1
            anewarray com.oracle.truffle.api.debug.SourceElement
            dup
            iconst_0
            getstatic com.oracle.truffle.api.debug.SourceElement.ROOT:Lcom/oracle/truffle/api/debug/SourceElement;
            aastore
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.sourceElements:([Lcom/oracle/truffle/api/debug/SourceElement;)Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
            invokevirtual com.oracle.truffle.api.debug.Breakpoint$Builder.build:()Lcom/oracle/truffle/api/debug/Breakpoint;
            aastore
        11: .line 1380
            aload 1
            aload 4
            iload 7 /* f */
            aaload
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
        end local 9 // com.oracle.truffle.api.debug.Breakpoint$Builder builder
        end local 8 // com.oracle.truffle.api.debug.DebugValue foo
        12: .line 1369
            iinc 7 /* f */ 1
      StackMap locals:
      StackMap stack:
        13: iload 7 /* f */
            aload 3
            arraylength
            if_icmplt 4
        end local 7 // int f
        end local 6 // com.oracle.truffle.api.debug.DebugScope functionScope
        14: .line 1382
            return
        end local 5 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0           this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0   15     5          event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2   14     6  functionScope  Lcom/oracle/truffle/api/debug/DebugScope;
            3   14     7              f  I
            5   12     8            foo  Lcom/oracle/truffle/api/debug/DebugValue;
            8    9     9        builder  Lcom/oracle/truffle/api/debug/Breakpoint$Builder;
           10   12     9        builder  Lcom/oracle/truffle/api/debug/Breakpoint$Builder;

  private static void lambda$61(int, com.oracle.truffle.api.debug.Breakpoint[], int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1389
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            invokevirtual com.oracle.truffle.api.source.Source.isInternal:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         1: .line 1390
            iload 0
            i2l
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 1391
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            astore 4 /* bpHit */
        start local 4 // java.util.List bpHit
         3: .line 1392
            lconst_1
            aload 4 /* bpHit */
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         4: .line 1393
            aload 1
            iload 2
            aaload
            aload 4 /* bpHit */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // java.util.List bpHit
         5: .line 1394
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            3    5     4  bpHit  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;

  private static void lambda$62(int, com.oracle.truffle.api.debug.Breakpoint[], int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (I[Lcom/oracle/truffle/api/debug/Breakpoint;ILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=4
        start local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1403
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            invokevirtual com.oracle.truffle.api.source.Source.isInternal:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         1: .line 1404
            iload 0
            i2l
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         2: .line 1405
            aload 3 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            astore 4 /* bpHit */
        start local 4 // java.util.List bpHit
         3: .line 1406
            lconst_1
            aload 4 /* bpHit */
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         4: .line 1407
            aload 1
            iload 2
            aaload
            aload 4 /* bpHit */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // java.util.List bpHit
         5: .line 1408
            return
        end local 3 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     3  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            3    5     4  bpHit  Ljava/util/List<Lcom/oracle/truffle/api/debug/Breakpoint;>;

  private void lambda$63(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1437
            lconst_0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1438
            aload 0 /* this */
            aload 1 /* event */
            iconst_2
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1439
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$64(com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1442
            lconst_1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1443
            aload 1
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 1444
            aload 0 /* this */
            aload 2 /* event */
            iconst_3
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         3: .line 1445
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$65(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1448
            lconst_0
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1449
            aload 0 /* this */
            aload 2 /* event */
            iconst_4
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1450
            aload 1
            getstatic com.oracle.truffle.api.debug.Breakpoint$Kind.SOURCE_LOCATION:Lcom/oracle/truffle/api/debug/Breakpoint$Kind;
            iconst_0
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.setBreakpointsActive:(Lcom/oracle/truffle/api/debug/Breakpoint$Kind;Z)V
         3: .line 1451
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    4     2  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private void lambda$66(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
        start local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1454
            lconst_0
            aload 1 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1455
            aload 0 /* this */
            aload 1 /* event */
            iconst_5
            iconst_1
            ldc "STATEMENT"
            iconst_0
            anewarray java.lang.String
            invokevirtual com.oracle.truffle.api.debug.test.BreakpointTest.checkState:(Lcom/oracle/truffle/api/debug/SuspendedEvent;IZLjava/lang/String;[Ljava/lang/String;)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            iconst_1
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareStepOver:(I)Lcom/oracle/truffle/api/debug/SuspendedEvent;
            pop
         2: .line 1456
            return
        end local 1 // com.oracle.truffle.api.debug.SuspendedEvent event
        end local 0 // com.oracle.truffle.api.debug.test.BreakpointTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/oracle/truffle/api/debug/test/BreakpointTest;
            0    3     1  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$67(com.oracle.truffle.api.debug.Breakpoint, java.lang.String, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;Ljava/lang/String;Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=5, args_size=3
        start local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1473
            aload 0
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1474
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            astore 3 /* sourceSection */
        start local 3 // com.oracle.truffle.api.source.SourceSection sourceSection
         2: .line 1475
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.isAvailable:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         3: .line 1476
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.hasLines:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 1477
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.hasColumns:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         5: .line 1478
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.hasCharIndex:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         6: .line 1479
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            invokevirtual com.oracle.truffle.api.source.Source.hasCharacters:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         7: .line 1481
            aload 3 /* sourceSection */
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            invokevirtual com.oracle.truffle.api.source.Source.getURI:()Ljava/net/URI;
            astore 4 /* uri */
        start local 4 // java.net.URI uri
         8: .line 1482
            aload 4 /* uri */
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            aload 4 /* uri */
            invokevirtual java.net.URI.isAbsolute:()Z
            invokestatic org.junit.Assert.assertFalse:(Ljava/lang/String;Z)V
         9: .line 1483
            aload 1
            aload 4 /* uri */
            invokevirtual java.net.URI.getPath:()Ljava/lang/String;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 1485
            aload 2 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
        end local 4 // java.net.URI uri
        end local 3 // com.oracle.truffle.api.source.SourceSection sourceSection
        11: .line 1486
            return
        end local 2 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     2          event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
            2   11     3  sourceSection  Lcom/oracle/truffle/api/source/SourceSection;
            8   11     4            uri  Ljava/net/URI;

  private static void lambda$68(int[], int, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.source.SourceSection);
    descriptor: ([IILcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 2 // com.oracle.truffle.api.debug.Breakpoint b
        start local 3 // com.oracle.truffle.api.source.SourceSection section
         0: .line 1509
            aload 0
            iload 1
            iconst_1
            isub
            aload 3 /* section */
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            iastore
         1: .line 1510
            return
        end local 3 // com.oracle.truffle.api.source.SourceSection section
        end local 2 // com.oracle.truffle.api.debug.Breakpoint b
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     2        b  Lcom/oracle/truffle/api/debug/Breakpoint;
            0    2     3  section  Lcom/oracle/truffle/api/source/SourceSection;

  private static void lambda$69(int, com.oracle.truffle.api.debug.Breakpoint[], int[], int, com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (I[Lcom/oracle/truffle/api/debug/Breakpoint;[IILcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=6, args_size=5
        start local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1519
            iload 0
            i2l
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getStartLine:()I
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         1: .line 1520
            new java.lang.StringBuilder
            dup
            ldc "Breakpoint at line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1
            iload 0
            iconst_1
            isub
            aaload
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            if_acmpeq 2
            aload 1
            iload 0
            iconst_1
            isub
            aaload
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            if_acmpeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack: java.lang.String
         2: iconst_1
      StackMap locals: int com.oracle.truffle.api.debug.Breakpoint[] int[] int com.oracle.truffle.api.debug.SuspendedEvent
      StackMap stack: java.lang.String int
         3: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
         4: .line 1521
            new java.lang.StringBuilder
            dup
            ldc "Breakpoint at line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1
            iload 0
            aaload
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            if_acmpeq 5
            aload 1
            iload 0
            aaload
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.getBreakpoints:()Ljava/util/List;
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            if_acmpeq 5
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack: java.lang.String
         5: iconst_1
      StackMap locals: int com.oracle.truffle.api.debug.Breakpoint[] int[] int com.oracle.truffle.api.debug.SuspendedEvent
      StackMap stack: java.lang.String int
         6: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
         7: .line 1523
            iload 0
            i2l
            aload 2
            iload 0
            iconst_1
            isub
            iaload
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         8: .line 1524
            iload 0
            i2l
            aload 2
            iload 0
            iaload
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
         9: .line 1526
            iload 0
            iconst_2
            iadd
            istore 5 /* l2 */
        start local 5 // int l2
        10: goto 14
        11: .line 1527
      StackMap locals: int
      StackMap stack:
            aload 1
            iload 5 /* l2 */
            iconst_1
            isub
            aaload
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 1528
            lconst_0
            aload 2
            iload 5 /* l2 */
            iconst_1
            isub
            iaload
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        13: .line 1526
            iinc 5 /* l2 */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* l2 */
            iload 3
            if_icmplt 11
        end local 5 // int l2
        15: .line 1530
            aload 4 /* event */
            invokevirtual com.oracle.truffle.api.debug.SuspendedEvent.prepareContinue:()V
        16: .line 1531
            return
        end local 4 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     4  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;
           10   15     5     l2  I

  private static void lambda$70(com.oracle.truffle.api.debug.SuspendedEvent);
    descriptor: (Lcom/oracle/truffle/api/debug/SuspendedEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
         0: .line 1549
            return
        end local 0 // com.oracle.truffle.api.debug.SuspendedEvent event
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  event  Lcom/oracle/truffle/api/debug/SuspendedEvent;

  private static void lambda$71(java.util.concurrent.atomic.AtomicBoolean, com.oracle.truffle.api.debug.Breakpoint, com.oracle.truffle.api.source.SourceSection);
    descriptor: (Ljava/util/concurrent/atomic/AtomicBoolean;Lcom/oracle/truffle/api/debug/Breakpoint;Lcom/oracle/truffle/api/source/SourceSection;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 1 // com.oracle.truffle.api.debug.Breakpoint b
        start local 2 // com.oracle.truffle.api.source.SourceSection section
         0: .line 1564
            aload 0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         1: .line 1565
            return
        end local 2 // com.oracle.truffle.api.source.SourceSection section
        end local 1 // com.oracle.truffle.api.debug.Breakpoint b
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     1        b  Lcom/oracle/truffle/api/debug/Breakpoint;
            0    2     2  section  Lcom/oracle/truffle/api/source/SourceSection;

  private static void lambda$72(com.oracle.truffle.api.debug.DebuggerSession, com.oracle.truffle.api.debug.Breakpoint);
    descriptor: (Lcom/oracle/truffle/api/debug/DebuggerSession;Lcom/oracle/truffle/api/debug/Breakpoint;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1567
            aload 0
            aload 1
            invokevirtual com.oracle.truffle.api.debug.DebuggerSession.install:(Lcom/oracle/truffle/api/debug/Breakpoint;)Lcom/oracle/truffle/api/debug/Breakpoint;
            pop
         1: .line 1568
            aload 1
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.isResolved:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         2: .line 1569
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$73(com.oracle.truffle.api.debug.Breakpoint);
    descriptor: (Lcom/oracle/truffle/api/debug/Breakpoint;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1574
            aload 0
            invokevirtual com.oracle.truffle.api.debug.Breakpoint.dispose:()V
         1: .line 1575
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "BreakpointTest.java"
InnerClasses:
  public final Builder = com.oracle.truffle.api.debug.Breakpoint$Builder of com.oracle.truffle.api.debug.Breakpoint
  public final Kind = com.oracle.truffle.api.debug.Breakpoint$Kind of com.oracle.truffle.api.debug.Breakpoint
  public abstract ResolveListener = com.oracle.truffle.api.debug.Breakpoint$ResolveListener of com.oracle.truffle.api.debug.Breakpoint
  public final Builder = com.oracle.truffle.api.debug.SuspensionFilter$Builder of com.oracle.truffle.api.debug.SuspensionFilter
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
  public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source