code: def _fulfillPromises(self, returnValues, jobStore):
          
          for path, promiseFileStoreIDs in iteritems(self._rvs):
              if not path:
                  # Note that its possible for returnValues to be a promise, not an actual return
                  # value. This is the case if the job returns a promise from another job. In
                  # either case, we just pass it on.
                  promisedValue = returnValues
              else:
                  # If there is an path ...
                  if isinstance(returnValues, Promise):
                      # ... and the value itself is a Promise, we need to created a new, narrower
                      # promise and pass it on.
                      promisedValue = Promise(returnValues.job, path)
                  else:
                      # Otherwise, we just select the desired component of the return value.
                      promisedValue = returnValues
                      for index in path:
                          promisedValue = promisedValue[index]
              for promiseFileStoreID in promiseFileStoreIDs:
                  # File may be gone if the job is a service being re-run and the accessing job is
                  # already complete.
                  if jobStore.fileExists(promiseFileStoreID):
                      with jobStore.updateFileStream(promiseFileStoreID) as fileHandle:
                          pickle.dump(promisedValue, fileHandle, pickle.HIGHEST_PROTOCOL)
docs: Sets the values for promises using the return values from this job's run() function.