@override Future<List<Result>> take(int limit) async { final results = await runner.query(this.._limit = limit); if (results.isEmpty) return <Result>[]; return results.map(_wrapRawResult<Result>).toList(); }