class java.util.stream.WhileOps$2Op$1OpSink extends java.util.stream.Sink$ChainedInt<java.lang.Integer> implements java.util.stream.WhileOps$DropWhileSink<java.lang.Integer>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.stream.WhileOps$2Op$1OpSink
  super_class: java.util.stream.Sink$ChainedInt
{
  long dropCount;
    descriptor: J
    flags: (0x0000) 

  boolean take;
    descriptor: Z
    flags: (0x0000) 

  final java.util.stream.WhileOps$2Op this$1;
    descriptor: Ljava/util/stream/WhileOps$2Op;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final java.util.function.IntPredicate val$predicate;
    descriptor: Ljava/util/function/IntPredicate;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final boolean val$retainAndCountDroppedElements;
    descriptor: Z
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(java.util.stream.WhileOps$2Op, java.util.stream.Sink, java.util.function.IntPredicate, boolean);
    descriptor: (Ljava/util/stream/WhileOps$2Op;Ljava/util/stream/Sink;Ljava/util/function/IntPredicate;Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // java.util.stream.WhileOps$2Op$1OpSink this
         0: .line 445
            aload 0 /* this */
            aload 1
            putfield java.util.stream.WhileOps$2Op$1OpSink.this$1:Ljava/util/stream/WhileOps$2Op;
            aload 0 /* this */
            aload 3
            putfield java.util.stream.WhileOps$2Op$1OpSink.val$predicate:Ljava/util/function/IntPredicate;
            aload 0 /* this */
            iload 4
            putfield java.util.stream.WhileOps$2Op$1OpSink.val$retainAndCountDroppedElements:Z
         1: .line 446
            aload 0 /* this */
            aload 2
            invokespecial java.util.stream.Sink$ChainedInt.<init>:(Ljava/util/stream/Sink;)V
         2: .line 447
            return
        end local 0 // java.util.stream.WhileOps$2Op$1OpSink this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/stream/WhileOps$2Op$1OpSink;
    MethodParameters:
                                   Name  Flags
      this$0                             final
      val$sink                           final
      val$predicate                      final
      val$retainAndCountDroppedElements  final

  public void accept(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.util.stream.WhileOps$2Op$1OpSink this
        start local 1 // int t
         0: .line 451
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.take:Z
            ifne 3
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.val$predicate:Ljava/util/function/IntPredicate;
            iload 1 /* t */
            invokeinterface java.util.function.IntPredicate.test:(I)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: java.util.stream.WhileOps$2Op$1OpSink
         1: iconst_1
      StackMap locals: java.util.stream.WhileOps$2Op$1OpSink int
      StackMap stack: java.util.stream.WhileOps$2Op$1OpSink int
         2: dup_x1
            putfield java.util.stream.WhileOps$2Op$1OpSink.take:Z
            ifne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 2 /* takeElement */
        start local 2 // boolean takeElement
         5: .line 455
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.val$retainAndCountDroppedElements:Z
            ifeq 7
            iload 2 /* takeElement */
            ifne 7
         6: .line 456
            aload 0 /* this */
            dup
            getfield java.util.stream.WhileOps$2Op$1OpSink.dropCount:J
            lconst_1
            ladd
            putfield java.util.stream.WhileOps$2Op$1OpSink.dropCount:J
         7: .line 460
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.val$retainAndCountDroppedElements:Z
            ifne 8
            iload 2 /* takeElement */
            ifeq 9
         8: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.downstream:Ljava/util/stream/Sink;
            iload 1 /* t */
            invokeinterface java.util.stream.Sink.accept:(I)V
         9: .line 462
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean takeElement
        end local 1 // int t
        end local 0 // java.util.stream.WhileOps$2Op$1OpSink this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Ljava/util/stream/WhileOps$2Op$1OpSink;
            0   10     1            t  I
            5   10     2  takeElement  Z
    MethodParameters:
      Name  Flags
      t     

  public long getDropCount();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.stream.WhileOps$2Op$1OpSink this
         0: .line 466
            aload 0 /* this */
            getfield java.util.stream.WhileOps$2Op$1OpSink.dropCount:J
            lreturn
        end local 0 // java.util.stream.WhileOps$2Op$1OpSink this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/stream/WhileOps$2Op$1OpSink;
}
Signature: Ljava/util/stream/Sink$ChainedInt<Ljava/lang/Integer;>;Ljava/util/stream/WhileOps$DropWhileSink<Ljava/lang/Integer;>;
SourceFile: "WhileOps.java"
EnclosingMethod: java.util.stream.WhileOps$2Op.opWrapSink:(Ljava/util/stream/Sink;Z)Ljava/util/stream/WhileOps$DropWhileSink;
NestHost: java.util.stream.WhileOps
InnerClasses:
  public abstract ChainedInt = java.util.stream.Sink$ChainedInt of java.util.stream.Sink
  Op = java.util.stream.WhileOps$2Op
  OpSink = java.util.stream.WhileOps$2Op$1OpSink
  abstract DropWhileSink = java.util.stream.WhileOps$DropWhileSink of java.util.stream.WhileOps