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 final long negativeZeroFloatBits;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long negativeZeroDoubleBits;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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 1525
            ldc -0.0
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            putstatic java.lang.Math.negativeZeroFloatBits:J
         4: .line 1526
            ldc -0.0
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            putstatic java.lang.Math.negativeZeroDoubleBits:J
         5: .line 2776
            sipush 512
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            putstatic java.lang.Math.twoToTheDoubleScaleUp:D
         6: .line 2777
            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 445
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 465
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 485
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 542
            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 670
            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 694
            fload 0 /* a */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* intBits */
        start local 1 // int intBits
         1: .line 695
            iload 1 /* intBits */
            ldc 2139095040
            iand
         2: .line 696
            bipush 23
         3: .line 695
            ishr
            istore 2 /* biasedExp */
        start local 2 // int biasedExp
         4: .line 697
            sipush 149
         5: .line 698
            iload 2 /* biasedExp */
         6: .line 697
            isub
            istore 3 /* shift */
        start local 3 // int shift
         7: .line 699
            iload 3 /* shift */
            bipush -32
            iand
            ifne 14
         8: .line 701
            iload 1 /* intBits */
            ldc 8388607
            iand
         9: .line 702
            ldc 8388608
        10: .line 701
            ior
            istore 4 /* r */
        start local 4 // int r
        11: .line 703
            iload 1 /* intBits */
            ifge 13
        12: .line 704
            iload 4 /* r */
            ineg
            istore 4 /* r */
        13: .line 712
      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 718
      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 743
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* longBits */
        start local 2 // long longBits
         1: .line 744
            lload 2 /* longBits */
            ldc 9218868437227405312
            land
         2: .line 745
            bipush 52
         3: .line 744
            lshr
            lstore 4 /* biasedExp */
        start local 4 // long biasedExp
         4: .line 746
            ldc 1074
         5: .line 747
            lload 4 /* biasedExp */
         6: .line 746
            lsub
            lstore 6 /* shift */
        start local 6 // long shift
         7: .line 748
            lload 6 /* shift */
            ldc -64
            land
            lconst_0
            lcmp
            ifne 14
         8: .line 750
            lload 2 /* longBits */
            ldc 4503599627370495
            land
         9: .line 751
            ldc 4503599627370496
        10: .line 750
            lor
            lstore 8 /* r */
        start local 8 // long r
        11: .line 752
            lload 2 /* longBits */
            lconst_0
            lcmp
            ifge 13
        12: .line 753
            lload 8 /* r */
            lneg
            lstore 8 /* r */
        13: .line 761
      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 767
      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 810
            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 825
            iload 0 /* x */
            iload 1 /* y */
            iadd
            istore 2 /* r */
        start local 2 // int r
         1: .line 827
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iload 1 /* y */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 828
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 830
      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 845
            lload 0 /* x */
            lload 2 /* y */
            ladd
            lstore 4 /* r */
        start local 4 // long r
         1: .line 847
            lload 0 /* x */
            lload 4 /* r */
            lxor
            lload 2 /* y */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 848
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 850
      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 865
            iload 0 /* x */
            iload 1 /* y */
            isub
            istore 2 /* r */
        start local 2 // int r
         1: .line 868
            iload 0 /* x */
            iload 1 /* y */
            ixor
            iload 0 /* x */
            iload 2 /* r */
            ixor
            iand
            ifge 3
         2: .line 869
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 871
      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 886
            lload 0 /* x */
            lload 2 /* y */
            lsub
            lstore 4 /* r */
        start local 4 // long r
         1: .line 889
            lload 0 /* x */
            lload 2 /* y */
            lxor
            lload 0 /* x */
            lload 4 /* r */
            lxor
            land
            lconst_0
            lcmp
            ifge 3
         2: .line 890
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 892
      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 907
            iload 0 /* x */
            i2l
            iload 1 /* y */
            i2l
            lmul
            lstore 2 /* r */
        start local 2 // long r
         1: .line 908
            lload 2 /* r */
            l2i
            i2l
            lload 2 /* r */
            lcmp
            ifeq 3
         2: .line 909
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 911
      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 925
            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 940
            lload 0 /* x */
            lload 2 /* y */
            lmul
            lstore 4 /* r */
        start local 4 // long r
         1: .line 941
            lload 0 /* x */
            invokestatic java.lang.Math.abs:(J)J
            lstore 6 /* ax */
        start local 6 // long ax
         2: .line 942
            lload 2 /* y */
            invokestatic java.lang.Math.abs:(J)J
            lstore 8 /* ay */
        start local 8 // long ay
         3: .line 943
            lload 6 /* ax */
            lload 8 /* ay */
            lor
            bipush 31
            lushr
            lconst_0
            lcmp
            ifeq 7
         4: .line 947
            lload 2 /* y */
            lconst_0
            lcmp
            ifeq 5
            lload 4 /* r */
            lload 2 /* y */
            ldiv
            lload 0 /* x */
            lcmp
            ifne 6
         5: .line 948
      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 949
      StackMap locals:
      StackMap stack:
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 952
      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 967
            iload 0 /* a */
            ldc 2147483647
            if_icmpne 2
         1: .line 968
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 971
      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 986
            lload 0 /* a */
            ldc 9223372036854775807
            lcmp
            ifne 2
         1: .line 987
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 990
      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 1005
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 1006
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1009
      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 1024
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 1025
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1028
      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 1043
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 2
         1: .line 1044
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1047
      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 1062
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 2
         1: .line 1063
            new java.lang.ArithmeticException
            dup
            ldc "long overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1066
      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 1079
            lload 0 /* value */
            l2i
            i2l
            lload 0 /* value */
            lcmp
            ifeq 2
         1: .line 1080
            new java.lang.ArithmeticException
            dup
            ldc "integer overflow"
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1082
      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 1094
            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 1108
            lload 0 /* x */
            lconst_0
            lcmp
            iflt 1
            lload 2 /* y */
            lconst_0
            lcmp
            ifge 11
         1: .line 1111
      StackMap locals:
      StackMap stack:
            lload 0 /* x */
            bipush 32
            lshr
            lstore 4 /* x1 */
        start local 4 // long x1
         2: .line 1112
            lload 0 /* x */
            ldc 4294967295
            land
            lstore 6 /* x2 */
        start local 6 // long x2
         3: .line 1113
            lload 2 /* y */
            bipush 32
            lshr
            lstore 8 /* y1 */
        start local 8 // long y1
         4: .line 1114
            lload 2 /* y */
            ldc 4294967295
            land
            lstore 10 /* y2 */
        start local 10 // long y2
         5: .line 1115
            lload 6 /* x2 */
            lload 10 /* y2 */
            lmul
            lstore 12 /* z2 */
        start local 12 // long z2
         6: .line 1116
            lload 4 /* x1 */
            lload 10 /* y2 */
            lmul
            lload 12 /* z2 */
            bipush 32
            lushr
            ladd
            lstore 14 /* t */
        start local 14 // long t
         7: .line 1117
            lload 14 /* t */
            ldc 4294967295
            land
            lstore 16 /* z1 */
        start local 16 // long z1
         8: .line 1118
            lload 14 /* t */
            bipush 32
            lshr
            lstore 18 /* z0 */
        start local 18 // long z0
         9: .line 1119
            lload 16 /* z1 */
            lload 6 /* x2 */
            lload 8 /* y1 */
            lmul
            ladd
            lstore 16 /* z1 */
        10: .line 1120
            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 1123
      StackMap locals:
      StackMap stack:
            lload 0 /* x */
            bipush 32
            lushr
            lstore 4 /* x1 */
        start local 4 // long x1
        12: .line 1124
            lload 2 /* y */
            bipush 32
            lushr
            lstore 6 /* y1 */
        start local 6 // long y1
        13: .line 1125
            lload 0 /* x */
            ldc 4294967295
            land
            lstore 8 /* x2 */
        start local 8 // long x2
        14: .line 1126
            lload 2 /* y */
            ldc 4294967295
            land
            lstore 10 /* y2 */
        start local 10 // long y2
        15: .line 1127
            lload 4 /* x1 */
            lload 6 /* y1 */
            lmul
            lstore 12 /* A */
        start local 12 // long A
        16: .line 1128
            lload 8 /* x2 */
            lload 10 /* y2 */
            lmul
            lstore 14 /* B */
        start local 14 // long B
        17: .line 1129
            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 1130
            lload 16 /* C */
            lload 12 /* A */
            lsub
            lload 14 /* B */
            lsub
            lstore 18 /* K */
        start local 18 // long K
        19: .line 1131
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1170
            iload 0 /* x */
            iload 1 /* y */
            idiv
            istore 2 /* r */
        start local 2 // int r
         1: .line 1172
            iload 0 /* x */
            iload 1 /* y */
            ixor
            ifge 3
            iload 2 /* r */
            iload 1 /* y */
            imul
            iload 0 /* x */
            if_icmpeq 3
         2: .line 1173
            iinc 2 /* r */ -1
         3: .line 1175
      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 1204
            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 1233
            lload 0 /* x */
            lload 2 /* y */
            ldiv
            lstore 4 /* r */
        start local 4 // long r
         1: .line 1235
            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 1236
            lload 4 /* r */
            lconst_1
            lsub
            lstore 4 /* r */
         3: .line 1238
      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=2, locals=3, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 1287
            iload 0 /* x */
            iload 1 /* y */
            irem
            istore 2 /* mod */
        start local 2 // int mod
         1: .line 1289
            iload 2 /* mod */
            iload 1 /* y */
            ixor
            ifge 3
            iload 2 /* mod */
            ifeq 3
         2: .line 1290
            iload 2 /* mod */
            iload 1 /* y */
            iadd
            istore 2 /* mod */
         3: .line 1292
      StackMap locals: int
      StackMap stack:
            iload 2 /* mod */
            ireturn
        end local 2 // int mod
        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   mod  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static int floorMod(long, int);
    descriptor: (JI)I
    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 1319
            lload 0 /* x */
            iload 2 /* y */
            i2l
            invokestatic java.lang.Math.floorMod:(JJ)J
            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=4, locals=6, args_size=2
        start local 0 // long x
        start local 2 // long y
         0: .line 1345
            lload 0 /* x */
            lload 2 /* y */
            lrem
            lstore 4 /* mod */
        start local 4 // long mod
         1: .line 1347
            lload 0 /* x */
            lload 2 /* y */
            lxor
            lconst_0
            lcmp
            ifge 3
            lload 4 /* mod */
            lconst_0
            lcmp
            ifeq 3
         2: .line 1348
            lload 4 /* mod */
            lload 2 /* y */
            ladd
            lstore 4 /* mod */
         3: .line 1350
      StackMap locals: long
      StackMap stack:
            lload 4 /* mod */
            lreturn
        end local 4 // long mod
        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   mod  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 1370
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    MethodParameters:
      Name  Flags
      a     

  public static int absExact(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 1392
            iload 0 /* a */
            ldc -2147483648
            if_icmpne 4
         1: .line 1393
            new java.lang.ArithmeticException
            dup
         2: .line 1394
            ldc "Overflow to represent absolute value of Integer.MIN_VALUE"
         3: .line 1393
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1396
      StackMap locals:
      StackMap stack:
            iload 0 /* a */
            invokestatic java.lang.Math.abs:(I)I
            ireturn
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     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 1416
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    MethodParameters:
      Name  Flags
      a     

  public static long absExact(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 1438
            lload 0 /* a */
            ldc -9223372036854775808
            lcmp
            ifne 4
         1: .line 1439
            new java.lang.ArithmeticException
            dup
         2: .line 1440
            ldc "Overflow to represent absolute value of Long.MIN_VALUE"
         3: .line 1439
            invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1442
      StackMap locals:
      StackMap stack:
            lload 0 /* a */
            invokestatic java.lang.Math.abs:(J)J
            lreturn
        end local 0 // long a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     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 1467
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1492
            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 1507
            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 1521
            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 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 0 /* a */
            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 */
            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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1571
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1572
            dload 0 /* a */
            dreturn
         2: .line 1573
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1574
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1575
            dload 0 /* a */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1577
            dload 2 /* b */
            dreturn
         6: .line 1579
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1594
            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 1608
            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 1627
            fload 0 /* a */
            fload 0 /* a */
            fcmpl
            ifeq 2
         1: .line 1628
            fload 0 /* a */
            freturn
         2: .line 1629
      StackMap locals:
      StackMap stack:
            fload 0 /* a */
            fconst_0
            fcmpl
            ifne 6
         3: .line 1630
            fload 1 /* b */
            fconst_0
            fcmpl
            ifne 6
         4: .line 1631
            fload 1 /* b */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            getstatic java.lang.Math.negativeZeroFloatBits:J
            lcmp
            ifne 6
         5: .line 1633
            fload 1 /* b */
            freturn
         6: .line 1635
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1654
            dload 0 /* a */
            dload 0 /* a */
            dcmpl
            ifeq 2
         1: .line 1655
            dload 0 /* a */
            dreturn
         2: .line 1656
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 6
         3: .line 1657
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 6
         4: .line 1658
            dload 2 /* b */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            getstatic java.lang.Math.negativeZeroDoubleBits:J
            lcmp
            ifne 6
         5: .line 1660
            dload 2 /* b */
            dreturn
         6: .line 1662
      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
    RuntimeVisibleAnnotations: 
      jdk.internal.HotSpotIntrinsicCandidate()
    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 1729
            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 1730
      StackMap locals:
      StackMap stack:
            ldc NaN
            dreturn
         2: .line 1732
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 6 /* infiniteA */
        start local 6 // boolean infiniteA
         3: .line 1733
            dload 2 /* b */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 7 /* infiniteB */
        start local 7 // boolean infiniteB
         4: .line 1734
            dload 4 /* c */
            invokestatic java.lang.Double.isInfinite:(D)Z
            istore 8 /* infiniteC */
        start local 8 // boolean infiniteC
         5: .line 1737
            iload 6 /* infiniteA */
            ifne 6
            iload 7 /* infiniteB */
            ifne 6
            iload 8 /* infiniteC */
            ifeq 16
         6: .line 1738
      StackMap locals: int int int
      StackMap stack:
            iload 6 /* infiniteA */
            ifeq 7
            dload 2 /* b */
            dconst_0
            dcmpl
            ifeq 8
         7: .line 1739
      StackMap locals:
      StackMap stack:
            iload 7 /* infiniteB */
            ifeq 9
            dload 0 /* a */
            dconst_0
            dcmpl
            ifne 9
         8: .line 1740
      StackMap locals:
      StackMap stack:
            ldc NaN
            dreturn
         9: .line 1745
      StackMap locals:
      StackMap stack:
            dload 0 /* a */
            dload 2 /* b */
            dmul
            dstore 11 /* product */
        start local 11 // double product
        10: .line 1746
            dload 11 /* product */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifeq 13
            iload 6 /* infiniteA */
            ifne 13
            iload 7 /* infiniteB */
            ifne 13
        11: .line 1749
            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 1750
      StackMap locals: double double double int int int top top double
      StackMap stack:
            dload 4 /* c */
            dreturn
        13: .line 1752
      StackMap locals:
      StackMap stack:
            dload 11 /* product */
            dload 4 /* c */
            dadd
            dstore 9 /* result */
        start local 9 // double result
        14: .line 1753
            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 1754
      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 1757
      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 1758
            dload 4 /* c */
            dconst_0
            dcmpl
            ifne 21
        18: .line 1764
            dload 0 /* a */
            dconst_0
            dcmpl
            ifeq 19
            dload 2 /* b */
            dconst_0
            dcmpl
            ifne 20
        19: .line 1765
      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 1773
      StackMap locals:
      StackMap stack:
            aload 11 /* product */
            invokevirtual java.math.BigDecimal.doubleValue:()D
            dreturn
        21: .line 1776
      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 1858
            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 1859
            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 1886
            dload 0 /* d */
            invokestatic java.lang.Math.getExponent:(D)I
            istore 2 /* exp */
        start local 2 // int exp
         1: .line 1888
            iload 2 /* exp */
            lookupswitch { // 2
                -1023: 3
                 1024: 2
              default: 4
          }
         2: .line 1890
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Math.abs:(D)D
            dreturn
         3: .line 1893
      StackMap locals:
      StackMap stack:
            ldc 4.9E-324
            dreturn
         4: .line 1896
      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 1899
      StackMap locals:
      StackMap stack:
            iinc 2 /* exp */ -52
         7: .line 1900
            iload 2 /* exp */
            sipush -1022
            if_icmplt 9
         8: .line 1901
            iload 2 /* exp */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dreturn
         9: .line 1907
      StackMap locals:
      StackMap stack:
            lconst_1
        10: .line 1908
            iload 2 /* exp */
            sipush -1074
            isub
        11: .line 1907
            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 1937
            fload 0 /* f */
            invokestatic java.lang.Math.getExponent:(F)I
            istore 1 /* exp */
        start local 1 // int exp
         1: .line 1939
            iload 1 /* exp */
            lookupswitch { // 2
                 -127: 3
                  128: 2
              default: 4
          }
         2: .line 1941
      StackMap locals: int
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Math.abs:(F)F
            freturn
         3: .line 1944
      StackMap locals:
      StackMap stack:
            ldc 1.4E-45
            freturn
         4: .line 1947
      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 1950
      StackMap locals:
      StackMap stack:
            iinc 1 /* exp */ -23
         7: .line 1951
            iload 1 /* exp */
            bipush -126
            if_icmplt 9
         8: .line 1952
            iload 1 /* exp */
            invokestatic java.lang.Math.powerOfTwoF:(I)F
            freturn
         9: .line 1957
      StackMap locals:
      StackMap stack:
            iconst_1
        10: .line 1958
            iload 1 /* exp */
            sipush -149
            isub
        11: .line 1957
            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 1981
            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 2002
            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 2031
            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 2059
            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 2099
            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 2128
            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 2166
            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 2203
            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 2222
            dload 2 /* sign */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         1: .line 2223
            ldc -9223372036854775808
         2: .line 2222
            land
         3: .line 2224
            dload 0 /* magnitude */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         4: .line 2225
            ldc 9223372036854775807
         5: .line 2224
            land
         6: .line 2222
            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 2245
            fload 1 /* sign */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         1: .line 2246
            ldc -2147483648
         2: .line 2245
            iand
         3: .line 2247
            fload 0 /* magnitude */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         4: .line 2248
            ldc 2147483647
         5: .line 2247
            iand
         6: .line 2245
            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 2272
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            ldc 2139095040
            iand
         1: .line 2273
            bipush 23
         2: .line 2272
            ishr
         3: .line 2273
            bipush 127
         4: .line 2272
            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 2296
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            ldc 9218868437227405312
            land
         1: .line 2297
            bipush 52
         2: .line 2296
            lshr
         3: .line 2297
            ldc 1023
         4: .line 2296
            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 2366
            dload 0 /* start */
            dload 2 /* direction */
            dcmpl
            ifle 7
         1: .line 2367
            dload 0 /* start */
            dconst_0
            dcmpl
            ifeq 6
         2: .line 2368
            dload 0 /* start */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* transducer */
        start local 4 // long transducer
         3: .line 2369
            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 2371
      StackMap locals:
      StackMap stack:
            ldc -4.9E-324
            dreturn
         7: .line 2373
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dcmpg
            ifge 12
         8: .line 2376
            dload 0 /* start */
            dconst_0
            dadd
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* transducer */
        start local 4 // long transducer
         9: .line 2377
            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 2378
      StackMap locals:
      StackMap stack:
            dload 0 /* start */
            dload 2 /* direction */
            dcmpl
            ifne 14
        13: .line 2379
            dload 2 /* direction */
            dreturn
        14: .line 2381
      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 2450
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpl
            ifle 7
         1: .line 2451
            fload 0 /* start */
            fconst_0
            fcmpl
            ifeq 6
         2: .line 2452
            fload 0 /* start */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 3 /* transducer */
        start local 3 // int transducer
         3: .line 2453
            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 2455
      StackMap locals:
      StackMap stack:
            ldc -1.4E-45
            freturn
         7: .line 2457
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpg
            ifge 12
         8: .line 2460
            fload 0 /* start */
            fconst_0
            fadd
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 3 /* transducer */
        start local 3 // int transducer
         9: .line 2461
            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 2462
      StackMap locals:
      StackMap stack:
            fload 0 /* start */
            f2d
            dload 1 /* direction */
            dcmpl
            ifne 14
        13: .line 2463
            dload 1 /* direction */
            d2f
            freturn
        14: .line 2465
      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 2496
            dload 0 /* d */
            ldc Infinity
            dcmpg
            ifge 5
         1: .line 2498
            dload 0 /* d */
            dconst_0
            dadd
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* transducer */
        start local 2 // long transducer
         2: .line 2499
            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 2501
      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 2532
            fload 0 /* f */
            ldc Infinity
            fcmpg
            ifge 5
         1: .line 2534
            fload 0 /* f */
            fconst_0
            fadd
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* transducer */
        start local 1 // int transducer
         2: .line 2535
            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 2537
      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 2567
            dload 0 /* d */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifne 1
            dload 0 /* d */
            ldc -Infinity
            dcmpl
            ifne 2
         1: .line 2568
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dreturn
         2: .line 2570
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            dconst_0
            dcmpl
            ifne 4
         3: .line 2571
            ldc -4.9E-324
            dreturn
         4: .line 2573
      StackMap locals:
      StackMap stack:
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
         5: .line 2574
            dload 0 /* d */
            dconst_0
            dcmpl
            ifle 6
            ldc -1
            goto 7
      StackMap locals:
      StackMap stack: long
         6: lconst_1
         7: .line 2573
      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 2604
            fload 0 /* f */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifne 1
            fload 0 /* f */
            ldc -Infinity
            fcmpl
            ifne 2
         1: .line 2605
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            freturn
         2: .line 2607
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            fconst_0
            fcmpl
            ifne 4
         3: .line 2608
            ldc -1.4E-45
            freturn
         4: .line 2610
      StackMap locals:
      StackMap stack:
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
         5: .line 2611
            fload 0 /* f */
            fconst_0
            fcmpl
            ifle 6
            iconst_m1
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_1
         7: .line 2610
      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 2690
            iconst_0
            istore 3 /* exp_adjust */
        start local 3 // int exp_adjust
         1: .line 2691
            iconst_0
            istore 4 /* scale_increment */
        start local 4 // int scale_increment
         2: .line 2692
            ldc NaN
            dstore 5 /* exp_delta */
        start local 5 // double exp_delta
         3: .line 2696
            iload 2 /* scaleFactor */
            ifge 8
         4: .line 2697
            iload 2 /* scaleFactor */
            sipush -2099
            invokestatic java.lang.Math.max:(II)I
            istore 2 /* scaleFactor */
         5: .line 2698
            sipush -512
            istore 4 /* scale_increment */
         6: .line 2699
            getstatic java.lang.Math.twoToTheDoubleScaleDown:D
            dstore 5 /* exp_delta */
         7: .line 2700
            goto 11
         8: .line 2702
      StackMap locals: int int double
      StackMap stack:
            iload 2 /* scaleFactor */
            sipush 2099
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* scaleFactor */
         9: .line 2703
            sipush 512
            istore 4 /* scale_increment */
        10: .line 2704
            getstatic java.lang.Math.twoToTheDoubleScaleUp:D
            dstore 5 /* exp_delta */
        11: .line 2709
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            bipush 8
            ishr
            bipush 23
            iushr
            istore 7 /* t */
        start local 7 // int t
        12: .line 2710
            iload 2 /* scaleFactor */
            iload 7 /* t */
            iadd
            sipush 511
            iand
            iload 7 /* t */
            isub
            istore 3 /* exp_adjust */
        13: .line 2712
            dload 0 /* d */
            iload 3 /* exp_adjust */
            invokestatic java.lang.Math.powerOfTwoD:(I)D
            dmul
            dstore 0 /* d */
        14: .line 2713
            iload 2 /* scaleFactor */
            iload 3 /* exp_adjust */
            isub
            istore 2 /* scaleFactor */
        15: .line 2715
            goto 18
        16: .line 2716
      StackMap locals: int
      StackMap stack:
            dload 0 /* d */
            dload 5 /* exp_delta */
            dmul
            dstore 0 /* d */
        17: .line 2717
            iload 2 /* scaleFactor */
            iload 4 /* scale_increment */
            isub
            istore 2 /* scaleFactor */
        18: .line 2715
      StackMap locals:
      StackMap stack:
            iload 2 /* scaleFactor */
            ifne 16
        19: .line 2719
            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 2761
            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 2772
            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 2783
            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 2784
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            i2l
            ldc 1023
            ladd
         3: .line 2785
            bipush 52
         4: .line 2784
            lshl
         5: .line 2786
            ldc 9218868437227405312
         6: .line 2784
            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 2793
            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 2794
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            bipush 127
            iadd
         3: .line 2795
            bipush 23
         4: .line 2794
            ishl
         5: .line 2796
            ldc 2139095040
         6: .line 2794
            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