curious why you use a `os.File` here, and not a `io.ReadWriter`?