Future<W> mapOrElse<W>( FutureOr<W> Function(F err) defaultFn, FutureOr<W> Function(S ok) fn) { return then<W>((result) => result.mapOrElse(defaultFn, fn)); }