Add cache system