added static caching and file caching