src/main/java/io/reactivex/Maybe.java
@CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public final Disposable subscribe(Consumer<? super T> onSuccess, Consumer<? super Throwable> onError) {
        return subscribe(onSuccess, onError, Functions.EMPTY_ACTION);
    }
@CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public final Disposable subscribe(Consumer<? super T> onSuccess, Consumer<? super Throwable> onError) {
        return subscribe(onSuccess, onError, Functions.EMPTY_ACTION);
    }
Subscribes to a Maybe and provides callbacks to handle the items it emits and any error
notification it issues.
<dl>
<dt><b>Scheduler:</b></dt>
<dd>{@code subscribe} does not operate by default on a particular {@link Scheduler}.</dd>
</dl>

@param onSuccess
the {@code Consumer<T>} you have designed to accept a success value from the Maybe
@param onError
the {@code Consumer<Throwable>} you have designed to accept any error notification from the
Maybe
@return a {@link Disposable} reference with which the caller can stop receiving items before
the Maybe has finished sending them
@see <a href="http://reactivex.io/documentation/operators/subscribe.html">ReactiveX operators documentation: Subscribe</a>
@throws NullPointerException
if {@code onSuccess} is null, or
if {@code onError} is null