public class net.bytebuddy.ClassFileVersion implements java.lang.Comparable<net.bytebuddy.ClassFileVersion>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: net.bytebuddy.ClassFileVersion
  super_class: java.lang.Object
{
  protected static final int BASE_VERSION;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 44

  public static final net.bytebuddy.ClassFileVersion JAVA_V1;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V2;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V3;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V4;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V5;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V6;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V7;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V8;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V9;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V10;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V11;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V12;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final net.bytebuddy.ClassFileVersion JAVA_V13;
    descriptor: Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final net.bytebuddy.ClassFileVersion$VersionLocator VERSION_LOCATOR;
    descriptor: Lnet/bytebuddy/ClassFileVersion$VersionLocator;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 49
            new net.bytebuddy.ClassFileVersion
            dup
            ldc 196653
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V1:Lnet/bytebuddy/ClassFileVersion;
         1: .line 54
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 46
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V2:Lnet/bytebuddy/ClassFileVersion;
         2: .line 59
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 47
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V3:Lnet/bytebuddy/ClassFileVersion;
         3: .line 64
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 48
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V4:Lnet/bytebuddy/ClassFileVersion;
         4: .line 69
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 49
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V5:Lnet/bytebuddy/ClassFileVersion;
         5: .line 74
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 50
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V6:Lnet/bytebuddy/ClassFileVersion;
         6: .line 79
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 51
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V7:Lnet/bytebuddy/ClassFileVersion;
         7: .line 84
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 52
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V8:Lnet/bytebuddy/ClassFileVersion;
         8: .line 89
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 53
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V9:Lnet/bytebuddy/ClassFileVersion;
         9: .line 94
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 54
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V10:Lnet/bytebuddy/ClassFileVersion;
        10: .line 99
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 55
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V11:Lnet/bytebuddy/ClassFileVersion;
        11: .line 104
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 56
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V12:Lnet/bytebuddy/ClassFileVersion;
        12: .line 109
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 57
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            putstatic net.bytebuddy.ClassFileVersion.JAVA_V13:Lnet/bytebuddy/ClassFileVersion;
        13: .line 114
            getstatic net.bytebuddy.ClassFileVersion$VersionLocator$CreationAction.INSTANCE:Lnet/bytebuddy/ClassFileVersion$VersionLocator$CreationAction;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast net.bytebuddy.ClassFileVersion$VersionLocator
            putstatic net.bytebuddy.ClassFileVersion.VERSION_LOCATOR:Lnet/bytebuddy/ClassFileVersion$VersionLocator;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // int versionNumber
         0: .line 126
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 127
            aload 0 /* this */
            iload 1 /* versionNumber */
            putfield net.bytebuddy.ClassFileVersion.versionNumber:I
         2: .line 128
            return
        end local 1 // int versionNumber
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lnet/bytebuddy/ClassFileVersion;
            0    3     1  versionNumber  I
    MethodParameters:
               Name  Flags
      versionNumber  

  public static net.bytebuddy.ClassFileVersion ofMinorMajor(int);
    descriptor: (I)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // int versionNumber
         0: .line 137
            new net.bytebuddy.ClassFileVersion
            dup
            iload 0 /* versionNumber */
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            astore 1 /* classFileVersion */
        start local 1 // net.bytebuddy.ClassFileVersion classFileVersion
         1: .line 138
            aload 1 /* classFileVersion */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            bipush 44
            if_icmpgt 3
         2: .line 139
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Class version "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* versionNumber */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " is not valid"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 141
      StackMap locals: net.bytebuddy.ClassFileVersion
      StackMap stack:
            aload 1 /* classFileVersion */
            areturn
        end local 1 // net.bytebuddy.ClassFileVersion classFileVersion
        end local 0 // int versionNumber
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0     versionNumber  I
            1    4     1  classFileVersion  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
               Name  Flags
      versionNumber  

  public static net.bytebuddy.ClassFileVersion ofJavaVersionString(java.lang.String);
    descriptor: (Ljava/lang/String;)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String javaVersionString
         0: .line 151
            aload 0 /* javaVersionString */
            ldc "1.1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 152
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V1:Lnet/bytebuddy/ClassFileVersion;
            areturn
         2: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.2"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 154
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V2:Lnet/bytebuddy/ClassFileVersion;
            areturn
         4: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.3"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 156
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V3:Lnet/bytebuddy/ClassFileVersion;
            areturn
         6: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.4"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 158
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V4:Lnet/bytebuddy/ClassFileVersion;
            areturn
         8: .line 159
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.5"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            aload 0 /* javaVersionString */
            ldc "5"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 160
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V5:Lnet/bytebuddy/ClassFileVersion;
            areturn
        10: .line 161
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.6"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
            aload 0 /* javaVersionString */
            ldc "6"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 162
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V6:Lnet/bytebuddy/ClassFileVersion;
            areturn
        12: .line 163
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.7"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 13
            aload 0 /* javaVersionString */
            ldc "7"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 164
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V7:Lnet/bytebuddy/ClassFileVersion;
            areturn
        14: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.8"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            aload 0 /* javaVersionString */
            ldc "8"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        15: .line 166
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V8:Lnet/bytebuddy/ClassFileVersion;
            areturn
        16: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.9"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            aload 0 /* javaVersionString */
            ldc "9"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 168
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V9:Lnet/bytebuddy/ClassFileVersion;
            areturn
        18: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.10"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 19
            aload 0 /* javaVersionString */
            ldc "10"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        19: .line 170
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V10:Lnet/bytebuddy/ClassFileVersion;
            areturn
        20: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.11"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 21
            aload 0 /* javaVersionString */
            ldc "11"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 172
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V11:Lnet/bytebuddy/ClassFileVersion;
            areturn
        22: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.12"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 23
            aload 0 /* javaVersionString */
            ldc "12"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 174
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V12:Lnet/bytebuddy/ClassFileVersion;
            areturn
        24: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
            ldc "1.13"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
            aload 0 /* javaVersionString */
            ldc "13"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        25: .line 176
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V13:Lnet/bytebuddy/ClassFileVersion;
            areturn
        26: .line 178
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.utility.OpenedClassReader.EXPERIMENTAL:Z
            ifeq 35
        27: .line 180
            aload 0 /* javaVersionString */
            ldc "1."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 29
        28: .line 181
            aload 0 /* javaVersionString */
            iconst_2
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 30
        29: .line 182
      StackMap locals:
      StackMap stack:
            aload 0 /* javaVersionString */
        30: .line 180
      StackMap locals:
      StackMap stack: java.lang.String
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 1 /* version */
        start local 1 // int version
        31: .line 183
            iload 1 /* version */
            ifle 35
        32: .line 184
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 44
            iload 1 /* version */
            iadd
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
        33: areturn
        end local 1 // int version
        34: .line 186
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
        35: .line 189
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown Java version string: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* javaVersionString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.String javaVersionString
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   36     0  javaVersionString  Ljava/lang/String;
           31   34     1            version  I
      Exception table:
        from    to  target  type
          27    33      34  Class java.lang.NumberFormatException
    MethodParameters:
                   Name  Flags
      javaVersionString  

  public static net.bytebuddy.ClassFileVersion ofJavaVersion(int);
    descriptor: (I)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // int javaVersion
         0: .line 201
            iload 0 /* javaVersion */
            tableswitch { // 1 - 13
                    1: 1
                    2: 2
                    3: 3
                    4: 4
                    5: 5
                    6: 6
                    7: 7
                    8: 8
                    9: 9
                   10: 10
                   11: 11
                   12: 12
                   13: 13
              default: 14
          }
         1: .line 203
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V1:Lnet/bytebuddy/ClassFileVersion;
            areturn
         2: .line 205
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V2:Lnet/bytebuddy/ClassFileVersion;
            areturn
         3: .line 207
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V3:Lnet/bytebuddy/ClassFileVersion;
            areturn
         4: .line 209
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V4:Lnet/bytebuddy/ClassFileVersion;
            areturn
         5: .line 211
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V5:Lnet/bytebuddy/ClassFileVersion;
            areturn
         6: .line 213
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V6:Lnet/bytebuddy/ClassFileVersion;
            areturn
         7: .line 215
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V7:Lnet/bytebuddy/ClassFileVersion;
            areturn
         8: .line 217
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V8:Lnet/bytebuddy/ClassFileVersion;
            areturn
         9: .line 219
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V9:Lnet/bytebuddy/ClassFileVersion;
            areturn
        10: .line 221
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V10:Lnet/bytebuddy/ClassFileVersion;
            areturn
        11: .line 223
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V11:Lnet/bytebuddy/ClassFileVersion;
            areturn
        12: .line 225
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V12:Lnet/bytebuddy/ClassFileVersion;
            areturn
        13: .line 227
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.ClassFileVersion.JAVA_V13:Lnet/bytebuddy/ClassFileVersion;
            areturn
        14: .line 229
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.utility.OpenedClassReader.EXPERIMENTAL:Z
            ifeq 16
            iload 0 /* javaVersion */
            ifle 16
        15: .line 230
            new net.bytebuddy.ClassFileVersion
            dup
            bipush 44
            iload 0 /* javaVersion */
            iadd
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            areturn
        16: .line 232
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown Java version: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* javaVersion */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // int javaVersion
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0  javaVersion  I
    MethodParameters:
             Name  Flags
      javaVersion  

  public static net.bytebuddy.ClassFileVersion ofThisVm();
    descriptor: ()Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 246
            getstatic net.bytebuddy.ClassFileVersion.VERSION_LOCATOR:Lnet/bytebuddy/ClassFileVersion$VersionLocator;
            invokeinterface net.bytebuddy.ClassFileVersion$VersionLocator.locate:()Lnet/bytebuddy/ClassFileVersion;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.CachedReturnPlugin$Enhance()

  public static net.bytebuddy.ClassFileVersion ofThisVm(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 257
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tSuppressFBWarnings cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    RuntimeInvisibleAnnotations: 
      SuppressFBWarnings()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        SuppressFBWarnings()
    MethodParameters:
          Name  Flags
      fallback  

  public static net.bytebuddy.ClassFileVersion of(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 274
            aload 0 /* type */
            aload 0 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader.of:(Ljava/lang/ClassLoader;)Lnet/bytebuddy/dynamic/ClassFileLocator;
            invokestatic net.bytebuddy.ClassFileVersion.of:(Ljava/lang/Class;Lnet/bytebuddy/dynamic/ClassFileLocator;)Lnet/bytebuddy/ClassFileVersion;
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/Class<*>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/Class<*>;)Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
      Name  Flags
      type  

  public static net.bytebuddy.ClassFileVersion of(java.lang.Class<?>, net.bytebuddy.dynamic.ClassFileLocator);
    descriptor: (Ljava/lang/Class;Lnet/bytebuddy/dynamic/ClassFileLocator;)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Class type
        start local 1 // net.bytebuddy.dynamic.ClassFileLocator classFileLocator
         0: .line 286
            aload 0 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.of:(Ljava/lang/Class;)Lnet/bytebuddy/description/type/TypeDescription;
            aload 1 /* classFileLocator */
            invokestatic net.bytebuddy.ClassFileVersion.of:(Lnet/bytebuddy/description/type/TypeDescription;Lnet/bytebuddy/dynamic/ClassFileLocator;)Lnet/bytebuddy/ClassFileVersion;
            areturn
        end local 1 // net.bytebuddy.dynamic.ClassFileLocator classFileLocator
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              type  Ljava/lang/Class<*>;
            0    1     1  classFileLocator  Lnet/bytebuddy/dynamic/ClassFileLocator;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/Class<*>;Lnet/bytebuddy/dynamic/ClassFileLocator;)Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
                  Name  Flags
      type              
      classFileLocator  

  public static net.bytebuddy.ClassFileVersion of(net.bytebuddy.description.type.TypeDescription, net.bytebuddy.dynamic.ClassFileLocator);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;Lnet/bytebuddy/dynamic/ClassFileLocator;)Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // net.bytebuddy.description.type.TypeDescription typeDescription
        start local 1 // net.bytebuddy.dynamic.ClassFileLocator classFileLocator
         0: .line 298
            aload 1 /* classFileLocator */
            aload 0 /* typeDescription */
            invokeinterface net.bytebuddy.description.type.TypeDescription.getName:()Ljava/lang/String;
            invokeinterface net.bytebuddy.dynamic.ClassFileLocator.locate:(Ljava/lang/String;)Lnet/bytebuddy/dynamic/ClassFileLocator$Resolution;
            invokeinterface net.bytebuddy.dynamic.ClassFileLocator$Resolution.resolve:()[B
            invokestatic net.bytebuddy.utility.OpenedClassReader.of:([B)Lorg/objectweb/asm/ClassReader;
            astore 2 /* classReader */
        start local 2 // org.objectweb.asm.ClassReader classReader
         1: .line 299
            new net.bytebuddy.ClassFileVersion$VersionExtractor
            dup
            invokespecial net.bytebuddy.ClassFileVersion$VersionExtractor.<init>:()V
            astore 3 /* versionExtractor */
        start local 3 // net.bytebuddy.ClassFileVersion$VersionExtractor versionExtractor
         2: .line 300
            aload 2 /* classReader */
            aload 3 /* versionExtractor */
            iconst_1
            invokevirtual org.objectweb.asm.ClassReader.accept:(Lorg/objectweb/asm/ClassVisitor;I)V
         3: .line 301
            aload 3 /* versionExtractor */
            invokevirtual net.bytebuddy.ClassFileVersion$VersionExtractor.getClassFileVersionNumber:()I
            invokestatic net.bytebuddy.ClassFileVersion.ofMinorMajor:(I)Lnet/bytebuddy/ClassFileVersion;
            areturn
        end local 3 // net.bytebuddy.ClassFileVersion$VersionExtractor versionExtractor
        end local 2 // org.objectweb.asm.ClassReader classReader
        end local 1 // net.bytebuddy.dynamic.ClassFileLocator classFileLocator
        end local 0 // net.bytebuddy.description.type.TypeDescription typeDescription
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0   typeDescription  Lnet/bytebuddy/description/type/TypeDescription;
            0    4     1  classFileLocator  Lnet/bytebuddy/dynamic/ClassFileLocator;
            1    4     2       classReader  Lorg/objectweb/asm/ClassReader;
            2    4     3  versionExtractor  Lnet/bytebuddy/ClassFileVersion$VersionExtractor;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                  Name  Flags
      typeDescription   
      classFileLocator  

  public int getMinorMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 310
            aload 0 /* this */
            getfield net.bytebuddy.ClassFileVersion.versionNumber:I
            ireturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public int getMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 319
            aload 0 /* this */
            getfield net.bytebuddy.ClassFileVersion.versionNumber:I
            sipush 255
            iand
            ireturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public int getMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 328
            aload 0 /* this */
            getfield net.bytebuddy.ClassFileVersion.versionNumber:I
            bipush 16
            ishr
            ireturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public int getJavaVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 337
            aload 0 /* this */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            bipush 44
            isub
            ireturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public boolean isAtLeast(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // net.bytebuddy.ClassFileVersion classFileVersion
         0: .line 347
            aload 0 /* this */
            aload 1 /* classFileVersion */
            invokevirtual net.bytebuddy.ClassFileVersion.compareTo:(Lnet/bytebuddy/ClassFileVersion;)I
            iconst_m1
            if_icmple 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // net.bytebuddy.ClassFileVersion classFileVersion
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lnet/bytebuddy/ClassFileVersion;
            0    2     1  classFileVersion  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
                  Name  Flags
      classFileVersion  

  public boolean isGreaterThan(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // net.bytebuddy.ClassFileVersion classFileVersion
         0: .line 357
            aload 0 /* this */
            aload 1 /* classFileVersion */
            invokevirtual net.bytebuddy.ClassFileVersion.compareTo:(Lnet/bytebuddy/ClassFileVersion;)I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // net.bytebuddy.ClassFileVersion classFileVersion
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lnet/bytebuddy/ClassFileVersion;
            0    2     1  classFileVersion  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
                  Name  Flags
      classFileVersion  

  public boolean isAtMost(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // net.bytebuddy.ClassFileVersion classFileVersion
         0: .line 367
            aload 0 /* this */
            aload 1 /* classFileVersion */
            invokevirtual net.bytebuddy.ClassFileVersion.compareTo:(Lnet/bytebuddy/ClassFileVersion;)I
            iconst_1
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // net.bytebuddy.ClassFileVersion classFileVersion
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lnet/bytebuddy/ClassFileVersion;
            0    2     1  classFileVersion  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
                  Name  Flags
      classFileVersion  

  public boolean isLessThan(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // net.bytebuddy.ClassFileVersion classFileVersion
         0: .line 377
            aload 0 /* this */
            aload 1 /* classFileVersion */
            invokevirtual net.bytebuddy.ClassFileVersion.compareTo:(Lnet/bytebuddy/ClassFileVersion;)I
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // net.bytebuddy.ClassFileVersion classFileVersion
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lnet/bytebuddy/ClassFileVersion;
            0    2     1  classFileVersion  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
                  Name  Flags
      classFileVersion  

  public net.bytebuddy.ClassFileVersion asPreviewVersion();
    descriptor: ()Lnet/bytebuddy/ClassFileVersion;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 386
            new net.bytebuddy.ClassFileVersion
            dup
            aload 0 /* this */
            getfield net.bytebuddy.ClassFileVersion.versionNumber:I
            ldc -65536
            ior
            invokespecial net.bytebuddy.ClassFileVersion.<init>:(I)V
            areturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public boolean isPreviewVersion();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 395
            aload 0 /* this */
            getfield net.bytebuddy.ClassFileVersion.versionNumber:I
            ldc -65536
            iand
            ldc -65536
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lnet/bytebuddy/ClassFileVersion;

  public int compareTo(net.bytebuddy.ClassFileVersion);
    descriptor: (Lnet/bytebuddy/ClassFileVersion;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.ClassFileVersion this
        start local 1 // net.bytebuddy.ClassFileVersion other
         0: .line 402
            aload 0 /* this */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            aload 1 /* other */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            if_icmpne 2
         1: .line 403
            aload 0 /* this */
            invokevirtual net.bytebuddy.ClassFileVersion.getMinorVersion:()I
            aload 1 /* other */
            invokevirtual net.bytebuddy.ClassFileVersion.getMinorVersion:()I
            isub
            goto 3
         2: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            aload 1 /* other */
            invokevirtual net.bytebuddy.ClassFileVersion.getMajorVersion:()I
            isub
         3: .line 402
      StackMap locals:
      StackMap stack: int
            invokestatic java.lang.Integer.signum:(I)I
            ireturn
        end local 1 // net.bytebuddy.ClassFileVersion other
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lnet/bytebuddy/ClassFileVersion;
            0    4     1  other  Lnet/bytebuddy/ClassFileVersion;
    MethodParameters:
       Name  Flags
      other  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // net.bytebuddy.ClassFileVersion this
         0: .line 409
            new java.lang.StringBuilder
            dup
            ldc "Java "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual net.bytebuddy.ClassFileVersion.getJavaVersion:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // net.bytebuddy.ClassFileVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/ClassFileVersion;

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast net.bytebuddy.ClassFileVersion
            invokevirtual net.bytebuddy.ClassFileVersion.compareTo:(Lnet/bytebuddy/ClassFileVersion;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Lnet/bytebuddy/ClassFileVersion;>;
SourceFile: "ClassFileVersion.java"
NestMembers:
  net.bytebuddy.ClassFileVersion$VersionExtractor  net.bytebuddy.ClassFileVersion$VersionLocator  net.bytebuddy.ClassFileVersion$VersionLocator$CreationAction  net.bytebuddy.ClassFileVersion$VersionLocator$ForJava9CapableVm  net.bytebuddy.ClassFileVersion$VersionLocator$ForLegacyVm
InnerClasses:
  protected VersionExtractor = net.bytebuddy.ClassFileVersion$VersionExtractor of net.bytebuddy.ClassFileVersion
  protected abstract VersionLocator = net.bytebuddy.ClassFileVersion$VersionLocator of net.bytebuddy.ClassFileVersion
  public final CreationAction = net.bytebuddy.ClassFileVersion$VersionLocator$CreationAction of net.bytebuddy.ClassFileVersion$VersionLocator
  public abstract Enhance = net.bytebuddy.build.CachedReturnPlugin$Enhance of net.bytebuddy.build.CachedReturnPlugin
  public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
  public ForLoadedType = net.bytebuddy.description.type.TypeDescription$ForLoadedType of net.bytebuddy.description.type.TypeDescription
  public ForClassLoader = net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader of net.bytebuddy.dynamic.ClassFileLocator
  public abstract Resolution = net.bytebuddy.dynamic.ClassFileLocator$Resolution of net.bytebuddy.dynamic.ClassFileLocator
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance()