added global cache method