class java.util.Scanner$FindSpliterator extends java.util.Spliterators$AbstractSpliterator<java.util.regex.MatchResult>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.Scanner$FindSpliterator
  super_class: java.util.Spliterators$AbstractSpliterator
{
  final java.util.regex.Pattern pattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0010) ACC_FINAL

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

  private boolean advance;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  final java.util.Scanner this$0;
    descriptor: Ljava/util/Scanner;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(java.util.Scanner, java.util.regex.Pattern);
    descriptor: (Ljava/util/Scanner;Ljava/util/regex/Pattern;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.util.Scanner$FindSpliterator this
        start local 2 // java.util.regex.Pattern pattern
         0: .line 2948
            aload 0 /* this */
            aload 1
            putfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
         1: .line 2949
            aload 0 /* this */
            ldc 9223372036854775807
         2: .line 2950
            sipush 1296
            invokespecial java.util.Spliterators$AbstractSpliterator.<init>:(JI)V
         3: .line 2945
            aload 0 /* this */
            iconst_m1
            putfield java.util.Scanner$FindSpliterator.expectedCount:I
         4: .line 2946
            aload 0 /* this */
            iconst_0
            putfield java.util.Scanner$FindSpliterator.advance:Z
         5: .line 2951
            aload 0 /* this */
            aload 2 /* pattern */
            putfield java.util.Scanner$FindSpliterator.pattern:Ljava/util/regex/Pattern;
         6: .line 2952
            return
        end local 2 // java.util.regex.Pattern pattern
        end local 0 // java.util.Scanner$FindSpliterator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Ljava/util/Scanner$FindSpliterator;
            0    7     2  pattern  Ljava/util/regex/Pattern;
    MethodParameters:
         Name  Flags
      this$0   final
      pattern  

  public boolean tryAdvance(java.util.function.Consumer<? super java.util.regex.MatchResult>);
    descriptor: (Ljava/util/function/Consumer;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Scanner$FindSpliterator this
        start local 1 // java.util.function.Consumer cons
         0: .line 2956
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            invokevirtual java.util.Scanner.ensureOpen:()V
         1: .line 2957
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.expectedCount:I
            iflt 4
         2: .line 2958
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.expectedCount:I
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.modCount:I
            if_icmpeq 7
         3: .line 2959
            new java.util.ConcurrentModificationException
            dup
            invokespecial java.util.ConcurrentModificationException.<init>:()V
            athrow
         4: .line 2963
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            iconst_0
            putfield java.util.Scanner.matchValid:Z
         5: .line 2964
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.pattern:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Matcher.usePattern:(Ljava/util/regex/Pattern;)Ljava/util/regex/Matcher;
            pop
         6: .line 2965
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.modCount:I
            putfield java.util.Scanner$FindSpliterator.expectedCount:I
         7: .line 2970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Scanner$FindSpliterator.nextInBuffer:()Z
            ifeq 12
         8: .line 2971
            aload 1 /* cons */
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.toMatchResult:()Ljava/util/regex/MatchResult;
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         9: .line 2972
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.expectedCount:I
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.modCount:I
            if_icmpeq 11
        10: .line 2973
            new java.util.ConcurrentModificationException
            dup
            invokespecial java.util.ConcurrentModificationException.<init>:()V
            athrow
        11: .line 2975
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        12: .line 2977
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.needInput:Z
            ifeq 14
        13: .line 2978
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            invokevirtual java.util.Scanner.readInput:()V
            goto 7
        14: .line 2980
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.util.function.Consumer cons
        end local 0 // java.util.Scanner$FindSpliterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Ljava/util/Scanner$FindSpliterator;
            0   15     1  cons  Ljava/util/function/Consumer<-Ljava/util/regex/MatchResult;>;
    Signature: (Ljava/util/function/Consumer<-Ljava/util/regex/MatchResult;>;)Z
    MethodParameters:
      Name  Flags
      cons  

  private boolean nextInBuffer();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Scanner$FindSpliterator this
         0: .line 2986
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.advance:Z
            ifeq 7
         1: .line 2987
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.position:I
            iconst_1
            iadd
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.buf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.limit:()I
            if_icmple 5
         2: .line 2988
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.sourceClosed:Z
            ifne 4
         3: .line 2989
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            iconst_1
            putfield java.util.Scanner.needInput:Z
         4: .line 2990
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         5: .line 2992
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            dup
            getfield java.util.Scanner.position:I
            iconst_1
            iadd
            putfield java.util.Scanner.position:I
         6: .line 2993
            aload 0 /* this */
            iconst_0
            putfield java.util.Scanner$FindSpliterator.advance:Z
         7: .line 2995
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.position:I
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.buf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.limit:()I
            invokevirtual java.util.regex.Matcher.region:(II)Ljava/util/regex/Matcher;
            pop
         8: .line 2996
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.find:()Z
            ifeq 14
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.hitEnd:()Z
            ifeq 9
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.sourceClosed:Z
            ifeq 14
         9: .line 2998
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.end:()I
            putfield java.util.Scanner.position:I
        10: .line 2999
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.matcher:Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.start:()I
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.position:I
            if_icmpne 11
            iconst_1
            goto 12
      StackMap locals:
      StackMap stack: java.util.Scanner$FindSpliterator
        11: iconst_0
      StackMap locals: java.util.Scanner$FindSpliterator
      StackMap stack: java.util.Scanner$FindSpliterator int
        12: putfield java.util.Scanner$FindSpliterator.advance:Z
        13: .line 3000
            iconst_1
            ireturn
        14: .line 3002
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            getfield java.util.Scanner.sourceClosed:Z
            ifne 16
        15: .line 3003
            aload 0 /* this */
            getfield java.util.Scanner$FindSpliterator.this$0:Ljava/util/Scanner;
            iconst_1
            putfield java.util.Scanner.needInput:Z
        16: .line 3004
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.util.Scanner$FindSpliterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljava/util/Scanner$FindSpliterator;
}
Signature: Ljava/util/Spliterators$AbstractSpliterator<Ljava/util/regex/MatchResult;>;
SourceFile: "Scanner.java"
NestHost: java.util.Scanner
InnerClasses:
  FindSpliterator = java.util.Scanner$FindSpliterator of java.util.Scanner
  public abstract AbstractSpliterator = java.util.Spliterators$AbstractSpliterator of java.util.Spliterators