caching hashes