code: def load(self, filename):
          
          # Compute sha1 hash (key)
          with open(filename) as fp:
              key = sha1(fp.read()).hexdigest()
          path = self.key_to_path(key)
          # Return the cached file if available
          if key in self.hashes:
              try:
                  with open(path) as fp:
                      return cPickle.load(fp)
              except EOFError:
                  os.unlink(path)
                  self.hashes.remove(key)
              except IOError:
                  self.hashes.remove(key)
          # Create the nested cache directory
          try:
              os.makedirs(os.path.dirname(path))
          except OSError as exc:
              if exc.errno != errno.EEXIST:
                  raise
          # Process the file and save in the cache
          scratch = kurt.Project.load(filename)  # can fail
          with os.fdopen(os.open(path, os.O_WRONLY | os.O_CREAT,
                                 0400), 'w') as fp:
              # open file for writing but make it immediately read-only
              cPickle.dump(scratch, fp, cPickle.HIGHEST_PROTOCOL)
          self.hashes.add(key)
          return scratch
docs: Optimized load and return the parsed version of filename.
  
          Uses the on-disk parse cache if the file is located in it.