i get it now, but it's confusing. i wonder if for readability sake we should either prime the cache with the "key missing" value or rename `UNDEFINED` to something like `CACHED_UNDEFINED`.