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 final double DEGREES_TO_RADIANS;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.017453292519943295

  private static final double RADIANS_TO_DEGREES;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 57.29577951308232

  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 107
            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 1445
            ldc -0.0
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            putstatic java.lang.Math.negativeZeroFloatBits:J
         4: .line 1446
            ldc -0.0
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            putstatic java.lang.Math.negativeZeroDoubleBits:J
         5: .line 2692
            sipush 512
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            putstatic java.lang.Math.twoToTheDoubleScaleUp:D
         6: .line 2693
            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 112
            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 154
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 170
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 188
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 206
            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 222
            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 239
            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 253
            dload 0 /* angdeg */
            ldc 0.017453292519943295
            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 269
            dload 0 /* angrad */
            ldc 57.29577951308232
            dmul
            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 290
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 312
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 338
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 360
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 395
            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 421
            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 444
            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 463
            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 482
            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 539
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 667
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 691
            fload 0 /* a */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* intBits */
        start local 1 // int intBits
         1: .line 692
            iload 1 /* intBits */
            ldc 2139095040
            iand
         2: .line 693
            bipush 23
         3: .line 692
            ishr
            istore 2 /* biasedExp */
        start local 2 // int biasedExp
         4: .line 694
            sipush 149
         5: .line 695
            iload 2 /* biasedExp */
         6: .line 694
            isub
            istore 3 /* shift */
        start local 3 // int shift
         7: .line 696
            iload 3 /* shift */
            bipush -32
            iand
            ifne 14
         8: .line 698
            iload 1 /* intBits */
            ldc 8388607
            iand
         9: .line 699
            ldc 8388608
        10: .line 698
            ior
            istore 4 /* r */
        start local 4 // int r
        11: .line 700
            iload 1 /* intBits */
            ifge 13
        12: .line 701
            iload 4 /* r */
            ineg
            istore 4 /* r */
        13: .line 709
      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 715
      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 740
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* longBits */
        start local 2 // long longBits
         1: .line 741
            lload 2 /* longBits */
            ldc 9218868437227405312
            land
         2: .line 742
            bipush 52
         3: .line 741
            lshr
            lstore 4 /* biasedExp */
        start local 4 // long biasedExp
         4: .line 743
            ldc 1074
         5: .line 744
            lload 4 /* biasedExp */
         6: .line 743
            lsub
            lstore 6 /* shift */
        start local 6 // long shift
         7: .line 745
            lload 6 /* shift */
            ldc -64
            land
            lconst_0
            lcmp
            ifne 14
         8: .line 747
            lload 2 /* longBits */
            ldc 4503599627370495
            land
         9: .line 748
            ldc 4503599627370496
        10: .line 747
            lor
            lstore 8 /* r */
        start local 8 // long r
        11: .line 749
            lload 2 /* longBits */
            lconst_0
            lcmp
            ifge 13
        12: .line 750
            lload 8 /* r */
            lneg
            lstore 8 /* r */
        13: .line 758
      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 764
      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 807
            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 822
            iload 0 /* x */
            iload 1 /* y */
            iadd
            istore 2 /* r */
        start local 2 // int r
         1: .line 824
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iload 1 /* y */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 825
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 827
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 842
            lload 0 /* x */
            lload 2 /* y */
            ladd
            lstore 4 /* r */
        start local 4 // long r
         1: .line 844
            lload 0 /* x */
            lload 4 /* r */
            lxor
            lload 2 /* y */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 845
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 847
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 862
            iload 0 /* x */
            iload 1 /* y */
            isub
            istore 2 /* r */
        start local 2 // int r
         1: .line 865
            iload 0 /* x */
            iload 1 /* y */
            ixor
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 866
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 868
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 883
            lload 0 /* x */
            lload 2 /* y */
            lsub
            lstore 4 /* r */
        start local 4 // long r
         1: .line 886
            lload 0 /* x */
            lload 2 /* y */
            lxor
            lload 0 /* x */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 887
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 889
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 904
            iload 0 /* x */
            i2l
            iload 1 /* y */
            i2l
            lmul
            lstore 2 /* r */
        start local 2 // long r
         1: .line 905
            lload 2 /* r */
            l2i
            i2l
            lload 2 /* r */
            lcmp
            ifeq 3
         2: .line 906
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 908
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long multiplyExact(long, int);
    descriptor: (JI)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // long x
        start local 2 // int y
         0: .line 922
            lload 0 /* x */
            iload 2 /* y */
            i2l
            invokestatic java.lang.Math.multiplyExact:(JJ)J
            lreturn
        end local 2 // int y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  J
            0    1     2     y  I
    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 937
            lload 0 /* x */
            lload 2 /* y */
            lmul
            lstore 4 /* r */
        start local 4 // long r
         1: .line 938
            lload 0 /* x */
            invokestatic java.lang.Math.abs:(J)J
            lstore 6 /* ax */
        start local 6 // long ax
         2: .line 939
            lload 2 /* y */
            invokestatic java.lang.Math.abs:(J)J
            lstore 8 /* ay */
        start local 8 // long ay
         3: .line 940
            lload 6 /* ax */
            lload 8 /* ay */
            lor
            bipush 31
            lushr
            lconst_0
            lcmp
            ifeq 7
         4: .line 944
            lload 2 /* y */
            lconst_0
            lcmp
            ifeq 5
            lload 4 /* r */
            lload 2 /* y */
            ldiv
            lload 0 /* x */
            lcmp
            ifne 6
         5: .line 945
      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 946
      StackMap locals:
      StackMap stack:
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 949
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 963
            iload 0 /* a */
            ldc 2147483647
            if_icmpne 2
         1: .line 964
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 967
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 981
            lload 0 /* a */
            ldc 9223372036854775807
            lcmp
            ifne 2
         1: .line 982
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 985
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 999
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 1000
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1003
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1017
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 1018
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1021
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1035
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 1036
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1039
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1053
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 1054
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1057
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1070
            lload 0 /* value */
            l2i
            i2l
            lload 0 /* value */
            lcmp
            ifeq 2
         1: .line 1071
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1073
      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 long multiplyFull(int, int);
    descriptor: (II)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 1085
            iload 0 /* x */
            i2l
            iload 1 /* y */
            i2l
            lmul
            lreturn
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     y  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long multiplyHigh(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=20, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 1098
            lload 0 /* x */
            lconst_0
            lcmp
            iflt 1
            lload 2 /* y */
            lconst_0
            lcmp
            ifge 11
         1: .line 1101
      StackMap locals:
      StackMap stack:
            lload 0 /* x */
            bipush 32
            lshr
            lstore 4 /* x1 */
        start local 4 // long x1
         2: .line 1102
            lload 0 /* x */
            ldc 4294967295
            land
            lstore 6 /* x2 */
        start local 6 // long x2
         3: .line 1103
            lload 2 /* y */
            bipush 32
            lshr
            lstore 8 /* y1 */
        start local 8 // long y1
         4: .line 1104
            lload 2 /* y */
            ldc 4294967295
            land
            lstore 10 /* y2 */
        start local 10 // long y2
         5: .line 1105
            lload 6 /* x2 */
            lload 10 /* y2 */
            lmul
            lstore 12 /* z2 */
        start local 12 // long z2
         6: .line 1106
            lload 4 /* x1 */
            lload 10 /* y2 */
            lmul
            lload 12 /* z2 */
            bipush 32
            lushr
            ladd
            lstore 14 /* t */
        start local 14 // long t
         7: .line 1107
            lload 14 /* t */
            ldc 4294967295
            land
            lstore 16 /* z1 */
        start local 16 // long z1
         8: .line 1108
            lload 14 /* t */
            bipush 32
            lshr
            lstore 18 /* z0 */
        start local 18 // long z0
         9: .line 1109
            lload 16 /* z1 */
            lload 6 /* x2 */
            lload 8 /* y1 */
            lmul
            ladd
            lstore 16 /* z1 */
        10: .line 1110
            lload 4 /* x1 */
            lload 8 /* y1 */
            lmul
            lload 18 /* z0 */
            ladd
            lload 16 /* z1 */
            bipush 32
            lshr
            ladd
            lreturn
        end local 18 // long z0
        end local 16 // long z1
        end local 14 // long t
        end local 12 // long z2
        end local 10 // long y2
        end local 8 // long y1
        end local 6 // long x2
        end local 4 // long x1
        11: .line 1113
      StackMap locals:
      StackMap stack:
            lload 0 /* x */
            bipush 32
            lushr
            lstore 4 /* x1 */
        start local 4 // long x1
        12: .line 1114
            lload 2 /* y */
            bipush 32
            lushr
            lstore 6 /* y1 */
        start local 6 // long y1
        13: .line 1115
            lload 0 /* x */
            ldc 4294967295
            land
            lstore 8 /* x2 */
        start local 8 // long x2
        14: .line 1116
            lload 2 /* y */
            ldc 4294967295
            land
            lstore 10 /* y2 */
        start local 10 // long y2
        15: .line 1117
            lload 4 /* x1 */
            lload 6 /* y1 */
            lmul
            lstore 12 /* A */
        start local 12 // long A
        16: .line 1118
            lload 8 /* x2 */
            lload 10 /* y2 */
            lmul
            lstore 14 /* B */
        start local 14 // long B
        17: .line 1119
            lload 4 /* x1 */
            lload 8 /* x2 */
            ladd
            lload 6 /* y1 */
            lload 10 /* y2 */
            ladd
            lmul
            lstore 16 /* C */
        start local 16 // long C
        18: .line 1120
            lload 16 /* C */
            lload 12 /* A */
            lsub
            lload 14 /* B */
            lsub
            lstore 18 /* K */
        start local 18 // long K
        19: .line 1121
            lload 14 /* B */
            bipush 32
            lushr
            lload 18 /* K */
            ladd
            bipush 32
            lushr
            lload 12 /* A */
            ladd
            lreturn
        end local 18 // long K
        end local 16 // long C
        end local 14 // long B
        end local 12 // long A
        end local 10 // long y2
        end local 8 // long x2
        end local 6 // long y1
        end local 4 // long x1
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0     x  J
            0   20     2     y  J
            2   11     4    x1  J
            3   11     6    x2  J
            4   11     8    y1  J
            5   11    10    y2  J
            6   11    12    z2  J
            7   11    14     t  J
            8   11    16    z1  J
            9   11    18    z0  J
           12   20     4    x1  J
           13   20     6    y1  J
           14   20     8    x2  J
           15   20    10    y2  J
           16   20    12     A  J
           17   20    14     B  J
           18   20    16     C  J
           19   20    18     K  J
    MethodParameters:
      Name  Flags
      x     
      y     

  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 1160
            iload 0 /* x */
            iload 1 /* y */
            idiv
            istore 2 /* r */
        start local 2 // int r
         1: .line 1162
            iload 0 /* x */
            iload 1 /* y */
            ixor
            ifge 3
            iload 2 /* r */
            iload 1 /* y */
            imul
            iload 0 /* x */
            if_icmpeq 3
         2: .line 1163
            iinc 2 /* r */ -1
         3: .line 1165
      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, int);
    descriptor: (JI)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // long x
        start local 2 // int y
         0: .line 1194
            lload 0 /* x */
            iload 2 /* y */
            i2l
            invokestatic java.lang.Math.floorDiv:(JJ)J
            lreturn
        end local 2 // int y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  J
            0    1     2     y  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 1223
            lload 0 /* x */
            lload 2 /* y */
            ldiv
            lstore 4 /* r */
        start local 4 // long r
         1: .line 1225
            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 1226
            lload 4 /* r */
            lconst_1
            lsub
            lstore 4 /* r */
         3: .line 1228
      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=2, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 1276
            iload 0 /* x */
            iload 0 /* x */
            iload 1 /* y */
            invokestatic java.lang.Math.floorDiv:(II)I
            iload 1 /* y */
            imul
            isub
            ireturn
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     y  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int floorMod(long, int);
    descriptor: (JI)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // long x
        start local 2 // int y
         0: .line 1303
            lload 0 /* x */
            lload 0 /* x */
            iload 2 /* y */
            invokestatic java.lang.Math.floorDiv:(JI)J
            iload 2 /* y */
            i2l
            lmul
            lsub
            l2i
            ireturn
        end local 2 // int y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  J
            0    1     2     y  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 1329
            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 1346
            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 1363
            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 1387
            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 1412
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1427
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1441
            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 1463
            fload 0 /* a */
            fload 0 /* a */
            fcmpl
            ifeq 2
         1: .line 1464
            fload 0 /* a */
            freturn
         2: .line 1465
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fconst_0
            fcmpl
            ifne 6
         3: .line 1466
            fload 1 /* b */
            fconst_0
            fcmpl
            ifne 6
         4: .line 1467
            fload 0 /* a */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            getstatic java.lang.Math.negativeZeroFloatBits:J
            lcmp
            ifne 6
         5: .line 1469
            fload 1 /* b */
            freturn
         6: .line 1471
      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 1489
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1490
            dload 0 /* a */
            dreturn
         2: .line 1491
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1492
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1493
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1495
            dload 2 /* b */
            dreturn
         6: .line 1497
      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 1512
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1526
            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 1544
            fload 0 /* a */
            fload 0 /* a */
            fcmpl
            ifeq 2
         1: .line 1545
            fload 0 /* a */
            freturn
         2: .line 1546
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fconst_0
            fcmpl
            ifne 6
         3: .line 1547
            fload 1 /* b */
            fconst_0
            fcmpl
            ifne 6
         4: .line 1548
            fload 1 /* b */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            getstatic java.lang.Math.negativeZeroFloatBits:J
            lcmp
            ifne 6
         5: .line 1550
            fload 1 /* b */
            freturn
         6: .line 1552
      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 1570
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1571
            dload 0 /* a */
            dreturn
         2: .line 1572
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1573
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1574
            dload 2 /* b */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1576
            dload 2 /* b */
            dreturn
         6: .line 1578
      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 fma(double, double, double);
    descriptor: (DDD)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=3
        start local 0 // double a
        start local 2 // double b
        start local 4 // double c
         0: .line 1645
            dload 0 /* a */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 2 /* b */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 4 /* c */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 1646
      StackMap locals:
      StackMap stack:
            ldc NaN
            dreturn
         2: .line 1648
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 6 /* infiniteA */
        start local 6 // boolean infiniteA
         3: .line 1649
            dload 2 /* b */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 7 /* infiniteB */
        start local 7 // boolean infiniteB
         4: .line 1650
            dload 4 /* c */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 8 /* infiniteC */
        start local 8 // boolean infiniteC
         5: .line 1653
            iload 6 /* infiniteA */
            ifne 6
            iload 7 /* infiniteB */
            ifne 6
            iload 8 /* infiniteC */
            ifeq 16
         6: .line 1654
      StackMap locals: int int int
      StackMap stack:
            iload 6 /* infiniteA */
            ifeq 7
            dload 2 /* b */
            dconst_0
            dcmpl
            ifeq 8
         7: .line 1655
      StackMap locals:
      StackMap stack:
            iload 7 /* infiniteB */
            ifeq 9
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 9
         8: .line 1656
      StackMap locals:
      StackMap stack:
            ldc NaN
            dreturn
         9: .line 1661
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dload 2 /* b */
            dmul
            dstore 11 /* product */
        start local 11 // double product
        10: .line 1662
            dload 11 /* product */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifeq 13
            iload 6 /* infiniteA */
            ifne 13
            iload 7 /* infiniteB */
            ifne 13
        11: .line 1665
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 12
            dload 4 /* c */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifne 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 1666
      StackMap locals: double double double int int int top top double
      StackMap stack:
            dload 4 /* c */
            dreturn
        13: .line 1668
      StackMap locals:
      StackMap stack:
            dload 11 /* product */
            dload 4 /* c */
            dadd
            dstore 9 /* result */
        start local 9 // double result
        14: .line 1669
            getstatic java.lang.Math.$assertionsDisabled:Z
            ifne 15
            dload 9 /* result */
            invokestatic java.lang.Double.isFinite:(D)Z
            ifeq 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 1670
      StackMap locals: double double double int int int double double
      StackMap stack:
            dload 9 /* result */
            dreturn
        end local 11 // double product
        end local 9 // double result
        16: .line 1673
      StackMap locals:
      StackMap stack:
            new java.math.BigDecimal
            dup
            dload 0 /* a */
            invokespecial java.math.BigDecimal.<init>:(D)V
            new java.math.BigDecimal
            dup
            dload 2 /* b */
            invokespecial java.math.BigDecimal.<init>:(D)V
            invokevirtual java.math.BigDecimal.multiply:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
            astore 11 /* product */
        start local 11 // java.math.BigDecimal product
        17: .line 1674
            dload 4 /* c */
            dconst_0
            dcmpl
            ifne 21
        18: .line 1680
            dload 0 /* a */
            dconst_0
            dcmpl
            ifeq 19
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 20
        19: .line 1681
      StackMap locals: double double double int int int top top java.math.BigDecimal
      StackMap stack:
            dload 0 /* a */
            dload 2 /* b */
            dmul
            dload 4 /* c */
            dadd
            dreturn
        20: .line 1689
      StackMap locals:
      StackMap stack:
            aload 11 /* product */
            invokevirtual java.math.BigDecimal.doubleValue:()D
            dreturn
        21: .line 1692
      StackMap locals:
      StackMap stack:
            aload 11 /* product */
            new java.math.BigDecimal
            dup
            dload 4 /* c */
            invokespecial java.math.BigDecimal.<init>:(D)V
            invokevirtual java.math.BigDecimal.add:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
            invokevirtual java.math.BigDecimal.doubleValue:()D
            dreturn
        end local 11 // java.math.BigDecimal product
        end local 8 // boolean infiniteC
        end local 7 // boolean infiniteB
        end local 6 // boolean infiniteA
        end local 4 // double c
        end local 2 // double b
        end local 0 // double a
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0          a  D
            0   22     2          b  D
            0   22     4          c  D
            3   22     6  infiniteA  Z
            4   22     7  infiniteB  Z
            5   22     8  infiniteC  Z
           14   16     9     result  D
           10   16    11    product  D
           17   22    11    product  Ljava/math/BigDecimal;
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    MethodParameters:
      Name  Flags
      a     
      b     
      c     

  public static float fma(float, float, float);
    descriptor: (FFF)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // float a
        start local 1 // float b
        start local 2 // float c
         0: .line 1774
            fload 0 /* a */
            f2d
            fload 1 /* b */
            f2d
            dmul
            fload 2 /* c */
            f2d
            dadd
            d2f
            fstore 3 /* result */
        start local 3 // float result
         1: .line 1775
            fload 3 /* result */
            freturn
        end local 3 // float result
        end local 2 // float c
        end local 1 // float b
        end local 0 // float a
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0       a  F
            0    2     1       b  F
            0    2     2       c  F
            1    2     3  result  F
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    MethodParameters:
      Name  Flags
      a     
      b     
      c     

  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 1802
            dload 0 /* d */
            invokestatic java.lang.Math.getExponent:(D)I
            istore 2 /* exp */
        start local 2 // int exp
         1: .line 1804
            iload 2 /* exp */
            lookupswitch { // 2
                -1023: 3
                 1024: 2
              default: 4
          }
         2: .line 1806
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Math.abs:(D)D
            dreturn
         3: .line 1809
      StackMap locals:
      StackMap stack:
            ldc 4.9E-324
            dreturn
         4: .line 1812
      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 1815
      StackMap locals:
      StackMap stack:
            iinc 2 /* exp */ -52
         7: .line 1816
            iload 2 /* exp */
            sipush -1022
            if_icmplt 9
         8: .line 1817
            iload 2 /* exp */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dreturn
         9: .line 1823
      StackMap locals:
      StackMap stack:
            lconst_1
        10: .line 1824
            iload 2 /* exp */
            sipush -1074
            isub
        11: .line 1823
            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 1853
            fload 0 /* f */
            invokestatic java.lang.Math.getExponent:(F)I
            istore 1 /* exp */
        start local 1 // int exp
         1: .line 1855
            iload 1 /* exp */
            lookupswitch { // 2
                 -127: 3
                  128: 2
              default: 4
          }
         2: .line 1857
      StackMap locals: int
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Math.abs:(F)F
            freturn
         3: .line 1860
      StackMap locals:
      StackMap stack:
            ldc 1.4E-45
            freturn
         4: .line 1863
      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 1866
      StackMap locals:
      StackMap stack:
            iinc 1 /* exp */ -23
         7: .line 1867
            iload 1 /* exp */
            bipush -126
            if_icmplt 9
         8: .line 1868
            iload 1 /* exp */
            invokestatic java.lang.Math.powerOfTwoF:(I)F
            freturn
         9: .line 1873
      StackMap locals:
      StackMap stack:
            iconst_1
        10: .line 1874
            iload 1 /* exp */
            sipush -149
            isub
        11: .line 1873
            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 1897
            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 1918
            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 1947
            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 1975
            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 2015
            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 2044
            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 2082
            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 2119
            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 2138
            dload 2 /* sign */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         1: .line 2139
            ldc -9223372036854775808
         2: .line 2138
            land
         3: .line 2140
            dload 0 /* magnitude */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         4: .line 2141
            ldc 9223372036854775807
         5: .line 2140
            land
         6: .line 2138
            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 2161
            fload 1 /* sign */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         1: .line 2162
            ldc -2147483648
         2: .line 2161
            iand
         3: .line 2163
            fload 0 /* magnitude */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         4: .line 2164
            ldc 2147483647
         5: .line 2163
            iand
         6: .line 2161
            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 2188
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            ldc 2139095040
            iand
         1: .line 2189
            bipush 23
         2: .line 2188
            ishr
         3: .line 2189
            bipush 127
         4: .line 2188
            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 2212
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            ldc 9218868437227405312
            land
         1: .line 2213
            bipush 52
         2: .line 2212
            lshr
         3: .line 2213
            ldc 1023
         4: .line 2212
            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 2282
            dload 0 /* start */
            dload 2 /* direction */
            dcmpl
            ifle 7
         1: .line 2283
            dload 0 /* start */
            dconst_0
            dcmpl
            ifeq 6
         2: .line 2284
            dload 0 /* start */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* transducer */
        start local 4 // long transducer
         3: .line 2285
            lload 4 /* transducer */
            lload 4 /* transducer */
            lconst_0
            lcmp
            ifle 4
            ldc -1
            goto 5
      StackMap locals: double double long
      StackMap stack: long
         4: lconst_1
      StackMap locals: double double long
      StackMap stack: long long
         5: ladd
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 4 // long transducer
         6: .line 2287
      StackMap locals:
      StackMap stack:
            ldc -4.9E-324
            dreturn
         7: .line 2289
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dcmpg
            ifge 12
         8: .line 2292
            dload 0 /* start */
            dconst_0
            dadd
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* transducer */
        start local 4 // long transducer
         9: .line 2293
            lload 4 /* transducer */
            lload 4 /* transducer */
            lconst_0
            lcmp
            iflt 10
            lconst_1
            goto 11
      StackMap locals: double double long
      StackMap stack: long
        10: ldc -1
      StackMap locals: double double long
      StackMap stack: long long
        11: ladd
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 4 // long transducer
        12: .line 2294
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dcmpl
            ifne 14
        13: .line 2295
            dload 2 /* direction */
            dreturn
        14: .line 2297
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dadd
            dreturn
        end local 2 // double direction
        end local 0 // double start
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0       start  D
            0   15     2   direction  D
            3    6     4  transducer  J
            9   12     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 2366
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpl
            ifle 7
         1: .line 2367
            fload 0 /* start */
            fconst_0
            fcmpl
            ifeq 6
         2: .line 2368
            fload 0 /* start */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 3 /* transducer */
        start local 3 // int transducer
         3: .line 2369
            iload 3 /* transducer */
            iload 3 /* transducer */
            ifle 4
            iconst_m1
            goto 5
      StackMap locals: float double int
      StackMap stack: int
         4: iconst_1
      StackMap locals: float double int
      StackMap stack: int int
         5: iadd
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 3 // int transducer
         6: .line 2371
      StackMap locals:
      StackMap stack:
            ldc -1.4E-45
            freturn
         7: .line 2373
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpg
            ifge 12
         8: .line 2376
            fload 0 /* start */
            fconst_0
            fadd
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 3 /* transducer */
        start local 3 // int transducer
         9: .line 2377
            iload 3 /* transducer */
            iload 3 /* transducer */
            iflt 10
            iconst_1
            goto 11
      StackMap locals: float double int
      StackMap stack: int
        10: iconst_m1
      StackMap locals: float double int
      StackMap stack: int int
        11: iadd
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 3 // int transducer
        12: .line 2378
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpl
            ifne 14
        13: .line 2379
            dload 1 /* direction */
            d2f
            freturn
        14: .line 2381
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            dload 1 /* direction */
            d2f
            fadd
            freturn
        end local 1 // double direction
        end local 0 // float start
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0       start  F
            0   15     1   direction  D
            3    6     3  transducer  I
            9   12     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=4, args_size=1
        start local 0 // double d
         0: .line 2412
            dload 0 /* d */
            ldc Infinity
            dcmpg
            ifge 5
         1: .line 2414
            dload 0 /* d */
            dconst_0
            dadd
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* transducer */
        start local 2 // long transducer
         2: .line 2415
            lload 2 /* transducer */
            lload 2 /* transducer */
            lconst_0
            lcmp
            iflt 3
            lconst_1
            goto 4
      StackMap locals: double long
      StackMap stack: long
         3: ldc -1
      StackMap locals: double long
      StackMap stack: long long
         4: ladd
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 2 // long transducer
         5: .line 2417
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dreturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0           d  D
            2    5     2  transducer  J
    MethodParameters:
      Name  Flags
      d     

  public static float nextUp(float);
    descriptor: (F)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // float f
         0: .line 2448
            fload 0 /* f */
            ldc Infinity
            fcmpg
            ifge 5
         1: .line 2450
            fload 0 /* f */
            fconst_0
            fadd
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* transducer */
        start local 1 // int transducer
         2: .line 2451
            iload 1 /* transducer */
            iload 1 /* transducer */
            iflt 3
            iconst_1
            goto 4
      StackMap locals: float int
      StackMap stack: int
         3: iconst_m1
      StackMap locals: float int
      StackMap stack: int int
         4: iadd
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 1 // int transducer
         5: .line 2453
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            freturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0           f  F
            2    5     1  transducer  I
    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 2483
            dload 0 /* d */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 0 /* d */
            ldc -Infinity
            dcmpl
            ifne 2
         1: .line 2484
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dreturn
         2: .line 2486
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dconst_0
            dcmpl
            ifne 4
         3: .line 2487
            ldc -4.9E-324
            dreturn
         4: .line 2489
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         5: .line 2490
            dload 0 /* d */
            dconst_0
            dcmpl
            ifle 6
            ldc -1
            goto 7
      StackMap locals:
      StackMap stack: long
         6: lconst_1
         7: .line 2489
      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 2520
            fload 0 /* f */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 1
            fload 0 /* f */
            ldc -Infinity
            fcmpl
            ifne 2
         1: .line 2521
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            freturn
         2: .line 2523
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            fconst_0
            fcmpl
            ifne 4
         3: .line 2524
            ldc -1.4E-45
            freturn
         4: .line 2526
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         5: .line 2527
            fload 0 /* f */
            fconst_0
            fcmpl
            ifle 6
            iconst_m1
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_1
         7: .line 2526
      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 2606
            iconst_0
            istore 3 /* exp_adjust */
        start local 3 // int exp_adjust
         1: .line 2607
            iconst_0
            istore 4 /* scale_increment */
        start local 4 // int scale_increment
         2: .line 2608
            ldc NaN
            dstore 5 /* exp_delta */
        start local 5 // double exp_delta
         3: .line 2612
            iload 2 /* scaleFactor */
            ifge 8
         4: .line 2613
            iload 2 /* scaleFactor */
            sipush -2099
            invokestatic java.lang.Math.max:(II)I
            istore 2 /* scaleFactor */
         5: .line 2614
            sipush -512
            istore 4 /* scale_increment */
         6: .line 2615
            getstatic java.lang.Math.twoToTheDoubleScaleDown:D
            dstore 5 /* exp_delta */
         7: .line 2616
            goto 11
         8: .line 2618
      StackMap locals: int int double
      StackMap stack:
            iload 2 /* scaleFactor */
            sipush 2099
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* scaleFactor */
         9: .line 2619
            sipush 512
            istore 4 /* scale_increment */
        10: .line 2620
            getstatic java.lang.Math.twoToTheDoubleScaleUp:D
            dstore 5 /* exp_delta */
        11: .line 2625
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            bipush 8
            ishr
            bipush 23
            iushr
            istore 7 /* t */
        start local 7 // int t
        12: .line 2626
            iload 2 /* scaleFactor */
            iload 7 /* t */
            iadd
            sipush 511
            iand
            iload 7 /* t */
            isub
            istore 3 /* exp_adjust */
        13: .line 2628
            dload 0 /* d */
            iload 3 /* exp_adjust */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dmul
            dstore 0 /* d */
        14: .line 2629
            iload 2 /* scaleFactor */
            iload 3 /* exp_adjust */
            isub
            istore 2 /* scaleFactor */
        15: .line 2631
            goto 18
        16: .line 2632
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            dload 5 /* exp_delta */
            dmul
            dstore 0 /* d */
        17: .line 2633
            iload 2 /* scaleFactor */
            iload 4 /* scale_increment */
            isub
            istore 2 /* scaleFactor */
        18: .line 2631
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            ifne 16
        19: .line 2635
            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 2677
            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 2688
            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 2699
            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 2700
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            i2l
            ldc 1023
            ladd
         3: .line 2701
            bipush 52
         4: .line 2700
            lshl
         5: .line 2702
            ldc 9218868437227405312
         6: .line 2700
            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 2709
            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 2710
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            bipush 127
            iadd
         3: .line 2711
            bipush 23
         4: .line 2710
            ishl
         5: .line 2712
            ldc 2139095040
         6: .line 2710
            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