class com.sun.tools.javac.comp.Lower$EnumMapping
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.comp.Lower$EnumMapping
  super_class: java.lang.Object
{
  com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos;
    descriptor: Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
    flags: (0x0000) 

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

  final com.sun.tools.javac.code.Symbol$TypeSymbol forEnum;
    descriptor: Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
    flags: (0x0010) ACC_FINAL

  final com.sun.tools.javac.code.Symbol$VarSymbol mapVar;
    descriptor: Lcom/sun/tools/javac/code/Symbol$VarSymbol;
    flags: (0x0010) ACC_FINAL

  final java.util.Map<com.sun.tools.javac.code.Symbol$VarSymbol, java.lang.Integer> values;
    descriptor: Ljava/util/Map;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$VarSymbol;Ljava/lang/Integer;>;

  final com.sun.tools.javac.comp.Lower this$0;
    descriptor: Lcom/sun/tools/javac/comp/Lower;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.tools.javac.comp.Lower, com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition, com.sun.tools.javac.code.Symbol$TypeSymbol);
    descriptor: (Lcom/sun/tools/javac/comp/Lower;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
    flags: (0x0000) 
    Code:
      stack=10, locals=6, args_size=4
        start local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
        start local 2 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        start local 3 // com.sun.tools.javac.code.Symbol$TypeSymbol forEnum
         0: .line 456
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 475
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.pos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
         2: .line 478
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.next:I
         3: .line 457
            aload 0 /* this */
            aload 3 /* forEnum */
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.forEnum:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
         4: .line 458
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.values:Ljava/util/Map;
         5: .line 459
            aload 0 /* this */
            aload 2 /* pos */
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.pos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
         6: .line 460
            aload 1
            getfield com.sun.tools.javac.comp.Lower.names:Lcom/sun/tools/javac/util/Names;
         7: .line 461
            new java.lang.StringBuilder
            dup
            aload 1
            getfield com.sun.tools.javac.comp.Lower.target:Lcom/sun/tools/javac/jvm/Target;
            invokevirtual com.sun.tools.javac.jvm.Target.syntheticNameChar:()C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 462
            ldc "SwitchMap"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 463
            aload 1
            getfield com.sun.tools.javac.comp.Lower.target:Lcom/sun/tools/javac/jvm/Target;
            invokevirtual com.sun.tools.javac.jvm.Target.syntheticNameChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        10: .line 464
            aload 1
            getfield com.sun.tools.javac.comp.Lower.names:Lcom/sun/tools/javac/util/Names;
            aload 3 /* forEnum */
            getfield com.sun.tools.javac.code.Symbol$TypeSymbol.type:Lcom/sun/tools/javac/code/Type;
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            invokevirtual com.sun.tools.javac.code.Symbol$TypeSymbol.flatName:()Lcom/sun/tools/javac/util/Name;
            invokestatic com.sun.tools.javac.jvm.ClassWriter.externalize:(Lcom/sun/tools/javac/util/Name;)[B
            invokevirtual com.sun.tools.javac.util.Names.fromUtf:([B)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
        11: .line 465
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
        12: .line 466
            bipush 46
            aload 1
            getfield com.sun.tools.javac.comp.Lower.target:Lcom/sun/tools/javac/jvm/Target;
            invokevirtual com.sun.tools.javac.jvm.Target.syntheticNameChar:()C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
        13: .line 464
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 461
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
        15: .line 460
            astore 4 /* varName */
        start local 4 // com.sun.tools.javac.util.Name varName
        16: .line 467
            aload 1
            invokevirtual com.sun.tools.javac.comp.Lower.outerCacheClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            astore 5 /* outerCacheClass */
        start local 5 // com.sun.tools.javac.code.Symbol$ClassSymbol outerCacheClass
        17: .line 468
            aload 0 /* this */
            new com.sun.tools.javac.code.Symbol$VarSymbol
            dup
            ldc 4120
        18: .line 469
            aload 4 /* varName */
        19: .line 470
            new com.sun.tools.javac.code.Type$ArrayType
            dup
            aload 1
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
            aload 1
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.arrayClass:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            invokespecial com.sun.tools.javac.code.Type$ArrayType.<init>:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
        20: .line 471
            aload 5 /* outerCacheClass */
            invokespecial com.sun.tools.javac.code.Symbol$VarSymbol.<init>:(JLcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol;)V
        21: .line 468
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.mapVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
        22: .line 472
            aload 1
            aload 2 /* pos */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.mapVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            aload 5 /* outerCacheClass */
            invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.members:()Lcom/sun/tools/javac/code/Scope$WriteableScope;
            invokevirtual com.sun.tools.javac.comp.Lower.enterSynthetic:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Scope$WriteableScope;)V
        23: .line 473
            return
        end local 5 // com.sun.tools.javac.code.Symbol$ClassSymbol outerCacheClass
        end local 4 // com.sun.tools.javac.util.Name varName
        end local 3 // com.sun.tools.javac.code.Symbol$TypeSymbol forEnum
        end local 2 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        end local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0             this  Lcom/sun/tools/javac/comp/Lower$EnumMapping;
            0   24     2              pos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            0   24     3          forEnum  Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
           16   24     4          varName  Lcom/sun/tools/javac/util/Name;
           17   24     5  outerCacheClass  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
    MethodParameters:
         Name  Flags
      this$0   final
      pos      
      forEnum  

  com.sun.tools.javac.tree.JCTree$JCLiteral forConstant(com.sun.tools.javac.code.Symbol$VarSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)Lcom/sun/tools/javac/tree/JCTree$JCLiteral;
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
        start local 1 // com.sun.tools.javac.code.Symbol$VarSymbol v
         0: .line 490
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.values:Ljava/util/Map;
            aload 1 /* v */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 2 /* result */
        start local 2 // java.lang.Integer result
         1: .line 491
            aload 2 /* result */
            ifnonnull 3
         2: .line 492
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.values:Ljava/util/Map;
            aload 1 /* v */
            aload 0 /* this */
            dup
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.next:I
            dup_x1
            iconst_1
            iadd
            putfield com.sun.tools.javac.comp.Lower$EnumMapping.next:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            dup
            astore 2 /* result */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 493
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 2 /* result */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Literal:(Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree$JCLiteral;
            areturn
        end local 2 // java.lang.Integer result
        end local 1 // com.sun.tools.javac.code.Symbol$VarSymbol v
        end local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/sun/tools/javac/comp/Lower$EnumMapping;
            0    4     1       v  Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            1    4     2  result  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      v     

  void translate();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=10, locals=15, args_size=1
        start local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
         0: .line 498
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.pos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            invokeinterface com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition.getStartPosition:()I
            invokevirtual com.sun.tools.javac.tree.TreeMaker.at:(I)Lcom/sun/tools/javac/tree/TreeMaker;
            pop
         1: .line 499
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.mapVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            getfield com.sun.tools.javac.code.Symbol$VarSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
            checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
            invokevirtual com.sun.tools.javac.comp.Lower.classDef:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            astore 1 /* owner */
        start local 1 // com.sun.tools.javac.tree.JCTree$JCClassDecl owner
         2: .line 502
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.pos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
         3: .line 503
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names.values:Lcom/sun/tools/javac/util/Name;
         4: .line 504
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.forEnum:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            getfield com.sun.tools.javac.code.Symbol$TypeSymbol.type:Lcom/sun/tools/javac/code/Type;
         5: .line 505
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
         6: .line 502
            invokevirtual com.sun.tools.javac.comp.Lower.lookupMethod:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
            astore 2 /* valuesMethod */
        start local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol valuesMethod
         7: .line 506
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
         8: .line 507
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 2 /* valuesMethod */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.QualIdent:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.App:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCMethodInvocation;
         9: .line 508
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.lengthVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
        10: .line 507
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Select:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
        11: .line 506
            astore 3 /* size */
        start local 3 // com.sun.tools.javac.tree.JCTree$JCExpression size
        12: .line 509
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
        13: .line 510
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Type:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 3 /* size */
            invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            aconst_null
            invokevirtual com.sun.tools.javac.tree.TreeMaker.NewArray:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/tree/JCTree$JCNewArray;
        14: .line 511
            new com.sun.tools.javac.code.Type$ArrayType
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.arrayClass:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            invokespecial com.sun.tools.javac.code.Type$ArrayType.<init>:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)V
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewArray.setType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
        15: .line 509
            astore 4 /* mapVarInit */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCExpression mapVarInit
        16: .line 514
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 5 /* stmts */
        start local 5 // com.sun.tools.javac.util.ListBuffer stmts
        17: .line 515
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.pos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
        18: .line 516
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names.ordinal:Lcom/sun/tools/javac/util/Name;
        19: .line 517
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.forEnum:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            getfield com.sun.tools.javac.code.Symbol$TypeSymbol.type:Lcom/sun/tools/javac/code/Type;
        20: .line 518
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
        21: .line 515
            invokevirtual com.sun.tools.javac.comp.Lower.lookupMethod:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
            astore 6 /* ordinalMethod */
        start local 6 // com.sun.tools.javac.code.Symbol ordinalMethod
        22: .line 519
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
        23: .line 520
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            new com.sun.tools.javac.code.Symbol$VarSymbol
            dup
            ldc 8589934592
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names.ex:Lcom/sun/tools/javac/util/Name;
        24: .line 521
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.noSuchFieldErrorType:Lcom/sun/tools/javac/code/Type;
        25: .line 522
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.noSymbol:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            invokespecial com.sun.tools.javac.code.Symbol$VarSymbol.<init>:(JLcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol;)V
        26: .line 523
            aconst_null
        27: .line 520
            invokevirtual com.sun.tools.javac.tree.TreeMaker.VarDef:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;
        28: .line 524
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            lconst_0
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Block:(JLcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/tree/JCTree$JCBlock;
        29: .line 520
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Catch:(Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;Lcom/sun/tools/javac/tree/JCTree$JCBlock;)Lcom/sun/tools/javac/tree/JCTree$JCCatch;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
        30: .line 519
            astore 7 /* catcher */
        start local 7 // com.sun.tools.javac.util.List catcher
        31: .line 525
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.values:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 48
      StackMap locals: com.sun.tools.javac.comp.Lower$EnumMapping com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Symbol$MethodSymbol com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol com.sun.tools.javac.util.List top java.util.Iterator
      StackMap stack:
        32: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 8 /* e */
        start local 8 // java.util.Map$Entry e
        33: .line 526
            aload 8 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$VarSymbol
            astore 10 /* enumerator */
        start local 10 // com.sun.tools.javac.code.Symbol$VarSymbol enumerator
        34: .line 527
            aload 8 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 11 /* mappedValue */
        start local 11 // java.lang.Integer mappedValue
        35: .line 528
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
        36: .line 529
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.mapVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
        37: .line 530
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 10 /* enumerator */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.QualIdent:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
        38: .line 531
            aload 6 /* ordinalMethod */
        39: .line 530
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Select:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.App:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCMethodInvocation;
        40: .line 529
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Indexed:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCArrayAccess;
        41: .line 532
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 11 /* mappedValue */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Literal:(Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree$JCLiteral;
        42: .line 529
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Assign:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCAssign;
        43: .line 533
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.intType:Lcom/sun/tools/javac/code/Type$JCPrimitiveType;
            invokevirtual com.sun.tools.javac.tree.JCTree$JCAssign.setType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
        44: .line 528
            astore 12 /* assign */
        start local 12 // com.sun.tools.javac.tree.JCTree$JCExpression assign
        45: .line 534
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 12 /* assign */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Exec:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCExpressionStatement;
            astore 13 /* exec */
        start local 13 // com.sun.tools.javac.tree.JCTree$JCStatement exec
        46: .line 535
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            lconst_0
            aload 13 /* exec */
            invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Block:(JLcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/tree/JCTree$JCBlock;
            aload 7 /* catcher */
            aconst_null
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Try:(Lcom/sun/tools/javac/tree/JCTree$JCBlock;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/tree/JCTree$JCBlock;)Lcom/sun/tools/javac/tree/JCTree$JCTry;
            astore 14 /* _try */
        start local 14 // com.sun.tools.javac.tree.JCTree$JCStatement _try
        47: .line 536
            aload 5 /* stmts */
            aload 14 /* _try */
            invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
            pop
        end local 14 // com.sun.tools.javac.tree.JCTree$JCStatement _try
        end local 13 // com.sun.tools.javac.tree.JCTree$JCStatement exec
        end local 12 // com.sun.tools.javac.tree.JCTree$JCExpression assign
        end local 11 // java.lang.Integer mappedValue
        end local 10 // com.sun.tools.javac.code.Symbol$VarSymbol enumerator
        end local 8 // java.util.Map$Entry e
        48: .line 525
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 32
        49: .line 539
            aload 1 /* owner */
            aload 1 /* owner */
            getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.defs:Lcom/sun/tools/javac/util/List;
        50: .line 540
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            ldc 8
            aload 5 /* stmts */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.tree.TreeMaker.Block:(JLcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/tree/JCTree$JCBlock;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
        51: .line 541
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.this$0:Lcom/sun/tools/javac/comp/Lower;
            getfield com.sun.tools.javac.comp.Lower.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Lower$EnumMapping.mapVar:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            aload 4 /* mapVarInit */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.VarDef:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
        52: .line 539
            putfield com.sun.tools.javac.tree.JCTree$JCClassDecl.defs:Lcom/sun/tools/javac/util/List;
        53: .line 542
            return
        end local 7 // com.sun.tools.javac.util.List catcher
        end local 6 // com.sun.tools.javac.code.Symbol ordinalMethod
        end local 5 // com.sun.tools.javac.util.ListBuffer stmts
        end local 4 // com.sun.tools.javac.tree.JCTree$JCExpression mapVarInit
        end local 3 // com.sun.tools.javac.tree.JCTree$JCExpression size
        end local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol valuesMethod
        end local 1 // com.sun.tools.javac.tree.JCTree$JCClassDecl owner
        end local 0 // com.sun.tools.javac.comp.Lower$EnumMapping this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   54     0           this  Lcom/sun/tools/javac/comp/Lower$EnumMapping;
            2   54     1          owner  Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            7   54     2   valuesMethod  Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
           12   54     3           size  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
           16   54     4     mapVarInit  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
           17   54     5          stmts  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/tree/JCTree$JCStatement;>;
           22   54     6  ordinalMethod  Lcom/sun/tools/javac/code/Symbol;
           31   54     7        catcher  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCatch;>;
           33   48     8              e  Ljava/util/Map$Entry<Lcom/sun/tools/javac/code/Symbol$VarSymbol;Ljava/lang/Integer;>;
           34   48    10     enumerator  Lcom/sun/tools/javac/code/Symbol$VarSymbol;
           35   48    11    mappedValue  Ljava/lang/Integer;
           45   48    12         assign  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
           46   48    13           exec  Lcom/sun/tools/javac/tree/JCTree$JCStatement;
           47   48    14           _try  Lcom/sun/tools/javac/tree/JCTree$JCStatement;
}
SourceFile: "Lower.java"
NestHost: com.sun.tools.javac.comp.Lower
InnerClasses:
  public abstract WriteableScope = com.sun.tools.javac.code.Scope$WriteableScope of com.sun.tools.javac.code.Scope
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
  public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
  public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
  public ArrayType = com.sun.tools.javac.code.Type$ArrayType of com.sun.tools.javac.code.Type
  EnumMapping = com.sun.tools.javac.comp.Lower$EnumMapping of com.sun.tools.javac.comp.Lower
  public JCArrayAccess = com.sun.tools.javac.tree.JCTree$JCArrayAccess of com.sun.tools.javac.tree.JCTree
  public JCAssign = com.sun.tools.javac.tree.JCTree$JCAssign of com.sun.tools.javac.tree.JCTree
  public JCBlock = com.sun.tools.javac.tree.JCTree$JCBlock of com.sun.tools.javac.tree.JCTree
  public JCCatch = com.sun.tools.javac.tree.JCTree$JCCatch of com.sun.tools.javac.tree.JCTree
  public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public JCExpressionStatement = com.sun.tools.javac.tree.JCTree$JCExpressionStatement of com.sun.tools.javac.tree.JCTree
  public JCLiteral = com.sun.tools.javac.tree.JCTree$JCLiteral of com.sun.tools.javac.tree.JCTree
  public JCMethodInvocation = com.sun.tools.javac.tree.JCTree$JCMethodInvocation of com.sun.tools.javac.tree.JCTree
  public JCNewArray = com.sun.tools.javac.tree.JCTree$JCNewArray of com.sun.tools.javac.tree.JCTree
  public abstract JCStatement = com.sun.tools.javac.tree.JCTree$JCStatement of com.sun.tools.javac.tree.JCTree
  public JCTry = com.sun.tools.javac.tree.JCTree$JCTry of com.sun.tools.javac.tree.JCTree
  public JCVariableDecl = com.sun.tools.javac.tree.JCTree$JCVariableDecl of com.sun.tools.javac.tree.JCTree
  public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
  public abstract Entry = java.util.Map$Entry of java.util.Map