code: public <U> List<U> toFlatList(Function<? super T, ? extends Collection<U>> mapper) {
          return toFlatCollection(mapper, ArrayList::new);
      }
docs: Returns a {@link List} which contains all the elements of the collections
  generated by provided mapper from each element of this stream. There are
  no guarantees on the type, mutability, serializability, or thread-safety
  of the {@code List} returned; if more control over the returned
  {@code List} is required, use
  {@link #toFlatCollection(Function, Supplier)}.
  
  <p>
  This is a <a href="package-summary.html#StreamOps">terminal</a>
  operation.
  
  <p>
  This method is equivalent to {@code flatCollection(mapper).toList()}, but
  may work faster.
  
  @param <U> the type of the elements of the resulting collection
  @param mapper a <a
  href="package-summary.html#NonInterference">non-interfering </a>,
  <a href="package-summary.html#Statelessness">stateless</a>
  function to apply to each element which produces a
  {@link Collection} of new values
  @return the new list.
  @since 0.3.7