flat map result
Result<R> flatMap<R>(Result<R> Function(T value) func) { return fold(Result.error, func); }