varargs, and generating code with newlines to make javascript errors easier to figure out