Trailing newlines are important