added cache, but not working