The `reduce` call above (which I've simplified and commented in my local branch that I'll push once you're done reviewing) just converts the array of strings into an object in which each string is a property name whose property is the corresponding token object. annotateGlobals takes an array as a parameter instead of an object. I call annotateGlobals here so that each global token is annotated at most once. If I called it on each of the JSL_GLOBALS_* lists (which are overlapping subsets of JSL_GLOBALS) built later, some tokens would be annotated more than once. That wouldn't break anything, it would just be an extremely minor inefficiency.