doing cache