fix no newline at EOF