docs: def load(cls, cache_file, backend=None):
          """Instantiate AsyncResult from  dumped `cache_file`.
  
          This is the inverse of :meth:`dump`.
  
          Parameters
          ----------
  
              cache_file: str
                  Name of file from which the run should be read.
  
              backend: clusterjob.backends.ClusterjobBackend or None
                  The backend instance for the job. If None, the backend will be
                  determined by the *name* of the dumped job's backend.
          """
          with open(cache_file, 'rb') as pickle_fh:
              (remote, backend_name, max_sleep_interval, job_id, status,
               epilogue, ssh, scp) = pickle.load(pickle_fh)
          if backend is None:
              backend = JobScript._backends[backend_name]
          ar = cls(backend)
          (ar.remote, ar.max_sleep_interval, ar.job_id, ar._status, ar.epilogue,
           ar.ssh, ar.scp) \
              = (remote, max_sleep_interval, job_id, status, epilogue, ssh, scp)
          ar.cache_file = cache_file
          return ar