added useCache method