public static IObservable<TRet> ContinueAfter<T, TRet>(this IObservable<T> observable, Func<IObservable<TRet>> selector) { return observable .Materialize() .Where(n => n.Kind == NotificationKind.OnCompleted) .SelectMany(_ => selector()); }