def _findSourceTroves(self):
        sourceSearch = {}
        for fromTrove in self.rules.iterkeys():
            sourceSearch.setdefault(fromTrove, { self.branch : None })

        # this treats previously-built redirects as flavors we need to
        # redirect from, which seems a bit weird
        sourceTroveMatches = self.repos.getTroveLeavesByBranch(sourceSearch)

        if len(sourceTroveMatches) != len(sourceSearch):
            missing = set(sourceSearch) - set(sourceTroveMatches)
            raise builderrors.RecipeFileError, \
                    " ".join(missing) % "No troves found with name(s) %s"

        return sourceTroveMatches
dataset/ETHPy150Open sassoftware/conary/conary/build/redirectrecipe.py/_RedirectRecipe._findSourceTroves/swapped operands of `%`