added s3 cache