lookup is very fast, much more readable this way (because it's saying "Hey, if I'm not in the offset map, I need to be generated and then cached")