final class reactor.core.publisher.ParallelFlatMap<T, R> extends reactor.core.publisher.ParallelFlux<R> implements reactor.core.Scannable
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: reactor.core.publisher.ParallelFlatMap
  super_class: reactor.core.publisher.ParallelFlux
{
  final reactor.core.publisher.ParallelFlux<T> source;
    descriptor: Lreactor/core/publisher/ParallelFlux;
    flags: (0x0010) ACC_FINAL
    Signature: Lreactor/core/publisher/ParallelFlux<TT;>;

  final java.util.function.Function<? super T, ? extends org.reactivestreams.Publisher<? extends R>> mapper;
    descriptor: Ljava/util/function/Function;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Function<-TT;+Lorg/reactivestreams/Publisher<+TR;>;>;

  final boolean delayError;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final int maxConcurrency;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final java.util.function.Supplier<? extends java.util.Queue<R>> mainQueueSupplier;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;

  final int prefetch;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final java.util.function.Supplier<? extends java.util.Queue<R>> innerQueueSupplier;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;

  void <init>(reactor.core.publisher.ParallelFlux<T>, java.util.function.Function<? super T, ? extends org.reactivestreams.Publisher<? extends R>>, boolean, int, java.util.function.Supplier<? extends java.util.Queue<R>>, int, java.util.function.Supplier<? extends java.util.Queue<R>>);
    descriptor: (Lreactor/core/publisher/ParallelFlux;Ljava/util/function/Function;ZILjava/util/function/Supplier;ILjava/util/function/Supplier;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=8, args_size=8
        start local 0 // reactor.core.publisher.ParallelFlatMap this
        start local 1 // reactor.core.publisher.ParallelFlux source
        start local 2 // java.util.function.Function mapper
        start local 3 // boolean delayError
        start local 4 // int maxConcurrency
        start local 5 // java.util.function.Supplier mainQueueSupplier
        start local 6 // int prefetch
        start local 7 // java.util.function.Supplier innerQueueSupplier
         0: .line 49
            aload 0 /* this */
            invokespecial reactor.core.publisher.ParallelFlux.<init>:()V
         1: .line 55
            aload 0 /* this */
            aload 1 /* source */
            putfield reactor.core.publisher.ParallelFlatMap.source:Lreactor/core/publisher/ParallelFlux;
         2: .line 56
            aload 0 /* this */
            aload 2 /* mapper */
            putfield reactor.core.publisher.ParallelFlatMap.mapper:Ljava/util/function/Function;
         3: .line 57
            aload 0 /* this */
            iload 3 /* delayError */
            putfield reactor.core.publisher.ParallelFlatMap.delayError:Z
         4: .line 58
            aload 0 /* this */
            iload 4 /* maxConcurrency */
            putfield reactor.core.publisher.ParallelFlatMap.maxConcurrency:I
         5: .line 59
            aload 0 /* this */
            aload 5 /* mainQueueSupplier */
            putfield reactor.core.publisher.ParallelFlatMap.mainQueueSupplier:Ljava/util/function/Supplier;
         6: .line 60
            aload 0 /* this */
            iload 6 /* prefetch */
            putfield reactor.core.publisher.ParallelFlatMap.prefetch:I
         7: .line 61
            aload 0 /* this */
            aload 7 /* innerQueueSupplier */
            putfield reactor.core.publisher.ParallelFlatMap.innerQueueSupplier:Ljava/util/function/Supplier;
         8: .line 62
            return
        end local 7 // java.util.function.Supplier innerQueueSupplier
        end local 6 // int prefetch
        end local 5 // java.util.function.Supplier mainQueueSupplier
        end local 4 // int maxConcurrency
        end local 3 // boolean delayError
        end local 2 // java.util.function.Function mapper
        end local 1 // reactor.core.publisher.ParallelFlux source
        end local 0 // reactor.core.publisher.ParallelFlatMap this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    9     0                this  Lreactor/core/publisher/ParallelFlatMap<TT;TR;>;
            0    9     1              source  Lreactor/core/publisher/ParallelFlux<TT;>;
            0    9     2              mapper  Ljava/util/function/Function<-TT;+Lorg/reactivestreams/Publisher<+TR;>;>;
            0    9     3          delayError  Z
            0    9     4      maxConcurrency  I
            0    9     5   mainQueueSupplier  Ljava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;
            0    9     6            prefetch  I
            0    9     7  innerQueueSupplier  Ljava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;
    Signature: (Lreactor/core/publisher/ParallelFlux<TT;>;Ljava/util/function/Function<-TT;+Lorg/reactivestreams/Publisher<+TR;>;>;ZILjava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;ILjava/util/function/Supplier<+Ljava/util/Queue<TR;>;>;)V
    MethodParameters:
                    Name  Flags
      source              
      mapper              
      delayError          
      maxConcurrency      
      mainQueueSupplier   
      prefetch            
      innerQueueSupplier  

  public java.lang.Object scanUnsafe(reactor.core.Scannable$Attr);
    descriptor: (Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // reactor.core.publisher.ParallelFlatMap this
        start local 1 // reactor.core.Scannable$Attr key
         0: .line 67
            aload 1 /* key */
            getstatic reactor.core.Scannable$Attr.PARENT:Lreactor/core/Scannable$Attr;
            if_acmpne 1
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.source:Lreactor/core/publisher/ParallelFlux;
            areturn
         1: .line 68
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            getstatic reactor.core.Scannable$Attr.PREFETCH:Lreactor/core/Scannable$Attr;
            if_acmpne 2
            aload 0 /* this */
            invokevirtual reactor.core.publisher.ParallelFlatMap.getPrefetch:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
         2: .line 69
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            getstatic reactor.core.Scannable$Attr.DELAY_ERROR:Lreactor/core/Scannable$Attr;
            if_acmpne 3
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.delayError:Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
         3: .line 70
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            getstatic reactor.core.Scannable$Attr.RUN_STYLE:Lreactor/core/Scannable$Attr;
            if_acmpne 4
            getstatic reactor.core.Scannable$Attr$RunStyle.SYNC:Lreactor/core/Scannable$Attr$RunStyle;
            areturn
         4: .line 72
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // reactor.core.Scannable$Attr key
        end local 0 // reactor.core.publisher.ParallelFlatMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lreactor/core/publisher/ParallelFlatMap<TT;TR;>;
            0    5     1   key  Lreactor/core/Scannable$Attr;
    RuntimeVisibleAnnotations: 
      reactor.util.annotation.Nullable()
    MethodParameters:
      Name  Flags
      key   

  public int getPrefetch();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // reactor.core.publisher.ParallelFlatMap this
         0: .line 77
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.prefetch:I
            ireturn
        end local 0 // reactor.core.publisher.ParallelFlatMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/core/publisher/ParallelFlatMap<TT;TR;>;

  public int parallelism();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // reactor.core.publisher.ParallelFlatMap this
         0: .line 82
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.source:Lreactor/core/publisher/ParallelFlux;
            invokevirtual reactor.core.publisher.ParallelFlux.parallelism:()I
            ireturn
        end local 0 // reactor.core.publisher.ParallelFlatMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/core/publisher/ParallelFlatMap<TT;TR;>;

  public void subscribe(reactor.core.CoreSubscriber<? super R>[]);
    descriptor: ([Lreactor/core/CoreSubscriber;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=5, args_size=2
        start local 0 // reactor.core.publisher.ParallelFlatMap this
        start local 1 // reactor.core.CoreSubscriber[] subscribers
         0: .line 87
            aload 0 /* this */
            aload 1 /* subscribers */
            invokevirtual reactor.core.publisher.ParallelFlatMap.validate:([Lorg/reactivestreams/Subscriber;)Z
            ifne 2
         1: .line 88
            return
         2: .line 91
      StackMap locals:
      StackMap stack:
            aload 1 /* subscribers */
            arraylength
            istore 2 /* n */
        start local 2 // int n
         3: .line 94
            iload 2 /* n */
            anewarray reactor.core.CoreSubscriber
            astore 3 /* parents */
        start local 3 // reactor.core.CoreSubscriber[] parents
         4: .line 96
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 15
         6: .line 97
      StackMap locals: int reactor.core.CoreSubscriber[] int
      StackMap stack:
            aload 3 /* parents */
            iload 4 /* i */
            new reactor.core.publisher.FluxFlatMap$FlatMapMain
            dup
            aload 1 /* subscribers */
            iload 4 /* i */
            aaload
         7: .line 98
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.mapper:Ljava/util/function/Function;
         8: .line 99
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.delayError:Z
         9: .line 100
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.maxConcurrency:I
        10: .line 101
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.mainQueueSupplier:Ljava/util/function/Supplier;
        11: .line 102
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.prefetch:I
        12: .line 103
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.innerQueueSupplier:Ljava/util/function/Supplier;
            invokespecial reactor.core.publisher.FluxFlatMap$FlatMapMain.<init>:(Lreactor/core/CoreSubscriber;Ljava/util/function/Function;ZILjava/util/function/Supplier;ILjava/util/function/Supplier;)V
        13: .line 97
            aastore
        14: .line 96
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            iload 2 /* n */
            if_icmplt 6
        end local 4 // int i
        16: .line 106
            aload 0 /* this */
            getfield reactor.core.publisher.ParallelFlatMap.source:Lreactor/core/publisher/ParallelFlux;
            aload 3 /* parents */
            invokevirtual reactor.core.publisher.ParallelFlux.subscribe:([Lreactor/core/CoreSubscriber;)V
        17: .line 107
            return
        end local 3 // reactor.core.CoreSubscriber[] parents
        end local 2 // int n
        end local 1 // reactor.core.CoreSubscriber[] subscribers
        end local 0 // reactor.core.publisher.ParallelFlatMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0         this  Lreactor/core/publisher/ParallelFlatMap<TT;TR;>;
            0   18     1  subscribers  [Lreactor/core/CoreSubscriber;
            3   18     2            n  I
            4   18     3      parents  [Lreactor/core/CoreSubscriber;
            5   16     4            i  I
    Signature: ([Lreactor/core/CoreSubscriber<-TR;>;)V
    MethodParameters:
             Name  Flags
      subscribers  
}
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>Lreactor/core/publisher/ParallelFlux<TR;>;Lreactor/core/Scannable;
SourceFile: "ParallelFlatMap.java"
InnerClasses:
  public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable
  public final RunStyle = reactor.core.Scannable$Attr$RunStyle of reactor.core.Scannable$Attr
  final FlatMapMain = reactor.core.publisher.FluxFlatMap$FlatMapMain of reactor.core.publisher.FluxFlatMap