added auth and cache