add static resource caching