a more complex caching method
Merge branch 'Maxim-and-Jesper'