This cache could be static rather than per-instance, couldn't it?