CACHE_NEEDED
enum { CACHE_NEEDED, CACHE_OK, CACHE_FAIL} cache_state = CACHE_NEEDED;
case CACHE_NEEDED: