improve new_file