static IterableIterator linesFromReader(Reader r) { final BufferedReader br = bufferedReader(r); ret iteratorFromFunction(func { readLineFromReaderWithClose(br) }); }