clone before caching