Tried fixing it so it would run, and the hardest bit was recognizing that the double-quotes weren't actually double-quotes, but rather these two characters: “ ”
I may have asked this here before, or perhaps elsewhere... but why do these characters exist? "Smart" quotes end up breaking things for me so frequently, I've never actually wanted them in any case I can think of. Same goes for en/em dashes. I literally spent a day and a half trying to track down an issue less than a month ago, only to realize as I got to the point of inspecting bytes that I wasn't looking at a regular dash (and incidentally that the SDK I was interacting with doesn't support extended characters).
Non-‘smart’ quotes (aka typewriter quotes) exist only because space on typewriter keyboards was limited. If we should get rid of any double-quotes then it would be " which has no semantic meaning (unlike “ and ” which open and close a quotation, and ″ which among other things is the unit mark for inches).
" has semantic meaning in code, whereas “ and ” have semantic meaning in text. If you're a coder, you want " and only ". You especially don't want "helpful" software that thinks you should want text quotes, and tries to fix them for you.