event caching now relies on one single fat dictionary