public final class com.sun.tools.javac.code.Source$Feature extends java.lang.Enum<com.sun.tools.javac.code.Source$Feature>
  minor version: 0
  major version: 59
  flags: flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: com.sun.tools.javac.code.Source$Feature
  super_class: java.lang.Enum
{
  public static final com.sun.tools.javac.code.Source$Feature DIAMOND;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature MULTICATCH;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature IMPROVED_RETHROW_ANALYSIS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature IMPROVED_CATCH_ANALYSIS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature MODULES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature TRY_WITH_RESOURCES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature EFFECTIVELY_FINAL_VARIABLES_IN_TRY_WITH_RESOURCES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature BINARY_LITERALS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature UNDERSCORES_IN_LITERALS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature STRINGS_IN_SWITCH;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature DEPRECATION_ON_IMPORT;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature SIMPLIFIED_VARARGS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature OBJECT_TO_PRIMITIVE_CAST;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature ENFORCE_THIS_DOT_INIT;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature POLY;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature LAMBDA;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature METHOD_REFERENCES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature DEFAULT_METHODS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature STATIC_INTERFACE_METHODS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature STATIC_INTERFACE_METHODS_INVOKE;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature STRICT_METHOD_CLASH_CHECK;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature EFFECTIVELY_FINAL_IN_INNER_CLASSES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature TYPE_ANNOTATIONS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature ANNOTATIONS_AFTER_TYPE_PARAMS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature REPEATED_ANNOTATIONS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature INTERSECTION_TYPES_IN_CAST;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature GRAPH_INFERENCE;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature FUNCTIONAL_INTERFACE_MOST_SPECIFIC;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature POST_APPLICABILITY_VARARGS_ACCESS_CHECK;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature MAP_CAPTURES_TO_BOUNDS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature PRIVATE_SAFE_VARARGS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature DIAMOND_WITH_ANONYMOUS_CLASS_CREATION;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature UNDERSCORE_IDENTIFIER;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature PRIVATE_INTERFACE_METHODS;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature LOCAL_VARIABLE_TYPE_INFERENCE;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.sun.tools.javac.code.Source$Feature IMPORT_ON_DEMAND_OBSERVABLE_PACKAGES;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  private final com.sun.tools.javac.code.Source minLevel;
    descriptor: Lcom/sun/tools/javac/code/Source;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.Source maxLevel;
    descriptor: Lcom/sun/tools/javac/code/Source;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.util.JCDiagnostic$Fragment optFragment;
    descriptor: Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.Source$Feature$DiagKind optKind;
    descriptor: Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final com.sun.tools.javac.code.Source$Feature[] ENUM$VALUES;
    descriptor: [Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=0, args_size=0
         0: .line 150
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "DIAMOND"
            iconst_0
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureDiamond:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.NORMAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.DIAMOND:Lcom/sun/tools/javac/code/Source$Feature;
         1: .line 151
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "MULTICATCH"
            iconst_1
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureMulticatch:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.MULTICATCH:Lcom/sun/tools/javac/code/Source$Feature;
         2: .line 152
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "IMPROVED_RETHROW_ANALYSIS"
            iconst_2
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.IMPROVED_RETHROW_ANALYSIS:Lcom/sun/tools/javac/code/Source$Feature;
         3: .line 153
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "IMPROVED_CATCH_ANALYSIS"
            iconst_3
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.IMPROVED_CATCH_ANALYSIS:Lcom/sun/tools/javac/code/Source$Feature;
         4: .line 154
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "MODULES"
            iconst_4
            getstatic com.sun.tools.javac.code.Source.JDK9:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureModules:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.MODULES:Lcom/sun/tools/javac/code/Source$Feature;
         5: .line 155
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "TRY_WITH_RESOURCES"
            iconst_5
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureTryWithResources:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.NORMAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.TRY_WITH_RESOURCES:Lcom/sun/tools/javac/code/Source$Feature;
         6: .line 156
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "EFFECTIVELY_FINAL_VARIABLES_IN_TRY_WITH_RESOURCES"
            bipush 6
            getstatic com.sun.tools.javac.code.Source.JDK9:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureVarInTryWithResources:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.EFFECTIVELY_FINAL_VARIABLES_IN_TRY_WITH_RESOURCES:Lcom/sun/tools/javac/code/Source$Feature;
         7: .line 157
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "BINARY_LITERALS"
            bipush 7
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureBinaryLit:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.BINARY_LITERALS:Lcom/sun/tools/javac/code/Source$Feature;
         8: .line 158
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "UNDERSCORES_IN_LITERALS"
            bipush 8
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureUnderscoreLit:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.UNDERSCORES_IN_LITERALS:Lcom/sun/tools/javac/code/Source$Feature;
         9: .line 159
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "STRINGS_IN_SWITCH"
            bipush 9
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureStringSwitch:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.STRINGS_IN_SWITCH:Lcom/sun/tools/javac/code/Source$Feature;
        10: .line 160
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "DEPRECATION_ON_IMPORT"
            bipush 10
            getstatic com.sun.tools.javac.code.Source.MIN:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.DEPRECATION_ON_IMPORT:Lcom/sun/tools/javac/code/Source$Feature;
        11: .line 161
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "SIMPLIFIED_VARARGS"
            bipush 11
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.SIMPLIFIED_VARARGS:Lcom/sun/tools/javac/code/Source$Feature;
        12: .line 162
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "OBJECT_TO_PRIMITIVE_CAST"
            bipush 12
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.OBJECT_TO_PRIMITIVE_CAST:Lcom/sun/tools/javac/code/Source$Feature;
        13: .line 163
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "ENFORCE_THIS_DOT_INIT"
            bipush 13
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.ENFORCE_THIS_DOT_INIT:Lcom/sun/tools/javac/code/Source$Feature;
        14: .line 164
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "POLY"
            bipush 14
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.POLY:Lcom/sun/tools/javac/code/Source$Feature;
        15: .line 165
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "LAMBDA"
            bipush 15
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureLambda:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.LAMBDA:Lcom/sun/tools/javac/code/Source$Feature;
        16: .line 166
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "METHOD_REFERENCES"
            bipush 16
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureMethodReferences:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.METHOD_REFERENCES:Lcom/sun/tools/javac/code/Source$Feature;
        17: .line 167
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "DEFAULT_METHODS"
            bipush 17
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureDefaultMethods:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.DEFAULT_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
        18: .line 168
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "STATIC_INTERFACE_METHODS"
            bipush 18
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureStaticIntfMethods:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.STATIC_INTERFACE_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
        19: .line 169
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "STATIC_INTERFACE_METHODS_INVOKE"
            bipush 19
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureStaticIntfMethodInvoke:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.STATIC_INTERFACE_METHODS_INVOKE:Lcom/sun/tools/javac/code/Source$Feature;
        20: .line 170
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "STRICT_METHOD_CLASH_CHECK"
            bipush 20
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.STRICT_METHOD_CLASH_CHECK:Lcom/sun/tools/javac/code/Source$Feature;
        21: .line 171
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "EFFECTIVELY_FINAL_IN_INNER_CLASSES"
            bipush 21
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.EFFECTIVELY_FINAL_IN_INNER_CLASSES:Lcom/sun/tools/javac/code/Source$Feature;
        22: .line 172
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "TYPE_ANNOTATIONS"
            bipush 22
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureTypeAnnotations:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.TYPE_ANNOTATIONS:Lcom/sun/tools/javac/code/Source$Feature;
        23: .line 173
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "ANNOTATIONS_AFTER_TYPE_PARAMS"
            bipush 23
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureAnnotationsAfterTypeParams:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.ANNOTATIONS_AFTER_TYPE_PARAMS:Lcom/sun/tools/javac/code/Source$Feature;
        24: .line 174
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "REPEATED_ANNOTATIONS"
            bipush 24
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureRepeatableAnnotations:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.REPEATED_ANNOTATIONS:Lcom/sun/tools/javac/code/Source$Feature;
        25: .line 175
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "INTERSECTION_TYPES_IN_CAST"
            bipush 25
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureIntersectionTypesInCast:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.INTERSECTION_TYPES_IN_CAST:Lcom/sun/tools/javac/code/Source$Feature;
        26: .line 176
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "GRAPH_INFERENCE"
            bipush 26
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.GRAPH_INFERENCE:Lcom/sun/tools/javac/code/Source$Feature;
        27: .line 177
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "FUNCTIONAL_INTERFACE_MOST_SPECIFIC"
            bipush 27
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.FUNCTIONAL_INTERFACE_MOST_SPECIFIC:Lcom/sun/tools/javac/code/Source$Feature;
        28: .line 178
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "POST_APPLICABILITY_VARARGS_ACCESS_CHECK"
            bipush 28
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.POST_APPLICABILITY_VARARGS_ACCESS_CHECK:Lcom/sun/tools/javac/code/Source$Feature;
        29: .line 179
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "MAP_CAPTURES_TO_BOUNDS"
            bipush 29
            getstatic com.sun.tools.javac.code.Source.MIN:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.code.Source.JDK7:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.MAP_CAPTURES_TO_BOUNDS:Lcom/sun/tools/javac/code/Source$Feature;
        30: .line 180
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "PRIVATE_SAFE_VARARGS"
            bipush 30
            getstatic com.sun.tools.javac.code.Source.JDK9:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.PRIVATE_SAFE_VARARGS:Lcom/sun/tools/javac/code/Source$Feature;
        31: .line 181
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "DIAMOND_WITH_ANONYMOUS_CLASS_CREATION"
            bipush 31
            getstatic com.sun.tools.javac.code.Source.JDK9:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureDiamondAndAnonClass:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.NORMAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.DIAMOND_WITH_ANONYMOUS_CLASS_CREATION:Lcom/sun/tools/javac/code/Source$Feature;
        32: .line 182
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "UNDERSCORE_IDENTIFIER"
            bipush 32
            getstatic com.sun.tools.javac.code.Source.MIN:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.UNDERSCORE_IDENTIFIER:Lcom/sun/tools/javac/code/Source$Feature;
        33: .line 183
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "PRIVATE_INTERFACE_METHODS"
            bipush 33
            getstatic com.sun.tools.javac.code.Source.JDK9:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeaturePrivateIntfMethods:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
            putstatic com.sun.tools.javac.code.Source$Feature.PRIVATE_INTERFACE_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
        34: .line 184
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "LOCAL_VARIABLE_TYPE_INFERENCE"
            bipush 34
            getstatic com.sun.tools.javac.code.Source.JDK10:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.LOCAL_VARIABLE_TYPE_INFERENCE:Lcom/sun/tools/javac/code/Source$Feature;
        35: .line 185
            new com.sun.tools.javac.code.Source$Feature
            dup
            ldc "IMPORT_ON_DEMAND_OBSERVABLE_PACKAGES"
            bipush 35
            getstatic com.sun.tools.javac.code.Source.JDK1_2:Lcom/sun/tools/javac/code/Source;
            getstatic com.sun.tools.javac.code.Source.JDK8:Lcom/sun/tools/javac/code/Source;
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;)V
            putstatic com.sun.tools.javac.code.Source$Feature.IMPORT_ON_DEMAND_OBSERVABLE_PACKAGES:Lcom/sun/tools/javac/code/Source$Feature;
        36: .line 148
            bipush 36
            anewarray com.sun.tools.javac.code.Source$Feature
            dup
            iconst_0
            getstatic com.sun.tools.javac.code.Source$Feature.DIAMOND:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            iconst_1
            getstatic com.sun.tools.javac.code.Source$Feature.MULTICATCH:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            iconst_2
            getstatic com.sun.tools.javac.code.Source$Feature.IMPROVED_RETHROW_ANALYSIS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            iconst_3
            getstatic com.sun.tools.javac.code.Source$Feature.IMPROVED_CATCH_ANALYSIS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            iconst_4
            getstatic com.sun.tools.javac.code.Source$Feature.MODULES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            iconst_5
            getstatic com.sun.tools.javac.code.Source$Feature.TRY_WITH_RESOURCES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 6
            getstatic com.sun.tools.javac.code.Source$Feature.EFFECTIVELY_FINAL_VARIABLES_IN_TRY_WITH_RESOURCES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 7
            getstatic com.sun.tools.javac.code.Source$Feature.BINARY_LITERALS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 8
            getstatic com.sun.tools.javac.code.Source$Feature.UNDERSCORES_IN_LITERALS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 9
            getstatic com.sun.tools.javac.code.Source$Feature.STRINGS_IN_SWITCH:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 10
            getstatic com.sun.tools.javac.code.Source$Feature.DEPRECATION_ON_IMPORT:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 11
            getstatic com.sun.tools.javac.code.Source$Feature.SIMPLIFIED_VARARGS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 12
            getstatic com.sun.tools.javac.code.Source$Feature.OBJECT_TO_PRIMITIVE_CAST:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 13
            getstatic com.sun.tools.javac.code.Source$Feature.ENFORCE_THIS_DOT_INIT:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 14
            getstatic com.sun.tools.javac.code.Source$Feature.POLY:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 15
            getstatic com.sun.tools.javac.code.Source$Feature.LAMBDA:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 16
            getstatic com.sun.tools.javac.code.Source$Feature.METHOD_REFERENCES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 17
            getstatic com.sun.tools.javac.code.Source$Feature.DEFAULT_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 18
            getstatic com.sun.tools.javac.code.Source$Feature.STATIC_INTERFACE_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 19
            getstatic com.sun.tools.javac.code.Source$Feature.STATIC_INTERFACE_METHODS_INVOKE:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 20
            getstatic com.sun.tools.javac.code.Source$Feature.STRICT_METHOD_CLASH_CHECK:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 21
            getstatic com.sun.tools.javac.code.Source$Feature.EFFECTIVELY_FINAL_IN_INNER_CLASSES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 22
            getstatic com.sun.tools.javac.code.Source$Feature.TYPE_ANNOTATIONS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 23
            getstatic com.sun.tools.javac.code.Source$Feature.ANNOTATIONS_AFTER_TYPE_PARAMS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 24
            getstatic com.sun.tools.javac.code.Source$Feature.REPEATED_ANNOTATIONS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 25
            getstatic com.sun.tools.javac.code.Source$Feature.INTERSECTION_TYPES_IN_CAST:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 26
            getstatic com.sun.tools.javac.code.Source$Feature.GRAPH_INFERENCE:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 27
            getstatic com.sun.tools.javac.code.Source$Feature.FUNCTIONAL_INTERFACE_MOST_SPECIFIC:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 28
            getstatic com.sun.tools.javac.code.Source$Feature.POST_APPLICABILITY_VARARGS_ACCESS_CHECK:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 29
            getstatic com.sun.tools.javac.code.Source$Feature.MAP_CAPTURES_TO_BOUNDS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 30
            getstatic com.sun.tools.javac.code.Source$Feature.PRIVATE_SAFE_VARARGS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 31
            getstatic com.sun.tools.javac.code.Source$Feature.DIAMOND_WITH_ANONYMOUS_CLASS_CREATION:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 32
            getstatic com.sun.tools.javac.code.Source$Feature.UNDERSCORE_IDENTIFIER:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 33
            getstatic com.sun.tools.javac.code.Source$Feature.PRIVATE_INTERFACE_METHODS:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 34
            getstatic com.sun.tools.javac.code.Source$Feature.LOCAL_VARIABLE_TYPE_INFERENCE:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            dup
            bipush 35
            getstatic com.sun.tools.javac.code.Source$Feature.IMPORT_ON_DEMAND_OBSERVABLE_PACKAGES:Lcom/sun/tools/javac/code/Source$Feature;
            aastore
            putstatic com.sun.tools.javac.code.Source$Feature.ENUM$VALUES:[Lcom/sun/tools/javac/code/Source$Feature;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int, com.sun.tools.javac.code.Source);
    descriptor: (Ljava/lang/String;ILcom/sun/tools/javac/code/Source;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 3 // com.sun.tools.javac.code.Source minLevel
         0: .line 198
            aload 0 /* this */
            aload 1
            iload 2
            aload 3 /* minLevel */
            aconst_null
            aconst_null
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
         1: .line 199
            return
        end local 3 // com.sun.tools.javac.code.Source minLevel
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/tools/javac/code/Source$Feature;
            0    2     3  minLevel  Lcom/sun/tools/javac/code/Source;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      minLevel       

  private void <init>(java.lang.String, int, com.sun.tools.javac.code.Source, com.sun.tools.javac.util.JCDiagnostic$Fragment, com.sun.tools.javac.code.Source$Feature$DiagKind);
    descriptor: (Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 3 // com.sun.tools.javac.code.Source minLevel
        start local 4 // com.sun.tools.javac.util.JCDiagnostic$Fragment optFragment
        start local 5 // com.sun.tools.javac.code.Source$Feature$DiagKind optKind
         0: .line 202
            aload 0 /* this */
            aload 1
            iload 2
            aload 3 /* minLevel */
            getstatic com.sun.tools.javac.code.Source.MAX:Lcom/sun/tools/javac/code/Source;
            aload 4 /* optFragment */
            aload 5 /* optKind */
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
         1: .line 203
            return
        end local 5 // com.sun.tools.javac.code.Source$Feature$DiagKind optKind
        end local 4 // com.sun.tools.javac.util.JCDiagnostic$Fragment optFragment
        end local 3 // com.sun.tools.javac.code.Source minLevel
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/javac/code/Source$Feature;
            0    2     3     minLevel  Lcom/sun/tools/javac/code/Source;
            0    2     4  optFragment  Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            0    2     5      optKind  Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      minLevel       
      optFragment    
      optKind        

  private void <init>(java.lang.String, int, com.sun.tools.javac.code.Source, com.sun.tools.javac.code.Source);
    descriptor: (Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 3 // com.sun.tools.javac.code.Source minLevel
        start local 4 // com.sun.tools.javac.code.Source maxLevel
         0: .line 206
            aload 0 /* this */
            aload 1
            iload 2
            aload 3 /* minLevel */
            aload 4 /* maxLevel */
            aconst_null
            aconst_null
            invokespecial com.sun.tools.javac.code.Source$Feature.<init>:(Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
         1: .line 207
            return
        end local 4 // com.sun.tools.javac.code.Source maxLevel
        end local 3 // com.sun.tools.javac.code.Source minLevel
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/tools/javac/code/Source$Feature;
            0    2     3  minLevel  Lcom/sun/tools/javac/code/Source;
            0    2     4  maxLevel  Lcom/sun/tools/javac/code/Source;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      minLevel       
      maxLevel       

  private void <init>(java.lang.String, int, com.sun.tools.javac.code.Source, com.sun.tools.javac.code.Source, com.sun.tools.javac.util.JCDiagnostic$Fragment, com.sun.tools.javac.code.Source$Feature$DiagKind);
    descriptor: (Ljava/lang/String;ILcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/code/Source;Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/code/Source$Feature$DiagKind;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 3 // com.sun.tools.javac.code.Source minLevel
        start local 4 // com.sun.tools.javac.code.Source maxLevel
        start local 5 // com.sun.tools.javac.util.JCDiagnostic$Fragment optFragment
        start local 6 // com.sun.tools.javac.code.Source$Feature$DiagKind optKind
         0: .line 209
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 210
            aload 0 /* this */
            aload 3 /* minLevel */
            putfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
         2: .line 211
            aload 0 /* this */
            aload 4 /* maxLevel */
            putfield com.sun.tools.javac.code.Source$Feature.maxLevel:Lcom/sun/tools/javac/code/Source;
         3: .line 212
            aload 0 /* this */
            aload 5 /* optFragment */
            putfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
         4: .line 213
            aload 0 /* this */
            aload 6 /* optKind */
            putfield com.sun.tools.javac.code.Source$Feature.optKind:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
         5: .line 214
            return
        end local 6 // com.sun.tools.javac.code.Source$Feature$DiagKind optKind
        end local 5 // com.sun.tools.javac.util.JCDiagnostic$Fragment optFragment
        end local 4 // com.sun.tools.javac.code.Source maxLevel
        end local 3 // com.sun.tools.javac.code.Source minLevel
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lcom/sun/tools/javac/code/Source$Feature;
            0    6     3     minLevel  Lcom/sun/tools/javac/code/Source;
            0    6     4     maxLevel  Lcom/sun/tools/javac/code/Source;
            0    6     5  optFragment  Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            0    6     6      optKind  Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      minLevel       
      maxLevel       
      optFragment    
      optKind        

  public boolean allowedInSource(com.sun.tools.javac.code.Source);
    descriptor: (Lcom/sun/tools/javac/code/Source;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 1 // com.sun.tools.javac.code.Source source
         0: .line 217
            aload 1 /* source */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
            invokevirtual com.sun.tools.javac.code.Source.compareTo:(Ljava/lang/Enum;)I
            iflt 3
         1: .line 218
            aload 1 /* source */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.maxLevel:Lcom/sun/tools/javac/code/Source;
            invokevirtual com.sun.tools.javac.code.Source.compareTo:(Ljava/lang/Enum;)I
         2: .line 217
            ifgt 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // com.sun.tools.javac.code.Source source
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/sun/tools/javac/code/Source$Feature;
            0    4     1  source  Lcom/sun/tools/javac/code/Source;
    MethodParameters:
        Name  Flags
      source  

  public boolean isPlural();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Source$Feature this
         0: .line 222
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optKind:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 223
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optKind:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.PLURAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            if_acmpne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/code/Source$Feature;

  public com.sun.tools.javac.util.JCDiagnostic$Fragment nameFragment();
    descriptor: ()Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Source$Feature this
         0: .line 227
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 228
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            areturn
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/code/Source$Feature;

  public com.sun.tools.javac.util.JCDiagnostic$Fragment fragment(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 1 // java.lang.String sourceName
         0: .line 232
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 233
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optKind:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.NORMAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            if_acmpne 3
         2: .line 234
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            aload 1 /* sourceName */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
            getfield com.sun.tools.javac.code.Source.name:Ljava/lang/String;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureNotSupportedInSource:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            goto 4
         3: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            aload 1 /* sourceName */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
            getfield com.sun.tools.javac.code.Source.name:Ljava/lang/String;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FeatureNotSupportedInSourcePlural:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
         4: .line 233
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.JCDiagnostic$Fragment
            areturn
        end local 1 // java.lang.String sourceName
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/sun/tools/javac/code/Source$Feature;
            0    5     1  sourceName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      sourceName  

  public com.sun.tools.javac.util.JCDiagnostic$Error error(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.code.Source$Feature this
        start local 1 // java.lang.String sourceName
         0: .line 239
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 240
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optKind:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            getstatic com.sun.tools.javac.code.Source$Feature$DiagKind.NORMAL:Lcom/sun/tools/javac/code/Source$Feature$DiagKind;
            if_acmpne 3
         2: .line 241
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            aload 1 /* sourceName */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
            getfield com.sun.tools.javac.code.Source.name:Ljava/lang/String;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.FeatureNotSupportedInSource:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            goto 4
         3: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.optFragment:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            aload 1 /* sourceName */
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Source$Feature.minLevel:Lcom/sun/tools/javac/code/Source;
            getfield com.sun.tools.javac.code.Source.name:Ljava/lang/String;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.FeatureNotSupportedInSourcePlural:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
         4: .line 240
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.JCDiagnostic$Error
            areturn
        end local 1 // java.lang.String sourceName
        end local 0 // com.sun.tools.javac.code.Source$Feature this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/sun/tools/javac/code/Source$Feature;
            0    5     1  sourceName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      sourceName  

  public static com.sun.tools.javac.code.Source$Feature[] values();
    descriptor: ()[Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic com.sun.tools.javac.code.Source$Feature.ENUM$VALUES:[Lcom/sun/tools/javac/code/Source$Feature;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray com.sun.tools.javac.code.Source$Feature
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static com.sun.tools.javac.code.Source$Feature valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/code/Source$Feature;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lcom/sun/tools/javac/code/Source$Feature;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast com.sun.tools.javac.code.Source$Feature
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  
}
Signature: Ljava/lang/Enum<Lcom/sun/tools/javac/code/Source$Feature;>;
SourceFile: "Source.java"
NestHost: com.sun.tools.javac.code.Source
InnerClasses:
  public final Feature = com.sun.tools.javac.code.Source$Feature of com.sun.tools.javac.code.Source
  final DiagKind = com.sun.tools.javac.code.Source$Feature$DiagKind of com.sun.tools.javac.code.Source$Feature
  public Errors = com.sun.tools.javac.resources.CompilerProperties$Errors of com.sun.tools.javac.resources.CompilerProperties
  public Fragments = com.sun.tools.javac.resources.CompilerProperties$Fragments of com.sun.tools.javac.resources.CompilerProperties
  public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
  public final Fragment = com.sun.tools.javac.util.JCDiagnostic$Fragment of com.sun.tools.javac.util.JCDiagnostic