support newlines in strings