cache refactor