add gem caching