add caching
0.7.1