public class io.reactivex.internal.subscriptions.SubscriptionArbiter extends java.util.concurrent.atomic.AtomicInteger implements org.reactivestreams.Subscription
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.reactivex.internal.subscriptions.SubscriptionArbiter
  super_class: java.util.concurrent.atomic.AtomicInteger
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2189523197179400958

  org.reactivestreams.Subscription actual;
    descriptor: Lorg/reactivestreams/Subscription;
    flags: (0x0000) 

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

  final java.util.concurrent.atomic.AtomicReference<org.reactivestreams.Subscription> missedSubscription;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/reactivestreams/Subscription;>;

  final java.util.concurrent.atomic.AtomicLong missedRequested;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicLong missedProduced;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

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

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

  protected boolean unbounded;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
        start local 1 // boolean cancelOnReplace
         0: .line 64
            aload 0 /* this */
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
         1: .line 65
            aload 0 /* this */
            iload 1 /* cancelOnReplace */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelOnReplace:Z
         2: .line 66
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedSubscription:Ljava/util/concurrent/atomic/AtomicReference;
         3: .line 67
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedRequested:Ljava/util/concurrent/atomic/AtomicLong;
         4: .line 68
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedProduced:Ljava/util/concurrent/atomic/AtomicLong;
         5: .line 69
            return
        end local 1 // boolean cancelOnReplace
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
            0    6     1  cancelOnReplace  Z
    MethodParameters:
                 Name  Flags
      cancelOnReplace  

  public final void setSubscription(org.reactivestreams.Subscription);
    descriptor: (Lorg/reactivestreams/Subscription;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
        start local 1 // org.reactivestreams.Subscription s
         0: .line 76
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelled:Z
            ifeq 3
         1: .line 77
            aload 1 /* s */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
         2: .line 78
            return
         3: .line 81
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            ldc "s is null"
            invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         4: .line 83
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.get:()I
            ifne 15
            aload 0 /* this */
            iconst_0
            iconst_1
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.compareAndSet:(II)Z
            ifeq 15
         5: .line 84
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
            astore 2 /* a */
        start local 2 // org.reactivestreams.Subscription a
         6: .line 86
            aload 2 /* a */
            ifnull 8
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelOnReplace:Z
            ifeq 8
         7: .line 87
            aload 2 /* a */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
         8: .line 90
      StackMap locals: org.reactivestreams.Subscription
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
         9: .line 92
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
            lstore 3 /* r */
        start local 3 // long r
        10: .line 94
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.decrementAndGet:()I
            ifeq 12
        11: .line 95
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drainLoop:()V
        12: .line 98
      StackMap locals: long
      StackMap stack:
            lload 3 /* r */
            lconst_0
            lcmp
            ifeq 14
        13: .line 99
            aload 1 /* s */
            lload 3 /* r */
            invokeinterface org.reactivestreams.Subscription.request:(J)V
        14: .line 102
      StackMap locals:
      StackMap stack:
            return
        end local 3 // long r
        end local 2 // org.reactivestreams.Subscription a
        15: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedSubscription:Ljava/util/concurrent/atomic/AtomicReference;
            aload 1 /* s */
            invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.reactivestreams.Subscription
            astore 2 /* a */
        start local 2 // org.reactivestreams.Subscription a
        16: .line 106
            aload 2 /* a */
            ifnull 18
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelOnReplace:Z
            ifeq 18
        17: .line 107
            aload 2 /* a */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
        18: .line 109
      StackMap locals: org.reactivestreams.Subscription
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drain:()V
        19: .line 110
            return
        end local 2 // org.reactivestreams.Subscription a
        end local 1 // org.reactivestreams.Subscription s
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
            0   20     1     s  Lorg/reactivestreams/Subscription;
            6   15     2     a  Lorg/reactivestreams/Subscription;
           10   15     3     r  J
           16   20     2     a  Lorg/reactivestreams/Subscription;
    MethodParameters:
      Name  Flags
      s     

  public final void request(long);
    descriptor: (J)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
        start local 1 // long n
         0: .line 114
            lload 1 /* n */
            invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.validate:(J)Z
            ifeq 18
         1: .line 115
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.unbounded:Z
            ifeq 3
         2: .line 116
            return
         3: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.get:()I
            ifne 16
            aload 0 /* this */
            iconst_0
            iconst_1
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.compareAndSet:(II)Z
            ifeq 16
         4: .line 119
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
            lstore 3 /* r */
        start local 3 // long r
         5: .line 121
            lload 3 /* r */
            ldc 9223372036854775807
            lcmp
            ifeq 10
         6: .line 122
            lload 3 /* r */
            lload 1 /* n */
            invokestatic io.reactivex.internal.util.BackpressureHelper.addCap:(JJ)J
            lstore 3 /* r */
         7: .line 123
            aload 0 /* this */
            lload 3 /* r */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
         8: .line 124
            lload 3 /* r */
            ldc 9223372036854775807
            lcmp
            ifne 10
         9: .line 125
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.unbounded:Z
        10: .line 128
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
            astore 5 /* a */
        start local 5 // org.reactivestreams.Subscription a
        11: .line 130
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.decrementAndGet:()I
            ifeq 13
        12: .line 131
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drainLoop:()V
        13: .line 134
      StackMap locals: org.reactivestreams.Subscription
      StackMap stack:
            aload 5 /* a */
            ifnull 15
        14: .line 135
            aload 5 /* a */
            lload 1 /* n */
            invokeinterface org.reactivestreams.Subscription.request:(J)V
        15: .line 138
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.reactivestreams.Subscription a
        end local 3 // long r
        16: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedRequested:Ljava/util/concurrent/atomic/AtomicLong;
            lload 1 /* n */
            invokestatic io.reactivex.internal.util.BackpressureHelper.add:(Ljava/util/concurrent/atomic/AtomicLong;J)J
            pop2
        17: .line 143
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drain:()V
        18: .line 145
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long n
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
            0   19     1     n  J
            5   16     3     r  J
           11   16     5     a  Lorg/reactivestreams/Subscription;
    MethodParameters:
      Name  Flags
      n     

  public final void produced(long);
    descriptor: (J)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
        start local 1 // long n
         0: .line 148
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.unbounded:Z
            ifeq 2
         1: .line 149
            return
         2: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.get:()I
            ifne 14
            aload 0 /* this */
            iconst_0
            iconst_1
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.compareAndSet:(II)Z
            ifeq 14
         3: .line 152
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
            lstore 3 /* r */
        start local 3 // long r
         4: .line 154
            lload 3 /* r */
            ldc 9223372036854775807
            lcmp
            ifeq 10
         5: .line 155
            lload 3 /* r */
            lload 1 /* n */
            lsub
            lstore 5 /* u */
        start local 5 // long u
         6: .line 156
            lload 5 /* u */
            lconst_0
            lcmp
            ifge 9
         7: .line 157
            lload 5 /* u */
            invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.reportMoreProduced:(J)V
         8: .line 158
            lconst_0
            lstore 5 /* u */
         9: .line 160
      StackMap locals: long long
      StackMap stack:
            aload 0 /* this */
            lload 5 /* u */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
        end local 5 // long u
        10: .line 163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.decrementAndGet:()I
            ifne 12
        11: .line 164
            return
        12: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drainLoop:()V
        13: .line 169
            return
        end local 3 // long r
        14: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedProduced:Ljava/util/concurrent/atomic/AtomicLong;
            lload 1 /* n */
            invokestatic io.reactivex.internal.util.BackpressureHelper.add:(Ljava/util/concurrent/atomic/AtomicLong;J)J
            pop2
        15: .line 174
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drain:()V
        16: .line 175
            return
        end local 1 // long n
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
            0   17     1     n  J
            4   14     3     r  J
            6   10     5     u  J
    MethodParameters:
      Name  Flags
      n     

  public void cancel();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
         0: .line 179
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelled:Z
            ifne 3
         1: .line 180
            aload 0 /* this */
            iconst_1
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelled:Z
         2: .line 182
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drain:()V
         3: .line 184
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;

  final void drain();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
         0: .line 187
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.getAndIncrement:()I
            ifeq 2
         1: .line 188
            return
         2: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.drainLoop:()V
         3: .line 191
            return
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;

  final void drainLoop();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=17, args_size=1
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
         0: .line 194
            iconst_1
            istore 1 /* missed */
        start local 1 // int missed
         1: .line 196
            lconst_0
            lstore 2 /* requestAmount */
        start local 2 // long requestAmount
         2: .line 197
            aconst_null
            astore 4 /* requestTarget */
        start local 4 // org.reactivestreams.Subscription requestTarget
         3: .line 201
      StackMap locals: int long org.reactivestreams.Subscription
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedSubscription:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast org.reactivestreams.Subscription
            astore 5 /* ms */
        start local 5 // org.reactivestreams.Subscription ms
         4: .line 203
            aload 5 /* ms */
            ifnull 6
         5: .line 204
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedSubscription:Ljava/util/concurrent/atomic/AtomicReference;
            aconst_null
            invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.reactivestreams.Subscription
            astore 5 /* ms */
         6: .line 207
      StackMap locals: org.reactivestreams.Subscription
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedRequested:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lstore 6 /* mr */
        start local 6 // long mr
         7: .line 208
            lload 6 /* mr */
            lconst_0
            lcmp
            ifeq 9
         8: .line 209
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedRequested:Ljava/util/concurrent/atomic/AtomicLong;
            lconst_0
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndSet:(J)J
            lstore 6 /* mr */
         9: .line 212
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedProduced:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lstore 8 /* mp */
        start local 8 // long mp
        10: .line 213
            lload 8 /* mp */
            lconst_0
            lcmp
            ifeq 12
        11: .line 214
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.missedProduced:Ljava/util/concurrent/atomic/AtomicLong;
            lconst_0
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndSet:(J)J
            lstore 8 /* mp */
        12: .line 217
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
            astore 10 /* a */
        start local 10 // org.reactivestreams.Subscription a
        13: .line 219
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelled:Z
            ifeq 20
        14: .line 220
            aload 10 /* a */
            ifnull 17
        15: .line 221
            aload 10 /* a */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
        16: .line 222
            aload 0 /* this */
            aconst_null
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
        17: .line 224
      StackMap locals: org.reactivestreams.Subscription
      StackMap stack:
            aload 5 /* ms */
            ifnull 43
        18: .line 225
            aload 5 /* ms */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
        19: .line 227
            goto 43
        20: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
            lstore 11 /* r */
        start local 11 // long r
        21: .line 229
            lload 11 /* r */
            ldc 9223372036854775807
            lcmp
            ifeq 32
        22: .line 230
            lload 11 /* r */
            lload 6 /* mr */
            invokestatic io.reactivex.internal.util.BackpressureHelper.addCap:(JJ)J
            lstore 13 /* u */
        start local 13 // long u
        23: .line 232
            lload 13 /* u */
            ldc 9223372036854775807
            lcmp
            ifeq 30
        24: .line 233
            lload 13 /* u */
            lload 8 /* mp */
            lsub
            lstore 15 /* v */
        start local 15 // long v
        25: .line 234
            lload 15 /* v */
            lconst_0
            lcmp
            ifge 28
        26: .line 235
            lload 15 /* v */
            invokestatic io.reactivex.internal.subscriptions.SubscriptionHelper.reportMoreProduced:(J)V
        27: .line 236
            lconst_0
            lstore 15 /* v */
        28: .line 238
      StackMap locals: long long long
      StackMap stack:
            lload 15 /* v */
            lstore 11 /* r */
        end local 15 // long v
        29: .line 239
            goto 31
        30: .line 240
      StackMap locals:
      StackMap stack:
            lload 13 /* u */
            lstore 11 /* r */
        31: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 11 /* r */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.requested:J
        end local 13 // long u
        32: .line 245
      StackMap locals:
      StackMap stack:
            aload 5 /* ms */
            ifnull 40
        33: .line 246
            aload 10 /* a */
            ifnull 35
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelOnReplace:Z
            ifeq 35
        34: .line 247
            aload 10 /* a */
            invokeinterface org.reactivestreams.Subscription.cancel:()V
        35: .line 249
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* ms */
            putfield io.reactivex.internal.subscriptions.SubscriptionArbiter.actual:Lorg/reactivestreams/Subscription;
        36: .line 250
            lload 11 /* r */
            lconst_0
            lcmp
            ifeq 43
        37: .line 251
            lload 2 /* requestAmount */
            lload 11 /* r */
            invokestatic io.reactivex.internal.util.BackpressureHelper.addCap:(JJ)J
            lstore 2 /* requestAmount */
        38: .line 252
            aload 5 /* ms */
            astore 4 /* requestTarget */
        39: .line 254
            goto 43
      StackMap locals:
      StackMap stack:
        40: aload 10 /* a */
            ifnull 43
            lload 6 /* mr */
            lconst_0
            lcmp
            ifeq 43
        41: .line 255
            lload 2 /* requestAmount */
            lload 6 /* mr */
            invokestatic io.reactivex.internal.util.BackpressureHelper.addCap:(JJ)J
            lstore 2 /* requestAmount */
        42: .line 256
            aload 10 /* a */
            astore 4 /* requestTarget */
        end local 11 // long r
        43: .line 260
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* missed */
            ineg
            invokevirtual io.reactivex.internal.subscriptions.SubscriptionArbiter.addAndGet:(I)I
            istore 1 /* missed */
        44: .line 261
            iload 1 /* missed */
            ifne 3
        45: .line 262
            lload 2 /* requestAmount */
            lconst_0
            lcmp
            ifeq 47
        46: .line 263
            aload 4 /* requestTarget */
            lload 2 /* requestAmount */
            invokeinterface org.reactivestreams.Subscription.request:(J)V
        47: .line 265
      StackMap locals:
      StackMap stack:
            return
        end local 10 // org.reactivestreams.Subscription a
        end local 8 // long mp
        end local 6 // long mr
        end local 5 // org.reactivestreams.Subscription ms
        end local 4 // org.reactivestreams.Subscription requestTarget
        end local 2 // long requestAmount
        end local 1 // int missed
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   48     0           this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
            1   48     1         missed  I
            2   48     2  requestAmount  J
            3   48     4  requestTarget  Lorg/reactivestreams/Subscription;
            4   48     5             ms  Lorg/reactivestreams/Subscription;
            7   48     6             mr  J
           10   48     8             mp  J
           13   48    10              a  Lorg/reactivestreams/Subscription;
           21   43    11              r  J
           23   32    13              u  J
           25   29    15              v  J

  public final boolean isUnbounded();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
         0: .line 275
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.unbounded:Z
            ireturn
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;

  public final boolean isCancelled();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
         0: .line 283
            aload 0 /* this */
            getfield io.reactivex.internal.subscriptions.SubscriptionArbiter.cancelled:Z
            ireturn
        end local 0 // io.reactivex.internal.subscriptions.SubscriptionArbiter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/reactivex/internal/subscriptions/SubscriptionArbiter;
}
SourceFile: "SubscriptionArbiter.java"