public final class com.oracle.graal.python.parser.ScopeInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.graal.python.parser.ScopeInfo
  super_class: java.lang.Object
{
  private final java.lang.String scopeId;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor;
    descriptor: Lcom/oracle/truffle/api/frame/FrameDescriptor;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.ArrayList<java.lang.String> identifierToIndex;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  private com.oracle.graal.python.parser.ScopeInfo$ScopeKind scopeKind;
    descriptor: Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
    flags: (0x0002) ACC_PRIVATE

  private final com.oracle.graal.python.parser.ScopeInfo parent;
    descriptor: Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.graal.python.parser.ScopeInfo firstChildScope;
    descriptor: Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0002) ACC_PRIVATE

  private com.oracle.graal.python.parser.ScopeInfo nextChildScope;
    descriptor: Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Set<java.lang.String> explicitGlobalVariables;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.util.Set<java.lang.String> explicitNonlocalVariables;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.util.TreeSet<java.lang.String> cellVars;
    descriptor: Ljava/util/TreeSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/TreeSet<Ljava/lang/String;>;

  private java.util.TreeSet<java.lang.String> freeVars;
    descriptor: Ljava/util/TreeSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/TreeSet<Ljava/lang/String;>;

  private java.util.List<com.oracle.graal.python.nodes.expression.ExpressionNode> defaultArgumentNodes;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lcom/oracle/graal/python/nodes/expression/ExpressionNode;>;

  private java.util.List<com.oracle.graal.python.nodes.function.FunctionDefinitionNode$KwDefaultExpressionNode> kwDefaultArgumentNodes;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lcom/oracle/graal/python/nodes/function/FunctionDefinitionNode$KwDefaultExpressionNode;>;

  private java.util.TreeSet<java.lang.String> seenVars;
    descriptor: Ljava/util/TreeSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/TreeSet<Ljava/lang/String;>;

  private boolean annotationsField;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final int serializationId;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String qualname;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final com.oracle.truffle.api.frame.FrameSlot[] EMPTY;
    descriptor: [Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$com$oracle$graal$python$parser$ScopeInfo$ScopeKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 47
            ldc Lcom/oracle/graal/python/parser/ScopeInfo;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
         3: .line 349
            iconst_0
            anewarray com.oracle.truffle.api.frame.FrameSlot
            putstatic com.oracle.graal.python.parser.ScopeInfo.EMPTY:[Lcom/oracle/truffle/api/frame/FrameSlot;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.lang.String, com.oracle.graal.python.parser.ScopeInfo$ScopeKind, com.oracle.truffle.api.frame.FrameDescriptor, com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Ljava/lang/String;Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;Lcom/oracle/truffle/api/frame/FrameDescriptor;Lcom/oracle/graal/python/parser/ScopeInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String scopeId
        start local 2 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
        start local 3 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        start local 4 // com.oracle.graal.python.parser.ScopeInfo parent
         0: .line 115
            aload 0 /* this */
            aload 1 /* scopeId */
            iconst_m1
            aload 2 /* kind */
            aload 3 /* frameDescriptor */
            aload 4 /* parent */
            invokespecial com.oracle.graal.python.parser.ScopeInfo.<init>:(Ljava/lang/String;ILcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;Lcom/oracle/truffle/api/frame/FrameDescriptor;Lcom/oracle/graal/python/parser/ScopeInfo;)V
         1: .line 116
            return
        end local 4 // com.oracle.graal.python.parser.ScopeInfo parent
        end local 3 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        end local 2 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
        end local 1 // java.lang.String scopeId
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1          scopeId  Ljava/lang/String;
            0    2     2             kind  Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            0    2     3  frameDescriptor  Lcom/oracle/truffle/api/frame/FrameDescriptor;
            0    2     4           parent  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
                 Name  Flags
      scopeId          
      kind             
      frameDescriptor  
      parent           

  private void <init>(java.lang.String, int, com.oracle.graal.python.parser.ScopeInfo$ScopeKind, com.oracle.truffle.api.frame.FrameDescriptor, com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Ljava/lang/String;ILcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;Lcom/oracle/truffle/api/frame/FrameDescriptor;Lcom/oracle/graal/python/parser/ScopeInfo;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String scopeId
        start local 2 // int serializationId
        start local 3 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
        start local 4 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        start local 5 // com.oracle.graal.python.parser.ScopeInfo parent
         0: .line 118
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 119
            aload 0 /* this */
            aload 1 /* scopeId */
            putfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
         2: .line 120
            aload 0 /* this */
            aload 3 /* kind */
            putfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
         3: .line 121
            aload 0 /* this */
            aload 4 /* frameDescriptor */
            ifnonnull 4
            new com.oracle.truffle.api.frame.FrameDescriptor
            dup
            invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
            goto 5
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo java.lang.String int com.oracle.graal.python.parser.ScopeInfo$ScopeKind com.oracle.truffle.api.frame.FrameDescriptor com.oracle.graal.python.parser.ScopeInfo
      StackMap stack: com.oracle.graal.python.parser.ScopeInfo
         4: aload 4 /* frameDescriptor */
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo java.lang.String int com.oracle.graal.python.parser.ScopeInfo$ScopeKind com.oracle.truffle.api.frame.FrameDescriptor com.oracle.graal.python.parser.ScopeInfo
      StackMap stack: com.oracle.graal.python.parser.ScopeInfo com.oracle.truffle.api.frame.FrameDescriptor
         5: putfield com.oracle.graal.python.parser.ScopeInfo.frameDescriptor:Lcom/oracle/truffle/api/frame/FrameDescriptor;
         6: .line 122
            aload 0 /* this */
            aload 5 /* parent */
            putfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
         7: .line 123
            aload 0 /* this */
            iconst_0
            putfield com.oracle.graal.python.parser.ScopeInfo.annotationsField:Z
         8: .line 124
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.identifierToIndex:Ljava/util/ArrayList;
         9: .line 126
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            ifnull 12
        10: .line 127
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            putfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
        11: .line 128
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            aload 0 /* this */
            putfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
        12: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* serializationId */
            iconst_m1
            if_icmpne 13
            aload 0 /* this */
            invokevirtual java.lang.Object.hashCode:()I
            goto 14
      StackMap locals:
      StackMap stack: com.oracle.graal.python.parser.ScopeInfo
        13: iload 2 /* serializationId */
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo java.lang.String int com.oracle.graal.python.parser.ScopeInfo$ScopeKind com.oracle.truffle.api.frame.FrameDescriptor com.oracle.graal.python.parser.ScopeInfo
      StackMap stack: com.oracle.graal.python.parser.ScopeInfo int
        14: putfield com.oracle.graal.python.parser.ScopeInfo.serializationId:I
        15: .line 132
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.computeQualname:()Ljava/lang/String;
            putfield com.oracle.graal.python.parser.ScopeInfo.qualname:Ljava/lang/String;
        16: .line 133
            return
        end local 5 // com.oracle.graal.python.parser.ScopeInfo parent
        end local 4 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        end local 3 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
        end local 2 // int serializationId
        end local 1 // java.lang.String scopeId
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0   17     1          scopeId  Ljava/lang/String;
            0   17     2  serializationId  I
            0   17     3             kind  Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            0   17     4  frameDescriptor  Lcom/oracle/truffle/api/frame/FrameDescriptor;
            0   17     5           parent  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
                 Name  Flags
      scopeId          
      serializationId  
      kind             
      frameDescriptor  
      parent           

  private java.lang.String computeQualname();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 136
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Module:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpeq 12
         1: .line 137
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         2: .line 138
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            ifnull 7
         3: .line 139
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.isExplicitGlobalVariable:(Ljava/lang/String;)Z
            ifne 7
         4: .line 140
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getQualname:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 141
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            invokestatic com.oracle.graal.python.parser.ScopeInfo.isScopeFunctionLike:(Lcom/oracle/graal/python/parser/ScopeInfo;)Z
            ifeq 7
         6: .line 142
            aload 1 /* sb */
            ldc ".<locals>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 146
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.isScopeFunctionLike:(Lcom/oracle/graal/python/parser/ScopeInfo;)Z
            ifne 8
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Class:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpne 11
         8: .line 147
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifeq 10
         9: .line 148
            aload 1 /* sb */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 152
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        12: .line 154
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
            2   12     1    sb  Ljava/lang/StringBuilder;

  private static boolean isScopeFunctionLike(com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Lcom/oracle/graal/python/parser/ScopeInfo;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo scope
         0: .line 159
            invokestatic com.oracle.graal.python.parser.ScopeInfo.$SWITCH_TABLE$com$oracle$graal$python$parser$ScopeInfo$ScopeKind:()[I
            aload 0 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getScopeKind:()Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iaload
            tableswitch { // 2 - 8
                    2: 1
                    3: 2
                    4: 1
                    5: 1
                    6: 1
                    7: 1
                    8: 1
              default: 2
          }
         1: .line 166
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 168
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo scope
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  scope  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
       Name  Flags
      scope  

  public com.oracle.graal.python.parser.ScopeInfo getFirstChildScope();
    descriptor: ()Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 173
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public com.oracle.graal.python.parser.ScopeInfo getNextChildScope();
    descriptor: ()Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 177
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public java.lang.String getScopeId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 181
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public java.lang.String getQualname();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 185
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.qualname:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public int getSerializetionId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 189
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.serializationId:I
            ireturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public com.oracle.graal.python.parser.ScopeInfo$ScopeKind getScopeKind();
    descriptor: ()Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 193
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public void setAsGenerator();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 197
            getstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Function:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpeq 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Generator:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Generator:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            putfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
         2: .line 199
            return
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public com.oracle.truffle.api.frame.FrameDescriptor getFrameDescriptor();
    descriptor: ()Lcom/oracle/truffle/api/frame/FrameDescriptor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 202
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.frameDescriptor:Lcom/oracle/truffle/api/frame/FrameDescriptor;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public boolean hasAnnotations();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 206
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.annotationsField:Z
            ireturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public void setHasAnnotations(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // boolean hasAnnotations
         0: .line 210
            aload 0 /* this */
            iload 1 /* hasAnnotations */
            putfield com.oracle.graal.python.parser.ScopeInfo.annotationsField:Z
         1: .line 211
            return
        end local 1 // boolean hasAnnotations
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  hasAnnotations  Z
    MethodParameters:
                Name  Flags
      hasAnnotations  

  public void setFrameDescriptor(com.oracle.truffle.api.frame.FrameDescriptor);
    descriptor: (Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
         0: .line 214
            aload 0 /* this */
            aload 1 /* frameDescriptor */
            putfield com.oracle.graal.python.parser.ScopeInfo.frameDescriptor:Lcom/oracle/truffle/api/frame/FrameDescriptor;
         1: .line 215
            return
        end local 1 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  frameDescriptor  Lcom/oracle/truffle/api/frame/FrameDescriptor;
    MethodParameters:
                 Name  Flags
      frameDescriptor  

  public com.oracle.graal.python.parser.ScopeInfo getParent();
    descriptor: ()Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 218
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public com.oracle.truffle.api.frame.FrameSlot findFrameSlot(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 222
            getstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
            ifne 1
            aload 1 /* identifier */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "identifier is null!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            aload 1 /* identifier */
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.findFrameSlot:(Ljava/lang/Object;)Lcom/oracle/truffle/api/frame/FrameSlot;
            areturn
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public com.oracle.truffle.api.frame.FrameSlot createSlotIfNotPresent(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 227
            getstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
            ifne 1
            aload 1 /* identifier */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "identifier is null!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            aload 1 /* identifier */
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.findFrameSlot:(Ljava/lang/Object;)Lcom/oracle/truffle/api/frame/FrameSlot;
            astore 2 /* frameSlot */
        start local 2 // com.oracle.truffle.api.frame.FrameSlot frameSlot
         2: .line 229
            aload 2 /* frameSlot */
            ifnonnull 5
         3: .line 230
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.identifierToIndex:Ljava/util/ArrayList;
            aload 1 /* identifier */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 231
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            aload 1 /* identifier */
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.addFrameSlot:(Ljava/lang/Object;)Lcom/oracle/truffle/api/frame/FrameSlot;
            areturn
         5: .line 233
      StackMap locals: com.oracle.truffle.api.frame.FrameSlot
      StackMap stack:
            aload 2 /* frameSlot */
            areturn
        end local 2 // com.oracle.truffle.api.frame.FrameSlot frameSlot
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    6     1  identifier  Ljava/lang/String;
            2    6     2   frameSlot  Lcom/oracle/truffle/api/frame/FrameSlot;
    MethodParameters:
            Name  Flags
      identifier  

  public void addSeenVar(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String name
         0: .line 238
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.seenVars:Ljava/util/TreeSet;
            ifnonnull 2
         1: .line 239
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.seenVars:Ljava/util/TreeSet;
         2: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.seenVars:Ljava/util/TreeSet;
            aload 1 /* name */
            invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 242
            return
        end local 1 // java.lang.String name
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    4     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Set<java.lang.String> getSeenVars();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 245
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.seenVars:Ljava/util/TreeSet;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public void addExplicitGlobalVariable(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 249
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            ifnonnull 2
         1: .line 250
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            aload 1 /* identifier */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 253
            return
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    4     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public void addExplicitNonlocalVariable(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 256
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            ifnonnull 2
         1: .line 257
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
         2: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addSeenVar:(Ljava/lang/String;)V
         3: .line 260
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            aload 1 /* identifier */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 261
            return
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    5     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public boolean isExplicitGlobalVariable(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 264
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            ifnull 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            aload 1 /* identifier */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public boolean hasExplicitGlobalVariables();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 268
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            ifnull 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public java.util.Set<java.lang.String> getExplicitGlobalVariables();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 272
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public boolean isExplicitNonlocalVariable(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 276
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            ifnull 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            aload 1 /* identifier */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public java.util.Set<java.lang.String> getExplicitNonlocalVariables();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 280
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public void addCellVar(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 284
            aload 0 /* this */
            aload 1 /* identifier */
            iconst_0
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addCellVar:(Ljava/lang/String;Z)V
         1: .line 285
            return
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public void addCellVar(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
        start local 2 // boolean createFrameSlot
         0: .line 288
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            ifnonnull 2
         1: .line 289
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
         2: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            aload 1 /* identifier */
            invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 292
            iload 2 /* createFrameSlot */
            ifeq 5
         4: .line 293
            aload 0 /* this */
            aload 1 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
         5: .line 295
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean createFrameSlot
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    6     1       identifier  Ljava/lang/String;
            0    6     2  createFrameSlot  Z
    MethodParameters:
                 Name  Flags
      identifier       
      createFrameSlot  

  public void setCellVars(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String[] identifiers
         0: .line 298
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            ifnonnull 3
         1: .line 299
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
         2: .line 300
            goto 4
         3: .line 301
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.clear:()V
         4: .line 303
      StackMap locals:
      StackMap stack:
            aload 1 /* identifiers */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 9
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         5: aload 5
            iload 3
            aaload
            astore 2 /* identifier */
        start local 2 // java.lang.String identifier
         6: .line 304
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            aload 2 /* identifier */
            invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 305
            aload 0 /* this */
            aload 2 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
        end local 2 // java.lang.String identifier
         8: .line 303
            iinc 3 1
      StackMap locals:
      StackMap stack:
         9: iload 3
            iload 4
            if_icmplt 5
        10: .line 307
            return
        end local 1 // java.lang.String[] identifiers
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0   11     1  identifiers  [Ljava/lang/String;
            6    8     2   identifier  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      identifiers  

  public void addFreeVar(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
        start local 2 // boolean createFrameSlot
         0: .line 310
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ifnonnull 2
         1: .line 311
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
         2: .line 313
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            aload 1 /* identifier */
            invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 314
            iload 2 /* createFrameSlot */
            ifeq 8
         4: .line 315
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Class:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpne 7
            ldc "__class__"
            aload 1 /* identifier */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 322
            aload 0 /* this */
            ldc "<>freevar__class__"
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
         6: .line 323
            goto 8
         7: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
         8: .line 327
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean createFrameSlot
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0             this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    9     1       identifier  Ljava/lang/String;
            0    9     2  createFrameSlot  Z
    MethodParameters:
                 Name  Flags
      identifier       
      createFrameSlot  

  public void setFreeVars(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String[] identifiers
         0: .line 330
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ifnonnull 3
         1: .line 331
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
         2: .line 332
            goto 4
         3: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.clear:()V
         4: .line 335
      StackMap locals:
      StackMap stack:
            aload 1 /* identifiers */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 9
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         5: aload 5
            iload 3
            aaload
            astore 2 /* identifier */
        start local 2 // java.lang.String identifier
         6: .line 336
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            aload 2 /* identifier */
            invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 337
            aload 0 /* this */
            aload 2 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
        end local 2 // java.lang.String identifier
         8: .line 335
            iinc 3 1
      StackMap locals:
      StackMap stack:
         9: iload 3
            iload 4
            if_icmplt 5
        10: .line 339
            return
        end local 1 // java.lang.String[] identifiers
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0   11     1  identifiers  [Ljava/lang/String;
            6    8     2   identifier  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      identifiers  

  public boolean isCellVar(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 342
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            ifnull 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            aload 1 /* identifier */
            invokevirtual java.util.TreeSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  public boolean isFreeVar(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String identifier
         0: .line 346
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ifnull 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            aload 1 /* identifier */
            invokevirtual java.util.TreeSet.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      identifier  

  private static com.oracle.truffle.api.frame.FrameSlot[] getFrameSlots(java.util.Collection<java.lang.String>, com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Ljava/util/Collection;Lcom/oracle/graal/python/parser/ScopeInfo;)[Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.util.Collection identifiers
        start local 1 // com.oracle.graal.python.parser.ScopeInfo scope
         0: .line 352
            aload 0 /* identifiers */
            ifnonnull 2
         1: .line 353
            getstatic com.oracle.graal.python.parser.ScopeInfo.EMPTY:[Lcom/oracle/truffle/api/frame/FrameSlot;
            areturn
         2: .line 355
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
            ifne 3
            aload 1 /* scope */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            ldc "getting frame slots: scope cannot be null!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* identifiers */
            invokeinterface java.util.Collection.size:()I
            anewarray com.oracle.truffle.api.frame.FrameSlot
            astore 2 /* slots */
        start local 2 // com.oracle.truffle.api.frame.FrameSlot[] slots
         4: .line 357
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: .line 358
            aload 0 /* identifiers */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 8
      StackMap locals: java.util.Collection com.oracle.graal.python.parser.ScopeInfo com.oracle.truffle.api.frame.FrameSlot[] int top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* identifier */
        start local 4 // java.lang.String identifier
         7: .line 359
            aload 2 /* slots */
            iload 3 /* i */
            iinc 3 /* i */ 1
            aload 1 /* scope */
            aload 4 /* identifier */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.findFrameSlot:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            aastore
        end local 4 // java.lang.String identifier
         8: .line 358
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 361
            aload 2 /* slots */
            areturn
        end local 3 // int i
        end local 2 // com.oracle.truffle.api.frame.FrameSlot[] slots
        end local 1 // com.oracle.graal.python.parser.ScopeInfo scope
        end local 0 // java.util.Collection identifiers
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0  identifiers  Ljava/util/Collection<Ljava/lang/String;>;
            0   10     1        scope  Lcom/oracle/graal/python/parser/ScopeInfo;
            4   10     2        slots  [Lcom/oracle/truffle/api/frame/FrameSlot;
            5   10     3            i  I
            7    8     4   identifier  Ljava/lang/String;
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;Lcom/oracle/graal/python/parser/ScopeInfo;)[Lcom/oracle/truffle/api/frame/FrameSlot;
    MethodParameters:
             Name  Flags
      identifiers  
      scope        

  public com.oracle.truffle.api.frame.FrameSlot[] getCellVarSlots();
    descriptor: ()[Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 365
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            aload 0 /* this */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.getFrameSlots:(Ljava/util/Collection;Lcom/oracle/graal/python/parser/ScopeInfo;)[Lcom/oracle/truffle/api/frame/FrameSlot;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public com.oracle.truffle.api.frame.FrameSlot[] getFreeVarSlots();
    descriptor: ()[Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 369
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            aload 0 /* this */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.getFrameSlots:(Ljava/util/Collection;Lcom/oracle/graal/python/parser/ScopeInfo;)[Lcom/oracle/truffle/api/frame/FrameSlot;
            astore 1 /* result */
        start local 1 // com.oracle.truffle.api.frame.FrameSlot[] result
         1: .line 370
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ifnull 10
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Class:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpne 10
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ldc "__class__"
            invokevirtual java.util.TreeSet.contains:(Ljava/lang/Object;)Z
            ifeq 10
         2: .line 371
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 9
         4: .line 372
      StackMap locals: com.oracle.truffle.api.frame.FrameSlot[] int
      StackMap stack:
            aload 1 /* result */
            iload 2 /* i */
            aaload
            astore 3 /* slot */
        start local 3 // com.oracle.truffle.api.frame.FrameSlot slot
         5: .line 373
            aload 3 /* slot */
            ifnull 6
            ldc "__class__"
            aload 3 /* slot */
            invokevirtual com.oracle.truffle.api.frame.FrameSlot.getIdentifier:()Ljava/lang/Object;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 384
      StackMap locals: com.oracle.truffle.api.frame.FrameSlot
      StackMap stack:
            aload 1 /* result */
            iload 2 /* i */
            aload 0 /* this */
            ldc "<>freevar__class__"
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.findFrameSlot:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            aastore
         7: .line 385
            goto 10
        end local 3 // com.oracle.truffle.api.frame.FrameSlot slot
         8: .line 371
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 1 /* result */
            arraylength
            if_icmplt 4
        end local 2 // int i
        10: .line 389
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // com.oracle.truffle.api.frame.FrameSlot[] result
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/graal/python/parser/ScopeInfo;
            1   11     1  result  [Lcom/oracle/truffle/api/frame/FrameSlot;
            3   10     2       i  I
            5    8     3    slot  Lcom/oracle/truffle/api/frame/FrameSlot;

  public com.oracle.truffle.api.frame.FrameSlot[] getFreeVarSlotsInParentScope();
    descriptor: ()[Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 393
            getstatic com.oracle.graal.python.parser.ScopeInfo.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "cannot get current freeVars in parent scope, parent scope cannot be null!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 394
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.parent:Lcom/oracle/graal/python/parser/ScopeInfo;
            invokestatic com.oracle.graal.python.parser.ScopeInfo.getFrameSlots:(Ljava/util/Collection;Lcom/oracle/graal/python/parser/ScopeInfo;)[Lcom/oracle/truffle/api/frame/FrameSlot;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public void setDefaultArgumentNodes(java.util.List<com.oracle.graal.python.nodes.expression.ExpressionNode>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.util.List defaultArgumentNodes
         0: .line 398
            aload 0 /* this */
            aload 1 /* defaultArgumentNodes */
            putfield com.oracle.graal.python.parser.ScopeInfo.defaultArgumentNodes:Ljava/util/List;
         1: .line 399
            return
        end local 1 // java.util.List defaultArgumentNodes
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  defaultArgumentNodes  Ljava/util/List<Lcom/oracle/graal/python/nodes/expression/ExpressionNode;>;
    Signature: (Ljava/util/List<Lcom/oracle/graal/python/nodes/expression/ExpressionNode;>;)V
    MethodParameters:
                      Name  Flags
      defaultArgumentNodes  

  public void setDefaultKwArgumentNodes(java.util.List<com.oracle.graal.python.nodes.function.FunctionDefinitionNode$KwDefaultExpressionNode>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.util.List defaultArgs
         0: .line 402
            aload 0 /* this */
            aload 1 /* defaultArgs */
            putfield com.oracle.graal.python.parser.ScopeInfo.kwDefaultArgumentNodes:Ljava/util/List;
         1: .line 404
            return
        end local 1 // java.util.List defaultArgs
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    2     1  defaultArgs  Ljava/util/List<Lcom/oracle/graal/python/nodes/function/FunctionDefinitionNode$KwDefaultExpressionNode;>;
    Signature: (Ljava/util/List<Lcom/oracle/graal/python/nodes/function/FunctionDefinitionNode$KwDefaultExpressionNode;>;)V
    MethodParameters:
             Name  Flags
      defaultArgs  

  public boolean isInClassScope();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 407
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getScopeKind:()Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Class:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public java.util.List<com.oracle.graal.python.nodes.expression.ExpressionNode> getDefaultArgumentNodes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 411
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.defaultArgumentNodes:Ljava/util/List;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
    Signature: ()Ljava/util/List<Lcom/oracle/graal/python/nodes/expression/ExpressionNode;>;

  public java.util.List<com.oracle.graal.python.nodes.function.FunctionDefinitionNode$KwDefaultExpressionNode> getDefaultKwArgumentNodes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 415
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.kwDefaultArgumentNodes:Ljava/util/List;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
    Signature: ()Ljava/util/List<Lcom/oracle/graal/python/nodes/function/FunctionDefinitionNode$KwDefaultExpressionNode;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
         0: .line 420
            invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
         1: .line 421
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;

  public java.lang.Integer getVariableIndex(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Integer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String name
         0: .line 425
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 426
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.identifierToIndex:Ljava/util/ArrayList;
            iload 2 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 427
            iload 2 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
         4: .line 425
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.identifierToIndex:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 2
        end local 2 // int i
         6: .line 430
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot find argument for name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in scope "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getScopeId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String name
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    7     1  name  Ljava/lang/String;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      name  

  public void debugPrint(java.lang.StringBuilder, int);
    descriptor: (Ljava/lang/StringBuilder;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // int indent
         0: .line 434
            aload 1 /* sb */
            iload 2 /* indent */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.indent:(Ljava/lang/StringBuilder;I)V
         1: .line 435
            aload 1 /* sb */
            ldc "Scope: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 436
            aload 1 /* sb */
            iload 2 /* indent */
            iconst_1
            iadd
            invokestatic com.oracle.graal.python.parser.ScopeInfo.indent:(Ljava/lang/StringBuilder;I)V
         3: .line 437
            aload 1 /* sb */
            ldc "Kind: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 438
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* names */
        start local 3 // java.util.Set names
         5: .line 439
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.frameDescriptor:Lcom/oracle/truffle/api/frame/FrameDescriptor;
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.getIdentifiers:()Ljava/util/Set;
            aload 3 /* names */
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              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:
                  (Ljava/lang/Object;)V
                  com/oracle/graal/python/parser/ScopeInfo.lambda$0(Ljava/util/Set;Ljava/lang/Object;)V (6)
                  (Ljava/lang/Object;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
         6: .line 442
            aload 1 /* sb */
            iload 2 /* indent */
            iconst_1
            iadd
            invokestatic com.oracle.graal.python.parser.ScopeInfo.indent:(Ljava/lang/StringBuilder;I)V
         7: .line 443
            aload 1 /* sb */
            ldc "FrameDescriptor: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 444
            aload 1 /* sb */
            aload 3 /* names */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.printSet:(Ljava/lang/StringBuilder;Ljava/util/Set;)V
         9: .line 445
            aload 1 /* sb */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 446
            aload 1 /* sb */
            iload 2 /* indent */
            iconst_1
            iadd
            invokestatic com.oracle.graal.python.parser.ScopeInfo.indent:(Ljava/lang/StringBuilder;I)V
        11: .line 447
            aload 1 /* sb */
            ldc "CellVars: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 448
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            invokestatic com.oracle.graal.python.parser.ScopeInfo.printSet:(Ljava/lang/StringBuilder;Ljava/util/Set;)V
        13: .line 449
            aload 1 /* sb */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 450
            aload 1 /* sb */
            iload 2 /* indent */
            iconst_1
            iadd
            invokestatic com.oracle.graal.python.parser.ScopeInfo.indent:(Ljava/lang/StringBuilder;I)V
        15: .line 451
            aload 1 /* sb */
            ldc "FreeVars: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 452
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            invokestatic com.oracle.graal.python.parser.ScopeInfo.printSet:(Ljava/lang/StringBuilder;Ljava/util/Set;)V
        17: .line 453
            aload 1 /* sb */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 454
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 4 /* child */
        start local 4 // com.oracle.graal.python.parser.ScopeInfo child
        19: .line 455
            goto 22
        20: .line 456
      StackMap locals: java.util.Set com.oracle.graal.python.parser.ScopeInfo
      StackMap stack:
            aload 4 /* child */
            aload 1 /* sb */
            iload 2 /* indent */
            iconst_1
            iadd
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.debugPrint:(Ljava/lang/StringBuilder;I)V
        21: .line 457
            aload 4 /* child */
            getfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 4 /* child */
        22: .line 455
      StackMap locals:
      StackMap stack:
            aload 4 /* child */
            ifnonnull 20
        23: .line 459
            return
        end local 4 // com.oracle.graal.python.parser.ScopeInfo child
        end local 3 // java.util.Set names
        end local 2 // int indent
        end local 1 // java.lang.StringBuilder sb
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   24     0    this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0   24     1      sb  Ljava/lang/StringBuilder;
            0   24     2  indent  I
            5   24     3   names  Ljava/util/Set<Ljava/lang/String;>;
           19   24     4   child  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
        Name  Flags
      sb      
      indent  

  private static void indent(java.lang.StringBuilder, int);
    descriptor: (Ljava/lang/StringBuilder;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.StringBuilder sb
        start local 1 // int indent
         0: .line 462
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 463
      StackMap locals: int
      StackMap stack:
            aload 0 /* sb */
            ldc "    "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 462
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            iload 1 /* indent */
            if_icmplt 2
        end local 2 // int i
         5: .line 465
            return
        end local 1 // int indent
        end local 0 // java.lang.StringBuilder sb
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0      sb  Ljava/lang/StringBuilder;
            0    6     1  indent  I
            1    5     2       i  I
    MethodParameters:
        Name  Flags
      sb      
      indent  

  private static void printSet(java.lang.StringBuilder, java.util.Set<java.lang.String>);
    descriptor: (Ljava/lang/StringBuilder;Ljava/util/Set;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.StringBuilder sb
        start local 1 // java.util.Set set
         0: .line 468
            aload 1 /* set */
            ifnull 1
            aload 1 /* set */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 3
         1: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            ldc "Empty"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 470
            goto 14
         3: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 472
            iconst_1
            istore 2 /* first */
        start local 2 // boolean first
         5: .line 473
            aload 1 /* set */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals: java.lang.StringBuilder java.util.Set int top java.util.Iterator
      StackMap stack:
         6: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* name */
        start local 3 // java.lang.String name
         7: .line 474
            iload 2 /* first */
            ifeq 11
         8: .line 475
            aload 0 /* sb */
            aload 3 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 476
            iconst_0
            istore 2 /* first */
        10: .line 477
            goto 12
        11: .line 478
      StackMap locals: java.lang.StringBuilder java.util.Set int java.lang.String java.util.Iterator
      StackMap stack:
            aload 0 /* sb */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // java.lang.String name
        12: .line 473
      StackMap locals: java.lang.StringBuilder java.util.Set int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        13: .line 481
            aload 0 /* sb */
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // boolean first
        14: .line 483
      StackMap locals: java.lang.StringBuilder java.util.Set
      StackMap stack:
            return
        end local 1 // java.util.Set set
        end local 0 // java.lang.StringBuilder sb
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0     sb  Ljava/lang/StringBuilder;
            0   15     1    set  Ljava/util/Set<Ljava/lang/String;>;
            5   14     2  first  Z
            7   12     3   name  Ljava/lang/String;
    Signature: (Ljava/lang/StringBuilder;Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
      Name  Flags
      sb    
      set   

  public com.oracle.graal.python.parser.ScopeInfo getChildScope(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // java.lang.String id
         0: .line 486
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 2 /* scope */
        start local 2 // com.oracle.graal.python.parser.ScopeInfo scope
         1: .line 487
            goto 5
         2: .line 488
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo
      StackMap stack:
            aload 2 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getScopeId:()Ljava/lang/String;
            aload 1 /* id */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 489
            aload 2 /* scope */
            areturn
         4: .line 491
      StackMap locals:
      StackMap stack:
            aload 2 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 2 /* scope */
         5: .line 487
      StackMap locals:
      StackMap stack:
            aload 2 /* scope */
            ifnonnull 2
         6: .line 493
            aconst_null
            areturn
        end local 2 // com.oracle.graal.python.parser.ScopeInfo scope
        end local 1 // java.lang.String id
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    7     1     id  Ljava/lang/String;
            1    7     2  scope  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
      Name  Flags
      id    

  public com.oracle.graal.python.parser.ScopeInfo getChildScope(int);
    descriptor: (I)Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.graal.python.parser.ScopeInfo this
        start local 1 // int serId
         0: .line 497
            aload 0 /* this */
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 2 /* scope */
        start local 2 // com.oracle.graal.python.parser.ScopeInfo scope
         1: .line 498
            goto 5
         2: .line 499
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo
      StackMap stack:
            aload 2 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getSerializetionId:()I
            iload 1 /* serId */
            if_icmpne 4
         3: .line 500
            aload 2 /* scope */
            areturn
         4: .line 502
      StackMap locals:
      StackMap stack:
            aload 2 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 2 /* scope */
         5: .line 498
      StackMap locals:
      StackMap stack:
            aload 2 /* scope */
            ifnonnull 2
         6: .line 504
            aconst_null
            areturn
        end local 2 // com.oracle.graal.python.parser.ScopeInfo scope
        end local 1 // int serId
        end local 0 // com.oracle.graal.python.parser.ScopeInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/oracle/graal/python/parser/ScopeInfo;
            0    7     1  serId  I
            1    7     2  scope  Lcom/oracle/graal/python/parser/ScopeInfo;
    MethodParameters:
       Name  Flags
      serId  

  public static void write(java.io.DataOutput, com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Ljava/io/DataOutput;Lcom/oracle/graal/python/parser/ScopeInfo;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.io.DataOutput out
        start local 1 // com.oracle.graal.python.parser.ScopeInfo scope
         0: .line 508
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeKind:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            invokeinterface java.io.DataOutput.writeByte:(I)V
         1: .line 509
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.scopeId:Ljava/lang/String;
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
         2: .line 510
            aload 0 /* out */
            aload 1 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getSerializetionId:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
         3: .line 511
            aload 0 /* out */
            aload 1 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.hasAnnotations:()Z
            invokeinterface java.io.DataOutput.writeBoolean:(Z)V
         4: .line 513
            aload 1 /* scope */
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.getIdentifiers:()Ljava/util/Set;
            astore 2 /* identifiers */
        start local 2 // java.util.Set identifiers
         5: .line 514
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* names */
        start local 3 // java.util.List names
         6: .line 515
            aload 2 /* identifiers */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 12
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List top java.util.Iterator
      StackMap stack:
         7: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* identifier */
        start local 4 // java.lang.Object identifier
         8: .line 516
            aload 4 /* identifier */
            instanceof java.lang.String
            ifeq 12
         9: .line 517
            aload 4 /* identifier */
            checkcast java.lang.String
            astore 6 /* name */
        start local 6 // java.lang.String name
        10: .line 518
            aload 6 /* name */
            ldc "<>temp"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 12
            aload 6 /* name */
            ldc "<return_val>"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 519
            aload 3 /* names */
            aload 4 /* identifier */
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.String name
        end local 4 // java.lang.Object identifier
        12: .line 515
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        13: .line 523
            aload 0 /* out */
            aload 3 /* names */
            invokeinterface java.util.List.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        14: .line 524
            aload 3 /* names */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 17
      StackMap locals:
      StackMap stack:
        15: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* name */
        start local 4 // java.lang.String name
        16: .line 525
            aload 0 /* out */
            aload 4 /* name */
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        end local 4 // java.lang.String name
        17: .line 524
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 528
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            ifnonnull 21
        19: .line 529
            aload 0 /* out */
            iconst_0
            invokeinterface java.io.DataOutput.writeInt:(I)V
        20: .line 530
            goto 26
        21: .line 531
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List
      StackMap stack:
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        22: .line 532
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitGlobalVariables:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 25
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List top java.util.Iterator
      StackMap stack:
        23: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* identifier */
        start local 4 // java.lang.String identifier
        24: .line 533
            aload 0 /* out */
            aload 4 /* identifier */
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        end local 4 // java.lang.String identifier
        25: .line 532
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        26: .line 537
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List
      StackMap stack:
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            ifnonnull 29
        27: .line 538
            aload 0 /* out */
            iconst_0
            invokeinterface java.io.DataOutput.writeInt:(I)V
        28: .line 539
            goto 34
        29: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        30: .line 541
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.explicitNonlocalVariables:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 33
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List top java.util.Iterator
      StackMap stack:
        31: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* identifier */
        start local 4 // java.lang.String identifier
        32: .line 542
            aload 0 /* out */
            aload 4 /* identifier */
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        end local 4 // java.lang.String identifier
        33: .line 541
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        34: .line 546
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List
      StackMap stack:
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            ifnonnull 37
        35: .line 547
            aload 0 /* out */
            iconst_0
            invokeinterface java.io.DataOutput.writeInt:(I)V
        36: .line 548
            goto 42
        37: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        38: .line 550
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.cellVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 41
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List top java.util.Iterator
      StackMap stack:
        39: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* identifier */
        start local 4 // java.lang.String identifier
        40: .line 551
            aload 0 /* out */
            aload 4 /* identifier */
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        end local 4 // java.lang.String identifier
        41: .line 550
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 39
        42: .line 555
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List
      StackMap stack:
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            ifnonnull 45
        43: .line 556
            aload 0 /* out */
            iconst_0
            invokeinterface java.io.DataOutput.writeInt:(I)V
        44: .line 557
            goto 50
        45: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* out */
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        46: .line 559
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.freeVars:Ljava/util/TreeSet;
            invokevirtual java.util.TreeSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 49
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List top java.util.Iterator
      StackMap stack:
        47: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* identifier */
        start local 4 // java.lang.String identifier
        48: .line 560
            aload 0 /* out */
            aload 4 /* identifier */
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        end local 4 // java.lang.String identifier
        49: .line 559
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        50: .line 564
      StackMap locals: java.io.DataOutput com.oracle.graal.python.parser.ScopeInfo java.util.Set java.util.List
      StackMap stack:
            aload 1 /* scope */
            getfield com.oracle.graal.python.parser.ScopeInfo.firstChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 4 /* child */
        start local 4 // com.oracle.graal.python.parser.ScopeInfo child
        51: .line 565
            aload 4 /* child */
            ifnonnull 54
        52: .line 566
            aload 0 /* out */
            iconst_0
            invokeinterface java.io.DataOutput.writeInt:(I)V
        53: .line 567
            goto 65
        54: .line 568
      StackMap locals: com.oracle.graal.python.parser.ScopeInfo
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* children */
        start local 5 // java.util.List children
        55: .line 569
            goto 58
        56: .line 570
      StackMap locals: java.util.List
      StackMap stack:
            aload 5 /* children */
            aload 4 /* child */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        57: .line 571
            aload 4 /* child */
            getfield com.oracle.graal.python.parser.ScopeInfo.nextChildScope:Lcom/oracle/graal/python/parser/ScopeInfo;
            astore 4 /* child */
        58: .line 569
      StackMap locals:
      StackMap stack:
            aload 4 /* child */
            ifnonnull 56
        59: .line 573
            aload 0 /* out */
            aload 5 /* children */
            invokeinterface java.util.List.size:()I
            invokeinterface java.io.DataOutput.writeInt:(I)V
        60: .line 574
            aload 5 /* children */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
        61: goto 64
        62: .line 575
      StackMap locals: int
      StackMap stack:
            aload 0 /* out */
            aload 5 /* children */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.oracle.graal.python.parser.ScopeInfo
            invokestatic com.oracle.graal.python.parser.ScopeInfo.write:(Ljava/io/DataOutput;Lcom/oracle/graal/python/parser/ScopeInfo;)V
        63: .line 574
            iinc 6 /* i */ -1
      StackMap locals:
      StackMap stack:
        64: iload 6 /* i */
            ifge 62
        end local 6 // int i
        end local 5 // java.util.List children
        65: .line 578
      StackMap locals:
      StackMap stack:
            return
        end local 4 // com.oracle.graal.python.parser.ScopeInfo child
        end local 3 // java.util.List names
        end local 2 // java.util.Set identifiers
        end local 1 // com.oracle.graal.python.parser.ScopeInfo scope
        end local 0 // java.io.DataOutput out
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   66     0          out  Ljava/io/DataOutput;
            0   66     1        scope  Lcom/oracle/graal/python/parser/ScopeInfo;
            5   66     2  identifiers  Ljava/util/Set<Ljava/lang/Object;>;
            6   66     3        names  Ljava/util/List<Ljava/lang/String;>;
            8   12     4   identifier  Ljava/lang/Object;
           10   12     6         name  Ljava/lang/String;
           16   17     4         name  Ljava/lang/String;
           24   25     4   identifier  Ljava/lang/String;
           32   33     4   identifier  Ljava/lang/String;
           40   41     4   identifier  Ljava/lang/String;
           48   49     4   identifier  Ljava/lang/String;
           51   66     4        child  Lcom/oracle/graal/python/parser/ScopeInfo;
           55   65     5     children  Ljava/util/List<Lcom/oracle/graal/python/parser/ScopeInfo;>;
           61   65     6            i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      out    
      scope  

  public static com.oracle.graal.python.parser.ScopeInfo read(java.io.DataInput, com.oracle.graal.python.parser.ScopeInfo);
    descriptor: (Ljava/io/DataInput;Lcom/oracle/graal/python/parser/ScopeInfo;)Lcom/oracle/graal/python/parser/ScopeInfo;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=11, args_size=2
        start local 0 // java.io.DataInput input
        start local 1 // com.oracle.graal.python.parser.ScopeInfo parent
         0: .line 581
            aload 0 /* input */
            invokeinterface java.io.DataInput.readByte:()B
            istore 2 /* kindByte */
        start local 2 // byte kindByte
         1: .line 582
            iload 2 /* kindByte */
            iconst_m1
            if_icmpne 3
         2: .line 584
            aconst_null
            areturn
         3: .line 586
      StackMap locals: int
      StackMap stack:
            invokestatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.values:()[Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            iload 2 /* kindByte */
            aaload
            astore 3 /* kind */
        start local 3 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
         4: .line 588
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            astore 4 /* id */
        start local 4 // java.lang.String id
         5: .line 589
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 5 /* serializationId */
        start local 5 // int serializationId
         6: .line 590
            aload 0 /* input */
            invokeinterface java.io.DataInput.readBoolean:()Z
            istore 6 /* hasAnnotations */
        start local 6 // boolean hasAnnotations
         7: .line 592
            new com.oracle.graal.python.parser.ScopeInfo
            dup
            aload 4 /* id */
            iload 5 /* serializationId */
            aload 3 /* kind */
            aconst_null
            aload 1 /* parent */
            invokespecial com.oracle.graal.python.parser.ScopeInfo.<init>:(Ljava/lang/String;ILcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;Lcom/oracle/truffle/api/frame/FrameDescriptor;Lcom/oracle/graal/python/parser/ScopeInfo;)V
            astore 7 /* scope */
        start local 7 // com.oracle.graal.python.parser.ScopeInfo scope
         8: .line 593
            aload 7 /* scope */
            iload 6 /* hasAnnotations */
            putfield com.oracle.graal.python.parser.ScopeInfo.annotationsField:Z
         9: .line 594
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 8 /* len */
        start local 8 // int len
        10: .line 595
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        11: goto 14
        12: .line 596
      StackMap locals: java.io.DataInput com.oracle.graal.python.parser.ScopeInfo int com.oracle.graal.python.parser.ScopeInfo$ScopeKind java.lang.String int int com.oracle.graal.python.parser.ScopeInfo int int
      StackMap stack:
            aload 7 /* scope */
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.createSlotIfNotPresent:(Ljava/lang/String;)Lcom/oracle/truffle/api/frame/FrameSlot;
            pop
        13: .line 595
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 12
        end local 9 // int i
        15: .line 599
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 8 /* len */
        16: .line 600
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        17: goto 20
        18: .line 601
      StackMap locals:
      StackMap stack:
            aload 7 /* scope */
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addExplicitGlobalVariable:(Ljava/lang/String;)V
        19: .line 600
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 18
        end local 9 // int i
        21: .line 604
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 8 /* len */
        22: .line 605
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        23: goto 26
        24: .line 606
      StackMap locals:
      StackMap stack:
            aload 7 /* scope */
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addExplicitNonlocalVariable:(Ljava/lang/String;)V
        25: .line 605
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 24
        end local 9 // int i
        27: .line 609
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 8 /* len */
        28: .line 610
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        29: goto 32
        30: .line 611
      StackMap locals:
      StackMap stack:
            aload 7 /* scope */
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addCellVar:(Ljava/lang/String;)V
        31: .line 610
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 30
        end local 9 // int i
        33: .line 614
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 8 /* len */
        34: .line 615
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        35: goto 38
        36: .line 616
      StackMap locals:
      StackMap stack:
            aload 7 /* scope */
            aload 0 /* input */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            iconst_0
            invokevirtual com.oracle.graal.python.parser.ScopeInfo.addFreeVar:(Ljava/lang/String;Z)V
        37: .line 615
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 36
        end local 9 // int i
        39: .line 619
            aload 0 /* input */
            invokeinterface java.io.DataInput.readInt:()I
            istore 9 /* childrenCount */
        start local 9 // int childrenCount
        40: .line 620
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        41: goto 44
        42: .line 621
      StackMap locals: int
      StackMap stack:
            aload 0 /* input */
            aload 7 /* scope */
            invokestatic com.oracle.graal.python.parser.ScopeInfo.read:(Ljava/io/DataInput;Lcom/oracle/graal/python/parser/ScopeInfo;)Lcom/oracle/graal/python/parser/ScopeInfo;
            pop
        43: .line 620
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 10 /* i */
            iload 9 /* childrenCount */
            if_icmplt 42
        end local 10 // int i
        45: .line 624
            aload 7 /* scope */
            areturn
        end local 9 // int childrenCount
        end local 8 // int len
        end local 7 // com.oracle.graal.python.parser.ScopeInfo scope
        end local 6 // boolean hasAnnotations
        end local 5 // int serializationId
        end local 4 // java.lang.String id
        end local 3 // com.oracle.graal.python.parser.ScopeInfo$ScopeKind kind
        end local 2 // byte kindByte
        end local 1 // com.oracle.graal.python.parser.ScopeInfo parent
        end local 0 // java.io.DataInput input
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   46     0            input  Ljava/io/DataInput;
            0   46     1           parent  Lcom/oracle/graal/python/parser/ScopeInfo;
            1   46     2         kindByte  B
            4   46     3             kind  Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            5   46     4               id  Ljava/lang/String;
            6   46     5  serializationId  I
            7   46     6   hasAnnotations  Z
            8   46     7            scope  Lcom/oracle/graal/python/parser/ScopeInfo;
           10   46     8              len  I
           11   15     9                i  I
           17   21     9                i  I
           23   27     9                i  I
           29   33     9                i  I
           35   39     9                i  I
           40   46     9    childrenCount  I
           41   45    10                i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      input   
      parent  

  static int[] $SWITCH_TABLE$com$oracle$graal$python$parser$ScopeInfo$ScopeKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 47
            getstatic com.oracle.graal.python.parser.ScopeInfo.$SWITCH_TABLE$com$oracle$graal$python$parser$ScopeInfo$ScopeKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.values:()[Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Class:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.DictComp:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            bipush 8
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Function:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.GenExp:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Generator:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ListComp:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Module:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            iconst_1
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.SetComp:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic com.oracle.graal.python.parser.ScopeInfo$ScopeKind.Transparent:Lcom/oracle/graal/python/parser/ScopeInfo$ScopeKind;
            invokevirtual com.oracle.graal.python.parser.ScopeInfo$ScopeKind.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            dup
            putstatic com.oracle.graal.python.parser.ScopeInfo.$SWITCH_TABLE$com$oracle$graal$python$parser$ScopeInfo$ScopeKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError

  private static void lambda$0(java.util.Set, java.lang.Object);
    descriptor: (Ljava/util/Set;Ljava/lang/Object;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Object id
         0: .line 440
            aload 0
            aload 1 /* id */
            checkcast java.lang.String
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 441
            return
        end local 1 // java.lang.Object id
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     1    id  Ljava/lang/Object;
}
SourceFile: "ScopeInfo.java"
NestMembers:
  com.oracle.graal.python.parser.ScopeInfo$ScopeKind
InnerClasses:
  public final KwDefaultExpressionNode = com.oracle.graal.python.nodes.function.FunctionDefinitionNode$KwDefaultExpressionNode of com.oracle.graal.python.nodes.function.FunctionDefinitionNode
  public final ScopeKind = com.oracle.graal.python.parser.ScopeInfo$ScopeKind of com.oracle.graal.python.parser.ScopeInfo
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles