re-adding caching and compression