dir: read takes by ref, not move
dir: read takes by ref, not move