public final class jdk.nashorn.internal.ir.Symbol implements java.lang.Comparable<jdk.nashorn.internal.ir.Symbol>, java.lang.Cloneable, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.nashorn.internal.ir.Symbol
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int IS_GLOBAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int IS_VAR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int IS_PARAM;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int KINDMASK;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int IS_SCOPE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int IS_THIS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final int IS_LET;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final int IS_CONST;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  public static final int IS_INTERNAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  public static final int IS_FUNCTION_SELF;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 128

  public static final int IS_FUNCTION_DECLARATION;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  public static final int IS_PROGRAM_LEVEL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 512

  public static final int HAS_SLOT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  public static final int HAS_INT_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2048

  public static final int HAS_DOUBLE_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4096

  public static final int HAS_OBJECT_VALUE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8192

  public static final int HAS_BEEN_DECLARED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16384

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

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

  private transient int firstSlot;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int fieldIndex;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

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

  private static final java.util.Set<java.lang.String> TRACE_SYMBOLS;
    descriptor: Ljava/util/Set;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private static final java.util.Set<java.lang.String> TRACE_SYMBOLS_STACKTRACE;
    descriptor: Ljava/util/Set;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  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=4, locals=3, args_size=0
         0: .line 53
            ldc Ljdk/nashorn/internal/ir/Symbol;
            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 jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
         3: .line 113
            ldc "nashorn.compiler.symbol.stacktrace"
            aconst_null
            invokestatic jdk.nashorn.internal.runtime.options.Options.getStringProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* stacktrace */
        start local 0 // java.lang.String stacktrace
         4: .line 115
            aload 0 /* stacktrace */
            ifnull 12
         5: .line 116
            aload 0 /* stacktrace */
            astore 1 /* trace */
        start local 1 // java.lang.String trace
         6: .line 117
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
         7: .line 118
            new java.util.StringTokenizer
            dup
            aload 0 /* stacktrace */
            ldc ","
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* st */
        start local 2 // java.util.StringTokenizer st
         8: goto 10
         9: .line 119
      StackMap locals: java.lang.String java.lang.String java.util.StringTokenizer
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        10: .line 118
      StackMap locals:
      StackMap stack:
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 9
        end local 2 // java.util.StringTokenizer st
        11: .line 121
            goto 14
        end local 1 // java.lang.String trace
        12: .line 122
      StackMap locals:
      StackMap stack:
            ldc "nashorn.compiler.symbol.trace"
            aconst_null
            invokestatic jdk.nashorn.internal.runtime.options.Options.getStringProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* trace */
        start local 1 // java.lang.String trace
        13: .line 123
            aconst_null
            putstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
        14: .line 126
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* trace */
            ifnull 21
        15: .line 127
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
        16: .line 128
            new java.util.StringTokenizer
            dup
            aload 1 /* trace */
            ldc ","
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* st */
        start local 2 // java.util.StringTokenizer st
        17: goto 19
        18: .line 129
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        19: .line 128
      StackMap locals:
      StackMap stack:
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 18
        end local 2 // java.util.StringTokenizer st
        20: .line 131
            goto 22
        21: .line 132
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
        end local 1 // java.lang.String trace
        end local 0 // java.lang.String stacktrace
        22: .line 134
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            4   22     0  stacktrace  Ljava/lang/String;
            6   12     1       trace  Ljava/lang/String;
           13   22     1       trace  Ljava/lang/String;
            8   11     2          st  Ljava/util/StringTokenizer;
           17   20     2          st  Ljava/util/StringTokenizer;

  public void <init>(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // java.lang.String name
        start local 2 // int flags
         0: .line 142
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 100
            aload 0 /* this */
            iconst_m1
            putfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
         2: .line 103
            aload 0 /* this */
            iconst_m1
            putfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
         3: .line 143
            aload 0 /* this */
            aload 1 /* name */
            putfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
         4: .line 144
            aload 0 /* this */
            iload 2 /* flags */
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         5: .line 145
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.shouldTrace:()Z
            ifeq 7
         6: .line 146
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "CREATE SYMBOL "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.ir.Symbol.trace:(Ljava/lang/String;)V
         7: .line 148
      StackMap locals: jdk.nashorn.internal.ir.Symbol java.lang.String int
      StackMap stack:
            return
        end local 2 // int flags
        end local 1 // java.lang.String name
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljdk/nashorn/internal/ir/Symbol;
            0    8     1   name  Ljava/lang/String;
            0    8     2  flags  I
    MethodParameters:
       Name  Flags
      name   final
      flags  final

  public jdk.nashorn.internal.ir.Symbol clone();
    descriptor: ()Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 153
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.ir.Symbol
         1: areturn
         2: .line 154
      StackMap locals:
      StackMap stack: java.lang.CloneNotSupportedException
            astore 1 /* e */
        start local 1 // java.lang.CloneNotSupportedException e
         3: .line 155
            new java.lang.AssertionError
            dup
            aload 1 /* e */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 1 // java.lang.CloneNotSupportedException e
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/ir/Symbol;
            3    4     1     e  Ljava/lang/CloneNotSupportedException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.CloneNotSupportedException

  private static java.lang.String align(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String string
        start local 1 // int max
         0: .line 160
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 161
            aload 2 /* sb */
            aload 0 /* string */
            iconst_0
            aload 0 /* string */
            invokevirtual java.lang.String.length:()I
            iload 1 /* max */
            invokestatic java.lang.Math.min:(II)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 163
            goto 4
         3: .line 164
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 2 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 163
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            iload 1 /* max */
            if_icmplt 3
         5: .line 166
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // int max
        end local 0 // java.lang.String string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  string  Ljava/lang/String;
            0    6     1     max  I
            1    6     2      sb  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      string  final
      max     final

  void print(java.io.PrintWriter);
    descriptor: (Ljava/io/PrintWriter;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // java.io.PrintWriter stream
         0: .line 176
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 178
            aload 2 /* sb */
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            bipush 20
            invokestatic jdk.nashorn.internal.ir.Symbol.align:(Ljava/lang/String;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 179
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 180
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 181
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            iconst_m1
            if_icmpne 5
            ldc "none"
            goto 6
      StackMap locals: jdk.nashorn.internal.ir.Symbol java.io.PrintWriter java.lang.StringBuilder
      StackMap stack: java.lang.StringBuilder
         5: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: jdk.nashorn.internal.ir.Symbol java.io.PrintWriter java.lang.StringBuilder
      StackMap stack: java.lang.StringBuilder java.lang.String
         6: bipush 10
            invokestatic jdk.nashorn.internal.ir.Symbol.align:(Ljava/lang/String;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 183
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            tableswitch { // 1 - 3
                    1: 8
                    2: 10
                    3: 18
              default: 20
          }
         8: .line 185
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            ldc " global"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 186
            goto 20
        10: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isConst:()Z
            ifeq 13
        11: .line 189
            aload 2 /* sb */
            ldc " const"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 190
            goto 20
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isLet:()Z
            ifeq 16
        14: .line 191
            aload 2 /* sb */
            ldc " let"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 192
            goto 20
        16: .line 193
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            ldc " var"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 195
            goto 20
        18: .line 197
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            ldc " param"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 198
            goto 20
        20: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifeq 22
        21: .line 204
            aload 2 /* sb */
            ldc " scope"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isInternal:()Z
            ifeq 24
        23: .line 208
            aload 2 /* sb */
            ldc " internal"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isThis:()Z
            ifeq 26
        25: .line 212
            aload 2 /* sb */
            ldc " this"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isProgramLevel:()Z
            ifeq 28
        27: .line 216
            aload 2 /* sb */
            ldc " program"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 219
      StackMap locals:
      StackMap stack:
            aload 2 /* sb */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        29: .line 221
            aload 1 /* stream */
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        30: .line 222
            return
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.io.PrintWriter stream
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   31     0    this  Ljdk/nashorn/internal/ir/Symbol;
            0   31     1  stream  Ljava/io/PrintWriter;
            1   31     2      sb  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      stream  final

  public boolean less(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int other
         0: .line 231
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            iload 1 /* other */
            iconst_3
            iand
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int other
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljdk/nashorn/internal/ir/Symbol;
            0    2     1  other  I
    MethodParameters:
       Name  Flags
      other  final

  public jdk.nashorn.internal.ir.Symbol setNeedsSlot(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // boolean needsSlot
         0: .line 241
            iload 1 /* needsSlot */
            ifeq 4
         1: .line 242
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 1024
            ior
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         3: .line 244
            goto 5
         4: .line 245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush -1025
            iand
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         5: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // boolean needsSlot
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljdk/nashorn/internal/ir/Symbol;
            0    6     1  needsSlot  Z
    MethodParameters:
           Name  Flags
      needsSlot  final

  public int slotCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 256
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 2048
            iand
            ifne 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
         2: .line 257
      StackMap locals:
      StackMap stack: int
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 4096
            iand
            ifne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack: int
         3: iconst_2
         4: .line 256
      StackMap locals: jdk.nashorn.internal.ir.Symbol
      StackMap stack: int int
            iadd
         5: .line 258
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 8192
            iand
            ifne 6
            iconst_0
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_1
         7: .line 256
      StackMap locals: jdk.nashorn.internal.ir.Symbol
      StackMap stack: int int
            iadd
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/nashorn/internal/ir/Symbol;

  private boolean isSlotted();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 262
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            iconst_m1
            if_icmpeq 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 1024
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 267
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 269
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 270
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 272
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ifeq 12
         4: .line 273
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         5: .line 274
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         6: .line 275
            ldc "slot="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 276
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         8: .line 277
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 2048
            iand
            ifeq 9
            aload 1 /* sb */
            bipush 73
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         9: .line 278
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 4096
            iand
            ifeq 10
            aload 1 /* sb */
            bipush 68
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 8192
            iand
            ifeq 11
            aload 1 /* sb */
            bipush 79
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        11: .line 280
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifeq 17
        13: .line 284
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isGlobal:()Z
            ifeq 16
        14: .line 285
            aload 1 /* sb */
            ldc " G"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 286
            goto 17
        16: .line 287
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc " S"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 291
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Ljdk/nashorn/internal/ir/Symbol;
            1   18     1    sb  Ljava/lang/StringBuilder;

  public int compareTo(jdk.nashorn.internal.ir.Symbol);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // jdk.nashorn.internal.ir.Symbol other
         0: .line 296
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            aload 1 /* other */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 1 // jdk.nashorn.internal.ir.Symbol other
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/ir/Symbol;
            0    1     1  other  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
       Name  Flags
      other  final

  public boolean hasSlot();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 307
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 1024
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isBytecodeLocal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 316
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isDead();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 324
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 1028
            iand
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isScope();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 334
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            iconst_1
            if_icmpne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_4
            iand
            iconst_4
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            ldc "global without scope flag"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_4
            iand
            ifeq 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isFunctionDeclaration();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 343
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 256
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public jdk.nashorn.internal.ir.Symbol setIsScope();
    descriptor: ()Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 351
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifne 6
         1: .line 352
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.shouldTrace:()Z
            ifeq 3
         2: .line 353
            aload 0 /* this */
            ldc "SET IS SCOPE"
            invokevirtual jdk.nashorn.internal.ir.Symbol.trace:(Ljava/lang/String;)V
         3: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_4
            ior
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         4: .line 356
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isParam:()Z
            ifne 6
         5: .line 357
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush -1025
            iand
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         6: .line 360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public void setIsFunctionDeclaration();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 367
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isFunctionDeclaration:()Z
            ifne 4
         1: .line 368
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.shouldTrace:()Z
            ifeq 3
         2: .line 369
            aload 0 /* this */
            ldc "SET IS FUNCTION DECLARATION"
            invokevirtual jdk.nashorn.internal.ir.Symbol.trace:(Ljava/lang/String;)V
         3: .line 371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 256
            ior
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         4: .line 373
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isVar();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 380
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            iconst_2
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isGlobal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 388
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            iconst_1
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isParam();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 396
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iconst_3
            iand
            iconst_3
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isProgramLevel();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 404
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 512
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isConst();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 412
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            bipush 32
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isInternal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 421
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            bipush 64
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isThis();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 429
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            bipush 8
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isLet();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 437
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            bipush 16
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isFunctionSelf();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 445
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 128
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean isBlockScoped();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 453
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isLet:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isConst:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public boolean hasBeenDeclared();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 461
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 16384
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public void setHasBeenDeclared();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 468
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasBeenDeclared:()Z
            ifne 2
         1: .line 469
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 16384
            ior
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         2: .line 471
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public int getFieldIndex();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 480
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
            iconst_m1
            if_icmpne 1
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "fieldIndex must be initialized "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 481
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public jdk.nashorn.internal.ir.Symbol setFieldIndex(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int fieldIndex
         0: .line 492
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
            iload 1 /* fieldIndex */
            if_icmpeq 2
         1: .line 493
            aload 0 /* this */
            iload 1 /* fieldIndex */
            putfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
         2: .line 495
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int fieldIndex
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Ljdk/nashorn/internal/ir/Symbol;
            0    3     1  fieldIndex  I
    MethodParameters:
            Name  Flags
      fieldIndex  final

  public int getFlags();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 503
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public jdk.nashorn.internal.ir.Symbol setFlags(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int flags
         0: .line 512
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iload 1 /* flags */
            if_icmpeq 2
         1: .line 513
            aload 0 /* this */
            iload 1 /* flags */
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         2: .line 515
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int flags
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/ir/Symbol;
            0    3     1  flags  I
    MethodParameters:
       Name  Flags
      flags  final

  public jdk.nashorn.internal.ir.Symbol setFlag(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int flag
         0: .line 524
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iload 1 /* flag */
            iand
            ifne 2
         1: .line 525
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iload 1 /* flag */
            ior
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         2: .line 527
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int flag
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    3     1  flag  I
    MethodParameters:
      Name  Flags
      flag  final

  public jdk.nashorn.internal.ir.Symbol clearFlag(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int flag
         0: .line 536
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iload 1 /* flag */
            iand
            ifeq 2
         1: .line 537
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            iload 1 /* flag */
            iconst_m1
            ixor
            iand
            putfield jdk.nashorn.internal.ir.Symbol.flags:I
         2: .line 539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int flag
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    3     1  flag  I
    MethodParameters:
      Name  Flags
      flag  final

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 547
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            areturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public int getFirstSlot();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 555
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isSlotted:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public int getSlot(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 565
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isSlotted:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 566
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            istore 2 /* typeSlot */
        start local 2 // int typeSlot
         2: .line 567
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifne 3
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifeq 5
         3: .line 568
      StackMap locals: int
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 2048
            iand
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 569
      StackMap locals:
      StackMap stack:
            iload 2 /* typeSlot */
            ireturn
         5: .line 571
      StackMap locals:
      StackMap stack:
            iload 2 /* typeSlot */
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 2048
            iand
            ifne 6
            iconst_0
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_1
      StackMap locals: jdk.nashorn.internal.ir.Symbol jdk.nashorn.internal.codegen.types.Type int
      StackMap stack: int int
         7: iadd
            istore 2 /* typeSlot */
         8: .line 572
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isNumber:()Z
            ifeq 11
         9: .line 573
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 10
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 4096
            iand
            ifne 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 574
      StackMap locals:
      StackMap stack:
            iload 2 /* typeSlot */
            ireturn
        11: .line 576
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 12
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 577
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 13
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 8192
            iand
            ifne 13
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        13: .line 578
      StackMap locals:
      StackMap stack:
            iload 2 /* typeSlot */
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 4096
            iand
            ifne 14
            iconst_0
            goto 15
      StackMap locals:
      StackMap stack: int
        14: iconst_2
      StackMap locals: jdk.nashorn.internal.ir.Symbol jdk.nashorn.internal.codegen.types.Type int
      StackMap stack: int int
        15: iadd
            ireturn
        end local 2 // int typeSlot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Ljdk/nashorn/internal/ir/Symbol;
            0   16     1      type  Ljdk/nashorn/internal/codegen/types/Type;
            2   16     2  typeSlot  I
    MethodParameters:
      Name  Flags
      type  final

  public boolean hasSlotFor(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 587
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifne 1
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifeq 3
         1: .line 588
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 2048
            iand
            ifeq 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 589
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isNumber:()Z
            ifeq 6
         4: .line 590
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 4096
            iand
            ifeq 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
         6: .line 592
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 7
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 593
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.flags:I
            sipush 8192
            iand
            ifeq 8
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    9     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  public void setHasSlotFor(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 601
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifne 1
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifeq 3
         1: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 2048
            invokevirtual jdk.nashorn.internal.ir.Symbol.setFlag:(I)Ljdk/nashorn/internal/ir/Symbol;
            pop
         2: .line 603
            goto 8
      StackMap locals:
      StackMap stack:
         3: aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isNumber:()Z
            ifeq 6
         4: .line 604
            aload 0 /* this */
            sipush 4096
            invokevirtual jdk.nashorn.internal.ir.Symbol.setFlag:(I)Ljdk/nashorn/internal/ir/Symbol;
            pop
         5: .line 605
            goto 8
         6: .line 606
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 7
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 607
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 8192
            invokevirtual jdk.nashorn.internal.ir.Symbol.setFlag:(I)Ljdk/nashorn/internal/ir/Symbol;
            pop
         8: .line 609
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    9     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  public void increaseUseCount();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 615
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifeq 2
         1: .line 616
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.ir.Symbol.useCount:I
            iconst_1
            iadd
            putfield jdk.nashorn.internal.ir.Symbol.useCount:I
         2: .line 618
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public int getUseCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 625
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.useCount:I
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/ir/Symbol;

  public jdk.nashorn.internal.ir.Symbol setFirstSlot(int);
    descriptor: (I)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // int firstSlot
         0: .line 634
            getstatic jdk.nashorn.internal.ir.Symbol.$assertionsDisabled:Z
            ifne 2
            iload 1 /* firstSlot */
            iflt 1
            iload 1 /* firstSlot */
            ldc 65535
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 635
      StackMap locals:
      StackMap stack:
            iload 1 /* firstSlot */
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
            if_icmpeq 6
         3: .line 636
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.ir.Symbol.shouldTrace:()Z
            ifeq 5
         4: .line 637
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "SET SLOT "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* firstSlot */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.ir.Symbol.trace:(Ljava/lang/String;)V
         5: .line 639
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* firstSlot */
            putfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
         6: .line 641
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int firstSlot
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljdk/nashorn/internal/ir/Symbol;
            0    7     1  firstSlot  I
    MethodParameters:
           Name  Flags
      firstSlot  final

  public static jdk.nashorn.internal.ir.Symbol setSymbolIsScope(jdk.nashorn.internal.ir.LexicalContext, jdk.nashorn.internal.ir.Symbol);
    descriptor: (Ljdk/nashorn/internal/ir/LexicalContext;Ljdk/nashorn/internal/ir/Symbol;)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.LexicalContext lc
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
         0: .line 656
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.setIsScope:()Ljdk/nashorn/internal/ir/Symbol;
            pop
         1: .line 657
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isGlobal:()Z
            ifne 3
         2: .line 658
            aload 0 /* lc */
            aload 0 /* lc */
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.LexicalContext.getDefiningBlock:(Ljdk/nashorn/internal/ir/Symbol;)Ljdk/nashorn/internal/ir/Block;
            invokevirtual jdk.nashorn.internal.ir.LexicalContext.setBlockNeedsScope:(Ljdk/nashorn/internal/ir/Block;)V
         3: .line 660
      StackMap locals:
      StackMap stack:
            aload 1 /* symbol */
            areturn
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.ir.LexicalContext lc
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0      lc  Ljdk/nashorn/internal/ir/LexicalContext;
            0    4     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
        Name  Flags
      lc      final
      symbol  final

  private boolean shouldTrace();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.ir.Symbol this
         0: .line 664
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
            ifnull 2
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 1
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS:Ljava/util/Set;
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/ir/Symbol;

  private void trace(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // java.lang.String desc
         0: .line 668
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokestatic jdk.nashorn.internal.runtime.Debug.id:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " SYMBOL: '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* desc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic jdk.nashorn.internal.runtime.Context.err:(Ljava/lang/String;)V
         1: .line 669
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
            ifnull 3
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 2
            getstatic jdk.nashorn.internal.ir.Symbol.TRACE_SYMBOLS_STACKTRACE:Ljava/util/Set;
            aload 0 /* this */
            getfield jdk.nashorn.internal.ir.Symbol.name:Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 670
      StackMap locals:
      StackMap stack:
            new java.lang.Throwable
            dup
            invokespecial java.lang.Throwable.<init>:()V
            invokestatic jdk.nashorn.internal.runtime.Context.getCurrentErr:()Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
         3: .line 672
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String desc
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    4     1  desc  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      desc  final

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.ir.Symbol this
        start local 1 // java.io.ObjectInputStream in
         0: .line 675
            aload 1 /* in */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 676
            aload 0 /* this */
            iconst_m1
            putfield jdk.nashorn.internal.ir.Symbol.firstSlot:I
         2: .line 677
            aload 0 /* this */
            iconst_m1
            putfield jdk.nashorn.internal.ir.Symbol.fieldIndex:I
         3: .line 678
            return
        end local 1 // java.io.ObjectInputStream in
        end local 0 // jdk.nashorn.internal.ir.Symbol this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/ir/Symbol;
            0    4     1    in  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.IOException
    MethodParameters:
      Name  Flags
      in    final

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast jdk.nashorn.internal.ir.Symbol
            invokevirtual jdk.nashorn.internal.ir.Symbol.compareTo:(Ljdk/nashorn/internal/ir/Symbol;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual jdk.nashorn.internal.ir.Symbol.clone:()Ljdk/nashorn/internal/ir/Symbol;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.lang.CloneNotSupportedException
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Ljdk/nashorn/internal/ir/Symbol;>;Ljava/lang/Cloneable;Ljava/io/Serializable;
SourceFile: "Symbol.java"