add thumbnail caching