public class java.util.DoubleSummaryStatistics implements java.util.function.DoubleConsumer
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.DoubleSummaryStatistics
  super_class: java.lang.Object
{
  private long count;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private double sum;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double sumCompensation;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double simpleSum;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double min;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double max;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 77
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 69
            aload 0 /* this */
            ldc Infinity
            putfield java.util.DoubleSummaryStatistics.min:D
         2: .line 70
            aload 0 /* this */
            ldc -Infinity
            putfield java.util.DoubleSummaryStatistics.max:D
         3: .line 77
            return
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/DoubleSummaryStatistics;

  public void <init>(long, double, double, double);
    descriptor: (JDDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // java.util.DoubleSummaryStatistics this
        start local 1 // long count
        start local 3 // double min
        start local 5 // double max
        start local 7 // double sum
         0: .line 109
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 69
            aload 0 /* this */
            ldc Infinity
            putfield java.util.DoubleSummaryStatistics.min:D
         2: .line 70
            aload 0 /* this */
            ldc -Infinity
            putfield java.util.DoubleSummaryStatistics.max:D
         3: .line 111
            lload 1 /* count */
            lconst_0
            lcmp
            ifge 5
         4: .line 112
            new java.lang.IllegalArgumentException
            dup
            ldc "Negative count value"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 113
      StackMap locals: java.util.DoubleSummaryStatistics long double double double
      StackMap stack:
            lload 1 /* count */
            lconst_0
            lcmp
            ifle 17
         6: .line 114
            dload 3 /* min */
            dload 5 /* max */
            dcmpl
            ifle 8
         7: .line 115
            new java.lang.IllegalArgumentException
            dup
            ldc "Minimum greater than maximum"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 118
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            dup
            iconst_0
            dload 3 /* min */
            dastore
            dup
            iconst_1
            dload 5 /* max */
            dastore
            dup
            iconst_2
            dload 7 /* sum */
            dastore
            invokestatic java.util.stream.DoubleStream.of:([D)Ljava/util/stream/DoubleStream;
            invokedynamic test()Ljava/util/function/DoublePredicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (D)Z
                  java/lang/Double.isNaN(D)Z (6)
                  (D)Z
            invokeinterface java.util.stream.DoubleStream.filter:(Ljava/util/function/DoublePredicate;)Ljava/util/stream/DoubleStream;
            invokeinterface java.util.stream.DoubleStream.count:()J
            lstore 9 /* ncount */
        start local 9 // long ncount
         9: .line 119
            lload 9 /* ncount */
            lconst_0
            lcmp
            ifle 11
            lload 9 /* ncount */
            ldc 3
            lcmp
            ifge 11
        10: .line 120
            new java.lang.IllegalArgumentException
            dup
            ldc "Some, not all, of the minimum, maximum, or sum is NaN"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 122
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            lload 1 /* count */
            putfield java.util.DoubleSummaryStatistics.count:J
        12: .line 123
            aload 0 /* this */
            dload 7 /* sum */
            putfield java.util.DoubleSummaryStatistics.sum:D
        13: .line 124
            aload 0 /* this */
            dload 7 /* sum */
            putfield java.util.DoubleSummaryStatistics.simpleSum:D
        14: .line 125
            aload 0 /* this */
            dconst_0
            putfield java.util.DoubleSummaryStatistics.sumCompensation:D
        15: .line 126
            aload 0 /* this */
            dload 3 /* min */
            putfield java.util.DoubleSummaryStatistics.min:D
        16: .line 127
            aload 0 /* this */
            dload 5 /* max */
            putfield java.util.DoubleSummaryStatistics.max:D
        end local 9 // long ncount
        17: .line 130
      StackMap locals:
      StackMap stack:
            return
        end local 7 // double sum
        end local 5 // double max
        end local 3 // double min
        end local 1 // long count
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    this  Ljava/util/DoubleSummaryStatistics;
            0   18     1   count  J
            0   18     3     min  D
            0   18     5     max  D
            0   18     7     sum  D
            9   17     9  ncount  J
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
       Name  Flags
      count  
      min    
      max    
      sum    

  public void accept(double);
    descriptor: (D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.util.DoubleSummaryStatistics this
        start local 1 // double value
         0: .line 139
            aload 0 /* this */
            dup
            getfield java.util.DoubleSummaryStatistics.count:J
            lconst_1
            ladd
            putfield java.util.DoubleSummaryStatistics.count:J
         1: .line 140
            aload 0 /* this */
            dup
            getfield java.util.DoubleSummaryStatistics.simpleSum:D
            dload 1 /* value */
            dadd
            putfield java.util.DoubleSummaryStatistics.simpleSum:D
         2: .line 141
            aload 0 /* this */
            dload 1 /* value */
            invokevirtual java.util.DoubleSummaryStatistics.sumWithCompensation:(D)V
         3: .line 142
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.min:D
            dload 1 /* value */
            invokestatic java.lang.Math.min:(DD)D
            putfield java.util.DoubleSummaryStatistics.min:D
         4: .line 143
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.max:D
            dload 1 /* value */
            invokestatic java.lang.Math.max:(DD)D
            putfield java.util.DoubleSummaryStatistics.max:D
         5: .line 144
            return
        end local 1 // double value
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/util/DoubleSummaryStatistics;
            0    6     1  value  D
    MethodParameters:
       Name  Flags
      value  

  public void combine(java.util.DoubleSummaryStatistics);
    descriptor: (Ljava/util/DoubleSummaryStatistics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.DoubleSummaryStatistics this
        start local 1 // java.util.DoubleSummaryStatistics other
         0: .line 154
            aload 0 /* this */
            dup
            getfield java.util.DoubleSummaryStatistics.count:J
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.count:J
            ladd
            putfield java.util.DoubleSummaryStatistics.count:J
         1: .line 155
            aload 0 /* this */
            dup
            getfield java.util.DoubleSummaryStatistics.simpleSum:D
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.simpleSum:D
            dadd
            putfield java.util.DoubleSummaryStatistics.simpleSum:D
         2: .line 156
            aload 0 /* this */
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.sum:D
            invokevirtual java.util.DoubleSummaryStatistics.sumWithCompensation:(D)V
         3: .line 157
            aload 0 /* this */
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.sumCompensation:D
            invokevirtual java.util.DoubleSummaryStatistics.sumWithCompensation:(D)V
         4: .line 158
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.min:D
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.min:D
            invokestatic java.lang.Math.min:(DD)D
            putfield java.util.DoubleSummaryStatistics.min:D
         5: .line 159
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.max:D
            aload 1 /* other */
            getfield java.util.DoubleSummaryStatistics.max:D
            invokestatic java.lang.Math.max:(DD)D
            putfield java.util.DoubleSummaryStatistics.max:D
         6: .line 160
            return
        end local 1 // java.util.DoubleSummaryStatistics other
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/util/DoubleSummaryStatistics;
            0    7     1  other  Ljava/util/DoubleSummaryStatistics;
    MethodParameters:
       Name  Flags
      other  

  private void sumWithCompensation(double);
    descriptor: (D)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.util.DoubleSummaryStatistics this
        start local 1 // double value
         0: .line 167
            dload 1 /* value */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.sumCompensation:D
            dsub
            dstore 3 /* tmp */
        start local 3 // double tmp
         1: .line 168
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.sum:D
            dload 3 /* tmp */
            dadd
            dstore 5 /* velvel */
        start local 5 // double velvel
         2: .line 169
            aload 0 /* this */
            dload 5 /* velvel */
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.sum:D
            dsub
            dload 3 /* tmp */
            dsub
            putfield java.util.DoubleSummaryStatistics.sumCompensation:D
         3: .line 170
            aload 0 /* this */
            dload 5 /* velvel */
            putfield java.util.DoubleSummaryStatistics.sum:D
         4: .line 171
            return
        end local 5 // double velvel
        end local 3 // double tmp
        end local 1 // double value
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/util/DoubleSummaryStatistics;
            0    5     1   value  D
            1    5     3     tmp  D
            2    5     5  velvel  D
    MethodParameters:
       Name  Flags
      value  

  public final long getCount();
    descriptor: ()J
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 179
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.count:J
            lreturn
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/DoubleSummaryStatistics;

  public final double getSum();
    descriptor: ()D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 242
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.sum:D
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.sumCompensation:D
            dadd
            dstore 1 /* tmp */
        start local 1 // double tmp
         1: .line 243
            dload 1 /* tmp */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 3
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.simpleSum:D
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifeq 3
         2: .line 248
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.simpleSum:D
            dreturn
         3: .line 250
      StackMap locals: double
      StackMap stack:
            dload 1 /* tmp */
            dreturn
        end local 1 // double tmp
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/DoubleSummaryStatistics;
            1    4     1   tmp  D

  public final double getMin();
    descriptor: ()D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 264
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.min:D
            dreturn
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/DoubleSummaryStatistics;

  public final double getMax();
    descriptor: ()D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 278
            aload 0 /* this */
            getfield java.util.DoubleSummaryStatistics.max:D
            dreturn
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/DoubleSummaryStatistics;

  public final double getAverage();
    descriptor: ()D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 295
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getCount:()J
            lconst_0
            lcmp
            ifle 1
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getSum:()D
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getCount:()J
            l2d
            ddiv
            goto 2
      StackMap locals:
      StackMap stack:
         1: dconst_0
      StackMap locals:
      StackMap stack: double
         2: dreturn
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/DoubleSummaryStatistics;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.util.DoubleSummaryStatistics this
         0: .line 306
            ldc "%s{count=%d, sum=%f, min=%f, average=%f, max=%f}"
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 307
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
         2: .line 308
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getCount:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
         3: .line 309
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getSum:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_3
         4: .line 310
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getMin:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_4
         5: .line 311
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getAverage:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_5
         6: .line 312
            aload 0 /* this */
            invokevirtual java.util.DoubleSummaryStatistics.getMax:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
         7: .line 305
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // java.util.DoubleSummaryStatistics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/util/DoubleSummaryStatistics;
}
SourceFile: "DoubleSummaryStatistics.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles