src/main/java/io/reactivex/Maybe.java
@BackpressureSupport(BackpressureKind.FULL)
    @CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public static <T> Flowable<T> concat(Publisher<? extends MaybeSource<? extends T>> sources) {
        return concat(sources, 2);
    }
@BackpressureSupport(BackpressureKind.FULL)
    @CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public static <T> Flowable<T> concat(Publisher<? extends MaybeSource<? extends T>> sources) {
        return concat(sources, 2);
    }
Concatenate the single values, in a non-overlapping fashion, of the MaybeSource sources provided by
a Publisher sequence.
<p>
<img width="640" height="416" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/Maybe.concat.p.png" alt="">
<dl>
<dt><b>Backpressure:</b></dt>
<dd>The returned {@code Flowable} honors the backpressure of the downstream consumer and
expects the {@code Publisher} to honor backpressure as well. If the sources {@code Publisher}
violates this, a {@link io.reactivex.exceptions.MissingBackpressureException} is signalled.</dd>
<dt><b>Scheduler:</b></dt>
<dd>{@code concat} does not operate by default on a particular {@link Scheduler}.</dd>
</dl>
@param <T> the value type
@param sources the Publisher of MaybeSource instances
@return the new Flowable instance