final class io.reactivex.internal.operators.observable.ObservableZip$ZipObserver<T, R> implements io.reactivex.Observer<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: io.reactivex.internal.operators.observable.ObservableZip$ZipObserver
  super_class: java.lang.Object
{
  final io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator<T, R> parent;
    descriptor: Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;
    flags: (0x0010) ACC_FINAL
    Signature: Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator<TT;TR;>;

  final io.reactivex.internal.queue.SpscLinkedArrayQueue<T> queue;
    descriptor: Lio/reactivex/internal/queue/SpscLinkedArrayQueue;
    flags: (0x0010) ACC_FINAL
    Signature: Lio/reactivex/internal/queue/SpscLinkedArrayQueue<TT;>;

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

  java.lang.Throwable error;
    descriptor: Ljava/lang/Throwable;
    flags: (0x0000) 

  final java.util.concurrent.atomic.AtomicReference<io.reactivex.disposables.Disposable> upstream;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Lio/reactivex/disposables/Disposable;>;

  void <init>(io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator<T, R>, );
    descriptor: (Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
        start local 1 // io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator parent
        start local 2 // int bufferSize
         0: .line 268
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.upstream:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 269
            aload 0 /* this */
            aload 1 /* parent */
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.parent:Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;
         3: .line 270
            aload 0 /* this */
            new io.reactivex.internal.queue.SpscLinkedArrayQueue
            dup
            iload 2 /* bufferSize */
            invokespecial io.reactivex.internal.queue.SpscLinkedArrayQueue.<init>:(I)V
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.queue:Lio/reactivex/internal/queue/SpscLinkedArrayQueue;
         4: .line 271
            return
        end local 2 // int bufferSize
        end local 1 // io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator parent
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;
            0    5     1      parent  Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator<TT;TR;>;
            0    5     2  bufferSize  I
    Signature: (Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator<TT;TR;>;I)V
    MethodParameters:
            Name  Flags
      parent      
      bufferSize  

  public void onSubscribe(io.reactivex.disposables.Disposable);
    descriptor: (Lio/reactivex/disposables/Disposable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
        start local 1 // io.reactivex.disposables.Disposable d
         0: .line 275
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.upstream:Ljava/util/concurrent/atomic/AtomicReference;
            aload 1 /* d */
            invokestatic io.reactivex.internal.disposables.DisposableHelper.setOnce:(Ljava/util/concurrent/atomic/AtomicReference;Lio/reactivex/disposables/Disposable;)Z
            pop
         1: .line 276
            return
        end local 1 // io.reactivex.disposables.Disposable d
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;
            0    2     1     d  Lio/reactivex/disposables/Disposable;
    MethodParameters:
      Name  Flags
      d     

  public void onNext();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
        start local 1 // java.lang.Object t
         0: .line 280
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.queue:Lio/reactivex/internal/queue/SpscLinkedArrayQueue;
            aload 1 /* t */
            invokevirtual io.reactivex.internal.queue.SpscLinkedArrayQueue.offer:(Ljava/lang/Object;)Z
            pop
         1: .line 281
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.parent:Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;
            invokevirtual io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator.drain:()V
         2: .line 282
            return
        end local 1 // java.lang.Object t
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;
            0    3     1     t  TT;
    Signature: (TT;)V
    MethodParameters:
      Name  Flags
      t     

  public void onError(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
        start local 1 // java.lang.Throwable t
         0: .line 286
            aload 0 /* this */
            aload 1 /* t */
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.error:Ljava/lang/Throwable;
         1: .line 287
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.done:Z
         2: .line 288
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.parent:Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;
            invokevirtual io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator.drain:()V
         3: .line 289
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;
            0    4     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.observable.ObservableZip$ZipObserver this
         0: .line 293
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.done:Z
         1: .line 294
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.parent:Lio/reactivex/internal/operators/observable/ObservableZip$ZipCoordinator;
            invokevirtual io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator.drain:()V
         2: .line 295
            return
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
         0: .line 298
            aload 0 /* this */
            getfield io.reactivex.internal.operators.observable.ObservableZip$ZipObserver.upstream:Ljava/util/concurrent/atomic/AtomicReference;
            invokestatic io.reactivex.internal.disposables.DisposableHelper.dispose:(Ljava/util/concurrent/atomic/AtomicReference;)Z
            pop
         1: .line 299
            return
        end local 0 // io.reactivex.internal.operators.observable.ObservableZip$ZipObserver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/reactivex/internal/operators/observable/ObservableZip$ZipObserver<TT;TR;>;
}
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>Ljava/lang/Object;Lio/reactivex/Observer<TT;>;
SourceFile: "ObservableZip.java"
NestHost: io.reactivex.internal.operators.observable.ObservableZip
InnerClasses:
  final ZipCoordinator = io.reactivex.internal.operators.observable.ObservableZip$ZipCoordinator of io.reactivex.internal.operators.observable.ObservableZip
  final ZipObserver = io.reactivex.internal.operators.observable.ObservableZip$ZipObserver of io.reactivex.internal.operators.observable.ObservableZip