splitlines() for newline compatibility