reworked cache core and plugin