code: @NotNull
      public Optional<T> findLast() {
          return reduce(new BinaryOperator<T>() {
              @Override
              public T apply(T left, T right) {
                  return right;
              }
          });
      }
docs: Returns the last element wrapped by {@code Optional} class.
  If stream is empty, returns {@code Optional.empty()}.
  
  <p>This is a short-circuiting terminal operation.
  
  @return an {@code Optional} with the last element
  or {@code Optional.empty()} if the stream is empty
  @since 1.1.8