docs: def _fillVolumesAndPaths(self, paths):
          """ Fill in paths.
  
          :arg paths: = { Store.Volume: ["linux path",]}
          """
          self.diffs = collections.defaultdict((lambda: []))
          self.extraKeys = {}
  
          for key in self.bucket.list():
              if key.name.startswith(theTrashPrefix):
                  continue
  
              keyInfo = self._parseKeyName(key.name)
  
              if keyInfo is None:
                  if key.name[-1:] != '/':
                      logger.warning("Ignoring '%s' in S3", key.name)
                  continue
  
              if keyInfo['type'] == 'info':
                  stream = io.BytesIO()
                  key.get_contents_to_file(stream)
                  Store.Volume.readInfo(stream)
                  continue
  
              if keyInfo['from'] == 'None':
                  keyInfo['from'] = None
  
              path = self._relativePath("/" + keyInfo['fullpath'])
  
              if path is None:
                  continue
  
              diff = Store.Diff(self, keyInfo['to'], keyInfo['from'], key.size)
  
              logger.debug("Adding %s in %s", diff, path)
  
              self.diffs[diff.fromVol].append(diff)
              paths[diff.toVol].append(path)
  
              self.extraKeys[diff] = path