public Fallible <TResult> Gather <TResult>(Fallible <Func <T, TResult> > applicative) => IsError && applicative.IsError ? Fallible <TResult> .FromError(Error) : Fallible <TResult> .η(applicative.Value(Value));