final class io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber<T, U> extends java.util.concurrent.atomic.AtomicReference<org.reactivestreams.Subscription> implements io.reactivex.FlowableSubscriber<U>, io.reactivex.disposables.Disposable
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber
  super_class: java.util.concurrent.atomic.AtomicReference
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -4606175640614850599

  final long id;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber<T, U> parent;
    descriptor: Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
    flags: (0x0010) ACC_FINAL
    Signature: Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber<TT;TU;>;

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

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

  volatile boolean done;
    descriptor: Z
    flags: (0x0040) ACC_VOLATILE

  volatile io.reactivex.internal.fuseable.SimpleQueue<U> queue;
    descriptor: Lio/reactivex/internal/fuseable/SimpleQueue;
    flags: (0x0040) ACC_VOLATILE
    Signature: Lio/reactivex/internal/fuseable/SimpleQueue<TU;>;

  long produced;
    descriptor: J
    flags: (0x0000) 

  int fusionMode;
    descriptor: I
    flags: (0x0000) 

  void <init>(io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber<T, U>, );
    descriptor: (Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;J)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
        start local 1 // io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber parent
        start local 2 // long id
         0: .line 627
            aload 0 /* this */
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
         1: .line 628
            aload 0 /* this */
            lload 2 /* id */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.id:J
         2: .line 629
            aload 0 /* this */
            aload 1 /* parent */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
         3: .line 630
            aload 0 /* this */
            aload 1 /* parent */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.bufferSize:I
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.bufferSize:I
         4: .line 631
            aload 0 /* this */
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.bufferSize:I
            iconst_2
            ishr
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.limit:I
         5: .line 632
            return
        end local 2 // long id
        end local 1 // io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber parent
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
            0    6     1  parent  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber<TT;TU;>;
            0    6     2      id  J
    Signature: (Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber<TT;TU;>;J)V
    MethodParameters:
        Name  Flags
      parent  
      id      

  public void onSubscribe(org.reactivestreams.Subscription);
    descriptor: (Lorg/reactivestreams/Subscription;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
        start local 1 // org.reactivestreams.Subscription s
         0: .line 636
            aload 0 /* this */
            aload 1 /* s */
            invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.setOnce:(Ljava/util/concurrent/atomic/AtomicReference;Lorg/reactivestreams/Subscription;)Z
            ifeq 14
         1: .line 638
            aload 1 /* s */
            instanceof io.reactivex.internal.fuseable.QueueSubscription
            ifeq 13
         2: .line 640
            aload 1 /* s */
            checkcast io.reactivex.internal.fuseable.QueueSubscription
            astore 2 /* qs */
        start local 2 // io.reactivex.internal.fuseable.QueueSubscription qs
         3: .line 641
            aload 2 /* qs */
            bipush 7
            invokeinterface io.reactivex.internal.fuseable.QueueSubscription.requestFusion:(I)I
            istore 3 /* m */
        start local 3 // int m
         4: .line 642
            iload 3 /* m */
            iconst_1
            if_icmpne 10
         5: .line 643
            aload 0 /* this */
            iload 3 /* m */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.fusionMode:I
         6: .line 644
            aload 0 /* this */
            aload 2 /* qs */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.queue:Lio/reactivex/internal/fuseable/SimpleQueue;
         7: .line 645
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.done:Z
         8: .line 646
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.drain:()V
         9: .line 647
            return
        10: .line 649
      StackMap locals: io.reactivex.internal.fuseable.QueueSubscription int
      StackMap stack:
            iload 3 /* m */
            iconst_2
            if_icmpne 13
        11: .line 650
            aload 0 /* this */
            iload 3 /* m */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.fusionMode:I
        12: .line 651
            aload 0 /* this */
            aload 2 /* qs */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.queue:Lio/reactivex/internal/fuseable/SimpleQueue;
        end local 3 // int m
        end local 2 // io.reactivex.internal.fuseable.QueueSubscription qs
        13: .line 656
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.bufferSize:I
            i2l
            invokeinterface org.reactivestreams.Subscription.request:(J)V
        14: .line 658
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.reactivestreams.Subscription s
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
            0   15     1     s  Lorg/reactivestreams/Subscription;
            3   13     2    qs  Lio/reactivex/internal/fuseable/QueueSubscription<TU;>;
            4   13     3     m  I
    MethodParameters:
      Name  Flags
      s     

  public void onNext();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
        start local 1 // java.lang.Object t
         0: .line 662
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.fusionMode:I
            iconst_2
            if_icmpeq 3
         1: .line 663
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
            aload 1 /* t */
            aload 0 /* this */
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.tryEmit:(Ljava/lang/Object;Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber;)V
         2: .line 664
            goto 4
         3: .line 665
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.drain:()V
         4: .line 667
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object t
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
            0    5     1     t  TU;
    Signature: (TU;)V
    MethodParameters:
      Name  Flags
      t     

  public void onError(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
        start local 1 // java.lang.Throwable t
         0: .line 671
            aload 0 /* this */
            getstatic io.reactivex.internal.subscriptions.SubscriptionHelper.CANCELLED:Lio/reactivex/internal/subscriptions/SubscriptionHelper;
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.lazySet:(Ljava/lang/Object;)V
         1: .line 672
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
            aload 0 /* this */
            aload 1 /* t */
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.innerError:(Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber;Ljava/lang/Throwable;)V
         2: .line 673
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
            0    3     1     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  public void onComplete();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
         0: .line 677
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.done:Z
         1: .line 678
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.parent:Lio/reactivex/internal/operators/flowable/FlowableFlatMap$MergeSubscriber;
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber.drain:()V
         2: .line 679
            return
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;

  void requestMore(long);
    descriptor: (J)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
        start local 1 // long n
         0: .line 682
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.fusionMode:I
            iconst_1
            if_icmpeq 7
         1: .line 683
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.produced:J
            lload 1 /* n */
            ladd
            lstore 3 /* p */
        start local 3 // long p
         2: .line 684
            lload 3 /* p */
            aload 0 /* this */
            getfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.limit:I
            i2l
            lcmp
            iflt 6
         3: .line 685
            aload 0 /* this */
            lconst_0
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.produced:J
         4: .line 686
            aload 0 /* this */
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.get:()Ljava/lang/Object;
            checkcast org.reactivestreams.Subscription
            lload 3 /* p */
            invokeinterface org.reactivestreams.Subscription.request:(J)V
         5: .line 687
            goto 7
         6: .line 688
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            lload 3 /* p */
            putfield io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.produced:J
        end local 3 // long p
         7: .line 691
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long n
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
            0    8     1     n  J
            2    7     3     p  J
    MethodParameters:
      Name  Flags
      n     

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
         0: .line 695
            aload 0 /* this */
            invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.cancel:(Ljava/util/concurrent/atomic/AtomicReference;)Z
            pop
         1: .line 696
            return
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;

  public boolean isDisposed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
         0: .line 700
            aload 0 /* this */
            invokevirtual io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber.get:()Ljava/lang/Object;
            getstatic io.reactivex.internal.subscriptions.SubscriptionHelper.CANCELLED:Lio/reactivex/internal/subscriptions/SubscriptionHelper;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/reactivex/internal/operators/flowable/FlowableFlatMap$InnerSubscriber<TT;TU;>;
}
Signature: <T:Ljava/lang/Object;U:Ljava/lang/Object;>Ljava/util/concurrent/atomic/AtomicReference<Lorg/reactivestreams/Subscription;>;Lio/reactivex/FlowableSubscriber<TU;>;Lio/reactivex/disposables/Disposable;
SourceFile: "FlowableFlatMap.java"
NestHost: io.reactivex.internal.operators.flowable.FlowableFlatMap
InnerClasses:
  final InnerSubscriber = io.reactivex.internal.operators.flowable.FlowableFlatMap$InnerSubscriber of io.reactivex.internal.operators.flowable.FlowableFlatMap
  final MergeSubscriber = io.reactivex.internal.operators.flowable.FlowableFlatMap$MergeSubscriber of io.reactivex.internal.operators.flowable.FlowableFlatMap