code: public final MonoProcessor<T> toProcessor() {
  		MonoProcessor<T> result;
  		if (this instanceof MonoProcessor) {
  			result = (MonoProcessor<T>)this;
  		}
  		else {
  			result = new MonoProcessor<>(this);
  		}
  		result.connect();
  		return result;
  	}
docs: Wrap this {@link Mono} into a {@link MonoProcessor} (turning it hot and allowing to block,
  cancel, as well as many other operations). Note that the {@link MonoProcessor}
  is subscribed to its parent source if any.
  
  @return a {@link MonoProcessor} to use to either retrieve value or cancel the underlying {@link Subscription}