Replaced object pool with cache
Removed lazy keyword since this is an implementation detail