class com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl implements com.oracle.truffle.tools.chromeinspector.ScriptsHandler$LoadScriptListener
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl
  super_class: java.lang.Object
{
  final com.oracle.truffle.tools.chromeinspector.InspectorDebugger this$0;
    descriptor: Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private void <init>(com.oracle.truffle.tools.chromeinspector.InspectorDebugger);
    descriptor: (Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
         0: .line 945
            aload 0 /* this */
            aload 1
            putfield com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl.this$0:Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger$LoadScriptListenerImpl;
    MethodParameters:
        Name  Flags
      this$0  final

  public void loadedScript(com.oracle.truffle.tools.chromeinspector.types.Script);
    descriptor: (Lcom/oracle/truffle/tools/chromeinspector/types/Script;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
        start local 1 // com.oracle.truffle.tools.chromeinspector.types.Script script
         0: .line 949
            new com.oracle.truffle.tools.utils.json.JSONObject
            dup
            invokespecial com.oracle.truffle.tools.utils.json.JSONObject.<init>:()V
            astore 2 /* jsonParams */
        start local 2 // com.oracle.truffle.tools.utils.json.JSONObject jsonParams
         1: .line 950
            aload 2 /* jsonParams */
            ldc "scriptId"
            aload 1 /* script */
            invokevirtual com.oracle.truffle.tools.chromeinspector.types.Script.getId:()I
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
         2: .line 951
            aload 2 /* jsonParams */
            ldc "url"
            aload 1 /* script */
            invokevirtual com.oracle.truffle.tools.chromeinspector.types.Script.getUrl:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
         3: .line 952
            aload 2 /* jsonParams */
            ldc "startLine"
            iconst_0
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;I)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
         4: .line 953
            aload 2 /* jsonParams */
            ldc "startColumn"
            iconst_0
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;I)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
         5: .line 954
            aload 1 /* script */
            invokevirtual com.oracle.truffle.tools.chromeinspector.types.Script.getSource:()Lcom/oracle/truffle/api/source/Source;
            astore 3 /* source */
        start local 3 // com.oracle.truffle.api.source.Source source
         6: .line 958
            aload 3 /* source */
            invokevirtual com.oracle.truffle.api.source.Source.hasCharacters:()Z
            ifeq 26
         7: .line 959
            aload 3 /* source */
            invokevirtual com.oracle.truffle.api.source.Source.getLineCount:()I
            iconst_1
            isub
            istore 4 /* lastLine */
        start local 4 // int lastLine
         8: .line 960
            iload 4 /* lastLine */
            ifge 12
         9: .line 961
            iconst_0
            istore 4 /* lastLine */
        10: .line 962
            iconst_0
            istore 5 /* lastColumn */
        start local 5 // int lastColumn
        11: .line 963
            goto 24
        end local 5 // int lastColumn
        12: .line 964
      StackMap locals: com.oracle.truffle.tools.utils.json.JSONObject com.oracle.truffle.api.source.Source int
      StackMap stack:
            aload 3 /* source */
            iload 4 /* lastLine */
            iconst_1
            iadd
            invokevirtual com.oracle.truffle.api.source.Source.getLineLength:(I)I
            istore 5 /* lastColumn */
        start local 5 // int lastColumn
        13: .line 965
            iload 4 /* lastLine */
            iconst_1
            iadd
            istore 7 /* srcMapLine */
        start local 7 // int srcMapLine
        14: .line 968
      StackMap locals: com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl com.oracle.truffle.tools.chromeinspector.types.Script com.oracle.truffle.tools.utils.json.JSONObject com.oracle.truffle.api.source.Source int int top int
      StackMap stack:
            aload 3 /* source */
            iload 7 /* srcMapLine */
            invokevirtual com.oracle.truffle.api.source.Source.getCharacters:(I)Ljava/lang/CharSequence;
            astore 8 /* line */
        start local 8 // java.lang.CharSequence line
        15: .line 969
            iinc 7 /* srcMapLine */ -1
        16: .line 972
            iload 7 /* srcMapLine */
            ifle 17
            aload 8 /* line */
            invokeinterface java.lang.CharSequence.length:()I
            ifeq 14
            ldc "});"
            aload 8 /* line */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
        17: .line 973
      StackMap locals: java.lang.CharSequence
      StackMap stack:
            iload 7 /* srcMapLine */
            ifle 18
            aload 0 /* this */
            aload 3 /* source */
            iload 7 /* srcMapLine */
            invokevirtual com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl.getSourceMapURL:(Lcom/oracle/truffle/api/source/Source;I)Ljava/lang/CharSequence;
            goto 19
      StackMap locals:
      StackMap stack:
        18: aconst_null
      StackMap locals:
      StackMap stack: java.lang.CharSequence
        19: astore 9 /* sourceMapURL */
        start local 9 // java.lang.CharSequence sourceMapURL
        20: .line 974
            aload 9 /* sourceMapURL */
            ifnull 24
        21: .line 975
            aload 2 /* jsonParams */
            ldc "sourceMapURL"
            aload 9 /* sourceMapURL */
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        22: .line 976
            iload 7 /* srcMapLine */
            iconst_1
            isub
            istore 4 /* lastLine */
        23: .line 977
            aload 3 /* source */
            iload 4 /* lastLine */
            iconst_1
            iadd
            invokevirtual com.oracle.truffle.api.source.Source.getLineLength:(I)I
            istore 5 /* lastColumn */
        end local 9 // java.lang.CharSequence sourceMapURL
        end local 8 // java.lang.CharSequence line
        end local 7 // int srcMapLine
        24: .line 980
      StackMap locals: com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl com.oracle.truffle.tools.chromeinspector.types.Script com.oracle.truffle.tools.utils.json.JSONObject com.oracle.truffle.api.source.Source int int
      StackMap stack:
            aload 3 /* source */
            invokevirtual com.oracle.truffle.api.source.Source.getLength:()I
            istore 6 /* length */
        start local 6 // int length
        25: .line 981
            goto 29
        end local 6 // int length
        end local 5 // int lastColumn
        end local 4 // int lastLine
        26: .line 982
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 4 /* lastLine */
        start local 4 // int lastLine
        27: .line 983
            iconst_0
            istore 5 /* lastColumn */
        start local 5 // int lastColumn
        28: .line 984
            aload 1 /* script */
            invokevirtual com.oracle.truffle.tools.chromeinspector.types.Script.getCharacters:()Ljava/lang/CharSequence;
            invokeinterface java.lang.CharSequence.length:()I
            istore 6 /* length */
        start local 6 // int length
        29: .line 986
      StackMap locals: int int int
      StackMap stack:
            aload 2 /* jsonParams */
            ldc "endLine"
            iload 4 /* lastLine */
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;I)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        30: .line 987
            aload 2 /* jsonParams */
            ldc "endColumn"
            iload 5 /* lastColumn */
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;I)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        31: .line 988
            aload 2 /* jsonParams */
            ldc "executionContextId"
            aload 0 /* this */
            getfield com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl.this$0:Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;
            getfield com.oracle.truffle.tools.chromeinspector.InspectorDebugger.context:Lcom/oracle/truffle/tools/chromeinspector/InspectorExecutionContext;
            invokevirtual com.oracle.truffle.tools.chromeinspector.InspectorExecutionContext.getId:()J
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;J)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        32: .line 989
            aload 2 /* jsonParams */
            ldc "hash"
            aload 1 /* script */
            invokevirtual com.oracle.truffle.tools.chromeinspector.types.Script.getHash:()Ljava/lang/String;
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        33: .line 990
            aload 2 /* jsonParams */
            ldc "length"
            iload 6 /* length */
            invokevirtual com.oracle.truffle.tools.utils.json.JSONObject.put:(Ljava/lang/String;I)Lcom/oracle/truffle/tools/utils/json/JSONObject;
            pop
        34: .line 991
            new com.oracle.truffle.tools.chromeinspector.commands.Params
            dup
            aload 2 /* jsonParams */
            invokespecial com.oracle.truffle.tools.chromeinspector.commands.Params.<init>:(Lcom/oracle/truffle/tools/utils/json/JSONObject;)V
            astore 7 /* params */
        start local 7 // com.oracle.truffle.tools.chromeinspector.commands.Params params
        35: .line 992
            new com.oracle.truffle.tools.chromeinspector.events.Event
            dup
            ldc "Debugger.scriptParsed"
            aload 7 /* params */
            invokespecial com.oracle.truffle.tools.chromeinspector.events.Event.<init>:(Ljava/lang/String;Lcom/oracle/truffle/tools/chromeinspector/commands/Params;)V
            astore 8 /* scriptParsed */
        start local 8 // com.oracle.truffle.tools.chromeinspector.events.Event scriptParsed
        36: .line 993
            aload 0 /* this */
            getfield com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl.this$0:Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;
            invokestatic com.oracle.truffle.tools.chromeinspector.InspectorDebugger.access$0:(Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger;)Lcom/oracle/truffle/tools/chromeinspector/events/EventHandler;
            aload 8 /* scriptParsed */
            invokeinterface com.oracle.truffle.tools.chromeinspector.events.EventHandler.event:(Lcom/oracle/truffle/tools/chromeinspector/events/Event;)V
        37: .line 994
            return
        end local 8 // com.oracle.truffle.tools.chromeinspector.events.Event scriptParsed
        end local 7 // com.oracle.truffle.tools.chromeinspector.commands.Params params
        end local 6 // int length
        end local 5 // int lastColumn
        end local 4 // int lastLine
        end local 3 // com.oracle.truffle.api.source.Source source
        end local 2 // com.oracle.truffle.tools.utils.json.JSONObject jsonParams
        end local 1 // com.oracle.truffle.tools.chromeinspector.types.Script script
        end local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   38     0          this  Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger$LoadScriptListenerImpl;
            0   38     1        script  Lcom/oracle/truffle/tools/chromeinspector/types/Script;
            1   38     2    jsonParams  Lcom/oracle/truffle/tools/utils/json/JSONObject;
            6   38     3        source  Lcom/oracle/truffle/api/source/Source;
            8   26     4      lastLine  I
           27   38     4      lastLine  I
           11   12     5    lastColumn  I
           13   26     5    lastColumn  I
           28   38     5    lastColumn  I
           25   26     6        length  I
           29   38     6        length  I
           14   24     7    srcMapLine  I
           15   24     8          line  Ljava/lang/CharSequence;
           20   24     9  sourceMapURL  Ljava/lang/CharSequence;
           35   38     7        params  Lcom/oracle/truffle/tools/chromeinspector/commands/Params;
           36   38     8  scriptParsed  Lcom/oracle/truffle/tools/chromeinspector/events/Event;
    MethodParameters:
        Name  Flags
      script  

  private java.lang.CharSequence getSourceMapURL(com.oracle.truffle.api.source.Source, int);
    descriptor: (Lcom/oracle/truffle/api/source/Source;I)Ljava/lang/CharSequence;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
        start local 1 // com.oracle.truffle.api.source.Source source
        start local 2 // int lastLine
         0: .line 997
            ldc "sourceMappingURL="
            astore 3 /* mapKeyword */
        start local 3 // java.lang.String mapKeyword
         1: .line 998
            aload 3 /* mapKeyword */
            invokevirtual java.lang.String.length:()I
            istore 4 /* mapKeywordLenght */
        start local 4 // int mapKeywordLenght
         2: .line 999
            aload 1 /* source */
            iload 2 /* lastLine */
            iconst_1
            iadd
            invokevirtual com.oracle.truffle.api.source.Source.getCharacters:(I)Ljava/lang/CharSequence;
            astore 5 /* line */
        start local 5 // java.lang.CharSequence line
         3: .line 1000
            aload 5 /* line */
            invokeinterface java.lang.CharSequence.length:()I
            istore 6 /* lineLength */
        start local 6 // int lineLength
         4: .line 1001
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: .line 1002
            goto 7
         6: .line 1003
      StackMap locals: com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl com.oracle.truffle.api.source.Source int java.lang.String int java.lang.CharSequence int int
      StackMap stack:
            iinc 7 /* i */ 1
         7: .line 1002
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 6 /* lineLength */
            if_icmpge 8
            aload 5 /* line */
            iload 7 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 6
         8: .line 1005
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iconst_3
            iadd
            iload 6 /* lineLength */
            if_icmpge 12
            aload 5 /* line */
            iload 7 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 47
            if_icmpne 12
            aload 5 /* line */
            iload 7 /* i */
            iconst_1
            iadd
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 47
            if_icmpne 12
         9: .line 1006
            aload 5 /* line */
            iload 7 /* i */
            iconst_2
            iadd
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 35
            if_icmpeq 10
            aload 5 /* line */
            iload 7 /* i */
            iconst_2
            iadd
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 64
            if_icmpne 12
        10: .line 1007
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 3
        11: .line 1008
            goto 14
        12: .line 1009
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        13: .line 1012
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
        14: .line 1011
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 6 /* lineLength */
            if_icmpge 15
            aload 5 /* line */
            iload 7 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 13
        15: .line 1014
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 4 /* mapKeywordLenght */
            iadd
            iload 6 /* lineLength */
            if_icmpge 18
            aload 5 /* line */
            iload 7 /* i */
            iload 7 /* i */
            iload 4 /* mapKeywordLenght */
            iadd
            invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
            aload 3 /* mapKeyword */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 1015
            iload 7 /* i */
            iload 4 /* mapKeywordLenght */
            iadd
            istore 7 /* i */
        17: .line 1016
            goto 19
        18: .line 1017
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        19: .line 1019
      StackMap locals:
      StackMap stack:
            aload 5 /* line */
            iload 7 /* i */
            aload 5 /* line */
            invokeinterface java.lang.CharSequence.length:()I
            invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
            areturn
        end local 7 // int i
        end local 6 // int lineLength
        end local 5 // java.lang.CharSequence line
        end local 4 // int mapKeywordLenght
        end local 3 // java.lang.String mapKeyword
        end local 2 // int lastLine
        end local 1 // com.oracle.truffle.api.source.Source source
        end local 0 // com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   20     0              this  Lcom/oracle/truffle/tools/chromeinspector/InspectorDebugger$LoadScriptListenerImpl;
            0   20     1            source  Lcom/oracle/truffle/api/source/Source;
            0   20     2          lastLine  I
            1   20     3        mapKeyword  Ljava/lang/String;
            2   20     4  mapKeywordLenght  I
            3   20     5              line  Ljava/lang/CharSequence;
            4   20     6        lineLength  I
            5   20     7                 i  I
    MethodParameters:
          Name  Flags
      source    
      lastLine  
}
SourceFile: "InspectorDebugger.java"
NestHost: com.oracle.truffle.tools.chromeinspector.InspectorDebugger
InnerClasses:
  private LoadScriptListenerImpl = com.oracle.truffle.tools.chromeinspector.InspectorDebugger$LoadScriptListenerImpl of com.oracle.truffle.tools.chromeinspector.InspectorDebugger
  abstract LoadScriptListener = com.oracle.truffle.tools.chromeinspector.ScriptsHandler$LoadScriptListener of com.oracle.truffle.tools.chromeinspector.ScriptsHandler