Future<String> trying(Future<String> reader) async { try { final content = await reader; return content; } catch (e) { throw ReaderFailure(cause: e.toString()); } }