this opens a filehandle now

might be an unnecessary layer