Sorry about that - I intended to post a version with the code for the commas, but I grabbed the wrong one. I tried replacing all of those backslashes to double tildes but the song remains the same. In this version, I've commented out some local macros,commands that rely on them, and also commented out the Context()->update; command. Bringing Context()->update back is what causes the timeout. This is happening on webwork 2.7 and PG 2.7.