make work with js caching