final class java.util.concurrent.SubmissionPublisher$BufferedSubscription<T> implements java.util.concurrent.Flow$Subscription, java.util.concurrent.ForkJoinPool$ManagedBlocker
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: java.util.concurrent.SubmissionPublisher$BufferedSubscription
  super_class: java.lang.Object
{
  long timeout;
    descriptor: J
    flags: (0x0000) 

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

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

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

  volatile int ctl;
    descriptor: I
    flags: (0x0040) ACC_VOLATILE

  java.lang.Object[] array;
    descriptor: [Ljava/lang/Object;
    flags: (0x0000) 

  final java.util.concurrent.Flow$Subscriber<? super T> subscriber;
    descriptor: Ljava/util/concurrent/Flow$Subscriber;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/Flow$Subscriber<-TT;>;

  final java.util.function.BiConsumer<? super java.util.concurrent.Flow$Subscriber<? super T>, ? super java.lang.Throwable> onNextHandler;
    descriptor: Ljava/util/function/BiConsumer;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/BiConsumer<-Ljava/util/concurrent/Flow$Subscriber<-TT;>;-Ljava/lang/Throwable;>;

  java.util.concurrent.Executor executor;
    descriptor: Ljava/util/concurrent/Executor;
    flags: (0x0000) 

  java.lang.Thread waiter;
    descriptor: Ljava/lang/Thread;
    flags: (0x0000) 

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

  java.util.concurrent.SubmissionPublisher$BufferedSubscription<T> next;
    descriptor: Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;
    flags: (0x0000) 
    Signature: Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  java.util.concurrent.SubmissionPublisher$BufferedSubscription<T> nextRetry;
    descriptor: Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;
    flags: (0x0000) 
    Signature: Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  volatile long demand;
    descriptor: J
    flags: (0x0040) ACC_VOLATILE
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.Contended(value = "c")

  volatile int waiting;
    descriptor: I
    flags: (0x0040) ACC_VOLATILE
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.Contended(value = "c")

  static final int CLOSED;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  static final int ACTIVE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  static final int REQS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  static final int ERROR;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  static final int COMPLETE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  static final int RUN;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  static final int OPEN;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  static final long INTERRUPTED;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  static final java.lang.invoke.VarHandle CTL;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.VarHandle DEMAND;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.invoke.VarHandle QA;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 1462
            invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
            astore 0 /* l */
        start local 0 // java.lang.invoke.MethodHandles$Lookup l
         1: .line 1463
            aload 0 /* l */
            ldc Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;
            ldc "ctl"
         2: .line 1464
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
         3: .line 1463
            invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
            putstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.CTL:Ljava/lang/invoke/VarHandle;
         4: .line 1465
            aload 0 /* l */
            ldc Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;
            ldc "demand"
         5: .line 1466
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
         6: .line 1465
            invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
            putstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.DEMAND:Ljava/lang/invoke/VarHandle;
         7: .line 1467
            ldc [Ljava/lang/Object;
            invokestatic java.lang.invoke.MethodHandles.arrayElementVarHandle:(Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
            putstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
        end local 0 // java.lang.invoke.MethodHandles$Lookup l
         8: .line 1468
            goto 11
      StackMap locals:
      StackMap stack: java.lang.ReflectiveOperationException
         9: astore 0 /* e */
        start local 0 // java.lang.ReflectiveOperationException e
        10: .line 1469
            new java.lang.ExceptionInInitializerError
            dup
            aload 0 /* e */
            invokespecial java.lang.ExceptionInInitializerError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.ReflectiveOperationException e
        11: .line 1475
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    8     0     l  Ljava/lang/invoke/MethodHandles$Lookup;
           10   11     0     e  Ljava/lang/ReflectiveOperationException;
      Exception table:
        from    to  target  type
           0     8       9  Class java.lang.ReflectiveOperationException

  void <init>(java.util.concurrent.Flow$Subscriber<? super T>, java.util.concurrent.Executor, java.util.function.BiConsumer<? super java.util.concurrent.Flow$Subscriber<? super T>, ? super java.lang.Throwable>, [], );
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;Ljava/util/concurrent/Executor;Ljava/util/function/BiConsumer;[Ljava/lang/Object;I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber subscriber
        start local 2 // java.util.concurrent.Executor executor
        start local 3 // java.util.function.BiConsumer onNextHandler
        start local 4 // java.lang.Object[] array
        start local 5 // int maxBufferCapacity
         0: .line 1036
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1042
            aload 0 /* this */
            aload 1 /* subscriber */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.subscriber:Ljava/util/concurrent/Flow$Subscriber;
         2: .line 1043
            aload 0 /* this */
            aload 2 /* executor */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.executor:Ljava/util/concurrent/Executor;
         3: .line 1044
            aload 0 /* this */
            aload 3 /* onNextHandler */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.onNextHandler:Ljava/util/function/BiConsumer;
         4: .line 1045
            aload 0 /* this */
            aload 4 /* array */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
         5: .line 1046
            aload 0 /* this */
            iload 5 /* maxBufferCapacity */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.maxCapacity:I
         6: .line 1047
            return
        end local 5 // int maxBufferCapacity
        end local 4 // java.lang.Object[] array
        end local 3 // java.util.function.BiConsumer onNextHandler
        end local 2 // java.util.concurrent.Executor executor
        end local 1 // java.util.concurrent.Flow$Subscriber subscriber
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    7     1         subscriber  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0    7     2           executor  Ljava/util/concurrent/Executor;
            0    7     3      onNextHandler  Ljava/util/function/BiConsumer<-Ljava/util/concurrent/Flow$Subscriber<-TT;>;-Ljava/lang/Throwable;>;
            0    7     4              array  [Ljava/lang/Object;
            0    7     5  maxBufferCapacity  I
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;Ljava/util/concurrent/Executor;Ljava/util/function/BiConsumer<-Ljava/util/concurrent/Flow$Subscriber<-TT;>;-Ljava/lang/Throwable;>;[Ljava/lang/Object;I)V
    MethodParameters:
                   Name  Flags
      subscriber         
      executor           
      onNextHandler      
      array              
      maxBufferCapacity  

  final boolean weakCasCtl(int, int);
    descriptor: (II)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // int cmp
        start local 2 // int val
         0: .line 1052
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.CTL:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            iload 1 /* cmp */
            iload 2 /* val */
            invokevirtual java.lang.invoke.VarHandle.weakCompareAndSet:(Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;II)Z
            ireturn
        end local 2 // int val
        end local 1 // int cmp
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    1     1   cmp  I
            0    1     2   val  I
    MethodParameters:
      Name  Flags
      cmp   
      val   

  final int getAndBitwiseOrCtl(int);
    descriptor: (I)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // int bits
         0: .line 1056
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.CTL:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            iload 1 /* bits */
            invokevirtual java.lang.invoke.VarHandle.getAndBitwiseOr:(Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;I)I
            ireturn
        end local 1 // int bits
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    1     1  bits  I
    MethodParameters:
      Name  Flags
      bits  

  final long subtractDemand(int);
    descriptor: (I)J
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // int k
         0: .line 1060
            iload 1 /* k */
            ineg
            i2l
            lstore 2 /* n */
        start local 2 // long n
         1: .line 1061
            lload 2 /* n */
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.DEMAND:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            lload 2 /* n */
            invokevirtual java.lang.invoke.VarHandle.getAndAdd:(Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;J)J
            ladd
            lreturn
        end local 2 // long n
        end local 1 // int k
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    2     1     k  I
            1    2     2     n  J
    MethodParameters:
      Name  Flags
      k     

  final boolean casDemand(long, long);
    descriptor: (JJ)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // long cmp
        start local 3 // long val
         0: .line 1065
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.DEMAND:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            lload 1 /* cmp */
            lload 3 /* val */
            invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;JJ)Z
            ireturn
        end local 3 // long val
        end local 1 // long cmp
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    1     1   cmp  J
            0    1     3   val  J
    MethodParameters:
      Name  Flags
      cmp   
      val   

  final boolean isClosed();
    descriptor: ()Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1074
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            iconst_1
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  final int estimateLag();
    descriptor: ()I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1082
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            istore 1 /* c */
        start local 1 // int c
         1: aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.head:I
            isub
            istore 2 /* n */
        start local 2 // int n
         2: .line 1083
            iload 1 /* c */
            iconst_1
            iand
            ifeq 3
            iconst_m1
            goto 5
      StackMap locals: int int
      StackMap stack:
         3: iload 2 /* n */
            ifge 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iload 2 /* n */
      StackMap locals:
      StackMap stack: int
         5: ireturn
        end local 2 // int n
        end local 1 // int c
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            1    6     1     c  I
            2    6     2     n  I

  final int offer(T, );
    descriptor: (Ljava/lang/Object;Z)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.lang.Object item
        start local 2 // boolean unowned
         0: .line 1094
            iconst_0
            istore 4 /* stat */
        start local 4 // int stat
         1: aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
            dup
            astore 3 /* a */
        start local 3 // java.lang.Object[] a
         2: ifnonnull 3
            iconst_0
            goto 4
      StackMap locals: java.lang.Object[] int
      StackMap stack:
         3: aload 3 /* a */
            arraylength
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* cap */
        start local 5 // int cap
         5: .line 1095
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            istore 6 /* t */
        start local 6 // int t
         6: iload 6 /* t */
            iload 5 /* cap */
            iconst_1
            isub
            iand
            istore 7 /* i */
        start local 7 // int i
         7: iload 6 /* t */
            iconst_1
            iadd
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.head:I
            isub
            istore 8 /* n */
        start local 8 // int n
         8: .line 1096
            iload 5 /* cap */
            ifle 20
         9: .line 1098
            iload 8 /* n */
            iload 5 /* cap */
            if_icmplt 12
            iload 5 /* cap */
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.maxCapacity:I
            if_icmpge 12
        10: .line 1099
            aload 0 /* this */
            aload 1 /* item */
            aload 3 /* a */
            iload 6 /* t */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.growAndOffer:(Ljava/lang/Object;[Ljava/lang/Object;I)Z
            istore 9 /* added */
        start local 9 // boolean added
        11: goto 17
        end local 9 // boolean added
        12: .line 1100
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.lang.Object int java.lang.Object[] int int int int int
      StackMap stack:
            iload 8 /* n */
            iload 5 /* cap */
            if_icmpge 13
            iload 2 /* unowned */
            ifeq 15
        13: .line 1101
      StackMap locals:
      StackMap stack:
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 3 /* a */
            iload 7 /* i */
            aconst_null
            aload 1 /* item */
            invokevirtual java.lang.invoke.VarHandle.compareAndSet:([Ljava/lang/Object;ILjava/lang/Void;Ljava/lang/Object;)Z
            istore 9 /* added */
        start local 9 // boolean added
        14: goto 17
        end local 9 // boolean added
        15: .line 1103
      StackMap locals:
      StackMap stack:
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 3 /* a */
            iload 7 /* i */
            aload 1 /* item */
            invokevirtual java.lang.invoke.VarHandle.setRelease:([Ljava/lang/Object;ILjava/lang/Object;)V
        16: .line 1104
            iconst_1
            istore 9 /* added */
        start local 9 // boolean added
        17: .line 1106
      StackMap locals: int
      StackMap stack:
            iload 9 /* added */
            ifeq 20
        18: .line 1107
            aload 0 /* this */
            iload 6 /* t */
            iconst_1
            iadd
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
        19: .line 1108
            iload 8 /* n */
            istore 4 /* stat */
        end local 9 // boolean added
        20: .line 1111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* stat */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.startOnOffer:(I)I
            ireturn
        end local 8 // int n
        end local 7 // int i
        end local 6 // int t
        end local 5 // int cap
        end local 4 // int stat
        end local 3 // java.lang.Object[] a
        end local 2 // boolean unowned
        end local 1 // java.lang.Object item
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   21     0     this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   21     1     item  TT;
            0   21     2  unowned  Z
            2   21     3        a  [Ljava/lang/Object;
            1   21     4     stat  I
            5   21     5      cap  I
            6   21     6        t  I
            7   21     7        i  I
            8   21     8        n  I
           11   12     9    added  Z
           14   15     9    added  Z
           17   20     9    added  Z
    Signature: (TT;Z)I
    MethodParameters:
         Name  Flags
      item     
      unowned  

  final boolean growAndOffer(T, [], );
    descriptor: (Ljava/lang/Object;[Ljava/lang/Object;I)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.lang.Object item
        start local 2 // java.lang.Object[] a
        start local 3 // int t
         0: .line 1119
            iconst_0
            istore 4 /* cap */
        start local 4 // int cap
         1: iconst_0
            istore 5 /* newCap */
        start local 5 // int newCap
         2: .line 1120
            aconst_null
            astore 6 /* newArray */
        start local 6 // java.lang.Object[] newArray
         3: .line 1121
            aload 2 /* a */
            ifnull 7
            aload 2 /* a */
            arraylength
            dup
            istore 4 /* cap */
            ifle 7
            iload 4 /* cap */
            iconst_1
            ishl
            dup
            istore 5 /* newCap */
            ifle 7
         4: .line 1123
            iload 5 /* newCap */
            anewarray java.lang.Object
            astore 6 /* newArray */
         5: .line 1124
            goto 7
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.lang.Object java.lang.Object[] int int int java.lang.Object[]
      StackMap stack: java.lang.OutOfMemoryError
         6: pop
         7: .line 1127
      StackMap locals:
      StackMap stack:
            aload 6 /* newArray */
            ifnonnull 9
         8: .line 1128
            iconst_0
            ireturn
         9: .line 1130
      StackMap locals:
      StackMap stack:
            iload 5 /* newCap */
            iconst_1
            isub
            istore 7 /* newMask */
        start local 7 // int newMask
        10: .line 1131
            aload 6 /* newArray */
            iload 3 /* t */
            iinc 3 /* t */ -1
            iload 7 /* newMask */
            iand
            aload 1 /* item */
            aastore
        11: .line 1132
            iload 4 /* cap */
            iconst_1
            isub
            istore 8 /* mask */
        start local 8 // int mask
        12: iload 8 /* mask */
            istore 9 /* k */
        start local 9 // int k
        13: goto 19
        14: .line 1133
      StackMap locals: int int int
      StackMap stack:
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 2 /* a */
            iload 3 /* t */
            iload 8 /* mask */
            iand
            aconst_null
            invokevirtual java.lang.invoke.VarHandle.getAndSet:([Ljava/lang/Object;ILjava/lang/Void;)Ljava/lang/Object;
            astore 10 /* x */
        start local 10 // java.lang.Object x
        15: .line 1134
            aload 10 /* x */
            ifnonnull 17
        16: .line 1135
            goto 20
        17: .line 1137
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 6 /* newArray */
            iload 3 /* t */
            iinc 3 /* t */ -1
            iload 7 /* newMask */
            iand
            aload 10 /* x */
            aastore
        end local 10 // java.lang.Object x
        18: .line 1132
            iinc 9 /* k */ -1
      StackMap locals:
      StackMap stack:
        19: iload 9 /* k */
            ifge 14
        end local 9 // int k
        end local 8 // int mask
        20: .line 1139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* newArray */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
        21: .line 1140
            invokestatic java.lang.invoke.VarHandle.releaseFence:()V
        22: .line 1141
            iconst_1
            ireturn
        end local 7 // int newMask
        end local 6 // java.lang.Object[] newArray
        end local 5 // int newCap
        end local 4 // int cap
        end local 3 // int t
        end local 2 // java.lang.Object[] a
        end local 1 // java.lang.Object item
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   23     0      this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   23     1      item  TT;
            0   23     2         a  [Ljava/lang/Object;
            0   23     3         t  I
            1   23     4       cap  I
            2   23     5    newCap  I
            3   23     6  newArray  [Ljava/lang/Object;
           10   23     7   newMask  I
           12   20     8      mask  I
           13   20     9         k  I
           15   18    10         x  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.OutOfMemoryError
    Signature: (TT;[Ljava/lang/Object;I)Z
    MethodParameters:
      Name  Flags
      item  
      a     
      t     

  final int retryOffer();
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.lang.Object item
         0: .line 1150
            iconst_0
            istore 3 /* stat */
        start local 3 // int stat
         1: aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            istore 4 /* t */
        start local 4 // int t
         2: aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.head:I
            istore 5 /* h */
        start local 5 // int h
         3: .line 1151
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
            dup
            astore 2 /* a */
        start local 2 // java.lang.Object[] a
         4: ifnull 8
            aload 2 /* a */
            arraylength
            dup
            istore 6 /* cap */
        start local 6 // int cap
         5: ifle 8
         6: .line 1152
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 2 /* a */
            iload 6 /* cap */
            iconst_1
            isub
            iload 4 /* t */
            iand
            aconst_null
            aload 1 /* item */
            invokevirtual java.lang.invoke.VarHandle.compareAndSet:([Ljava/lang/Object;ILjava/lang/Void;Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1153
            aload 0 /* this */
            iload 4 /* t */
            iconst_1
            iadd
            dup_x1
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            iload 5 /* h */
            isub
            istore 3 /* stat */
        end local 6 // int cap
         8: .line 1154
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.lang.Object java.lang.Object[] int int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* stat */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.startOnOffer:(I)I
            ireturn
        end local 5 // int h
        end local 4 // int t
        end local 3 // int stat
        end local 2 // java.lang.Object[] a
        end local 1 // java.lang.Object item
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    9     1  item  TT;
            4    9     2     a  [Ljava/lang/Object;
            1    9     3  stat  I
            2    9     4     t  I
            3    9     5     h  I
            5    8     6   cap  I
    Signature: (TT;)I
    MethodParameters:
      Name  Flags
      item  

  final int startOnOffer(int);
    descriptor: (I)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // int stat
         0: .line 1163
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            dup
            istore 2 /* c */
        start local 2 // int c
         1: bipush 6
            iand
            iconst_4
            if_icmpne 4
         2: .line 1164
            aload 0 /* this */
            bipush 34
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            dup
            istore 2 /* c */
            bipush 33
            iand
            ifne 4
         3: .line 1165
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.tryStart:()V
            goto 6
         4: .line 1166
      StackMap locals: int
      StackMap stack:
            iload 2 /* c */
            iconst_1
            iand
            ifeq 6
         5: .line 1167
            iconst_m1
            istore 1 /* stat */
         6: .line 1168
      StackMap locals:
      StackMap stack:
            iload 1 /* stat */
            ireturn
        end local 2 // int c
        end local 1 // int stat
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    7     1  stat  I
            1    7     2     c  I
    MethodParameters:
      Name  Flags
      stat  

  final void tryStart();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1177
            new java.util.concurrent.SubmissionPublisher$ConsumerTask
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.SubmissionPublisher$ConsumerTask.<init>:(Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription;)V
            astore 2 /* task */
        start local 2 // java.util.concurrent.SubmissionPublisher$ConsumerTask task
         1: .line 1178
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.executor:Ljava/util/concurrent/Executor;
            dup
            astore 1 /* e */
        start local 1 // java.util.concurrent.Executor e
         2: ifnull 8
         3: .line 1179
            aload 1 /* e */
            aload 2 /* task */
            invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
        end local 2 // java.util.concurrent.SubmissionPublisher$ConsumerTask task
        end local 1 // java.util.concurrent.Executor e
         4: .line 1180
            goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: astore 1 /* ex */
        start local 1 // java.lang.Throwable ex
         6: .line 1181
            aload 0 /* this */
            bipush 9
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            pop
         7: .line 1182
            aload 1 /* ex */
            athrow
        end local 1 // java.lang.Throwable ex
         8: .line 1184
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            2    4     1     e  Ljava/util/concurrent/Executor;
            1    4     2  task  Ljava/util/concurrent/SubmissionPublisher$ConsumerTask<TT;>;
            6    8     1    ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.RuntimeException
           0     4       5  Class java.lang.Error

  final void startOnSignal(int);
    descriptor: (I)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // int bits
         0: .line 1193
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            iload 1 /* bits */
            iand
            iload 1 /* bits */
            if_icmpeq 3
         1: .line 1194
            aload 0 /* this */
            iload 1 /* bits */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            bipush 33
            iand
            ifne 3
         2: .line 1195
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.tryStart:()V
         3: .line 1196
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int bits
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    4     1  bits  I
    MethodParameters:
      Name  Flags
      bits  

  final void onSubscribe();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1199
            aload 0 /* this */
            bipush 34
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.startOnSignal:(I)V
         1: .line 1200
            return
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  final void onComplete();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1203
            aload 0 /* this */
            bipush 50
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.startOnSignal:(I)V
         1: .line 1204
            return
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  final void onError(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.lang.Throwable ex
         0: .line 1208
            aload 1 /* ex */
            ifnull 2
         1: .line 1209
            aload 0 /* this */
            aload 1 /* ex */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.pendingError:Ljava/lang/Throwable;
         2: .line 1210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 42
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            dup
            istore 2 /* c */
        start local 2 // int c
         3: iconst_1
            iand
            ifne 9
         4: .line 1211
            iload 2 /* c */
            bipush 32
            iand
            ifne 6
         5: .line 1212
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.tryStart:()V
            goto 9
         6: .line 1213
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
            dup
            astore 3 /* a */
        start local 3 // java.lang.Object[] a
         7: ifnull 9
         8: .line 1214
            aload 3 /* a */
            aconst_null
            invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
        end local 3 // java.lang.Object[] a
         9: .line 1216
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int c
        end local 1 // java.lang.Throwable ex
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   10     1    ex  Ljava/lang/Throwable;
            3   10     2     c  I
            7    9     3     a  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      ex    

  public final void cancel();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1219
            aload 0 /* this */
            aconst_null
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.onError:(Ljava/lang/Throwable;)V
         1: .line 1220
            return
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;

  public final void request(long);
    descriptor: (J)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=7, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // long n
         0: .line 1223
            lload 1 /* n */
            lconst_0
            lcmp
            ifle 8
         1: .line 1225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.demand:J
            lstore 3 /* p */
        start local 3 // long p
         2: lload 3 /* p */
            lload 1 /* n */
            ladd
            lstore 5 /* d */
        start local 5 // long d
         3: .line 1226
            aload 0 /* this */
            lload 3 /* p */
            lload 5 /* d */
            lload 3 /* p */
            lcmp
            ifge 4
            ldc 9223372036854775807
            goto 5
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription long long long
      StackMap stack: java.util.concurrent.SubmissionPublisher$BufferedSubscription long
         4: lload 5 /* d */
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription long long long
      StackMap stack: java.util.concurrent.SubmissionPublisher$BufferedSubscription long long
         5: invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.casDemand:(JJ)Z
            ifeq 1
        end local 5 // long d
        end local 3 // long p
         6: .line 1229
            aload 0 /* this */
            bipush 38
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.startOnSignal:(I)V
         7: .line 1230
            goto 11
         8: .line 1232
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.IllegalArgumentException
            dup
         9: .line 1233
            ldc "non-positive subscription request"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        10: .line 1232
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.onError:(Ljava/lang/Throwable;)V
        11: .line 1234
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long n
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   12     1     n  J
            2    6     3     p  J
            3    6     5     d  J
    MethodParameters:
      Name  Flags
      n     

  final void consume();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1244
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.subscriber:Ljava/util/concurrent/Flow$Subscriber;
            dup
            astore 1 /* s */
        start local 1 // java.util.concurrent.Flow$Subscriber s
         1: ifnull 31
         2: .line 1245
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.subscribeOnOpen:(Ljava/util/concurrent/Flow$Subscriber;)V
         3: .line 1246
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.demand:J
            lstore 2 /* d */
        start local 2 // long d
         4: .line 1247
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.head:I
            istore 4 /* h */
        start local 4 // int h
         5: aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            istore 5 /* t */
        start local 5 // int t
         6: .line 1249
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.util.concurrent.Flow$Subscriber long int int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            dup
            istore 6 /* c */
        start local 6 // int c
         7: bipush 8
            iand
            ifeq 10
         8: .line 1250
            aload 0 /* this */
            aload 1 /* s */
            aconst_null
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.closeOnError:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
         9: .line 1251
            goto 31
        10: .line 1253
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            lload 2 /* d */
            iload 4 /* h */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.takeItems:(Ljava/util/concurrent/Flow$Subscriber;JI)I
            dup
            istore 7 /* taken */
        start local 7 // int taken
        11: ifle 15
        12: .line 1254
            aload 0 /* this */
            iload 4 /* h */
            iload 7 /* taken */
            iadd
            dup
            istore 4 /* h */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.head:I
        13: .line 1255
            aload 0 /* this */
            iload 7 /* taken */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.subtractDemand:(I)J
            lstore 2 /* d */
        14: .line 1256
            goto 6
        15: .line 1257
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.demand:J
            dup2
            lstore 2 /* d */
            lconst_0
            lcmp
            ifne 17
            iload 6 /* c */
            iconst_4
            iand
            ifeq 17
        16: .line 1258
            aload 0 /* this */
            iload 6 /* c */
            iload 6 /* c */
            bipush -5
            iand
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.weakCasCtl:(II)Z
            pop
            goto 6
        17: .line 1259
      StackMap locals:
      StackMap stack:
            lload 2 /* d */
            lconst_0
            lcmp
            ifeq 19
            iload 6 /* c */
            iconst_4
            iand
            ifne 19
        18: .line 1260
            aload 0 /* this */
            iload 6 /* c */
            iload 6 /* c */
            iconst_4
            ior
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.weakCasCtl:(II)Z
            pop
            goto 6
        19: .line 1261
      StackMap locals:
      StackMap stack:
            iload 5 /* t */
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            dup
            istore 5 /* t */
            if_icmpne 6
        20: .line 1262
            iload 5 /* t */
            iload 4 /* h */
            if_icmpne 21
            iconst_1
            goto 22
      StackMap locals:
      StackMap stack:
        21: iconst_0
      StackMap locals:
      StackMap stack: int
        22: dup
            istore 8 /* empty */
        start local 8 // boolean empty
        23: ifeq 26
            iload 6 /* c */
            bipush 16
            iand
            ifeq 26
        24: .line 1263
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.closeOnComplete:(Ljava/util/concurrent/Flow$Subscriber;)V
        25: .line 1264
            goto 31
        26: .line 1266
      StackMap locals: int
      StackMap stack:
            iload 8 /* empty */
            ifne 27
            lload 2 /* d */
            lconst_0
            lcmp
            ifne 6
        27: .line 1267
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            iconst_2
            iand
            ifeq 28
            iconst_2
            goto 29
      StackMap locals:
      StackMap stack:
        28: bipush 32
      StackMap locals:
      StackMap stack: int
        29: istore 9 /* bit */
        start local 9 // int bit
        30: .line 1268
            aload 0 /* this */
            iload 6 /* c */
            iload 6 /* c */
            iload 9 /* bit */
            iconst_m1
            ixor
            iand
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.weakCasCtl:(II)Z
            ifeq 6
            iload 9 /* bit */
            bipush 32
            if_icmpne 6
        end local 9 // int bit
        end local 8 // boolean empty
        end local 7 // int taken
        end local 6 // int c
        end local 5 // int t
        end local 4 // int h
        end local 2 // long d
        31: .line 1274
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.util.concurrent.Flow$Subscriber
      StackMap stack:
            return
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   32     0   this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            1   32     1      s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            4   31     2      d  J
            5   31     4      h  I
            6   31     5      t  I
            7   31     6      c  I
           11   31     7  taken  I
           23   31     8  empty  Z
           30   31     9    bit  I

  final int takeItems(java.util.concurrent.Flow$Subscriber<? super T>, long, );
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;JI)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=12, args_size=4
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
        start local 2 // long d
        start local 4 // int h
         0: .line 1286
            iconst_0
            istore 6 /* k */
        start local 6 // int k
         1: .line 1287
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
            dup
            astore 5 /* a */
        start local 5 // java.lang.Object[] a
         2: ifnull 19
            aload 5 /* a */
            arraylength
            dup
            istore 7 /* cap */
        start local 7 // int cap
         3: ifle 19
         4: .line 1288
            iload 7 /* cap */
            iconst_1
            isub
            istore 8 /* m */
        start local 8 // int m
         5: iload 8 /* m */
            iconst_3
            iushr
            iconst_1
            iadd
            istore 9 /* b */
        start local 9 // int b
         6: .line 1289
            lload 2 /* d */
            iload 9 /* b */
            i2l
            lcmp
            ifge 7
            lload 2 /* d */
            l2i
            goto 8
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.util.concurrent.Flow$Subscriber long int java.lang.Object[] int int int int
      StackMap stack:
         7: iload 9 /* b */
      StackMap locals:
      StackMap stack: int
         8: istore 10 /* n */
        start local 10 // int n
         9: .line 1290
            goto 18
        10: .line 1291
      StackMap locals: int
      StackMap stack:
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 5 /* a */
            iload 4 /* h */
            iload 8 /* m */
            iand
            aconst_null
            invokevirtual java.lang.invoke.VarHandle.getAndSet:([Ljava/lang/Object;ILjava/lang/Void;)Ljava/lang/Object;
            astore 11 /* x */
        start local 11 // java.lang.Object x
        11: .line 1292
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiting:I
            ifeq 13
        12: .line 1293
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.signalWaiter:()V
        13: .line 1294
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 11 /* x */
            ifnonnull 15
        14: .line 1295
            goto 19
        15: .line 1296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            aload 11 /* x */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.consumeNext:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Object;)Z
            ifne 17
        16: .line 1297
            goto 19
        end local 11 // java.lang.Object x
        17: .line 1290
      StackMap locals:
      StackMap stack:
            iinc 4 /* h */ 1
            iinc 6 /* k */ 1
      StackMap locals:
      StackMap stack:
        18: iload 6 /* k */
            iload 10 /* n */
            if_icmplt 10
        end local 10 // int n
        end local 9 // int b
        end local 8 // int m
        end local 7 // int cap
        19: .line 1300
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.util.concurrent.Flow$Subscriber long int java.lang.Object[] int
      StackMap stack:
            iload 6 /* k */
            ireturn
        end local 6 // int k
        end local 5 // java.lang.Object[] a
        end local 4 // int h
        end local 2 // long d
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   20     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0   20     2     d  J
            0   20     4     h  I
            2   20     5     a  [Ljava/lang/Object;
            1   20     6     k  I
            3   19     7   cap  I
            5   19     8     m  I
            6   19     9     b  I
            9   19    10     n  I
           11   17    11     x  Ljava/lang/Object;
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;JI)I
    MethodParameters:
      Name  Flags
      s     
      d     
      h     

  final boolean consumeNext(java.util.concurrent.Flow$Subscriber<? super T>, );
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Object;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
        start local 2 // java.lang.Object x
         0: .line 1305
            aload 2 /* x */
            astore 3 /* y */
        start local 3 // java.lang.Object y
         1: .line 1306
            aload 1 /* s */
            ifnull 3
         2: .line 1307
            aload 1 /* s */
            aload 3 /* y */
            invokeinterface java.util.concurrent.Flow$Subscriber.onNext:(Ljava/lang/Object;)V
         3: .line 1308
      StackMap locals: java.lang.Object
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.lang.Object y
         4: .line 1309
      StackMap locals: java.util.concurrent.SubmissionPublisher$BufferedSubscription java.util.concurrent.Flow$Subscriber java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* ex */
        start local 3 // java.lang.Throwable ex
         5: .line 1310
            aload 0 /* this */
            aload 1 /* s */
            aload 3 /* ex */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.handleOnNext:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
         6: .line 1311
            iconst_0
            ireturn
        end local 3 // java.lang.Throwable ex
        end local 2 // java.lang.Object x
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    7     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0    7     2     x  Ljava/lang/Object;
            1    4     3     y  TT;
            5    7     3    ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Throwable
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;Ljava/lang/Object;)Z
    MethodParameters:
      Name  Flags
      s     
      x     

  final void handleOnNext(java.util.concurrent.Flow$Subscriber<? super T>, java.lang.Throwable);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
        start local 2 // java.lang.Throwable ex
         0: .line 1321
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.onNextHandler:Ljava/util/function/BiConsumer;
            dup
            astore 3 /* h */
        start local 3 // java.util.function.BiConsumer h
         1: ifnull 5
         2: .line 1322
            aload 3 /* h */
            aload 1 /* s */
            aload 2 /* ex */
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 1323
            goto 5
        end local 3 // java.util.function.BiConsumer h
      StackMap locals:
      StackMap stack: java.lang.Throwable
         4: pop
         5: .line 1325
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            aload 2 /* ex */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.closeOnError:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
         6: .line 1326
            return
        end local 2 // java.lang.Throwable ex
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    7     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0    7     2    ex  Ljava/lang/Throwable;
            1    4     3     h  Ljava/util/function/BiConsumer<-Ljava/util/concurrent/Flow$Subscriber<-TT;>;-Ljava/lang/Throwable;>;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Throwable
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;Ljava/lang/Throwable;)V
    MethodParameters:
      Name  Flags
      s     
      ex    

  final void subscribeOnOpen(java.util.concurrent.Flow$Subscriber<? super T>);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
         0: .line 1332
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            bipush 64
            iand
            ifne 2
            aload 0 /* this */
            bipush 64
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            bipush 64
            iand
            ifne 2
         1: .line 1333
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.consumeSubscribe:(Ljava/util/concurrent/Flow$Subscriber;)V
         2: .line 1334
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    3     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;)V
    MethodParameters:
      Name  Flags
      s     

  final void consumeSubscribe(java.util.concurrent.Flow$Subscriber<? super T>);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
         0: .line 1338
            aload 1 /* s */
            ifnull 5
         1: .line 1339
            aload 1 /* s */
            aload 0 /* this */
            invokeinterface java.util.concurrent.Flow$Subscriber.onSubscribe:(Ljava/util/concurrent/Flow$Subscription;)V
         2: .line 1340
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 2 /* ex */
        start local 2 // java.lang.Throwable ex
         4: .line 1341
            aload 0 /* this */
            aload 1 /* s */
            aload 2 /* ex */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.closeOnError:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
        end local 2 // java.lang.Throwable ex
         5: .line 1343
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    6     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            4    5     2    ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Throwable
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;)V
    MethodParameters:
      Name  Flags
      s     

  final void closeOnComplete(java.util.concurrent.Flow$Subscriber<? super T>);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
         0: .line 1349
            aload 0 /* this */
            iconst_1
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            iconst_1
            iand
            ifne 2
         1: .line 1350
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.consumeComplete:(Ljava/util/concurrent/Flow$Subscriber;)V
         2: .line 1351
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    3     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;)V
    MethodParameters:
      Name  Flags
      s     

  final void consumeComplete(java.util.concurrent.Flow$Subscriber<? super T>);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
         0: .line 1355
            aload 1 /* s */
            ifnull 4
         1: .line 1356
            aload 1 /* s */
            invokeinterface java.util.concurrent.Flow$Subscriber.onComplete:()V
         2: .line 1357
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: pop
         4: .line 1359
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    5     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Throwable
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;)V
    MethodParameters:
      Name  Flags
      s     

  final void closeOnError(java.util.concurrent.Flow$Subscriber<? super T>, java.lang.Throwable);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
        start local 2 // java.lang.Throwable ex
         0: .line 1365
            aload 0 /* this */
            bipush 9
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.getAndBitwiseOrCtl:(I)I
            iconst_1
            iand
            ifne 7
         1: .line 1366
            aload 2 /* ex */
            ifnonnull 3
         2: .line 1367
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.pendingError:Ljava/lang/Throwable;
            astore 2 /* ex */
         3: .line 1368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.pendingError:Ljava/lang/Throwable;
         4: .line 1369
            aload 0 /* this */
            aconst_null
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.executor:Ljava/util/concurrent/Executor;
         5: .line 1370
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.signalWaiter:()V
         6: .line 1371
            aload 0 /* this */
            aload 1 /* s */
            aload 2 /* ex */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.consumeError:(Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
         7: .line 1373
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Throwable ex
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    8     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0    8     2    ex  Ljava/lang/Throwable;
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;Ljava/lang/Throwable;)V
    MethodParameters:
      Name  Flags
      s     
      ex    

  final void consumeError(java.util.concurrent.Flow$Subscriber<? super T>, java.lang.Throwable);
    descriptor: (Ljava/util/concurrent/Flow$Subscriber;Ljava/lang/Throwable;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // java.util.concurrent.Flow$Subscriber s
        start local 2 // java.lang.Throwable ex
         0: .line 1377
            aload 2 /* ex */
            ifnull 4
            aload 1 /* s */
            ifnull 4
         1: .line 1378
            aload 1 /* s */
            aload 2 /* ex */
            invokeinterface java.util.concurrent.Flow$Subscriber.onError:(Ljava/lang/Throwable;)V
         2: .line 1379
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: pop
         4: .line 1381
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Throwable ex
        end local 1 // java.util.concurrent.Flow$Subscriber s
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0    5     1     s  Ljava/util/concurrent/Flow$Subscriber<-TT;>;
            0    5     2    ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Throwable
    Signature: (Ljava/util/concurrent/Flow$Subscriber<-TT;>;Ljava/lang/Throwable;)V
    MethodParameters:
      Name  Flags
      s     
      ex    

  final void signalWaiter();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1390
            aload 0 /* this */
            iconst_0
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiting:I
         1: .line 1391
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiter:Ljava/lang/Thread;
            dup
            astore 1 /* w */
        start local 1 // java.lang.Thread w
         2: ifnull 4
         3: .line 1392
            aload 1 /* w */
            invokestatic java.util.concurrent.locks.LockSupport.unpark:(Ljava/lang/Thread;)V
         4: .line 1393
      StackMap locals: java.lang.Thread
      StackMap stack:
            return
        end local 1 // java.lang.Thread w
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            2    5     1     w  Ljava/lang/Thread;

  public final boolean isReleasable();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1401
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.ctl:I
            iconst_1
            iand
            ifne 6
         1: .line 1402
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.array:[Ljava/lang/Object;
            dup
            astore 1 /* a */
        start local 1 // java.lang.Object[] a
         2: ifnull 5
            aload 1 /* a */
            arraylength
            dup
            istore 2 /* cap */
        start local 2 // int cap
         3: ifle 5
         4: .line 1403
            getstatic java.util.concurrent.SubmissionPublisher$BufferedSubscription.QA:Ljava/lang/invoke/VarHandle;
            aload 1 /* a */
            iload 2 /* cap */
            iconst_1
            isub
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.tail:I
            iand
            invokevirtual java.lang.invoke.VarHandle.getAcquire:([Ljava/lang/Object;I)Ljava/lang/Object;
            ifnull 6
        end local 2 // int cap
        end local 1 // java.lang.Object[] a
         5: .line 1401
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            2    5     1     a  [Ljava/lang/Object;
            3    5     2   cap  I

  final void awaitSpace(long);
    descriptor: (J)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
        start local 1 // long nanos
         0: .line 1410
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.isReleasable:()Z
            ifne 10
         1: .line 1411
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.executor:Ljava/util/concurrent/Executor;
            aload 0 /* this */
            invokestatic java.util.concurrent.ForkJoinPool.helpAsyncBlocker:(Ljava/util/concurrent/Executor;Ljava/util/concurrent/ForkJoinPool$ManagedBlocker;)V
         2: .line 1412
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.isReleasable:()Z
            ifne 10
         3: .line 1413
            aload 0 /* this */
            lload 1 /* nanos */
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.timeout:J
         4: .line 1415
            aload 0 /* this */
            invokestatic java.util.concurrent.ForkJoinPool.managedBlock:(Ljava/util/concurrent/ForkJoinPool$ManagedBlocker;)V
         5: .line 1416
            goto 8
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         6: pop
         7: .line 1417
            aload 0 /* this */
            ldc -1
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.timeout:J
         8: .line 1419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.timeout:J
            ldc -1
            lcmp
            ifne 10
         9: .line 1420
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        10: .line 1423
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long nanos
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            0   11     1  nanos  J
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.InterruptedException
    MethodParameters:
       Name  Flags
      nanos  

  public final boolean block();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
         0: .line 1430
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.timeout:J
            lstore 1 /* nanos */
        start local 1 // long nanos
         1: .line 1431
            lload 1 /* nanos */
            ldc 9223372036854775807
            lcmp
            ifge 2
            iconst_1
            goto 3
      StackMap locals: long
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* timed */
        start local 3 // boolean timed
         4: .line 1432
            iload 3 /* timed */
            ifeq 5
            invokestatic java.lang.System.nanoTime:()J
            lload 1 /* nanos */
            ladd
            goto 6
      StackMap locals: int
      StackMap stack:
         5: lconst_0
      StackMap locals:
      StackMap stack: long
         6: lstore 4 /* deadline */
        start local 4 // long deadline
         7: .line 1433
            goto 21
         8: .line 1434
      StackMap locals: long
      StackMap stack:
            invokestatic java.lang.Thread.interrupted:()Z
            ifeq 12
         9: .line 1435
            aload 0 /* this */
            ldc -1
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.timeout:J
        10: .line 1436
            iload 3 /* timed */
            ifeq 21
        11: .line 1437
            goto 22
        12: .line 1439
      StackMap locals:
      StackMap stack:
            iload 3 /* timed */
            ifeq 14
            lload 4 /* deadline */
            invokestatic java.lang.System.nanoTime:()J
            lsub
            dup2
            lstore 1 /* nanos */
            lconst_0
            lcmp
            ifgt 14
        13: .line 1440
            goto 22
        14: .line 1441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiter:Ljava/lang/Thread;
            ifnonnull 16
        15: .line 1442
            aload 0 /* this */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiter:Ljava/lang/Thread;
            goto 21
        16: .line 1443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiting:I
            ifne 18
        17: .line 1444
            aload 0 /* this */
            iconst_1
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiting:I
            goto 21
        18: .line 1445
      StackMap locals:
      StackMap stack:
            iload 3 /* timed */
            ifeq 20
        19: .line 1446
            aload 0 /* this */
            lload 1 /* nanos */
            invokestatic java.util.concurrent.locks.LockSupport.parkNanos:(Ljava/lang/Object;J)V
            goto 21
        20: .line 1448
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic java.util.concurrent.locks.LockSupport.park:(Ljava/lang/Object;)V
        21: .line 1433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.concurrent.SubmissionPublisher$BufferedSubscription.isReleasable:()Z
            ifeq 8
        22: .line 1450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiter:Ljava/lang/Thread;
        23: .line 1451
            aload 0 /* this */
            iconst_0
            putfield java.util.concurrent.SubmissionPublisher$BufferedSubscription.waiting:I
        24: .line 1452
            iconst_1
            ireturn
        end local 4 // long deadline
        end local 3 // boolean timed
        end local 1 // long nanos
        end local 0 // java.util.concurrent.SubmissionPublisher$BufferedSubscription this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0      this  Ljava/util/concurrent/SubmissionPublisher$BufferedSubscription<TT;>;
            1   25     1     nanos  J
            4   25     3     timed  Z
            7   25     4  deadline  J
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/concurrent/Flow$Subscription;Ljava/util/concurrent/ForkJoinPool$ManagedBlocker;
SourceFile: "SubmissionPublisher.java"
NestHost: java.util.concurrent.SubmissionPublisher
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Subscriber = java.util.concurrent.Flow$Subscriber of java.util.concurrent.Flow
  public abstract Subscription = java.util.concurrent.Flow$Subscription of java.util.concurrent.Flow
  public abstract ManagedBlocker = java.util.concurrent.ForkJoinPool$ManagedBlocker of java.util.concurrent.ForkJoinPool
  final BufferedSubscription = java.util.concurrent.SubmissionPublisher$BufferedSubscription of java.util.concurrent.SubmissionPublisher
  final ConsumerTask = java.util.concurrent.SubmissionPublisher$ConsumerTask of java.util.concurrent.SubmissionPublisher
    RuntimeVisibleAnnotations: 
      jdk.internal.vm.annotation.Contended()