code: public final Mono<T> last() {
  	    if (this instanceof Callable) {
  		    @SuppressWarnings("unchecked")
  		    Callable<T> thiz = (Callable<T>) this;
  		    Mono<T> callableMono = convertToMono(thiz);
  		    if (callableMono == Mono.empty()) {
  			    return Mono.error(new NoSuchElementException("Flux#last() didn't observe any onNext signal from Callable flux"));
  		    }
  	        return callableMono;
  	    }
  		return Mono.onAssembly(new MonoTakeLastOne<>(this));
  	}
docs: Emit the last element observed before complete signal as a {@link Mono}, or emit
  {@link NoSuchElementException} error if the source was empty.
  For a passive version use {@link #takeLast(int)}
  
  <p>
  <img class="marble" src="doc-files/marbles/last.svg" alt="">
  
  @reactor.discard This operator discards elements before the last.
  
  @return a {@link Mono} with the last value in this {@link Flux}