public final class java.lang.Math
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.lang.Math
  super_class: java.lang.Object
{
  public static final double E;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2.718281828459045

  public static final double PI;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3.141592653589793

  private static long negativeZeroFloatBits;
    descriptor: J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static long negativeZeroDoubleBits;
    descriptor: J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static double twoToTheDoubleScaleUp;
    descriptor: D
    flags: (0x0008) ACC_STATIC

  static double twoToTheDoubleScaleDown;
    descriptor: D
    flags: (0x0008) ACC_STATIC

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 105
            ldc Ljava/lang/Math;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.lang.Math.$assertionsDisabled:Z
         3: .line 1270
            ldc -0.0
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            putstatic java.lang.Math.negativeZeroFloatBits:J
         4: .line 1271
            ldc -0.0
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            putstatic java.lang.Math.negativeZeroDoubleBits:J
         5: .line 2348
            sipush 512
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            putstatic java.lang.Math.twoToTheDoubleScaleUp:D
         6: .line 2349
            sipush -512
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            putstatic java.lang.Math.twoToTheDoubleScaleDown:D
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Math this
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // java.lang.Math this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/Math;

  public static double sin(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 139
            dload 0 /* a */
            invokestatic java.lang.StrictMath.sin:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double cos(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 154
            dload 0 /* a */
            invokestatic java.lang.StrictMath.cos:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double tan(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 171
            dload 0 /* a */
            invokestatic java.lang.StrictMath.tan:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double asin(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 189
            dload 0 /* a */
            invokestatic java.lang.StrictMath.asin:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double acos(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 205
            dload 0 /* a */
            invokestatic java.lang.StrictMath.acos:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double atan(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 222
            dload 0 /* a */
            invokestatic java.lang.StrictMath.atan:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double toRadians(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double angdeg
         0: .line 236
            dload 0 /* angdeg */
            ldc 180.0
            ddiv
            ldc 3.141592653589793
            dmul
            dreturn
        end local 0 // double angdeg
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  angdeg  D
    MethodParameters:
        Name  Flags
      angdeg  

  public static double toDegrees(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double angrad
         0: .line 252
            dload 0 /* angrad */
            ldc 180.0
            dmul
            ldc 3.141592653589793
            ddiv
            dreturn
        end local 0 // double angrad
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  angrad  D
    MethodParameters:
        Name  Flags
      angrad  

  public static double exp(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 272
            dload 0 /* a */
            invokestatic java.lang.StrictMath.exp:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double log(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 293
            dload 0 /* a */
            invokestatic java.lang.StrictMath.log:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double log10(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 318
            dload 0 /* a */
            invokestatic java.lang.StrictMath.log10:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double sqrt(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 339
            dload 0 /* a */
            invokestatic java.lang.StrictMath.sqrt:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double cbrt(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 374
            dload 0 /* a */
            invokestatic java.lang.StrictMath.cbrt:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double IEEEremainder(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double f1
        start local 2 // double f2
         0: .line 400
            dload 0 /* f1 */
            dload 2 /* f2 */
            invokestatic java.lang.StrictMath.IEEEremainder:(DD)D
            dreturn
        end local 2 // double f2
        end local 0 // double f1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    f1  D
            0    1     2    f2  D
    MethodParameters:
      Name  Flags
      f1    
      f2    

  public static double ceil(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 423
            dload 0 /* a */
            invokestatic java.lang.StrictMath.ceil:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double floor(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 442
            dload 0 /* a */
            invokestatic java.lang.StrictMath.floor:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double rint(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double a
         0: .line 461
            dload 0 /* a */
            invokestatic java.lang.StrictMath.rint:(D)D
            dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static double atan2(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double y
        start local 2 // double x
         0: .line 517
            dload 0 /* y */
            dload 2 /* x */
            invokestatic java.lang.StrictMath.atan2:(DD)D
            dreturn
        end local 2 // double x
        end local 0 // double y
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     y  D
            0    1     2     x  D
    MethodParameters:
      Name  Flags
      y     
      x     

  public static double pow(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double a
        start local 2 // double b
         0: .line 644
            dload 0 /* a */
            dload 2 /* b */
            invokestatic java.lang.StrictMath.pow:(DD)D
            dreturn
        end local 2 // double b
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  D
            0    1     2     b  D
    MethodParameters:
      Name  Flags
      a     
      b     

  public static int round(float);
    descriptor: (F)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // float a
         0: .line 668
            fload 0 /* a */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* intBits */
        start local 1 // int intBits
         1: .line 669
            iload 1 /* intBits */
            ldc 2139095040
            iand
         2: .line 670
            bipush 23
         3: .line 669
            ishr
            istore 2 /* biasedExp */
        start local 2 // int biasedExp
         4: .line 671
            sipush 149
         5: .line 672
            iload 2 /* biasedExp */
         6: .line 671
            isub
            istore 3 /* shift */
        start local 3 // int shift
         7: .line 673
            iload 3 /* shift */
            bipush -32
            iand
            ifne 14
         8: .line 675
            iload 1 /* intBits */
            ldc 8388607
            iand
         9: .line 676
            ldc 8388608
        10: .line 675
            ior
            istore 4 /* r */
        start local 4 // int r
        11: .line 677
            iload 1 /* intBits */
            ifge 13
        12: .line 678
            iload 4 /* r */
            ineg
            istore 4 /* r */
        13: .line 686
      StackMap locals: float int int int int
      StackMap stack:
            iload 4 /* r */
            iload 3 /* shift */
            ishr
            iconst_1
            iadd
            iconst_1
            ishr
            ireturn
        end local 4 // int r
        14: .line 692
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            f2i
            ireturn
        end local 3 // int shift
        end local 2 // int biasedExp
        end local 1 // int intBits
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0          a  F
            1   15     1    intBits  I
            4   15     2  biasedExp  I
            7   15     3      shift  I
           11   14     4          r  I
    MethodParameters:
      Name  Flags
      a     

  public static long round(double);
    descriptor: (D)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // double a
         0: .line 717
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* longBits */
        start local 2 // long longBits
         1: .line 718
            lload 2 /* longBits */
            ldc 9218868437227405312
            land
         2: .line 719
            bipush 52
         3: .line 718
            lshr
            lstore 4 /* biasedExp */
        start local 4 // long biasedExp
         4: .line 720
            ldc 1074
         5: .line 721
            lload 4 /* biasedExp */
         6: .line 720
            lsub
            lstore 6 /* shift */
        start local 6 // long shift
         7: .line 722
            lload 6 /* shift */
            ldc -64
            land
            lconst_0
            lcmp
            ifne 14
         8: .line 724
            lload 2 /* longBits */
            ldc 4503599627370495
            land
         9: .line 725
            ldc 4503599627370496
        10: .line 724
            lor
            lstore 8 /* r */
        start local 8 // long r
        11: .line 726
            lload 2 /* longBits */
            lconst_0
            lcmp
            ifge 13
        12: .line 727
            lload 8 /* r */
            lneg
            lstore 8 /* r */
        13: .line 735
      StackMap locals: double long long long long
      StackMap stack:
            lload 8 /* r */
            lload 6 /* shift */
            l2i
            lshr
            lconst_1
            ladd
            iconst_1
            lshr
            lreturn
        end local 8 // long r
        14: .line 741
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            d2l
            lreturn
        end local 6 // long shift
        end local 4 // long biasedExp
        end local 2 // long longBits
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0          a  D
            1   15     2   longBits  J
            4   15     4  biasedExp  J
            7   15     6      shift  J
           11   14     8          r  J
    MethodParameters:
      Name  Flags
      a     

  public static double random();
    descriptor: ()D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 773
            getstatic java.lang.Math$RandomNumberGeneratorHolder.randomNumberGenerator:Ljava/util/Random;
            invokevirtual java.util.Random.nextDouble:()D
            dreturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static int addExact(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 787
            iload 0 /* x */
            iload 1 /* y */
            iadd
            istore 2 /* r */
        start local 2 // int r
         1: .line 789
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iload 1 /* y */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 790
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 792
      StackMap locals: int
      StackMap stack:
            iload 2 /* r */
            ireturn
        end local 2 // int r
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  I
            0    4     1     y  I
            1    4     2     r  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long addExact(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 806
            lload 0 /* x */
            lload 2 /* y */
            ladd
            lstore 4 /* r */
        start local 4 // long r
         1: .line 808
            lload 0 /* x */
            lload 4 /* r */
            lxor
            lload 2 /* y */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 809
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 811
      StackMap locals: long
      StackMap stack:
            lload 4 /* r */
            lreturn
        end local 4 // long r
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  J
            0    4     2     y  J
            1    4     4     r  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int subtractExact(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 825
            iload 0 /* x */
            iload 1 /* y */
            isub
            istore 2 /* r */
        start local 2 // int r
         1: .line 828
            iload 0 /* x */
            iload 1 /* y */
            ixor
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 829
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 831
      StackMap locals: int
      StackMap stack:
            iload 2 /* r */
            ireturn
        end local 2 // int r
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  I
            0    4     1     y  I
            1    4     2     r  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long subtractExact(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 845
            lload 0 /* x */
            lload 2 /* y */
            lsub
            lstore 4 /* r */
        start local 4 // long r
         1: .line 848
            lload 0 /* x */
            lload 2 /* y */
            lxor
            lload 0 /* x */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 849
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 851
      StackMap locals: long
      StackMap stack:
            lload 4 /* r */
            lreturn
        end local 4 // long r
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  J
            0    4     2     y  J
            1    4     4     r  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int multiplyExact(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 865
            iload 0 /* x */
            i2l
            iload 1 /* y */
            i2l
            lmul
            lstore 2 /* r */
        start local 2 // long r
         1: .line 866
            lload 2 /* r */
            l2i
            i2l
            lload 2 /* r */
            lcmp
            ifeq 3
         2: .line 867
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 869
      StackMap locals: long
      StackMap stack:
            lload 2 /* r */
            l2i
            ireturn
        end local 2 // long r
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  I
            0    4     1     y  I
            1    4     2     r  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long multiplyExact(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 883
            lload 0 /* x */
            lload 2 /* y */
            lmul
            lstore 4 /* r */
        start local 4 // long r
         1: .line 884
            lload 0 /* x */
            invokestatic java.lang.Math.abs:(J)J
            lstore 6 /* ax */
        start local 6 // long ax
         2: .line 885
            lload 2 /* y */
            invokestatic java.lang.Math.abs:(J)J
            lstore 8 /* ay */
        start local 8 // long ay
         3: .line 886
            lload 6 /* ax */
            lload 8 /* ay */
            lor
            bipush 31
            lushr
            lconst_0
            lcmp
            ifeq 7
         4: .line 890
            lload 2 /* y */
            lconst_0
            lcmp
            ifeq 5
            lload 4 /* r */
            lload 2 /* y */
            ldiv
            lload 0 /* x */
            lcmp
            ifne 6
         5: .line 891
      StackMap locals: long long long
      StackMap stack:
            lload 0 /* x */
            ldc -9223372036854775808
            lcmp
            ifne 7
            lload 2 /* y */
            ldc -1
            lcmp
            ifne 7
         6: .line 892
      StackMap locals:
      StackMap stack:
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 895
      StackMap locals:
      StackMap stack:
            lload 4 /* r */
            lreturn
        end local 8 // long ay
        end local 6 // long ax
        end local 4 // long r
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     x  J
            0    8     2     y  J
            1    8     4     r  J
            2    8     6    ax  J
            3    8     8    ay  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int incrementExact(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int a
         0: .line 908
            iload 0 /* a */
            ldc 2147483647
            if_icmpne 2
         1: .line 909
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 912
      StackMap locals:
      StackMap stack:
            iload 0 /* a */
            iconst_1
            iadd
            ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static long incrementExact(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long a
         0: .line 925
            lload 0 /* a */
            ldc 9223372036854775807
            lcmp
            ifne 2
         1: .line 926
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 929
      StackMap locals:
      StackMap stack:
            lload 0 /* a */
            lconst_1
            ladd
            lreturn
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
    MethodParameters:
      Name  Flags
      a     

  public static int decrementExact(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int a
         0: .line 942
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 943
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 946
      StackMap locals:
      StackMap stack:
            iload 0 /* a */
            iconst_1
            isub
            ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static long decrementExact(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long a
         0: .line 959
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 960
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 963
      StackMap locals:
      StackMap stack:
            lload 0 /* a */
            lconst_1
            lsub
            lreturn
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
    MethodParameters:
      Name  Flags
      a     

  public static int negateExact(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int a
         0: .line 976
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 977
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 980
      StackMap locals:
      StackMap stack:
            iload 0 /* a */
            ineg
            ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static long negateExact(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long a
         0: .line 993
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 994
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 997
      StackMap locals:
      StackMap stack:
            lload 0 /* a */
            lneg
            lreturn
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
    MethodParameters:
      Name  Flags
      a     

  public static int toIntExact(long);
    descriptor: (J)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long value
         0: .line 1010
            lload 0 /* value */
            l2i
            i2l
            lload 0 /* value */
            lcmp
            ifeq 2
         1: .line 1011
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1013
      StackMap locals:
      StackMap stack:
            lload 0 /* value */
            l2i
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  value  J
    MethodParameters:
       Name  Flags
      value  

  public static int floorDiv(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 1052
            iload 0 /* x */
            iload 1 /* y */
            idiv
            istore 2 /* r */
        start local 2 // int r
         1: .line 1054
            iload 0 /* x */
            iload 1 /* y */
            ixor
            ifge 3
            iload 2 /* r */
            iload 1 /* y */
            imul
            iload 0 /* x */
            if_icmpeq 3
         2: .line 1055
            iinc 2 /* r */ -1
         3: .line 1057
      StackMap locals: int
      StackMap stack:
            iload 2 /* r */
            ireturn
        end local 2 // int r
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  I
            0    4     1     y  I
            1    4     2     r  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long floorDiv(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 1086
            lload 0 /* x */
            lload 2 /* y */
            ldiv
            lstore 4 /* r */
        start local 4 // long r
         1: .line 1088
            lload 0 /* x */
            lload 2 /* y */
            lxor
            lconst_0
            lcmp
            ifge 3
            lload 4 /* r */
            lload 2 /* y */
            lmul
            lload 0 /* x */
            lcmp
            ifeq 3
         2: .line 1089
            lload 4 /* r */
            lconst_1
            lsub
            lstore 4 /* r */
         3: .line 1091
      StackMap locals: long
      StackMap stack:
            lload 4 /* r */
            lreturn
        end local 4 // long r
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  J
            0    4     2     y  J
            1    4     4     r  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int floorMod(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 1139
            iload 0 /* x */
            iload 0 /* x */
            iload 1 /* y */
            invokestatic java.lang.Math.floorDiv:(II)I
            iload 1 /* y */
            imul
            isub
            istore 2 /* r */
        start local 2 // int r
         1: .line 1140
            iload 2 /* r */
            ireturn
        end local 2 // int r
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     x  I
            0    2     1     y  I
            1    2     2     r  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long floorMod(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 1166
            lload 0 /* x */
            lload 0 /* x */
            lload 2 /* y */
            invokestatic java.lang.Math.floorDiv:(JJ)J
            lload 2 /* y */
            lmul
            lsub
            lreturn
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  J
            0    1     2     y  J
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int abs(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int a
         0: .line 1183
            iload 0 /* a */
            ifge 1
            iload 0 /* a */
            ineg
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* a */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
    MethodParameters:
      Name  Flags
      a     

  public static long abs(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long a
         0: .line 1200
            lload 0 /* a */
            lconst_0
            lcmp
            ifge 1
            lload 0 /* a */
            lneg
            goto 2
      StackMap locals:
      StackMap stack:
         1: lload 0 /* a */
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
    MethodParameters:
      Name  Flags
      a     

  public static float abs(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float a
         0: .line 1219
            fload 0 /* a */
            fconst_0
            fcmpg
            ifgt 1
            fconst_0
            fload 0 /* a */
            fsub
            goto 2
      StackMap locals:
      StackMap stack:
         1: fload 0 /* a */
      StackMap locals:
      StackMap stack: float
         2: freturn
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  F
    MethodParameters:
      Name  Flags
      a     

  public static double abs(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double a
         0: .line 1238
            dload 0 /* a */
            dconst_0
            dcmpg
            ifgt 1
            dconst_0
            dload 0 /* a */
            dsub
            goto 2
      StackMap locals:
      StackMap stack:
         1: dload 0 /* a */
      StackMap locals:
      StackMap stack: double
         2: dreturn
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  D
    MethodParameters:
      Name  Flags
      a     

  public static int max(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 1252
            iload 0 /* a */
            iload 1 /* b */
            if_icmplt 1
            iload 0 /* a */
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* b */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
            0    3     1     b  I
    MethodParameters:
      Name  Flags
      a     
      b     

  public static long max(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long a
        start local 2 // long b
         0: .line 1266
            lload 0 /* a */
            lload 2 /* b */
            lcmp
            iflt 1
            lload 0 /* a */
            goto 2
      StackMap locals:
      StackMap stack:
         1: lload 2 /* b */
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 2 // long b
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
            0    3     2     b  J
    MethodParameters:
      Name  Flags
      a     
      b     

  public static float max(float, float);
    descriptor: (FF)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // float a
        start local 1 // float b
         0: .line 1288
            fload 0 /* a */
            fload 0 /* a */
            fcmpl
            ifeq 2
         1: .line 1289
            fload 0 /* a */
            freturn
         2: .line 1290
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fconst_0
            fcmpl
            ifne 6
         3: .line 1291
            fload 1 /* b */
            fconst_0
            fcmpl
            ifne 6
         4: .line 1292
            fload 0 /* a */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            getstatic java.lang.Math.negativeZeroFloatBits:J
            lcmp
            ifne 6
         5: .line 1294
            fload 1 /* b */
            freturn
         6: .line 1296
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fload 1 /* b */
            fcmpl
            iflt 7
            fload 0 /* a */
            goto 8
      StackMap locals:
      StackMap stack:
         7: fload 1 /* b */
      StackMap locals:
      StackMap stack: float
         8: freturn
        end local 1 // float b
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     a  F
            0    9     1     b  F
    MethodParameters:
      Name  Flags
      a     
      b     

  public static double max(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double a
        start local 2 // double b
         0: .line 1314
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1315
            dload 0 /* a */
            dreturn
         2: .line 1316
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1317
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1318
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1320
            dload 2 /* b */
            dreturn
         6: .line 1322
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dload 2 /* b */
            dcmpl
            iflt 7
            dload 0 /* a */
            goto 8
      StackMap locals:
      StackMap stack:
         7: dload 2 /* b */
      StackMap locals:
      StackMap stack: double
         8: dreturn
        end local 2 // double b
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     a  D
            0    9     2     b  D
    MethodParameters:
      Name  Flags
      a     
      b     

  public static int min(int, int);
    descriptor: (II)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 1336
            iload 0 /* a */
            iload 1 /* b */
            if_icmpgt 1
            iload 0 /* a */
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* b */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  I
            0    3     1     b  I
    MethodParameters:
      Name  Flags
      a     
      b     

  public static long min(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long a
        start local 2 // long b
         0: .line 1350
            lload 0 /* a */
            lload 2 /* b */
            lcmp
            ifgt 1
            lload 0 /* a */
            goto 2
      StackMap locals:
      StackMap stack:
         1: lload 2 /* b */
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 2 // long b
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     a  J
            0    3     2     b  J
    MethodParameters:
      Name  Flags
      a     
      b     

  public static float min(float, float);
    descriptor: (FF)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // float a
        start local 1 // float b
         0: .line 1368
            fload 0 /* a */
            fload 0 /* a */
            fcmpl
            ifeq 2
         1: .line 1369
            fload 0 /* a */
            freturn
         2: .line 1370
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fconst_0
            fcmpl
            ifne 6
         3: .line 1371
            fload 1 /* b */
            fconst_0
            fcmpl
            ifne 6
         4: .line 1372
            fload 1 /* b */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            getstatic java.lang.Math.negativeZeroFloatBits:J
            lcmp
            ifne 6
         5: .line 1374
            fload 1 /* b */
            freturn
         6: .line 1376
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fload 1 /* b */
            fcmpg
            ifgt 7
            fload 0 /* a */
            goto 8
      StackMap locals:
      StackMap stack:
         7: fload 1 /* b */
      StackMap locals:
      StackMap stack: float
         8: freturn
        end local 1 // float b
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     a  F
            0    9     1     b  F
    MethodParameters:
      Name  Flags
      a     
      b     

  public static double min(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double a
        start local 2 // double b
         0: .line 1394
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1395
            dload 0 /* a */
            dreturn
         2: .line 1396
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1397
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1398
            dload 2 /* b */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1400
            dload 2 /* b */
            dreturn
         6: .line 1402
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dload 2 /* b */
            dcmpg
            ifgt 7
            dload 0 /* a */
            goto 8
      StackMap locals:
      StackMap stack:
         7: dload 2 /* b */
      StackMap locals:
      StackMap stack: double
         8: dreturn
        end local 2 // double b
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     a  D
            0    9     2     b  D
    MethodParameters:
      Name  Flags
      a     
      b     

  public static double ulp(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // double d
         0: .line 1429
            dload 0 /* d */
            invokestatic java.lang.Math.getExponent:(D)I
            istore 2 /* exp */
        start local 2 // int exp
         1: .line 1431
            iload 2 /* exp */
            lookupswitch { // 2
                -1023: 3
                 1024: 2
              default: 4
          }
         2: .line 1433
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Math.abs:(D)D
            dreturn
         3: .line 1436
      StackMap locals:
      StackMap stack:
            ldc 4.9E-324
            dreturn
         4: .line 1439
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 6
            iload 2 /* exp */
            sipush 1023
            if_icmpgt 5
            iload 2 /* exp */
            sipush -1022
            if_icmpge 6
      StackMap locals:
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1442
      StackMap locals:
      StackMap stack:
            iinc 2 /* exp */ -52
         7: .line 1443
            iload 2 /* exp */
            sipush -1022
            if_icmplt 9
         8: .line 1444
            iload 2 /* exp */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dreturn
         9: .line 1450
      StackMap locals:
      StackMap stack:
            lconst_1
        10: .line 1451
            iload 2 /* exp */
            sipush -1074
            isub
        11: .line 1450
            lshl
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 2 // int exp
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0     d  D
            1   12     2   exp  I
    MethodParameters:
      Name  Flags
      d     

  public static float ulp(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // float f
         0: .line 1480
            fload 0 /* f */
            invokestatic java.lang.Math.getExponent:(F)I
            istore 1 /* exp */
        start local 1 // int exp
         1: .line 1482
            iload 1 /* exp */
            lookupswitch { // 2
                 -127: 3
                  128: 2
              default: 4
          }
         2: .line 1484
      StackMap locals: int
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Math.abs:(F)F
            freturn
         3: .line 1487
      StackMap locals:
      StackMap stack:
            ldc 1.4E-45
            freturn
         4: .line 1490
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 6
            iload 1 /* exp */
            bipush 127
            if_icmpgt 5
            iload 1 /* exp */
            bipush -126
            if_icmpge 6
      StackMap locals:
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1493
      StackMap locals:
      StackMap stack:
            iinc 1 /* exp */ -23
         7: .line 1494
            iload 1 /* exp */
            bipush -126
            if_icmplt 9
         8: .line 1495
            iload 1 /* exp */
            invokestatic java.lang.Math.powerOfTwoF:(I)F
            freturn
         9: .line 1501
      StackMap locals:
      StackMap stack:
            iconst_1
        10: .line 1502
            iload 1 /* exp */
            sipush -149
            isub
        11: .line 1501
            ishl
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 1 // int exp
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0     f  F
            1   12     1   exp  I
    MethodParameters:
      Name  Flags
      f     

  public static double signum(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double d
         0: .line 1525
            dload 0 /* d */
            dconst_0
            dcmpl
            ifeq 1
            dload 0 /* d */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: dload 0 /* d */
            goto 3
      StackMap locals:
      StackMap stack:
         2: dconst_1
            dload 0 /* d */
            invokestatic java.lang.Math.copySign:(DD)D
      StackMap locals:
      StackMap stack: double
         3: dreturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     d  D
    MethodParameters:
      Name  Flags
      d     

  public static float signum(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float f
         0: .line 1546
            fload 0 /* f */
            fconst_0
            fcmpl
            ifeq 1
            fload 0 /* f */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: fload 0 /* f */
            goto 3
      StackMap locals:
      StackMap stack:
         2: fconst_1
            fload 0 /* f */
            invokestatic java.lang.Math.copySign:(FF)F
      StackMap locals:
      StackMap stack: float
         3: freturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     f  F
    MethodParameters:
      Name  Flags
      f     

  public static double sinh(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double x
         0: .line 1575
            dload 0 /* x */
            invokestatic java.lang.StrictMath.sinh:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  public static double cosh(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double x
         0: .line 1603
            dload 0 /* x */
            invokestatic java.lang.StrictMath.cosh:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  public static double tanh(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double x
         0: .line 1643
            dload 0 /* x */
            invokestatic java.lang.StrictMath.tanh:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  public static double hypot(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double x
        start local 2 // double y
         0: .line 1672
            dload 0 /* x */
            dload 2 /* y */
            invokestatic java.lang.StrictMath.hypot:(DD)D
            dreturn
        end local 2 // double y
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
            0    1     2     y  D
    MethodParameters:
      Name  Flags
      x     
      y     

  public static double expm1(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double x
         0: .line 1710
            dload 0 /* x */
            invokestatic java.lang.StrictMath.expm1:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  public static double log1p(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double x
         0: .line 1747
            dload 0 /* x */
            invokestatic java.lang.StrictMath.log1p:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  public static double copySign(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // double magnitude
        start local 2 // double sign
         0: .line 1766
            dload 2 /* sign */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         1: .line 1767
            ldc -9223372036854775808
         2: .line 1766
            land
         3: .line 1768
            dload 0 /* magnitude */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         4: .line 1769
            ldc 9223372036854775807
         5: .line 1768
            land
         6: .line 1766
            lor
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 2 // double sign
        end local 0 // double magnitude
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0  magnitude  D
            0    7     2       sign  D
    MethodParameters:
           Name  Flags
      magnitude  
      sign       

  public static float copySign(float, float);
    descriptor: (FF)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // float magnitude
        start local 1 // float sign
         0: .line 1789
            fload 1 /* sign */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         1: .line 1790
            ldc -2147483648
         2: .line 1789
            iand
         3: .line 1791
            fload 0 /* magnitude */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         4: .line 1792
            ldc 2147483647
         5: .line 1791
            iand
         6: .line 1789
            ior
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 1 // float sign
        end local 0 // float magnitude
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0  magnitude  F
            0    7     1       sign  F
    MethodParameters:
           Name  Flags
      magnitude  
      sign       

  public static int getExponent(float);
    descriptor: (F)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float f
         0: .line 1816
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            ldc 2139095040
            iand
         1: .line 1817
            bipush 23
         2: .line 1816
            ishr
         3: .line 1817
            bipush 127
         4: .line 1816
            isub
            ireturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     f  F
    MethodParameters:
      Name  Flags
      f     

  public static int getExponent(double);
    descriptor: (D)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double d
         0: .line 1840
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            ldc 9218868437227405312
            land
         1: .line 1841
            bipush 52
         2: .line 1840
            lshr
         3: .line 1841
            ldc 1023
         4: .line 1840
            lsub
            l2i
            ireturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     d  D
    MethodParameters:
      Name  Flags
      d     

  public static double nextAfter(double, double);
    descriptor: (DD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // double start
        start local 2 // double direction
         0: .line 1897
            dload 0 /* start */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 2 /* direction */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 1899
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dadd
            dreturn
         2: .line 1900
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dcmpl
            ifne 4
         3: .line 1901
            dload 2 /* direction */
            dreturn
         4: .line 1905
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dconst_0
            dadd
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* transducer */
        start local 4 // long transducer
         5: .line 1919
            dload 2 /* direction */
            dload 0 /* start */
            dcmpl
            ifle 10
         6: .line 1920
            lload 4 /* transducer */
            lload 4 /* transducer */
            lconst_0
            lcmp
            iflt 7
            lconst_1
            goto 8
      StackMap locals: double double long
      StackMap stack: long
         7: ldc -1
      StackMap locals: double double long
      StackMap stack: long long
         8: ladd
            lstore 4 /* transducer */
         9: .line 1921
            goto 16
        10: .line 1922
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 11
            dload 2 /* direction */
            dload 0 /* start */
            dcmpg
            iflt 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 1923
      StackMap locals:
      StackMap stack:
            lload 4 /* transducer */
            lconst_0
            lcmp
            ifle 13
        12: .line 1924
            lload 4 /* transducer */
            lconst_1
            lsub
            lstore 4 /* transducer */
            goto 16
        13: .line 1926
      StackMap locals:
      StackMap stack:
            lload 4 /* transducer */
            lconst_0
            lcmp
            ifge 15
        14: .line 1927
            lload 4 /* transducer */
            lconst_1
            ladd
            lstore 4 /* transducer */
            goto 16
        15: .line 1937
      StackMap locals:
      StackMap stack:
            ldc -9223372036854775807
            lstore 4 /* transducer */
        16: .line 1940
      StackMap locals:
      StackMap stack:
            lload 4 /* transducer */
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 4 // long transducer
        end local 2 // double direction
        end local 0 // double start
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0       start  D
            0   17     2   direction  D
            5   17     4  transducer  J
    MethodParameters:
           Name  Flags
      start      
      direction  

  public static float nextAfter(float, double);
    descriptor: (FD)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // float start
        start local 1 // double direction
         0: .line 1996
            fload 0 /* start */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 1
            dload 1 /* direction */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 1998
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            dload 1 /* direction */
            d2f
            fadd
            freturn
         2: .line 1999
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpl
            ifne 4
         3: .line 2000
            dload 1 /* direction */
            d2f
            freturn
         4: .line 2004
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            fconst_0
            fadd
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 3 /* transducer */
        start local 3 // int transducer
         5: .line 2018
            dload 1 /* direction */
            fload 0 /* start */
            f2d
            dcmpl
            ifle 10
         6: .line 2019
            iload 3 /* transducer */
            iload 3 /* transducer */
            iflt 7
            iconst_1
            goto 8
      StackMap locals: float double int
      StackMap stack: int
         7: iconst_m1
      StackMap locals: float double int
      StackMap stack: int int
         8: iadd
            istore 3 /* transducer */
         9: .line 2020
            goto 16
        10: .line 2021
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 11
            dload 1 /* direction */
            fload 0 /* start */
            f2d
            dcmpg
            iflt 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 2022
      StackMap locals:
      StackMap stack:
            iload 3 /* transducer */
            ifle 13
        12: .line 2023
            iinc 3 /* transducer */ -1
            goto 16
        13: .line 2025
      StackMap locals:
      StackMap stack:
            iload 3 /* transducer */
            ifge 15
        14: .line 2026
            iinc 3 /* transducer */ 1
            goto 16
        15: .line 2036
      StackMap locals:
      StackMap stack:
            ldc -2147483647
            istore 3 /* transducer */
        16: .line 2039
      StackMap locals:
      StackMap stack:
            iload 3 /* transducer */
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 3 // int transducer
        end local 1 // double direction
        end local 0 // float start
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0       start  F
            0   17     1   direction  D
            5   17     3  transducer  I
    MethodParameters:
           Name  Flags
      start      
      direction  

  public static double nextUp(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // double d
         0: .line 2069
            dload 0 /* d */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 0 /* d */
            ldc Infinity
            dcmpl
            ifne 2
         1: .line 2070
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dreturn
         2: .line 2072
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dconst_0
            dadd
            dstore 0 /* d */
         3: .line 2073
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         4: .line 2074
            dload 0 /* d */
            dconst_0
            dcmpl
            iflt 5
            lconst_1
            goto 6
      StackMap locals:
      StackMap stack: long
         5: ldc -1
         6: .line 2073
      StackMap locals: double
      StackMap stack: long long
            ladd
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     d  D
    MethodParameters:
      Name  Flags
      d     

  public static float nextUp(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // float f
         0: .line 2104
            fload 0 /* f */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 1
            fload 0 /* f */
            ldc Infinity
            fcmpl
            ifne 2
         1: .line 2105
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            freturn
         2: .line 2107
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            fconst_0
            fadd
            fstore 0 /* f */
         3: .line 2108
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         4: .line 2109
            fload 0 /* f */
            fconst_0
            fcmpl
            iflt 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: int
         5: iconst_m1
         6: .line 2108
      StackMap locals: float
      StackMap stack: int int
            iadd
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     f  F
    MethodParameters:
      Name  Flags
      f     

  public static double nextDown(double);
    descriptor: (D)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // double d
         0: .line 2139
            dload 0 /* d */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 0 /* d */
            ldc -Infinity
            dcmpl
            ifne 2
         1: .line 2140
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dreturn
         2: .line 2142
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dconst_0
            dcmpl
            ifne 4
         3: .line 2143
            ldc -4.9E-324
            dreturn
         4: .line 2145
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         5: .line 2146
            dload 0 /* d */
            dconst_0
            dcmpl
            ifle 6
            ldc -1
            goto 7
      StackMap locals:
      StackMap stack: long
         6: lconst_1
         7: .line 2145
      StackMap locals: double
      StackMap stack: long long
            ladd
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     d  D
    MethodParameters:
      Name  Flags
      d     

  public static float nextDown(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // float f
         0: .line 2176
            fload 0 /* f */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 1
            fload 0 /* f */
            ldc -Infinity
            fcmpl
            ifne 2
         1: .line 2177
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            freturn
         2: .line 2179
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            fconst_0
            fcmpl
            ifne 4
         3: .line 2180
            ldc -1.4E-45
            freturn
         4: .line 2182
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         5: .line 2183
            fload 0 /* f */
            fconst_0
            fcmpl
            ifle 6
            iconst_m1
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_1
         7: .line 2182
      StackMap locals: float
      StackMap stack: int int
            iadd
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     f  F
    MethodParameters:
      Name  Flags
      f     

  public static double scalb(double, int);
    descriptor: (DI)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // double d
        start local 2 // int scaleFactor
         0: .line 2262
            iconst_0
            istore 3 /* exp_adjust */
        start local 3 // int exp_adjust
         1: .line 2263
            iconst_0
            istore 4 /* scale_increment */
        start local 4 // int scale_increment
         2: .line 2264
            ldc NaN
            dstore 5 /* exp_delta */
        start local 5 // double exp_delta
         3: .line 2268
            iload 2 /* scaleFactor */
            ifge 8
         4: .line 2269
            iload 2 /* scaleFactor */
            sipush -2099
            invokestatic java.lang.Math.max:(II)I
            istore 2 /* scaleFactor */
         5: .line 2270
            sipush -512
            istore 4 /* scale_increment */
         6: .line 2271
            getstatic java.lang.Math.twoToTheDoubleScaleDown:D
            dstore 5 /* exp_delta */
         7: .line 2272
            goto 11
         8: .line 2274
      StackMap locals: int int double
      StackMap stack:
            iload 2 /* scaleFactor */
            sipush 2099
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* scaleFactor */
         9: .line 2275
            sipush 512
            istore 4 /* scale_increment */
        10: .line 2276
            getstatic java.lang.Math.twoToTheDoubleScaleUp:D
            dstore 5 /* exp_delta */
        11: .line 2281
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            bipush 8
            ishr
            bipush 23
            iushr
            istore 7 /* t */
        start local 7 // int t
        12: .line 2282
            iload 2 /* scaleFactor */
            iload 7 /* t */
            iadd
            sipush 511
            iand
            iload 7 /* t */
            isub
            istore 3 /* exp_adjust */
        13: .line 2284
            dload 0 /* d */
            iload 3 /* exp_adjust */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dmul
            dstore 0 /* d */
        14: .line 2285
            iload 2 /* scaleFactor */
            iload 3 /* exp_adjust */
            isub
            istore 2 /* scaleFactor */
        15: .line 2287
            goto 18
        16: .line 2288
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            dload 5 /* exp_delta */
            dmul
            dstore 0 /* d */
        17: .line 2289
            iload 2 /* scaleFactor */
            iload 4 /* scale_increment */
            isub
            istore 2 /* scaleFactor */
        18: .line 2287
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            ifne 16
        19: .line 2291
            dload 0 /* d */
            dreturn
        end local 7 // int t
        end local 5 // double exp_delta
        end local 4 // int scale_increment
        end local 3 // int exp_adjust
        end local 2 // int scaleFactor
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   20     0                d  D
            0   20     2      scaleFactor  I
            1   20     3       exp_adjust  I
            2   20     4  scale_increment  I
            3   20     5        exp_delta  D
           12   20     7                t  I
    MethodParameters:
             Name  Flags
      d            
      scaleFactor  

  public static float scalb(float, int);
    descriptor: (FI)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // float f
        start local 1 // int scaleFactor
         0: .line 2333
            iload 1 /* scaleFactor */
            sipush 278
            invokestatic java.lang.Math.min:(II)I
            sipush -278
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* scaleFactor */
         1: .line 2344
            fload 0 /* f */
            f2d
            iload 1 /* scaleFactor */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dmul
            d2f
            freturn
        end local 1 // int scaleFactor
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0            f  F
            0    2     1  scaleFactor  I
    MethodParameters:
             Name  Flags
      f            
      scaleFactor  

  static double powerOfTwoD(int);
    descriptor: (I)D
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // int n
         0: .line 2355
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 2
            iload 0 /* n */
            sipush -1022
            if_icmplt 1
            iload 0 /* n */
            sipush 1023
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2356
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            i2l
            ldc 1023
            ladd
         3: .line 2357
            bipush 52
         4: .line 2356
            lshl
         5: .line 2358
            ldc 9218868437227405312
         6: .line 2356
            land
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
    MethodParameters:
      Name  Flags
      n     

  static float powerOfTwoF(int);
    descriptor: (I)F
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int n
         0: .line 2365
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 2
            iload 0 /* n */
            bipush -126
            if_icmplt 1
            iload 0 /* n */
            bipush 127
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2366
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            bipush 127
            iadd
         3: .line 2367
            bipush 23
         4: .line 2366
            ishl
         5: .line 2368
            ldc 2139095040
         6: .line 2366
            iand
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     n  I
    MethodParameters:
      Name  Flags
      n     
}
SourceFile: "Math.java"
NestMembers:
  java.lang.Math$RandomNumberGeneratorHolder
InnerClasses:
  private final RandomNumberGeneratorHolder = java.lang.Math$RandomNumberGeneratorHolder of java.lang.Math