final class java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask<K, V, U> extends java.util.concurrent.ConcurrentHashMap$BulkTask<K, V, U>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
  super_class: java.util.concurrent.ConcurrentHashMap$BulkTask
{
  final java.util.function.Function<? super K, ? extends U> transformer;
    descriptor: Ljava/util/function/Function;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Function<-TK;+TU;>;

  final java.util.function.BiFunction<? super U, ? super U, ? extends U> reducer;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/BiFunction<-TU;-TU;+TU;>;

  U result;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 
    Signature: TU;

  java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask<K, V, U> rights;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
    flags: (0x0000) 
    Signature: Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;

  java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask<K, V, U> nextRight;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
    flags: (0x0000) 
    Signature: Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;

  void <init>(java.util.concurrent.ConcurrentHashMap$BulkTask<K, V, ?>, int, int, int, java.util.concurrent.ConcurrentHashMap$Node<K, V>[], java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask<K, V, U>, java.util.function.Function<? super K, ? extends U>, java.util.function.BiFunction<? super U, ? super U, ? extends U>);
    descriptor: (Ljava/util/concurrent/ConcurrentHashMap$BulkTask;III[Ljava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;Ljava/util/function/Function;Ljava/util/function/BiFunction;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=9, args_size=9
        start local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
        start local 1 // java.util.concurrent.ConcurrentHashMap$BulkTask p
        start local 2 // int b
        start local 3 // int i
        start local 4 // int f
        start local 5 // java.util.concurrent.ConcurrentHashMap$Node[] t
        start local 6 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask nextRight
        start local 7 // java.util.function.Function transformer
        start local 8 // java.util.function.BiFunction reducer
         0: .line 5542
            aload 0 /* this */
            aload 1 /* p */
            iload 2 /* b */
            iload 3 /* i */
            iload 4 /* f */
            aload 5 /* t */
            invokespecial java.util.concurrent.ConcurrentHashMap$BulkTask.<init>:(Ljava/util/concurrent/ConcurrentHashMap$BulkTask;III[Ljava/util/concurrent/ConcurrentHashMap$Node;)V
            aload 0 /* this */
            aload 6 /* nextRight */
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.nextRight:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
         1: .line 5543
            aload 0 /* this */
            aload 7 /* transformer */
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.transformer:Ljava/util/function/Function;
         2: .line 5544
            aload 0 /* this */
            aload 8 /* reducer */
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.reducer:Ljava/util/function/BiFunction;
         3: .line 5545
            return
        end local 8 // java.util.function.BiFunction reducer
        end local 7 // java.util.function.Function transformer
        end local 6 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask nextRight
        end local 5 // java.util.concurrent.ConcurrentHashMap$Node[] t
        end local 4 // int f
        end local 3 // int i
        end local 2 // int b
        end local 1 // java.util.concurrent.ConcurrentHashMap$BulkTask p
        end local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
            0    4     1            p  Ljava/util/concurrent/ConcurrentHashMap$BulkTask<TK;TV;*>;
            0    4     2            b  I
            0    4     3            i  I
            0    4     4            f  I
            0    4     5            t  [Ljava/util/concurrent/ConcurrentHashMap$Node;
            0    4     6    nextRight  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
            0    4     7  transformer  Ljava/util/function/Function<-TK;+TU;>;
            0    4     8      reducer  Ljava/util/function/BiFunction<-TU;-TU;+TU;>;
    Signature: (Ljava/util/concurrent/ConcurrentHashMap$BulkTask<TK;TV;*>;III[Ljava/util/concurrent/ConcurrentHashMap$Node<TK;TV;>;Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;Ljava/util/function/Function<-TK;+TU;>;Ljava/util/function/BiFunction<-TU;-TU;+TU;>;)V
    MethodParameters:
             Name  Flags
      p            
      b            
      i            
      f            
      t            
      nextRight    
      transformer  
      reducer      

  public final U getRawResult();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
         0: .line 5546
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.result:Ljava/lang/Object;
            areturn
        end local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
    Signature: ()TU;

  public final void compute();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=11, locals=9, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
         0: .line 5550
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.transformer:Ljava/util/function/Function;
            dup
            astore 1 /* transformer */
        start local 1 // java.util.function.Function transformer
         1: ifnull 42
         2: .line 5551
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.reducer:Ljava/util/function/BiFunction;
            dup
            astore 2 /* reducer */
        start local 2 // java.util.function.BiFunction reducer
         3: ifnull 42
         4: .line 5552
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.baseIndex:I
            istore 3 /* i */
        start local 3 // int i
         5: goto 12
        start local 4 // int f
        start local 5 // int h
         6: .line 5554
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.function.Function java.util.function.BiFunction int int int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.addToPendingCount:(I)V
         7: .line 5555
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
            dup
         8: .line 5556
            aload 0 /* this */
            aload 0 /* this */
            dup
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.batch:I
            iconst_1
            iushr
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.batch:I
            aload 0 /* this */
            iload 5 /* h */
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.baseLimit:I
            iload 4 /* f */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.tab:[Ljava/util/concurrent/ConcurrentHashMap$Node;
         9: .line 5557
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.rights:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
            aload 1 /* transformer */
            aload 2 /* reducer */
            invokespecial java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.<init>:(Ljava/util/concurrent/ConcurrentHashMap$BulkTask;III[Ljava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;Ljava/util/function/Function;Ljava/util/function/BiFunction;)V
        10: .line 5555
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.rights:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
        11: .line 5557
            invokevirtual java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.fork:()Ljava/util/concurrent/ForkJoinTask;
            pop
        end local 5 // int h
        end local 4 // int f
        12: .line 5552
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.batch:I
            ifle 17
        13: .line 5553
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.baseLimit:I
            dup
            istore 4 /* f */
        start local 4 // int f
        14: iload 3 /* i */
            iadd
            iconst_1
            iushr
            dup
            istore 5 /* h */
        start local 5 // int h
        15: iload 3 /* i */
        16: .line 5552
            if_icmpgt 6
        end local 5 // int h
        end local 4 // int f
        end local 3 // int i
        17: .line 5559
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* r */
        start local 3 // java.lang.Object r
        18: .line 5560
            goto 24
        start local 4 // java.util.concurrent.ConcurrentHashMap$Node p
        19: .line 5562
      StackMap locals: java.lang.Object java.util.concurrent.ConcurrentHashMap$Node
      StackMap stack:
            aload 1 /* transformer */
            aload 4 /* p */
            getfield java.util.concurrent.ConcurrentHashMap$Node.key:Ljava/lang/Object;
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            dup
            astore 5 /* u */
        start local 5 // java.lang.Object u
        20: ifnull 24
        21: .line 5563
            aload 3 /* r */
            ifnonnull 22
            aload 5 /* u */
            goto 23
      StackMap locals: java.lang.Object
      StackMap stack:
        22: aload 2 /* reducer */
            aload 3 /* r */
            aload 5 /* u */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
        23: astore 3 /* r */
        end local 5 // java.lang.Object u
        end local 4 // java.util.concurrent.ConcurrentHashMap$Node p
        24: .line 5560
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.advance:()Ljava/util/concurrent/ConcurrentHashMap$Node;
            dup
            astore 4 /* p */
        start local 4 // java.util.concurrent.ConcurrentHashMap$Node p
        25: ifnonnull 19
        end local 4 // java.util.concurrent.ConcurrentHashMap$Node p
        26: .line 5565
            aload 0 /* this */
            aload 3 /* r */
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.result:Ljava/lang/Object;
        27: .line 5567
            aload 0 /* this */
            invokevirtual java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.firstComplete:()Ljava/util/concurrent/CountedCompleter;
            astore 4 /* c */
        start local 4 // java.util.concurrent.CountedCompleter c
        28: goto 41
        29: .line 5570
      StackMap locals: java.util.concurrent.CountedCompleter
      StackMap stack:
            aload 4 /* c */
            checkcast java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
            astore 5 /* t */
        start local 5 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask t
        30: .line 5571
            aload 5 /* t */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.rights:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
            astore 6 /* s */
        start local 6 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask s
        31: .line 5572
            goto 39
        32: .line 5574
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
      StackMap stack:
            aload 6 /* s */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.result:Ljava/lang/Object;
            dup
            astore 8 /* sr */
        start local 8 // java.lang.Object sr
        33: ifnull 38
        34: .line 5575
            aload 5 /* t */
            aload 5 /* t */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.result:Ljava/lang/Object;
            dup
            astore 7 /* tr */
        start local 7 // java.lang.Object tr
        35: ifnonnull 36
            aload 8 /* sr */
            goto 37
        36: .line 5576
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.function.Function java.util.function.BiFunction java.lang.Object java.util.concurrent.CountedCompleter java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.lang.Object java.lang.Object
      StackMap stack: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
            aload 2 /* reducer */
            aload 7 /* tr */
            aload 8 /* sr */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
        37: .line 5575
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.function.Function java.util.function.BiFunction java.lang.Object java.util.concurrent.CountedCompleter java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.lang.Object java.lang.Object
      StackMap stack: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.lang.Object
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.result:Ljava/lang/Object;
        end local 7 // java.lang.Object tr
        38: .line 5577
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.function.Function java.util.function.BiFunction java.lang.Object java.util.concurrent.CountedCompleter java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask top java.lang.Object
      StackMap stack:
            aload 5 /* t */
            aload 6 /* s */
            getfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.nextRight:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask.rights:Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask;
            astore 6 /* s */
        end local 8 // java.lang.Object sr
        39: .line 5572
      StackMap locals: java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.function.Function java.util.function.BiFunction java.lang.Object java.util.concurrent.CountedCompleter java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask
      StackMap stack:
            aload 6 /* s */
            ifnonnull 32
        end local 6 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask s
        end local 5 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask t
        40: .line 5567
            aload 4 /* c */
            invokevirtual java.util.concurrent.CountedCompleter.nextComplete:()Ljava/util/concurrent/CountedCompleter;
            astore 4 /* c */
      StackMap locals:
      StackMap stack:
        41: aload 4 /* c */
            ifnonnull 29
        end local 4 // java.util.concurrent.CountedCompleter c
        end local 3 // java.lang.Object r
        end local 2 // java.util.function.BiFunction reducer
        42: .line 5581
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.function.Function transformer
        end local 0 // java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   43     0         this  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
            1   43     1  transformer  Ljava/util/function/Function<-TK;+TU;>;
            3   42     2      reducer  Ljava/util/function/BiFunction<-TU;-TU;+TU;>;
            5   17     3            i  I
            6   12     4            f  I
           14   17     4            f  I
            6   12     5            h  I
           15   17     5            h  I
           18   42     3            r  TU;
           19   24     4            p  Ljava/util/concurrent/ConcurrentHashMap$Node<TK;TV;>;
           25   26     4            p  Ljava/util/concurrent/ConcurrentHashMap$Node<TK;TV;>;
           20   24     5            u  TU;
           28   42     4            c  Ljava/util/concurrent/CountedCompleter<*>;
           30   40     5            t  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
           31   40     6            s  Ljava/util/concurrent/ConcurrentHashMap$MapReduceKeysTask<TK;TV;TU;>;
           35   38     7           tr  TU;
           33   39     8           sr  TU;
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;U:Ljava/lang/Object;>Ljava/util/concurrent/ConcurrentHashMap$BulkTask<TK;TV;TU;>;
SourceFile: "ConcurrentHashMap.java"
NestHost: java.util.concurrent.ConcurrentHashMap
InnerClasses:
  abstract BulkTask = java.util.concurrent.ConcurrentHashMap$BulkTask of java.util.concurrent.ConcurrentHashMap
  final MapReduceKeysTask = java.util.concurrent.ConcurrentHashMap$MapReduceKeysTask of java.util.concurrent.ConcurrentHashMap
  Node = java.util.concurrent.ConcurrentHashMap$Node of java.util.concurrent.ConcurrentHashMap