now using cache fingerprinting