can now specify input and output files