code: async def load_cache(self, archive: bool = False) -> int:
          
  
          LOGGER.debug('Verifier.load_cache >>> archive: %s', archive)
  
          rv = int(time())
          for s_id in self.cfg.get('archive-on-close', {}).get('schema_id', {}):
              with SCHEMA_CACHE.lock:
                  await self.get_schema(s_id)
          for cd_id in self.cfg.get('archive-on-close', {}).get('cred_def_id', {}):
              with CRED_DEF_CACHE.lock:
                  await self.get_cred_def(cd_id)
          for rr_id in self.cfg.get('archive-on-close', {}).get('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_state_json(self._build_rr_state_json, rv, rv)
                      except ClosedPool:
                          LOGGER.warning(
                              'Verifier %s is offline from pool %s, cannot update revo cache reg state for %s to %s',
                              self.wallet.name,
                              self.pool.name,
                              rr_id,
                              rv)
  
          if archive:
              Caches.archive(self.dir_cache)
          LOGGER.debug('Verifier.load_cache <<< %s', rv)
          return rv
docs: Load caches and archive enough to go offline and be able to verify proof
          on content marked of interest in configuration.
  
          Return timestamp (epoch seconds) of cache load event, also used as subdirectory
          for cache archives.
  
          :param archive: whether to archive caches to disk
          :return: cache load event timestamp (epoch seconds)