public interface java.util.stream.Stream<T> extends java.util.stream.BaseStream<T, java.util.stream.Stream<T>>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: java.util.stream.Stream
  super_class: java.lang.Object
{
  public abstract java.util.stream.Stream<T> filter(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Predicate<-TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
           Name  Flags
      predicate  

  public abstract <R> java.util.stream.Stream<R> map(java.util.function.Function<? super T, ? extends R>);
    descriptor: (Ljava/util/function/Function;)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <R:Ljava/lang/Object;>(Ljava/util/function/Function<-TT;+TR;>;)Ljava/util/stream/Stream<TR;>;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.IntStream mapToInt(java.util.function.ToIntFunction<? super T>);
    descriptor: (Ljava/util/function/ToIntFunction;)Ljava/util/stream/IntStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/ToIntFunction<-TT;>;)Ljava/util/stream/IntStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.LongStream mapToLong(java.util.function.ToLongFunction<? super T>);
    descriptor: (Ljava/util/function/ToLongFunction;)Ljava/util/stream/LongStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/ToLongFunction<-TT;>;)Ljava/util/stream/LongStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.DoubleStream mapToDouble(java.util.function.ToDoubleFunction<? super T>);
    descriptor: (Ljava/util/function/ToDoubleFunction;)Ljava/util/stream/DoubleStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/ToDoubleFunction<-TT;>;)Ljava/util/stream/DoubleStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract <R> java.util.stream.Stream<R> flatMap(java.util.function.Function<? super T, ? extends java.util.stream.Stream<? extends R>>);
    descriptor: (Ljava/util/function/Function;)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <R:Ljava/lang/Object;>(Ljava/util/function/Function<-TT;+Ljava/util/stream/Stream<+TR;>;>;)Ljava/util/stream/Stream<TR;>;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.IntStream flatMapToInt(java.util.function.Function<? super T, ? extends java.util.stream.IntStream>);
    descriptor: (Ljava/util/function/Function;)Ljava/util/stream/IntStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Function<-TT;+Ljava/util/stream/IntStream;>;)Ljava/util/stream/IntStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.LongStream flatMapToLong(java.util.function.Function<? super T, ? extends java.util.stream.LongStream>);
    descriptor: (Ljava/util/function/Function;)Ljava/util/stream/LongStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Function<-TT;+Ljava/util/stream/LongStream;>;)Ljava/util/stream/LongStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.DoubleStream flatMapToDouble(java.util.function.Function<? super T, ? extends java.util.stream.DoubleStream>);
    descriptor: (Ljava/util/function/Function;)Ljava/util/stream/DoubleStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Function<-TT;+Ljava/util/stream/DoubleStream;>;)Ljava/util/stream/DoubleStream;
    MethodParameters:
        Name  Flags
      mapper  

  public abstract java.util.stream.Stream<T> distinct();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/stream/Stream<TT;>;

  public abstract java.util.stream.Stream<T> sorted();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/stream/Stream<TT;>;

  public abstract java.util.stream.Stream<T> sorted(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Comparator<-TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
            Name  Flags
      comparator  

  public abstract java.util.stream.Stream<T> peek(java.util.function.Consumer<? super T>);
    descriptor: (Ljava/util/function/Consumer;)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Consumer<-TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
        Name  Flags
      action  

  public abstract java.util.stream.Stream<T> limit(long);
    descriptor: (J)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (J)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
         Name  Flags
      maxSize  

  public abstract java.util.stream.Stream<T> skip(long);
    descriptor: (J)Ljava/util/stream/Stream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (J)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      n     

  public java.util.stream.Stream<T> takeWhile(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.stream.Stream this
        start local 1 // java.util.function.Predicate predicate
         0: .line 556
            aload 1 /* predicate */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 560
            new java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Taking
            dup
            aload 0 /* this */
            invokeinterface java.util.stream.Stream.spliterator:()Ljava/util/Spliterator;
            iconst_1
            aload 1 /* predicate */
            invokespecial java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Taking.<init>:(Ljava/util/Spliterator;ZLjava/util/function/Predicate;)V
         2: .line 561
            aload 0 /* this */
            invokeinterface java.util.stream.Stream.isParallel:()Z
         3: .line 559
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
         4: .line 561
            aload 0 /* this */
            invokedynamic run(Ljava/util/stream/Stream;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  java/util/stream/BaseStream.close()V (9 itf)
                  ()V
            invokeinterface java.util.stream.Stream.onClose:(Ljava/lang/Runnable;)Ljava/util/stream/BaseStream;
            checkcast java.util.stream.Stream
         5: .line 559
            areturn
        end local 1 // java.util.function.Predicate predicate
        end local 0 // java.util.stream.Stream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljava/util/stream/Stream<TT;>;
            0    6     1  predicate  Ljava/util/function/Predicate<-TT;>;
    Signature: (Ljava/util/function/Predicate<-TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
           Name  Flags
      predicate  

  public java.util.stream.Stream<T> dropWhile(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.stream.Stream this
        start local 1 // java.util.function.Predicate predicate
         0: .line 622
            aload 1 /* predicate */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 626
            new java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Dropping
            dup
            aload 0 /* this */
            invokeinterface java.util.stream.Stream.spliterator:()Ljava/util/Spliterator;
            iconst_1
            aload 1 /* predicate */
            invokespecial java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Dropping.<init>:(Ljava/util/Spliterator;ZLjava/util/function/Predicate;)V
         2: .line 627
            aload 0 /* this */
            invokeinterface java.util.stream.Stream.isParallel:()Z
         3: .line 625
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
         4: .line 627
            aload 0 /* this */
            invokedynamic run(Ljava/util/stream/Stream;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  java/util/stream/BaseStream.close()V (9 itf)
                  ()V
            invokeinterface java.util.stream.Stream.onClose:(Ljava/lang/Runnable;)Ljava/util/stream/BaseStream;
            checkcast java.util.stream.Stream
         5: .line 625
            areturn
        end local 1 // java.util.function.Predicate predicate
        end local 0 // java.util.stream.Stream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljava/util/stream/Stream<TT;>;
            0    6     1  predicate  Ljava/util/function/Predicate<-TT;>;
    Signature: (Ljava/util/function/Predicate<-TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
           Name  Flags
      predicate  

  public abstract void forEach(java.util.function.Consumer<? super T>);
    descriptor: (Ljava/util/function/Consumer;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Consumer<-TT;>;)V
    MethodParameters:
        Name  Flags
      action  

  public abstract void forEachOrdered(java.util.function.Consumer<? super T>);
    descriptor: (Ljava/util/function/Consumer;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Consumer<-TT;>;)V
    MethodParameters:
        Name  Flags
      action  

  public abstract java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract <A> A[] toArray(java.util.function.IntFunction<A[]>);
    descriptor: (Ljava/util/function/IntFunction;)[Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <A:Ljava/lang/Object;>(Ljava/util/function/IntFunction<[TA;>;)[TA;
    MethodParameters:
           Name  Flags
      generator  

  public abstract T reduce(T, java.util.function.BinaryOperator<T>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TT;Ljava/util/function/BinaryOperator<TT;>;)TT;
    MethodParameters:
             Name  Flags
      identity     
      accumulator  

  public abstract java.util.Optional<T> reduce(java.util.function.BinaryOperator<T>);
    descriptor: (Ljava/util/function/BinaryOperator;)Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/BinaryOperator<TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
             Name  Flags
      accumulator  

  public abstract <U> U reduce(U, java.util.function.BiFunction<U, ? super T, U>, java.util.function.BinaryOperator<U>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <U:Ljava/lang/Object;>(TU;Ljava/util/function/BiFunction<TU;-TT;TU;>;Ljava/util/function/BinaryOperator<TU;>;)TU;
    MethodParameters:
             Name  Flags
      identity     
      accumulator  
      combiner     

  public abstract <R> R collect(java.util.function.Supplier<R>, java.util.function.BiConsumer<R, ? super T>, java.util.function.BiConsumer<R, R>);
    descriptor: (Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <R:Ljava/lang/Object;>(Ljava/util/function/Supplier<TR;>;Ljava/util/function/BiConsumer<TR;-TT;>;Ljava/util/function/BiConsumer<TR;TR;>;)TR;
    MethodParameters:
             Name  Flags
      supplier     
      accumulator  
      combiner     

  public abstract <R, A> R collect(java.util.stream.Collector<? super T, A, R>);
    descriptor: (Ljava/util/stream/Collector;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <R:Ljava/lang/Object;A:Ljava/lang/Object;>(Ljava/util/stream/Collector<-TT;TA;TR;>;)TR;
    MethodParameters:
           Name  Flags
      collector  

  public abstract java.util.Optional<T> min(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Comparator<-TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
            Name  Flags
      comparator  

  public abstract java.util.Optional<T> max(java.util.Comparator<? super T>);
    descriptor: (Ljava/util/Comparator;)Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Comparator<-TT;>;)Ljava/util/Optional<TT;>;
    MethodParameters:
            Name  Flags
      comparator  

  public abstract long count();
    descriptor: ()J
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean anyMatch(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public abstract boolean allMatch(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public abstract boolean noneMatch(java.util.function.Predicate<? super T>);
    descriptor: (Ljava/util/function/Predicate;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/function/Predicate<-TT;>;)Z
    MethodParameters:
           Name  Flags
      predicate  

  public abstract java.util.Optional<T> findFirst();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Optional<TT;>;

  public abstract java.util.Optional<T> findAny();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Optional<TT;>;

  public static <T> java.util.stream.Stream$Builder<T> builder();
    descriptor: ()Ljava/util/stream/Stream$Builder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 1139
            new java.util.stream.Streams$StreamBuilderImpl
            dup
            invokespecial java.util.stream.Streams$StreamBuilderImpl.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/stream/Stream$Builder<TT;>;

  public static <T> java.util.stream.Stream<T> empty();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 1149
            invokestatic java.util.Spliterators.emptySpliterator:()Ljava/util/Spliterator;
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <T:Ljava/lang/Object;>()Ljava/util/stream/Stream<TT;>;

  public static <T> java.util.stream.Stream<T> of(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object t
         0: .line 1160
            new java.util.stream.Streams$StreamBuilderImpl
            dup
            aload 0 /* t */
            invokespecial java.util.stream.Streams$StreamBuilderImpl.<init>:(Ljava/lang/Object;)V
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
        end local 0 // java.lang.Object t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     t  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      t     

  public static <T> java.util.stream.Stream<T> ofNullable(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object t
         0: .line 1174
            aload 0 /* t */
            ifnonnull 1
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            goto 2
         1: .line 1175
      StackMap locals:
      StackMap stack:
            new java.util.stream.Streams$StreamBuilderImpl
            dup
            aload 0 /* t */
            invokespecial java.util.stream.Streams$StreamBuilderImpl.<init>:(Ljava/lang/Object;)V
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
         2: .line 1174
      StackMap locals:
      StackMap stack: java.util.stream.Stream
            areturn
        end local 0 // java.lang.Object t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     t  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      t     

  public static <T> java.util.stream.Stream<T> of(T[]);
    descriptor: ([Ljava/lang/Object;)Ljava/util/stream/Stream;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object[] values
         0: .line 1188
            aload 0 /* values */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
        end local 0 // java.lang.Object[] values
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  values  [Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>([TT;)Ljava/util/stream/Stream<TT;>;
    RuntimeVisibleAnnotations: 
      java.lang.SafeVarargs()
    MethodParameters:
        Name  Flags
      values  

  public static <T> java.util.stream.Stream<T> iterate(T, java.util.function.UnaryOperator<T>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/UnaryOperator;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // java.lang.Object seed
        start local 1 // java.util.function.UnaryOperator f
         0: .line 1215
            aload 1 /* f */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1216
            new java.util.stream.Stream$1
            dup
            ldc 9223372036854775807
         2: .line 1217
            sipush 1040
         3: .line 1216
            aload 1 /* f */
            aload 0 /* seed */
            invokespecial java.util.stream.Stream$1.<init>:(JILjava/util/function/UnaryOperator;Ljava/lang/Object;)V
            astore 2 /* spliterator */
        start local 2 // java.util.Spliterator spliterator
         4: .line 1235
            aload 2 /* spliterator */
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
        end local 2 // java.util.Spliterator spliterator
        end local 1 // java.util.function.UnaryOperator f
        end local 0 // java.lang.Object seed
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         seed  TT;
            0    5     1            f  Ljava/util/function/UnaryOperator<TT;>;
            4    5     2  spliterator  Ljava/util/Spliterator<TT;>;
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/util/function/UnaryOperator<TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      seed  final
      f     final

  public static <T> java.util.stream.Stream<T> iterate(T, java.util.function.Predicate<? super T>, java.util.function.UnaryOperator<T>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/Predicate;Ljava/util/function/UnaryOperator;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // java.lang.Object seed
        start local 1 // java.util.function.Predicate hasNext
        start local 2 // java.util.function.UnaryOperator next
         0: .line 1277
            aload 2 /* next */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1278
            aload 1 /* hasNext */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1279
            new java.util.stream.Stream$2
            dup
            ldc 9223372036854775807
         3: .line 1280
            sipush 1040
         4: .line 1279
            aload 2 /* next */
            aload 0 /* seed */
            aload 1 /* hasNext */
            invokespecial java.util.stream.Stream$2.<init>:(JILjava/util/function/UnaryOperator;Ljava/lang/Object;Ljava/util/function/Predicate;)V
            astore 3 /* spliterator */
        start local 3 // java.util.Spliterator spliterator
         5: .line 1319
            aload 3 /* spliterator */
            iconst_0
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
        end local 3 // java.util.Spliterator spliterator
        end local 2 // java.util.function.UnaryOperator next
        end local 1 // java.util.function.Predicate hasNext
        end local 0 // java.lang.Object seed
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         seed  TT;
            0    6     1      hasNext  Ljava/util/function/Predicate<-TT;>;
            0    6     2         next  Ljava/util/function/UnaryOperator<TT;>;
            5    6     3  spliterator  Ljava/util/Spliterator<TT;>;
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/util/function/Predicate<-TT;>;Ljava/util/function/UnaryOperator<TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
         Name  Flags
      seed     
      hasNext  
      next     

  public static <T> java.util.stream.Stream<T> generate(java.util.function.Supplier<? extends T>);
    descriptor: (Ljava/util/function/Supplier;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.util.function.Supplier s
         0: .line 1332
            aload 0 /* s */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1334
            new java.util.stream.StreamSpliterators$InfiniteSupplyingSpliterator$OfRef
            dup
            ldc 9223372036854775807
            aload 0 /* s */
            invokespecial java.util.stream.StreamSpliterators$InfiniteSupplyingSpliterator$OfRef.<init>:(JLjava/util/function/Supplier;)V
            iconst_0
         2: .line 1333
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            areturn
        end local 0 // java.util.function.Supplier s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/util/function/Supplier<+TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/function/Supplier<+TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      s     

  public static <T> java.util.stream.Stream<T> concat(java.util.stream.Stream<? extends T>, java.util.stream.Stream<? extends T>);
    descriptor: (Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.stream.Stream a
        start local 1 // java.util.stream.Stream b
         0: .line 1375
            aload 0 /* a */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1376
            aload 1 /* b */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1379
            new java.util.stream.Streams$ConcatSpliterator$OfRef
            dup
         3: .line 1380
            aload 0 /* a */
            invokeinterface java.util.stream.Stream.spliterator:()Ljava/util/Spliterator;
            aload 1 /* b */
            invokeinterface java.util.stream.Stream.spliterator:()Ljava/util/Spliterator;
         4: .line 1379
            invokespecial java.util.stream.Streams$ConcatSpliterator$OfRef.<init>:(Ljava/util/Spliterator;Ljava/util/Spliterator;)V
            astore 2 /* split */
        start local 2 // java.util.Spliterator split
         5: .line 1381
            aload 2 /* split */
            aload 0 /* a */
            invokeinterface java.util.stream.Stream.isParallel:()Z
            ifne 6
            aload 1 /* b */
            invokeinterface java.util.stream.Stream.isParallel:()Z
            ifne 6
            iconst_0
            goto 7
      StackMap locals: java.util.stream.Stream java.util.stream.Stream java.util.Spliterator
      StackMap stack: java.util.Spliterator
         6: iconst_1
      StackMap locals: java.util.stream.Stream java.util.stream.Stream java.util.Spliterator
      StackMap stack: java.util.Spliterator int
         7: invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
            astore 3 /* stream */
        start local 3 // java.util.stream.Stream stream
         8: .line 1382
            aload 3 /* stream */
            aload 0 /* a */
            aload 1 /* b */
            invokestatic java.util.stream.Streams.composedClose:(Ljava/util/stream/BaseStream;Ljava/util/stream/BaseStream;)Ljava/lang/Runnable;
            invokeinterface java.util.stream.Stream.onClose:(Ljava/lang/Runnable;)Ljava/util/stream/BaseStream;
            checkcast java.util.stream.Stream
            areturn
        end local 3 // java.util.stream.Stream stream
        end local 2 // java.util.Spliterator split
        end local 1 // java.util.stream.Stream b
        end local 0 // java.util.stream.Stream a
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0       a  Ljava/util/stream/Stream<+TT;>;
            0    9     1       b  Ljava/util/stream/Stream<+TT;>;
            5    9     2   split  Ljava/util/Spliterator<TT;>;
            8    9     3  stream  Ljava/util/stream/Stream<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/stream/Stream<+TT;>;Ljava/util/stream/Stream<+TT;>;)Ljava/util/stream/Stream<TT;>;
    MethodParameters:
      Name  Flags
      a     
      b     
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/stream/BaseStream<TT;Ljava/util/stream/Stream<TT;>;>;
SourceFile: "Stream.java"
NestMembers:
  java.util.stream.Stream$1  java.util.stream.Stream$2  java.util.stream.Stream$Builder
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  java.util.stream.Stream$1
  java.util.stream.Stream$2
  public abstract Builder = java.util.stream.Stream$Builder of java.util.stream.Stream
  abstract InfiniteSupplyingSpliterator = java.util.stream.StreamSpliterators$InfiniteSupplyingSpliterator of java.util.stream.StreamSpliterators
  final OfRef = java.util.stream.StreamSpliterators$InfiniteSupplyingSpliterator$OfRef of java.util.stream.StreamSpliterators$InfiniteSupplyingSpliterator
  abstract ConcatSpliterator = java.util.stream.Streams$ConcatSpliterator of java.util.stream.Streams
  OfRef = java.util.stream.Streams$ConcatSpliterator$OfRef of java.util.stream.Streams$ConcatSpliterator
  final StreamBuilderImpl = java.util.stream.Streams$StreamBuilderImpl of java.util.stream.Streams
  abstract UnorderedWhileSpliterator = java.util.stream.WhileOps$UnorderedWhileSpliterator of java.util.stream.WhileOps
  abstract OfRef = java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef of java.util.stream.WhileOps$UnorderedWhileSpliterator
  final Dropping = java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Dropping of java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef
  final Taking = java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef$Taking of java.util.stream.WhileOps$UnorderedWhileSpliterator$OfRef