def find(self, path):
        '''
        Generate filenames in path that satisfy criteria specified in
        the constructor.
        This method is a generator and should be repeatedly called
        until there are no more results.
        '''
        for dirpath, dirs, files in os.walk(path):
            depth = dirpath[len(path) + len(os.path.sep):].count(os.path.sep)
            if self.mindepth >= depth:
                for name in dirs + files:
                    fstat = None
                    matches = True
                    fullpath = None
                    for criterion in self.criteria:
                        if fstat is None and criterion.requires() & _REQUIRES_STAT:
                            fullpath = os.path.join(dirpath, name)
                            fstat = os.stat(fullpath)
                        if not criterion.match(dirpath, name, fstat):
                            matches = False
                            break
                    if matches:
                        if fullpath is None:
                            fullpath = os.path.join(dirpath, name)
                        for action in self.actions:
                            if (fstat is None and
                                    action.requires() & _REQUIRES_STAT):
                                fstat = os.stat(fullpath)
                            result = action.execute(fullpath, fstat, test=self.test)
                            if result is not None:
                                yield result

            if depth == self.maxdepth:
                dirs[:] = []
dataset/ETHPy150Open saltstack/salt/salt/utils/find.py/Finder.find/swapped operands of `>=`