added a cache system to the tab view