def print_tree(self, level=0):
        if self.prim:
            self.logger.info('%sPrim: %s' % (
                '  ' * level, self.prim['name']))
            self.logger.info('%sNS: %s' % (
                '  ' * level, self.ns))
            self.logger.info('%sConstraints: %s' % (
                '  ' * level, self.constraints))
            self.logger.info('%sApplied consequences: %s' % (
                '  ' * level, self.applied_consequences))
        else:
            self.logger.info('ROOT NODE')
            self.logger.info(self.constraints % 'Constraints: %s')

        self.logger.info('%s (with %d children)' % (
            '  ' * level, len(self.children)))

        for child in self.children:
            child.print_tree(level + 1)
dataset/ETHPy150Open rcbops/opencenter/opencenter/webapp/solver.py/Solver.print_tree/swapped operands of `%`