code: async def load_cache_for_proof(self, archive: bool = False) -> int:
          
  
          LOGGER.debug('HolderProver.load_cache_for_proof >>> archive: %s', archive)
  
          rv = int(time())
          box_ids = json.loads(await self.get_box_ids_held())
          for s_id in box_ids['schema_id']:
              with SCHEMA_CACHE.lock:
                  await self.get_schema(s_id)
          for cd_id in box_ids['cred_def_id']:
              with CRED_DEF_CACHE.lock:
                  await self.get_cred_def(cd_id)
          for rr_id in box_ids['rev_reg_id']:
              await self.get_rev_reg_def(rr_id)
              with REVO_CACHE.lock:
                  revo_cache_entry = REVO_CACHE.get(rr_id, None)
                  if revo_cache_entry:
                      try:
                          await revo_cache_entry.get_delta_json(self._build_rr_delta_json, rv, rv)
                      except ClosedPool:
                          LOGGER.warning(
                              'HolderProver %s is offline from pool %s, cannot update revo cache reg delta for %s to %s',
                              self.name,
                              self.pool.name,
                              rr_id,
                              rv)
                      except AbsentPool:
                          LOGGER.warning(
                              'HolderProver %s has no pool, cannot update revo cache reg delta for %s to %s',
                              self.name,
                              rr_id,
                              rv)
  
          if archive:
              ArchivableCaches.archive(self.dir_cache)
          LOGGER.debug('HolderProver.load_cache_for_proof <<< %s', rv)
          return rv
docs: Load schema, cred def, revocation caches; optionally archive enough to go
          offline and be able to generate proof on all credentials in wallet.
  
          Return timestamp (epoch seconds) of cache load event, also used as subdirectory
          for cache archives.
  
          :param archive: True to archive now or False to demur (subclasses may still
              need to augment archivable caches further)
          :return: cache load event timestamp (epoch seconds)